Data lineage: откуда взялась цифра в отчёте и кто за неё отвечает
Трассировка показателей как основа доверия к аналитике - не технический каприз, а управленческая необходимость.
На планёрке показывают отчёт. Один из участников спрашивает: "А почему здесь 4,7 миллиона, а в той таблице, которую я смотрел вчера, было 5,1?" Пауза. Переглядываются. Кто-то говорит: "Наверное, разные периоды". Кто-то другой: "Или разные фильтры". Итог: цифрам не верят, решение откладывается.
Это не технический сбой. Это отсутствие того, что называется data lineage - возможности проследить, откуда берётся число, через какие преобразования оно прошло и кто несёт ответственность за каждый шаг.
Что такое lineage и зачем он нужен
Lineage - это документированная цепочка от источника данных до числа в отчёте. В простейшем виде: из какой таблицы взяли данные, как их отфильтровали, как агрегировали, когда обновили.
Зачем это нужно руководителю - не аналитику, а именно руководителю? Потому что без этого невозможно обоснованно доверять числам. Аналитик говорит "всё правильно" - но это утверждение невозможно проверить независимо. Когда что-то не сходится, разбор занимает часы и дни. А в сложных случаях - вообще не приходит к однозначному ответу. Об исходном слое этой проблемы - грязных справочных данных, которые ломают любой отчёт ещё до того, как дело доходит до lineage, - стоит думать отдельно.
Lineage превращает "доверяю, потому что человек говорит" в "доверяю, потому что могу проверить".
Как выглядит мир без lineage
В большинстве компаний, с которыми я работал, картина примерно одинаковая:
- несколько отчётов по одному и тому же показателю дают разные числа;
- никто не знает наверняка, какой из них правильный;
- есть "человек, который это считает" - и пока он в компании, всё работает;
- когда он уходит или уходит в отпуск - начинается хаос;
- при подключении новой системы выясняется, что логика расчётов нигде не записана.
Это называется bus factor - когда знание о том, как устроены данные, сосредоточено в голове одного человека. Lineage - это способ вытащить это знание наружу.
Как устроен lineage на практике
Полноценный lineage не обязательно требует специализированного инструмента. Начинать можно с простых вещей:
- каждый ключевой показатель должен иметь описание: что именно считается, за какой период, какие исключения;
- каждый источник данных для отчёта должен быть назван явно;
- если данные проходят преобразование - это преобразование должно быть задокументировано или, лучше, записано в коде;
- каждый отчёт должен иметь дату последнего обновления и имя ответственного.
Это звучит просто. На практике компании годами не делают даже этого.
Кто отвечает за число
Lineage без ответственности - это словарь без автора. Второй элемент - data ownership: у каждого ключевого показателя должен быть конкретный человек, который:
- знает, как он считается;
- следит за тем, чтобы расчёт не ломался при изменениях в системах;
- объясняет расхождения, когда они появляются.
Это не обязательно аналитик. Это может быть руководитель коммерческого отдела, который отвечает за выручку, или начальник производства, который отвечает за простои. Главное - что есть конкретное имя.
Признаки того, что lineage пора навести
Несколько вопросов, которые помогают понять, где стоит начать:
- Если уволится человек, который делает главный отчёт, - сможет ли кто-то воспроизвести его с нуля за неделю?
- Если в отчёте появится ошибка, как быстро её найдут и исправят?
- Можно ли объяснить директору, откуда берётся каждое ключевое число, не теряя больше пяти минут?
- Когда два отчёта расходятся, есть ли процедура, которая даёт однозначный ответ?
Если хотя бы на половину из этих вопросов ответ "нет" - это не проблема технологий. Это проблема порядка в данных, и она решается не внедрением новой системы, а наведением ответственности и документированием того, что уже есть.