В феврале я писал о том что федеральные органы власти очень халтурно публикуют данные из информационных систем в их ведении. Причём на фоне разговоров про цифровую трансформацию - это всё несколько комично.
Например, в феврале этого года я писал [1] про то что Минцифра очень халатно относится к ведению реестра аккредитованных ИТ компаний и не обновляли его 5 лет. Как думаете что произошло? Его начали обновлять и даже обновили в марте, апреле и в мае, а потом на него забили и не обновляли аж до августа месяца. А то что опубликовали в августе [2], а то что опубликовано вместо кодов ОГРН значения вроде "1,05E+12". Как так получается? Так получается когда экспорт данных делают: а) Из Excel. б) Без знания Excel. в) Не перепроверяют.
Буду краток: работа халатная, сроки нарушены, данные непригодны.
P.S. В реестре в Excel тоже есть ошибки и их, ожидаемо, не исправили.
Ссылки:
[1] https://yangx.top/begtin/2595
[2] https://digital.gov.ru/opendata/7710474375-registergosaccred/download/
#opendata #dataquality
Например, в феврале этого года я писал [1] про то что Минцифра очень халатно относится к ведению реестра аккредитованных ИТ компаний и не обновляли его 5 лет. Как думаете что произошло? Его начали обновлять и даже обновили в марте, апреле и в мае, а потом на него забили и не обновляли аж до августа месяца. А то что опубликовали в августе [2], а то что опубликовано вместо кодов ОГРН значения вроде "1,05E+12". Как так получается? Так получается когда экспорт данных делают: а) Из Excel. б) Без знания Excel. в) Не перепроверяют.
Буду краток: работа халатная, сроки нарушены, данные непригодны.
P.S. В реестре в Excel тоже есть ошибки и их, ожидаемо, не исправили.
Ссылки:
[1] https://yangx.top/begtin/2595
[2] https://digital.gov.ru/opendata/7710474375-registergosaccred/download/
#opendata #dataquality
Интересные стартапы анализа качества данных и качества потоков данных, развивающиеся в мире, но пока малоприменимые в России.
* Metaplane - позиционируют себя как Datadog для данных, позводяют отслеживать резкие изменения в потоках данных и предупреждать при их возникновении. Подключаются к облачным хранилищам и сервисам вроде Amazon Redshift, Snowflake, Google BigQuery, dbt, Looker. Публикуют полезный обзор State of data quality monitoring
* Anomalo - сервис мониторинга аномалий в данных, на текущий момент существует в виде концепта/прототипа/демо, обещают высокую автоматизацию, если даже не автоматическое выявление аномалий в потоках данных
* Data Fold - сервис каталогизации, систематизации данных и предупреждений при нарушениях в потоках данных. У них фокус на такое явление как data outages - задержки в поставках данных и оперативное реагирование. Сервисы с которыми интегрируются практически те же что и у Metaplane
* Databand - платформа для наблюдаемости данных, data observability, с большим списком интегрируемых сервисов и системами предупреждений при аномалиях
Почему практически все они малоприменимы в Росии? Такие платформы оказываются полезны только когда компания уже перенесла или переносит мощности по обработке данных в облака. Когда хранение данных уже вынесено из внутрикорпоративного контура, гораздо легче принимается решение о их внешнем мониторинге и обработке. В России этот тренд всё ещё не настолько проявляется, но постепенно он формируется.
#observability #data #dataquality
* Metaplane - позиционируют себя как Datadog для данных, позводяют отслеживать резкие изменения в потоках данных и предупреждать при их возникновении. Подключаются к облачным хранилищам и сервисам вроде Amazon Redshift, Snowflake, Google BigQuery, dbt, Looker. Публикуют полезный обзор State of data quality monitoring
* Anomalo - сервис мониторинга аномалий в данных, на текущий момент существует в виде концепта/прототипа/демо, обещают высокую автоматизацию, если даже не автоматическое выявление аномалий в потоках данных
* Data Fold - сервис каталогизации, систематизации данных и предупреждений при нарушениях в потоках данных. У них фокус на такое явление как data outages - задержки в поставках данных и оперативное реагирование. Сервисы с которыми интегрируются практически те же что и у Metaplane
* Databand - платформа для наблюдаемости данных, data observability, с большим списком интегрируемых сервисов и системами предупреждений при аномалиях
Почему практически все они малоприменимы в Росии? Такие платформы оказываются полезны только когда компания уже перенесла или переносит мощности по обработке данных в облака. Когда хранение данных уже вынесено из внутрикорпоративного контура, гораздо легче принимается решение о их внешнем мониторинге и обработке. В России этот тренд всё ещё не настолько проявляется, но постепенно он формируется.
#observability #data #dataquality
www.metaplane.dev
Metaplane by Datadog | Data Observability for Modern Data Teams
Metaplane is a data observability platform that helps data teams know when things break, what went wrong, and how to fix it.
В рубрике инструментов работы с данными, об инструментах с открытым кодом для работы над качеством данных.
- OpenRefine - инструмент для ручной/автоматизированной очистки наборов данных. Работает преобразуя их в плоские таблицы, поддерживает Excel/CSV/JSON/JSON lines и другие форматы. Позволяет проводить довольно гибкие преобразования по отдельным колонкам. Основан на продукте Google Refine, когда-то переданным компанией в open source.
- Great Expectations - "Большие ожидания", библиотека для языка Python, одна из наиболее активно используемых для автоматической валидации значений в наборах данных, потоках данных, data pipelines и не только.
- Soda-SQL - инструмент с открытым кодом для создания метрик и тестирования данных в SQL базах данных. Поддерживает несколько SQL баз данных и несколько базовых видов/типов полей. Умеет анализировать данные в СУБД и на основе этого рекомендовать автоматизированные тесты.
- Re-data - инструмент подсчёта метрик и проверки качества данных в SQL базах данных. Включает возможность активного мониторинга данных.
- ODD Platform - Open Data Discovery Platform, включает механизмы проверки качества данных, а сама платформа делается на основе ODD Spec спецификации описания метаданных. Здесь Open Data Discovery - это [Open] [Data Discovery], не открытые данные, а открытое обнаружение данных.
—
Я от себя добавлю что часто инструменты контроля качества данных сильно замедляют работу с данными если они не оптимизированы. К примеру Soda-SQL и Great Expectations, скажем так, имеют большие возможности по их ускорению, потому про по умолчанию заложенные там проверки через регулярные выражения можно сильно оптимизировать. К примеру, решая похожие задачи по классификации данных в DataCrafter'е, могу сказать что там вообще нет регулярных выражений, но и нет жесткой закодированности идентифицирующих типы данных правил. Вместо них некий аналог RegExp'ов работающий многократно быстрее.
Много лет назад я подумывал написать свой движок для обработки регулярных выражений в контексте, оптимизированный под результаты предыдущих сравнений. К примеру, у тебя есть несколько тысяч регулярных выражений на соответствие которым надо проверить конкретную строку/текст. Как сделать это быстро? Идеальный сценарий - индекс построенный по этим регулярным выражениям и построение конечного автомата по проверке, неидеальный сценарий - хотя бы зависимости между регулярными выражениями и автоматический отсев каких-то сравнений после других сравнений (кривой аналог построения индекса, на самом деле).
В частных случаях задача решается. Лично я её решал и решил для сравнений связанных с датами и строками размера до 50 символов довольно грубым способом на 50% состоящим из замены регулярных выражений на их сборный конструктор-аналог и на 50% заменой индекса на код по предпроцессингу входящего потока. Результаты 3 года назад опубликовал в виде библиотеки для Python qddate, там не все наработки, но значительная часть по распознаванию дат в любых форматах. Поэтому можно ли ускорить проверку качества данных и расчёт метрик по миллиардам записей в базах данных? Конечно можно и значительно!
#opendata #metadata #dataquality #datatools #tools
- OpenRefine - инструмент для ручной/автоматизированной очистки наборов данных. Работает преобразуя их в плоские таблицы, поддерживает Excel/CSV/JSON/JSON lines и другие форматы. Позволяет проводить довольно гибкие преобразования по отдельным колонкам. Основан на продукте Google Refine, когда-то переданным компанией в open source.
- Great Expectations - "Большие ожидания", библиотека для языка Python, одна из наиболее активно используемых для автоматической валидации значений в наборах данных, потоках данных, data pipelines и не только.
- Soda-SQL - инструмент с открытым кодом для создания метрик и тестирования данных в SQL базах данных. Поддерживает несколько SQL баз данных и несколько базовых видов/типов полей. Умеет анализировать данные в СУБД и на основе этого рекомендовать автоматизированные тесты.
- Re-data - инструмент подсчёта метрик и проверки качества данных в SQL базах данных. Включает возможность активного мониторинга данных.
- ODD Platform - Open Data Discovery Platform, включает механизмы проверки качества данных, а сама платформа делается на основе ODD Spec спецификации описания метаданных. Здесь Open Data Discovery - это [Open] [Data Discovery], не открытые данные, а открытое обнаружение данных.
—
Я от себя добавлю что часто инструменты контроля качества данных сильно замедляют работу с данными если они не оптимизированы. К примеру Soda-SQL и Great Expectations, скажем так, имеют большие возможности по их ускорению, потому про по умолчанию заложенные там проверки через регулярные выражения можно сильно оптимизировать. К примеру, решая похожие задачи по классификации данных в DataCrafter'е, могу сказать что там вообще нет регулярных выражений, но и нет жесткой закодированности идентифицирующих типы данных правил. Вместо них некий аналог RegExp'ов работающий многократно быстрее.
Много лет назад я подумывал написать свой движок для обработки регулярных выражений в контексте, оптимизированный под результаты предыдущих сравнений. К примеру, у тебя есть несколько тысяч регулярных выражений на соответствие которым надо проверить конкретную строку/текст. Как сделать это быстро? Идеальный сценарий - индекс построенный по этим регулярным выражениям и построение конечного автомата по проверке, неидеальный сценарий - хотя бы зависимости между регулярными выражениями и автоматический отсев каких-то сравнений после других сравнений (кривой аналог построения индекса, на самом деле).
В частных случаях задача решается. Лично я её решал и решил для сравнений связанных с датами и строками размера до 50 символов довольно грубым способом на 50% состоящим из замены регулярных выражений на их сборный конструктор-аналог и на 50% заменой индекса на код по предпроцессингу входящего потока. Результаты 3 года назад опубликовал в виде библиотеки для Python qddate, там не все наработки, но значительная часть по распознаванию дат в любых форматах. Поэтому можно ли ускорить проверку качества данных и расчёт метрик по миллиардам записей в базах данных? Конечно можно и значительно!
#opendata #metadata #dataquality #datatools #tools