В прошлом месяце мы прочитали любопытный материал в Datafloq, в котором поднимался очень важный вопрос для всех отраслей бизнеса, работающих с большими данными: как проверить качество этих самых данных? Статью мы, разумеется, прочитали  от начала до конца, поделились ею с коллегами, коллеги поделились со своими коллегами и все единогласно заявляли, едва увидев заголовок: контролируемость и отслеживаемость данных — вот камень преткновения в вопросе качества Big Data. Что ж, в принципе, ничего нового, - подумали мы, - но как выстроить процессы, связанные с этой самой отслеживаемостью? Мы (Platforma) перевели для вас этот материал, чтобы вы, как и мы, смогли разобраться в этом вопросе. Согласны ли вы с автором? Будем рады вашему мнению!

Если данные – новая нефть, то качественные данные – это новое черное золото. Все как и с реальным топливом: если оно плохого качества, то можно заглохнуть уже в самом начале. Да и стартовать в принципе вряд ли получится. Поэтому вопрос стоит ребром: как проверить качество данных?

Основу работы современных предприятий составляют озера данных, конвейеры данных и хранилища данных. Для нормальной работы хранилищ данных нужно обеспечить их контролируемость и отслеживаемость. От нее зависит бесперебойность работы и выполнение поставленных целей. 

Но тут же возникают вопросы: как можно проверить надежность данных, если отслеживаемость есть? Даст ли высокое качество данных ответы, на основе которых можно принимать бизнес-решения? 

Вопрос о контролируемости и отслеживаемости данных (Data Observability) — один из самых популярных среди специалистов по управлению данными в последние годы. И если говорить простыми словами, то контролируемость данных — это возможность мониторить и понимать то, как именно данные проходят через систему. Она позволяет видеть, как данные изменяются со временем, а также понимать, как разные части системы взаимодействуют друг с другом. С ее помощью можно лучше отслеживать ошибки данных и исправлять их.

Из чего состоит отслеживаемость данных? Как внедрить ее в бизнесе? 

Четкого определения отслеживаемости данных не существует. Чаще всего под ней имеют в виду возможность находить новые данные, изменения в объемах записей или схемах данных, дублирование файлов и записей, а также несоответствия между числом записей в разных точках конвейера данных.

Существуют и другие показатели, которые можно мониторить, например, производительность системы, профили данных и поведение пользователя. Однако чаще всего они не связаны с понятием отслеживаемости данных.

У отслеживаемости данных есть два основных ограничения:

  1. Использование только на уровне хранилища данных и соответствующего рабочего процесса.

    Большинство решений, которые обеспечивают отслеживаемость данных, создаются и запускаются на уровне хранилищ данных. Но часто это уже слишком поздно.

Блок-схема процесса обработки данных:

Исходные системы – Озеро необработанных данных – Конвейер – Озеро обработанных данных – Конвейер – [Хранилище данных – Конвейер – Витрина данных]* – Аналитические отчеты
* Текущая область отслеживаемости данных
Блок-схема процесса обработки данных: Исходные системы – Озеро необработанных данных – Конвейер – Озеро обработанных данных – Конвейер – [Хранилище данных – Конвейер – Витрина данных]* – Аналитические отчеты * Текущая область отслеживаемости данных

Внедрение отслеживаемости данных на уровне озера данных эффективнее, чем на уровне хранилища. Оно дает дата-инженерам более глубокое представление о проблемах, которые могут произойти на каждом из уровней рабочего процесса.

Конечно, у разных компаний разные потребности, поэтому важен индивидуализированный подход к внедрению отслеживаемости данных, чтобы это соответствовало нуждам конкретной организации.

  1. Акцент на ошибках метаданных.

Существуют два типа проблем с данными: ошибки метаданных и ошибки данных:

  • Ошибки метаданных – это ошибки описания данных: проблемы в структуре, объеме или профиле данных. Основные причины ошибок метаданных: некорректные или устаревшие данные, изменения в структуре, объеме или профиле данных.

  • Ошибки данных — это проблемы с самими данными. Они приводят к прямым убыткам компании и ошибочным решениям руководства. К распространенным ошибкам относят проблемы с полнотой данных, их согласованностью, аномалиями и непротиворечивостью.

Эти два типа ошибок приводят к проблемам в принятии решений и замедляют рабочий процесс.

Отслеживаемость данных в основном направлена на устранение ошибок метаданных. Но по нашим оценкам, они составляют лишь 20-30% всех проблем, с которыми сталкиваются дата-инженеры. В теории, ошибки данных можно выявить при улучшении качества данных, но программы управления качеством данных часто не помогают находить и решать такие проблемы

Чаще всего такое случается, потому что большинство программ работает с хранилищами и витринами данных. И это уже слишком поздно, чтобы предотвратить последствия для бизнеса.

По нашему опыту, большинство компаний работают с управлением рисками на основе прошлого опыта, потому что так проще. Но это лишь верхушка айсберга. Распространенные проверки полноты, целостности, дублирования и диапазона данных действительно помогают находить ошибки. Но они часто упускают другие проблемы, например в связях между столбцами, неверных записях и дрейфе данных.

Благодаря развитию облачных технологий, за последние пару лет сильно выросло количество источников, процессов и программ для анализа больших данных. И чтобы избежать ошибок, каждому из них нужен надежный контроль качества. Ведь дата-инженеры могут оперативно добавлять сотни источников данных в систему. Но специалистам по качеству нужны одна-две недели, чтобы внедрить необходимые проверки по каждому новому источнику. Часто они физически не могут обработать все активы данных и проверить их качество.

Что такое надежность данных и как внедрить ее в работу компании?

Надежность данных устраняет разрыв между отслеживаемостью данных и их качеством. При проверке надежности данных используют алгоритмы машинного обучения, чтобы создать уникальные метки данных. Если в данных обнаружены отличия от уникальных меток,, система отмечает это как ошибку. Это позволяет на уровне записей найти ошибки данных, а не метаданных. Проверка надежности данных – это поиск ошибок с помощью машинного обучения, а не живых специалистов. И такой подход ускоряет обработку данных и повышает ее эффективность.

Проверка надежности находит следующие проблемы качества данных:

  • Грязные данные. Это данные с недопустимыми значениями, например, неверные почтовые индексы, отсутствие номеров телефонов и прочее.

  • Отсутствие полноты данных. Например, клиенты без адресов или строки заказа без идентификационных кодов товаров.

  • Наличие противоречивых данных. Обнаружение данных, которые противоречат друг другу: к примеру, записей с разным форматом дат или числовыми значениями.

  • Несоблюдение уникальности данных: например, обнаружение дублирующих записей.

  • Наличие аномалий. Например, обнаружение записей с аномальными значениями в критически важных столбцах.

У проверки надежности данных есть два преимущества. Во-первых, она не требует участия человека для написания правил. Можно проверить большое количество рисков обработки данных без особых усилий. Во-вторых, проверку надежности можно развернуть сразу в нескольких точках обработки данных. Благодаря этому дата-инженеры могут масштабировать работу и вовремя реагировать на возникающие проблемы.

Исходные системы – Озеро необработанных данных – Конвейер – Озеро обработанных данных – Конвейер – Хранилище данных – [Конвейер – Витрина данных]*  – Аналитические отчеты

* Область контроля качества данных
** Рекомендуемая область отслеживаемости данных
*** Рекомендуемая область надежности данных
Исходные системы – Озеро необработанных данных – Конвейер – Озеро обработанных данных – Конвейер – Хранилище данных – [Конвейер – Витрина данных]*  – Аналитические отчеты * Область контроля качества данных ** Рекомендуемая область отслеживаемости данных *** Рекомендуемая область надежности данных

Программы проверки качества данных будут существовать параллельно и использоваться по необходимости. А проверка надежности данных может стать основой для хорошего качества и высокой отслеживаемости данных в архитектуре.

Вывод

Высокое качество данных — важный фактор для успешной работы компании. И есть несколько причин, почему отслеживаемость и качество данных не обнаруживают и не предотвращают ошибки данных. Это человеческий фактор, недостатки самих рабочих процессов и ограничения технологий.

Проверка надежности данных убирает пространство между качеством и отслеживаемостью. А благодаря обнаружению ошибок данных на ранних этапах анализа, дата-инженеры могут предотвращать проблемы в работе системы.

Комментарии (2)


  1. Ivan22
    12.10.2022 13:47
    +2

    Воды налито много, по факту хочется конкретных примеров проверенных рабочих решений:

    1. Что делать с обнаруженными "Грязными данными" ??? Просто найти их и жить с ними дальше? Отправлять на почту счастливчику список для ручной правки? Просто выкидывать их из расчетов?

    2. Что делать с Наличием противоречивых данных ?? Решить что один источник выжнее другого?? Или написчать владельцам систем источников противоречивой информации чтобы разобрались??? Или просто жить с этим?

    3. Что делать с "Наличием аномалий" ?? Остановить весь процес расчетов - и ждать пока кто-то их поправит??? Или пропустить в отчет? Или тихонько удалить из отчета??


  1. avf48
    13.10.2022 10:19

    Я бы рекомендовал ознакомиться с профильной документацией по качеству данных, рисках и ЖЦС.

    ГОСТ Р ИСО МЭК 25010-2015 Информационные технологии (ИТ). Системная и программная инженерия. Требования и оценка качества систем и программного обеспечения (SQuaRE). Модели качества систем и ПП

    ГОСТ Р 56216-2014 Качество данных. Часть 311. Руководство по применению качества данных при описании продукции

    ГОСТ Р 51168-98 Качество служебной информации. Условные обозначения элементов технологических процессов переработки данных

    Согласны ли вы с автором материала?

    Не со всем, тк Качество данных, зависит исключительно от Качества управления. Это важно, но это только следствие управления. И хорошо бы для оценки использовать стат методы.