Хороший текст Hyparquet: The Quest for Instant Data от команды Hyperparam о специфике parquet файлов которой они воспользовались для оптимизации их отображения в браузере, как они сами называют browser-first подход к отображению данных и работы с ними с помощью WASM. Видно что автор и сама команда хорошо понимают и структуру parquet файлов (там метаданные записаны в конце файла), и то как работает сжатие и то как оптимизируется код для WASM.
Тот случай когда множество технологических оптимизаций дают хороший результат. Ну и большим плюсом является наличие открытого кода и дизайн local-first
#opensource #data #datatools
Тот случай когда множество технологических оптимизаций дают хороший результат. Ну и большим плюсом является наличие открытого кода и дизайн local-first
#opensource #data #datatools
👍6
В качестве регулярных напоминаний, какое-то время назад я разрабатывал инструмент под названием metacrafter это специальная библиотека для Python, утилита и сервер для идентификации семантических типов данных, удобная для идентификации того что содержится к конкретном поле конкретной базы данных и вспомогательный инструмент для определения персональных данных и другого осмысленного содержания. У него есть достаточно широкий набор общедоступных правил на основе которых он работает.
В его основе принцип local-only, все его правила описываются в YAML файлах которые могут быть описаны как простые перечисления, регулярные выражения (через синтаксис pyparsing) или как функции для Python.
Правил там сейчас 262 для идентификации по наименованиям полей и по их содержанию и ещё 312 для идентификации дат на разных языках по содержанию текста.
Утилита поддерживает любую базу данных через SQLAlchemy и MongoDB, а также файлы CSV, Parquet, JSONL и тд. в том числе в сжатом виде gz, zst, xz и тд.
Более 105 правил сделаны именно под данные связанные с русскоязычными кодами и идентификаторами.
Сейчас, конечно, её надо переосмыслять для применения ИИ поскольку с помощью LLM можно сильно повысить качество её работы, но тогда она перестанет быть инструментом local-only, а станет local-first через опциональное подключение API LLM для анализа данных.
Сейчас, у меня больше всего времени уходит на Dateno поэтому инструмент я хоть и не забросил, но скорее использую её на внутренних данных чем наполняю новыми функциями и правилами.
Если Вы ей пользуетесь, напишите что в ней для полезно, а чего не хватает.
#opensource #data #datatools #dataengineering
В его основе принцип local-only, все его правила описываются в YAML файлах которые могут быть описаны как простые перечисления, регулярные выражения (через синтаксис pyparsing) или как функции для Python.
Правил там сейчас 262 для идентификации по наименованиям полей и по их содержанию и ещё 312 для идентификации дат на разных языках по содержанию текста.
Утилита поддерживает любую базу данных через SQLAlchemy и MongoDB, а также файлы CSV, Parquet, JSONL и тд. в том числе в сжатом виде gz, zst, xz и тд.
Более 105 правил сделаны именно под данные связанные с русскоязычными кодами и идентификаторами.
Сейчас, конечно, её надо переосмыслять для применения ИИ поскольку с помощью LLM можно сильно повысить качество её работы, но тогда она перестанет быть инструментом local-only, а станет local-first через опциональное подключение API LLM для анализа данных.
Сейчас, у меня больше всего времени уходит на Dateno поэтому инструмент я хоть и не забросил, но скорее использую её на внутренних данных чем наполняю новыми функциями и правилами.
Если Вы ей пользуетесь, напишите что в ней для полезно, а чего не хватает.
#opensource #data #datatools #dataengineering
👍13