Ivan Begtin
9.1K subscribers
2.75K photos
5 videos
116 files
5.63K links
I write about Open Data, Data Engineering, Government, Privacy, Digital Preservation and etc.

CTO&Founder of Dateno https://dateno.io

Telegram @ibegtin
Facebook - https://facebook.com/ibegtin
Email ivan@begtin.tech

Ads/promotion agent: @k0shk
Download Telegram
Я тут выложил свежие версии инструментов с открытым кодом для работы с данными iterabledata библиотеки для построчного чтения и записи данных из более чем 140 форматов файлов данных и undatum инструмент швейцарский нож для работы с данными в командной строке которые использует iterabledata для чтения, обработки и преобразования.

В iterabledata добавлено:
- поддержка множества новых форматов геоданных, научных данных и тд. таких как (fgdb/gdb), MapInfo MIF, Esri ASCII Grid (asc), ArcInfo E00, LAS LiDAR, BAG bathymetry, CZML, XYZ, CIF, PDB, MATLAB MAT, SEG-Y, GRIB2, miniSEED
- поддержка чтения данных из озер данных и где-то записи таких как Apache Poimon и DuckLake
- поддержка записи данных в DeltaLake и Iceberg
- много изменений для повышения производительности чтения и записи Parquet файлов
- исправление множества ошибок и мелкие правки

В undatum добавлено:
- новая команда repack позволяет переупаковать дата файлы для большего сжатия. Если это формат parquet/orc/avro то использует внутренний кодек, если это файл сжатый Gzip, Bzip2 и тд. то пересжимает его. Нужно, в основном, для ситуаций когда надо пересжать слабо сжатые дата файлы вроде Parquet
- добавлена команда db dump по экспорту таблицы из базы данных сразу в Parquet/CSV/JSONL
- добавлена опция —low-memory для ряда команд для работы с файлами большого размера без чрезмерного использования RAM
- исправлен/модернизирован код генерации API на основе дата файла
- добавление использования DuckDB во многие команды, там где это возможно, для ускорения их работы
- множество мелких изменений и исправлений

#opensource #datatools #dataengineering
✍7❤3👍3
Одно из наблюдаемых мной явлений - это как AI и Data стали почти синонимами и как взлетают по популярности новые инструменты работы с данными и как медленно умирают инструменты периферийные к трендам.

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

Проект изначально был устроен так что работа с данными в нем ведется полностью в памяти и после определенных объемов он не справляется. При этом он позволяет вручную или с помощью синтаксисов Python или GREL (специальный язык для манипуляции данными) править данные в строках и колонках сохраняя полную историю изменений с возможностью их отката.

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

Интересно выживет ли он вообще? Не бросит ли его команда в какой-то момент?

Я как-то рассуждал тут вслух о том что если делать подобный инструмент современными методами, то движок внутри должен быть на базе DuckDB или Polars. Практически все операции можно делать SQL запросами, а вместо кода на GREL можно использовать text-to-SQL формы запросов совмещая инструмент очистки данных с data exploration.

#opensource #opendata #datatools
👍7😢6❤4
Полезные ссылки про данные, технологии и не только:
- Celeris-1 свежая LLM от одноименного стартапа, обещают уровень почти как GPT 5 и гораздо более быстрые ответы. Несколько нестандартное позиционирование, не дешевле токены, не лучше ответы, а именно лучше response time. По моему это не ключевое в LLM, но кто знает.
- Agent swarms and the new model economics текст от команды Cursor который можно свести к выводу что продвинутая модель управляющая командой из непродвинутых моделей дает сравнимый результат при многократно меньших расходах. Полезное знание для тех кто ранее с этим не сталкивался
- Chat2DB визуальный клиент с открытым кодом более чем 30+ СУБД. Выглядит неплохо и похоже что автор его разработал с помощью LLM в короткие сроки. Еще одна демонстрация как современное созданное с помощью ИИ агентов ПО может быстро потеснить существующее.

#opensource #ai #datatools
❤7🔥7
Ещё немного рефлексии про разное сугубо технологическое:
1. Размышляю над тем как надо публиковать датасеты в современном мире и склоняюсь к тому что надо разделять более явным образом понятия набор данных (датасет) и дата продукт. Набор данных становится дата продуктом по мере зрелости его документации, наличия владельца и понятной аудитории/пользователей. Поэтому, к примеру, API Всемирного банка дата продукт, а набор данных на типовом портале открытых данных нет. Дата продукты ближе к корпоративному и профессиональному потреблению данных, наборы данных, в первую очередь открытых данных, всё ещё существуют в режиме "будьте довольны что хоть так это доступно, могли бы вообще ничего не публиковать". Когда я проектировал и делал internacia-db то держал в голове модель именно как курируемого дата продукта. Поэтому там и экспорт в разные форматы, и документация по использованию в разных языках разработки и инструментах и так далее. Что я, действительно, хочу сделать так это попытаться привести этот опыт в систематизированный вид, возможно в спецификацию, reusable datasets или reusable data products.
2. Продолжая размышления про ИИ инструменты для разработки, видно как они быстро развиваются, особенно Cursor с его построением архитектурных холстов (canvas) и пока главное отставание китайских моделей скорее инструментальное чем на уровне возможностей LLM. Когда, к примеру, тот же ZCode от z.ai сможет делать подобное то им можно будет пользоваться уже как приоритетным инструментом.
3. Как я уже описывал ранее, у меня сохраняется и углубляется мнение что вся экосистема инструментов открытых данных сильно отстает от технологий работы с данными и это отставание усиливается. Видно как сообщество, и профильные международные НКОшки, и активисты разделяются. Те кто был про технологии уходят в них и отходят от общественного, те кто про технологии был меньше уходят в темы этики ИИ, европейского цифрового суверенитета и всего подобного. У сообщества открытых данных кризис схожий с кризисом сообществ открытого кода. Все производимое общедоступное идет на корм ИИ агентам и для многих это существенный кризис миросознания.
4. А вот для тех кто делает что-то для общественного интереса всё больше возможностей для создания проектов в режиме человека-оркестра (one-man-projects). К примеру я смотрю на проект "Как голосовали депутаты?" про голосование российских депутатов по отобранным автором(-ами) чувствительным законопроектам и понимаю что почти наверняка всё это сделано одним человеком за 2-3 вечера и с помощью одного из ИИ ассистентов. Это стало реально просто, на такие проекты не нужны иностранные гранты какие-либо финансовые ресурсы, я довольно много их уже видел по европейским странам, по выборам в Армении и тд. Всё что для подобных проектов нужно - это: четкое видение результата, базовые технические навыки и, желательно, аналоги на которые можно ориентироваться. И данные, конечно. Поэтому многие общественные проекты могут/могли бы появляться как на дрожжах и не появляются, не потому что нет технической возможности, а по другим, иным причинам.

#opendata #opensource #ai #thoughts #data #dataproducts
👍15❤5✍3
Новая версия 1.7.0 утилиты undatum для обработки данных с командной строки включая поддержку форматов данных с вложенными структурами такие как JSONL (NDJSON), Parquet, Avro и более 140 других.

Ключевые изменения:
- появился текстовый интерфейс TUI для интерактивной работы с данными. Вызывается как undatum tui <название файла>
- появился веб интерфейс для для просмотра данных. Пока незавершенный, в экспериментальном режиме. Вызывается как undatum web <название файла>
- убраны опции запросов к данным через язык MistQL, вместо него можно использовать синтаксис SQL от DuckDB
- большая синхронизация с опциями и функциями библиотеки iterabledata, в первую очередь в части развертывания вложенных структур, например, для обращения к данным как capital_city.lat где lat - это вложенное поле в структуре capital_city
- множество изменений поменьше

#opensource #datatools #data #dataengineering
🔥8✍4👍4👏1
Полезные ссылки про данные, технологии и не только:
- ClickBench playground рассказ о том как устроен сервис запросов к более чем сотне разных баз данных используемых в бенчмарке ClickBench. И сам бенчмарк очень интересный как сравнение многих СУБД, и игровая площадка полезная
- A Preview of DuckDB v2.0 изменения в DuckDB, то что войдет в версию 2.0. Ключевое это новый парсер SQL, новый формат хранения, серверный вариант, ускорение запросов и еще много всего.
- fx кодирующий агент ориентированный на исследования и встраивание
- Cursor Origin хостинг кода от Cursor'а. Очень логичный шаг, странно что только они из кодирующих агентов такое начали. Думаю что остальные подтянутся. Альтернативы Github'у - это хорошо. А вот складывать все яйца в одну корзину лучше не надо.

#opensource #ai #databases
🔥5✍3👍2🎉1💯1
Много, очень много документации лишней не бывает. Я собрался и актуализировал документацию по разным инструментам. Без ИИ ассистентов делать такое почти невозможно, ибо заставить себя документировать сложно. А документация нужна и для людей и для ИИ агентов которые ее используют.

Итак вот тут документация на разные открытые инструменты о которых я тут часто писал:
- internacia-db - база данных в виде дата продукта по странам и межгосударственным организациям
- iterabledata - универсальная библиотека для Python для унифицированного чтения из 100+ видов дата файлов
- undatum - инструмент командной строки, швейцарский нож для работы с данными причем не только с табличными, а такими как JSONL, Parquet и тд. Поддерживает более 140 форматов файлов и помогает анализировать, конвертировать и преобразовывать файлы с данными
- newsworker - утилита и библиотека по извлечению RSS, Atom и JSON новостных лент из HTML с сайтов где нет своих новостных лент в структурированном виде
- filerepack - утилита переупаковки файлов без потерь содержания и фунциональности. Умеет пересжимать слабо сжатые файлы, сжимать файлы внутри контейнеров, сжимать сами контейнеры, поддерживает изображения, файлы архивов, файлы с данными и так далее.
- qddate - библиотека для Python для быстрой идентификации и парсинга дат
- metacrafter - инструмент автоматической идентификации семантических типов данных в файлах с данными и СУБД. Умеет экспортировать результаты для загрузки в дата каталоги
- metawarc - утилита для индексации и работы с WARC файлами современными методами. Преобразует данные WARC в файлы Parquet и умеет извлекать метаданные вложенных в WARC файлов
- apibackuper - утилита извлечения и архивации данных извлекаемых из API. Изначально делалась для задач архивации, реально применяется для всех задач автоматизации извлечения данных из API
- datacrafter - очень простой NoSQL ETL инструмент использующий наработки iterabledata и и ориентированный на работу с JSONL и подобными данными

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

А документация поможет тем кто хотел бы узнать больше о том как они работают и для чего применимы.

#opensource #datatools #dataengineering
🔥8👍5✍2🥰1🎉1
Все регулярнее читаю тексты которые можно описать как "Открытому коду конец" иногда прямо так и называющиеся. Не буду предсказывать за весь открытый код, но кое что можно сформулировать. Многие код перестанут открывать и что-то закроют потому что пропали две ключевых причины почему многие компании/корпорации код выкладывали:
1) Получить бесплатных контрибьютеров в продукт
2) Получить бесплатный анализ безопасности и выявления ошибок

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

#opensource #thoughts
💯12🤔5😢4✍2💔2❤1
Полезные ссылки про данные, технологии и не только:
- mnemiq - текст-в-SQL движок с открытым кодом и подробным рассказом почему его сделали, как он устроен и чем отличается от ранее существующих. Если кратко, то создатели сфокусировались на разных SQL диалектах и преодолении ограничения в 30 таблиц у движка Genie от Databricks. Полезно для всех кто работает с большими корпоративными хранилищами данными, сложно устроенными и с большим числом таблиц.
- Pandas Should Go Extinct текст где автор рассуждает о том что давно уже не надо использовать Pandas в разработке и аналитике потому что альтернативы Polars и DuckDB лучше настолько что непонятно почему ими не пользуются.
- Tau ещё один терминальный кодирующий агент, пока не могу сказать чем он лучше других, но он есть и его можно попробовать
- Cline Desktop настольное приложение для запуска моделей с открытыми весами. Обещают много разного полезного и есть версии для Mac и Windows. С открытым кодом
- OpenResearch параллельно работающие исследовательские агенты в локальном окружении. Приложение для Windows и Mac, с открытым кодом. По мне так в описании маловато кейсов описано

#opensource #ai #tools #data
✍3🔥3❤1❤‍🔥1
Яндекс выпустил AliceAI-Foundation-80B-A3B-Base базовую языковую модель с открытыми весами и акцентом на лучшую поддержку русского языка.

Пишут что модель была обучена полностью с нуля и приводят множество результатов бенчмарков в сравнении с:
- Qwen3.5-35B-A3B-Base
- GLM-4.5-Air-Base (106B-A12B)
- Nemotron-3-Super-120B-A12B-Base
- DeepSeek-V4-Flash-Base (284B-A13B)

Это хорошая новость, больше открытых моделей, больше конкуренции!

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

#ai #opensource #yandex
❤9🤣8✍2⚡1👍1🔥1😁1