В рубрике интересных инструментов работы с данными, datanomy утилита для командной строки для просмотра метаданных и данных внутри Parquet файлов. Простая штука, работает на базе фреймворка Textual для создания утилит командной строки и позволяет смотреть разную информацию включая схему, метаданные, данные и статистику по выбранному parquet файлу.
Инструментов для наглядного отображения Parquet файлов не так много, хотя и прибавляется. Этот выглядит как полезный.
#opensource #datatools #parquet
Инструментов для наглядного отображения Parquet файлов не так много, хотя и прибавляется. Этот выглядит как полезный.
#opensource #datatools #parquet
👍7
AgenticSeek альтернатива Manus умеющая выполнять разные, в том числе довольно сложные задачи требующие запуска приложений и браузера иных агентских операций. Важное отличие - открытый код и локальный (приватный) запуск.
#opensource #ai #privacy #llm #tools #datatools
#opensource #ai #privacy #llm #tools #datatools
✍10🔥1
После экспериментов с простым кодом, я постепенно добрался до тех инструментов которые используются внутри Dateno для сбора данных. Один из них это утилита apibackuper которая помогает вытащить данные публикуемые через API и сохранять их в виде датасета. Фактически это инструмент скрейпинга API через декларативное описание параметров скрейпинга (да, я люблю декларативные описания). У инструмента был ряд недостатков которые я исправлял и думаю что исправил, вот перечень изменений:
- переход от декларативного описания скрейперов с INI (.cfg) файлов на YAML, читать легче, синтаксис приятнее
- валидация YAML описаний через JSON схему
- поддержка ограченичений и таймаутов на число запросов в минуту (Rate Limiting)
- поддержка аутентификации к API
- экспорт данных не только в JSONL, но и в Parquet
- автоопределение формата экспорта данных по расширению файла
- массовое обработка исключений и понятные сообщения об ошибках везде где возможно
- тесты для покрытия большей части кода
- подробная документация
- и всякое по мелочи
Я этот инструмент изначально разрабатывал для для архивации данных публикуемых через API, но сейчас он используется в части кода Dateno для выгрузки метаданных из каталогов данных. Может его даже пора уже перенести из ruarxive в dateno на Github'е, ещё не решил.
На скриншоте то как это выглядит на примере реестра лекарственных средств ЕСКЛП
Для сбора данных достаточно выполнить две команды
- apibackuper run
- apibackuper export current.parquet
Первая выгрузит все данные постранично, вторая сохранит выгруженные данные в parquet файл.
#opensource #datatools #data #dataengineering
- переход от декларативного описания скрейперов с INI (.cfg) файлов на YAML, читать легче, синтаксис приятнее
- валидация YAML описаний через JSON схему
- поддержка ограченичений и таймаутов на число запросов в минуту (Rate Limiting)
- поддержка аутентификации к API
- экспорт данных не только в JSONL, но и в Parquet
- автоопределение формата экспорта данных по расширению файла
- массовое обработка исключений и понятные сообщения об ошибках везде где возможно
- тесты для покрытия большей части кода
- подробная документация
- и всякое по мелочи
Я этот инструмент изначально разрабатывал для для архивации данных публикуемых через API, но сейчас он используется в части кода Dateno для выгрузки метаданных из каталогов данных. Может его даже пора уже перенести из ruarxive в dateno на Github'е, ещё не решил.
На скриншоте то как это выглядит на примере реестра лекарственных средств ЕСКЛП
Для сбора данных достаточно выполнить две команды
- apibackuper run
- apibackuper export current.parquet
Первая выгрузит все данные постранично, вторая сохранит выгруженные данные в parquet файл.
#opensource #datatools #data #dataengineering
✍4⚡2
Продолжая рассказывать про применение ИИ агентов для разработки, после экспериментов на не самом критичном коде я добрался до обновления реестра дата каталогов в Dateno и могу сказать что результаты пока что хорошие.
Вплоть до того что ИИ агент способен сформировать карточку дата каталога просто передав ему ссылку и задав промпт сгенерировать его описание. Это работает, во многом, потому что уже есть больше 10 тысяч созданных карточек и поскольку есть чёткие спецификации схем ПО дата каталогов, самих описаний дата каталогов и тд.
Кроме того хорошо отрабатывают задачи которые:
- находят ошибки в метаданных дата каталогов
- находят и исправляют дубликаты записей
- обогащают карточки каталогов тематиками и тэгами
- исправляют геоклассификацию каталогов
- и многое другое что предполагает массовое исправление и обогащение данных
Лично для меня и Dateno это очень хорошая новость это означает что реестр (dateno.io/registry) можно вести теперь значительно меньшими личными усилиями.
В ближайшее время я сделаю очередное обновление реестра уже по итогам большого числа итераций обновления метаданных и качество реестра существенно вырастет. А оно влияет и на индекс Dateno и на сам продукт реестра дата каталогов.
P.S. Тут я описываю внутренности происходящего в Dateno, которым я занимаюсь как основным проектом и продуктом. А новости проекта всегда можно читать в LinkedIn
#opendata #datacatalogs #ai #dev #datatools
Вплоть до того что ИИ агент способен сформировать карточку дата каталога просто передав ему ссылку и задав промпт сгенерировать его описание. Это работает, во многом, потому что уже есть больше 10 тысяч созданных карточек и поскольку есть чёткие спецификации схем ПО дата каталогов, самих описаний дата каталогов и тд.
Кроме того хорошо отрабатывают задачи которые:
- находят ошибки в метаданных дата каталогов
- находят и исправляют дубликаты записей
- обогащают карточки каталогов тематиками и тэгами
- исправляют геоклассификацию каталогов
- и многое другое что предполагает массовое исправление и обогащение данных
Лично для меня и Dateno это очень хорошая новость это означает что реестр (dateno.io/registry) можно вести теперь значительно меньшими личными усилиями.
В ближайшее время я сделаю очередное обновление реестра уже по итогам большого числа итераций обновления метаданных и качество реестра существенно вырастет. А оно влияет и на индекс Dateno и на сам продукт реестра дата каталогов.
P.S. Тут я описываю внутренности происходящего в Dateno, которым я занимаюсь как основным проектом и продуктом. А новости проекта всегда можно читать в LinkedIn
#opendata #datacatalogs #ai #dev #datatools
GitHub
GitHub - commondataio/dataportals-registry: Registry of data portals, catalogs, data repositories including data catalogs dataset…
Registry of data portals, catalogs, data repositories including data catalogs dataset and catalog description standard - commondataio/dataportals-registry
✍8❤3🔥3🎉2
Ещё про официальную статистику, есть важный тренд о котором я писал пока что мало - это отделение данных от их представления. Официальная статистика чаще всего строится как цельные системы в которых сразу есть и возможность получения данных и их визуальное представление.
А за это время появились десятки стартапов и сервисов которые наглядность обеспечивают значительно лучше официальные статистические сервисы, например, я довольно давно слежу за сервисом PlotSet с их интерактивными графиками. Очень наглядные штуки они генерируют в очень короткие сроки. При этом я не призываю использровать именно их, есть и другие варианты, и многие из них создаются с помощью ИИ агентов.
Ключевое тут в отделении данных от представления. Отдельно данные и API и отдельно интерактивный сервис на них основанный. Для популяризации официальной статистики такое разделение может быть эффективнее любых монолитных централизованных платформ.
Интересно, кстати, есть ли альтернативы PlotSet с открытым кодом?
#dataviz #statistics #datatools
А за это время появились десятки стартапов и сервисов которые наглядность обеспечивают значительно лучше официальные статистические сервисы, например, я довольно давно слежу за сервисом PlotSet с их интерактивными графиками. Очень наглядные штуки они генерируют в очень короткие сроки. При этом я не призываю использровать именно их, есть и другие варианты, и многие из них создаются с помощью ИИ агентов.
Ключевое тут в отделении данных от представления. Отдельно данные и API и отдельно интерактивный сервис на них основанный. Для популяризации официальной статистики такое разделение может быть эффективнее любых монолитных централизованных платформ.
Интересно, кстати, есть ли альтернативы PlotSet с открытым кодом?
#dataviz #statistics #datatools
👏3🤝3⚡2
Для тех кто анализирует данные и тд. я масштабно обновил инструмент metacrafter https://github.com/apicrafter/metacrafter по идентификации семантических типов данных, включая персональные данные по многим странам и языка.
Что изменилось:
- добавлено много новых правил и обновлены имеющиеся
- сильно оптимизирован код для ускорения мэтчинга правил
- добавлена возможность фильтрации правил по стране (страна указывается в файле правил)
- добавлено множество опций для командной строки
Изменений много, они могут давать ложные срабатывания потому что некоторые правила таковы что много что под них может подпасть, поэтому управление правилами и улучшилось с точки зрения фильтрации по стране.
Собственно сами правила тоже обновились https://github.com/apicrafter/metacrafter-rules
Это не финальные изменения, а подготовка кода к интеграцию в Dateno.
#opensource #datatools #dataengineering
Что изменилось:
- добавлено много новых правил и обновлены имеющиеся
- сильно оптимизирован код для ускорения мэтчинга правил
- добавлена возможность фильтрации правил по стране (страна указывается в файле правил)
- добавлено множество опций для командной строки
Изменений много, они могут давать ложные срабатывания потому что некоторые правила таковы что много что под них может подпасть, поэтому управление правилами и улучшилось с точки зрения фильтрации по стране.
Собственно сами правила тоже обновились https://github.com/apicrafter/metacrafter-rules
Это не финальные изменения, а подготовка кода к интеграцию в Dateno.
#opensource #datatools #dataengineering
GitHub
GitHub - apicrafter/metacrafter: Metadata and data identification tool and Python library. Identifies PII, common identifiers,…
Metadata and data identification tool and Python library. Identifies PII, common identifiers, language specific identifiers. Fully customizable and flexible rules - apicrafter/metacrafter
👍3❤1🔥1