Для команд специалистов DS сломанные конвейеры данных, шаткие информационные панели и пожарные учения в 5 часов утра – это норма, особенно потому, что рабочие процессы принимают всё больше и больше данных из разрозненных источников. Черпая вдохновение в разработке программного обеспечения, мы называем это явление простоем данных – но как упреждающе, в первую очередь предотвратить появление плохих данных?

В этой статье я поделюсь тремя ключевыми стратегиями, которыми пользуются некоторые лучшие компании Data Science, чтобы восстановить доверие к своим данным.



Недавно один из моих клиентов спросил: «Как предотвратить простои данных?». Этот клиент был руководителем отдела данных в медиакомпании, где работает 3000 человек, его команда отвечала за ежедневное предоставление терабайтов данных сотням заинтересованных сторон. Учитывая масштаб и скорость, с которой данные перемещались,  простои данных, другими словами, периоды, когда данные полностью или частично отсутствуют, данные ошибочны или неточны по иным причинам, были слишком распространённым явлением.

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

Как возникает проблема


Идея предотвращения простоев – на самом деле стандартная практика во многих отраслях, которые в бизнесе полагаются на функционирующие системы, от профилактического обслуживания на производстве до мониторинга ошибок в разработке программного обеспечения (ох, эта коса смерти ужасающей страницы 404…).

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

К счастью, есть надежда. Некоторые самые дальновидные команды дата-сайентистов разработали лучшие практики, чтобы предотвращать простои данных, остановки конвейеров и неточные данные дашбордов до того, как CEO спросит: «Что здесь произошло?!».

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

1. Тестируйте данные. И ещё немного тестируйте


Ноутбук MacBook Pro, на весь экран открыта среда разработки с двумя окнами кода слева и справа. Слева HTML, код справа размыт
Для большинства групп специалистов DS тестирование – это первая линия защиты от неверных данных.

В 2021 году тестирование данных – это необходимый минимум, который вы должны предложить клиенту, чтобы он рассмотрел ваше предложение. Точно так же, как инженеры-программисты тестируют свой код, команды дата-сайентистов должны проверять свои данные на каждом этапе конвейера путём сквозного тестирования. По сути, тестирование помогает определить, работают ли Ваши данные и код так, как предполагается.

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

Хотя тестирование данных – первый шаг на пути предотвращения простоев данных, само по себе этого недостаточно. Данные, в частности неструктурированные данные, сложны и постоянно эволюционируют – причина в том, что большая часть этих данных часто поступает из внешних источников, которые ваша команда не контролирует. Тестирование даёт хороший индикатор проблем, но на тестирование всех наборов данных на каждом этапе каждого конвейера в современных компаниях потребуется нереальное количество времени и сил.

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

2. Поймите, откуда данные происходят и как влияют на процесс


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

Зачастую простой данных – это непреднамеренное следствие невинного изменения, далёкого от конечного потребителя, полагающегося на информационный актив, о котором ни один из членов команды DS даже не знал. Это прямой результат плохой передачи данных – я назвала это проблемой «Вы пользуетесь этой таблицей?!».

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

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

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

3. Метаданные должны стать приоритетом, относитесь к ним как к единому целому


Панель с деталями запроса: его метаданные и время, когда он был выполнен, в два столбца
Метаданные могут помочь разрешить инциденты с данными.

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

Однако до недавнего времени с метаданными обращались, как с пустыми ящиками посылок Amazon, которые вы хотели приспособить под что-то, но только копили их и вскоре забывали.

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

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

Будущее простоя данных


Происхождение данных таблицы web_events_tbl
Происхождение данных, которое можно проследить, позволяет группам специалистов Data Science видеть поток их данных от приёма, преобразования и тестирования до производства, включая преобразования, моделирование и другие этапы процесса.

Итак, что же нам остаётся, когда речь идёт о воплощении нашей мечты о мире без простоя данных?

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

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



image