5 minutes of data – Telegram
5 minutes of data
1.89K subscribers
186 photos
4 videos
2 files
496 links
I’m making my life less dull by spending time learning and researching “how it works“ in the data engineering field.

Интерактивный учебник SQL
https://querynomic.one/#/

по всем вопросам @just_vanich
Download Telegram
Forwarded from Nik B
Привет! Книжного Клуба анонс!

У нас с коллегами дата инженерами появилась идея по/перечитать книги, связанные с дата инженерией!

Первая книгу, которую мы хотели бы обсудить - Data Engineering Desing Patterns.

Планируем делать созвоны на еженедельной основе - вторник 19:30 MSK (17:30 CET).

Первый созвон - следующий вторник 25 ноября, разберем первые паттерны по полной и инкрементальным загрузкам.

Все детали книжного клуба будут в @de_zoomcamp, если вам интересно, залетайте в канал
113
Apache TsFile

TsFile — это columnar storage file format, предназначенный для данных временных рядов, который поддерживает эффективную компрессию, высокую пропускную способность чтения и записи, а также совместимость с различными фреймворками, такими как Spark и Flink.
Его легко интегрировать в фреймворки обработки больших данных IoT.

@five_minutes_of_data
🔥4
DataProjectHunt

Находить data engineering проекты — ТРУДНО!
Находить актуальные проекты — ЕЩЁ ТРУДНЕЕ!
А вот найти хорошо спроектированные — почти невозможно.

Но всё, это в прошлом с DataProjectHunt

DataProjectHunt — это ProductHunt для data engineers.

Там можно:
Найти самые крутые DE-проекты в одном месте
Поделиться своими проектами с сообществом
Получить фидбек и отзывы от коллег
Поставить лайк/дизлайк проектам
Получить признание за свои творения (и попасть в лидерборд )

Кстати, этот проект сделал Marc Lamberti — тот самый чувак из Astronomer, который рассказывает про Airflow на YouTube.

@five_minutes_of_data
🔥43
Apache Hudi 1.1 is Here—Building the Foundation for the Next Generation of Lakehouse

Apache Hudi 1.1 представляет pluggable table format framework таблиц с адаптерами для Iceberg/Delta, индексацией с учетом партиций, динамическим изменением размера бакетов, блокировкой на основе хранилища и значительными улучшениями для конкретных движков.

Он обеспечивает 15-кратное ускорение кластеризации, 4-кратное ускорение поиска и 2–3-кратный рост пропускной способности Flink за счет zero-copy обработки и оптимизированной работы с метаданными.

@five_minutes_of_data
2
Stripe's Zero-Downtime Data Movement Platform Migrates Petabytes with Millisecond Traffic Switches

На QCon San Francisco 2025 Джимми Морзария, staff software engineer в Stripe, представил платформу Zero-Downtime Data Movement Platform компании — систему, которая позволяет мигрировать базы данных на петабайтном масштабе с переключением трафика, обычно завершающимся за миллисекунды.

Платформа поддерживает инфраструктуру Stripe, обрабатывая 5 миллионов запросов к базе данных в секунду по более чем 2000 шардам на базе MongoDB, при этом обеспечивая 99,9995% надежности для транзакций на $1,4 триллиона в год.

@five_minutes_of_data
1
В Postgres count(*) работает так же эффективно, как count(1). Как это возможно? Давайте сравним планы выполнения, показанные на картинках.

1️⃣ SELECT count(order_id) — размер каждой извлеченной строки, удовлетворяющей условию поиска, составляет 4 байта (см. width=4 в плане выполнения). Это размер колонки order_id, которая является 32-битным целым числом.

2️⃣ SELECT count(1) — это известный трюк во многих реляционных базах данных, когда нужно сделать функцию count эффективной. База данных просто находит все подходящие строки и подсчитывает их. Размер строки здесь равен 0 (см. width=0), потому что вы передаете константу в функцию count. Значение константы не важно — можно передать 1, 10, 666 или ваше любимое число.

3️⃣ SELECT count(*) — Postgres применяет специальную оптимизацию для этого случая. Хотя вы передаете *, база данных достаточно умна, чтобы не извлекать все колонки для подходящих строк. Вместо этого размер каждой извлеченной строки равен 0 (см. width=0).

Так что оставайтесь спокойны и используйте SELECT count(*) в Postgres. Оно уже оптимизировано для вас.

Взято из книги Just Use Postgres

@five_minutes_of_data
6🤣6👏4
Увидел в Airflow одну очень прикольную фичу — Human-in-the-Loop операторы.

Можно просто встроить человеческое подтверждение прямо в DAG.

Работает это так:
AI или любая задача что-то генерит → Airflow ставит паузу и ждёт решения → человек получает ссылку, жмёт approve/reject → пайплайн продолжает работу.

Никаких кастомных сенсоров, костылей и блокировок воркеров — всё из коробки в 3.1.

Очень удобная штука для тех, кто запускает AI в проде и хочет держать ручной контроль там, где это реально важно.

@five_minutes_of_data
🔥18
DBHub

DBHub — это универсальный сервер баз данных MCP, реализующий интерфейс сервера Model Context Protocol (MCP).
Этот шлюз позволяет клиентам, совместимым с MCP, подключаться и исследовать различные базы данных:

Универсальный шлюз: Единый интерфейс для PostgreSQL, MySQL, MariaDB, SQL Server и SQLite

Безопасный доступ: Режим только для чтения, туннелирование SSH и поддержка шифрования SSL/TLS

Мультибазы данных: Подключение к нескольким базам данных одновременно с конфигурацией TOML

Готов к продакшену: Ограничение строк, контроль таймаута блокировок и пул соединений

Нативный MCP: Полная реализация Model Context Protocol с ресурсами, инструментами и промптами

Теперь можно не костылить Text-to-SQL а использовать готовый MCP.
Но как и всегда с AI инструментами, нужно быть осторожным, так как DBHub может

Execute SQL queries directly from AI tools:
- Run SELECT queries for data analysis
- Execute DDL/DML in read-write mode
- Support for parameterized queries
- Multi-statement execution with transaction support



@five_minutes_of_data
2
🎄 Сегодня стартовал Advent of Code 2025

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

Mногие используют AOC как повод наконец-то потрогать язык, который давно хотел попробовать.
Кто-то вообще решает задачи на SQL.

Для многих Advent of Code — зимний ритуал: кофе, уют и ежедневная задачка, от которой иногда приятно плавится мозг.

Если искали причину попробовать новый язык — она появилась.
А если просто хочется немного игровой мотивации в декабре — тоже отлично подходит.

А вот тут можно посмотреть, как решают первый день на bash

Happy coding! 🎁
2
Airflow Extension for Visual Studio Code

Расширение для Visual Studio Code, которое позволяет взаимодействовать с Apache Airflow (v2.x и v3.x) прямо из вашего редактора.

Запускайте DAG, ставьте на паузу/снимайте, исследуйте запуски DAG, просматривайте логи, просматривайте код и многое другое — без браузера.

@five_minutes_of_data
3
MinIO is now Maintenance Mode

Похоже, что марш смерти для MinIO продолжается.
Последний коммит отмечает, что проект в Maintenance Mode, а исправления безопасности будут случай за случаем.

Если ищите альтернативу, то можно посмотреть на Garage

@five_minutes_of_data
1🫡5221
Приходите к нам в DE

@five_minutes_of_data
1💯216🫡1
Advent of Agents

🎄 Декабрь — это всегда адвент-календари, и в этом году к Advent of Code добавляется новый вариант: Advent of Agents.
25 дней заданий про агентов и LLM от Google.

Если давно хотел покопаться в языковых моделях и агентном кодинге — самое время.

@five_minutes_of_data
🎉3💩21🔥1
DataKit — это платформа для анализа данных прямо в браузере, которая обрабатывает многогигабайтные файлы (Parquet, CSV, JSON и др.) локально с помощью duckdb-wasm.
Вся обработка происходит внутри браузера — данные никуда не отправляются. Также можно подключаться к удалённым источникам, таким как Motherduck и Postgres, через сервер DataKit.

@five_minutes_of_data
4😱3🐳2
parqeye позволяет заглянуть внутрь ваших файлов Parquet.
Мгновенно просматривайте их содержимое, схему и метаданные — прямо из терминала.

Интерактивная визуализация данных — Просматривайте данные Parquet в табличном виде с навигацией по клавиатуре.

Исследователь схемы — Анализируйте типы колонок, вложенные структуры и определения полей.

Метаданные файла — Просматривайте метаданные на уровне файла, включая версию, создателя, статистику кодирования и многое другое.

Статистика групп строк — Изучайте метаданные и статистику на уровне групп строк, а также распределение данных по группам.

Интерфейс с вкладками — Быстро переключайтесь между видами Visualize, Schema, Metadata и Row Groups.

Нативно для терминала — Работает прямо в вашем терминале.

@five_minutes_of_data
18🔥4
Глеб Михайлов запустил розыгрыш на бесплатное участие в своём авторском курсе по алгоритмам.
Я сам проходил его курсы на Stepik и могу точно сказать: Глеб умеет объяснять сложные вещи простым, очень понятным языком.

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

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

@five_minutes_of_data
🤡52
Introducing pg_clickhouse: A Postgres extension for querying ClickHouse

Интересная тенденция от ClickHouse: за год большинство миграций аналитики в Cloud идут именно с PostgreSQL (после self-hosted CH).
ClickPipes упрощает репликацию данных, но запросы и код — это отдельная головная боль.

Команда решила: давайте упростим перенос SQL с Postgres на ClickHouse! Несколько месяцев назад начали работать над этим — результат: расширение pg_clickhouse, где таблицы CH выглядят как родные Postgres.
Меняешь схему — и запросы летают на CH без переписывания.

Пример: TPC-H Query 4 — 650ms в Postgres vs 67ms с pg_clickhouse!

@five_minutes_of_data
4
Wrappers — это фреймворк для разработки Foreign Data Wrappers (FDW) для Postgres, написанный на Rust.
Его цель — упростить разработку FDW, сохраняя при этом современные возможности языка Rust, такие как высокая производительность, строгая типизация и безопасность.

Wrappers также представляет собой коллекцию FDW, созданных Supabase.
Так же есть готовый wrapper для Clickhouse

@five_minutes_of_data
🔥4