🔋 Труба данных
3.74K subscribers
308 photos
5 videos
7 files
393 links
Авторский канал обо всем, что происходит в мире работы с данными: хранение, обработка, визуализация, как мы принимаем решения и как мы становимся профессионалами в работе с данными.

Автора канала - @SimonOsipov
加入频道
https://aws.amazon.com/about-aws/whats-new/2024/12/amazon-s3-tables-apache-iceberg-tables-analytics-workloads/

Ну что я могу поделать, если уже и Amazon подкидывает мне новости, которые я обещал не рассказывать? AWS выкатывает специальные Amazon S3 Tables бакеты, с нативной и встроенной поддержкой Apache Iceberg

По словам провайдера - specifically optimized for analytics workloads, resulting in up to 3x faster query throughput and up to 10x higher transactions per second compared to self-managed tables

@ohmydataengineer - канал "🕯Труба Данных" все-таки иногда нарушает своих обещаний!.
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Время Валеры
Интересные времена, оказывается разбивать данные на партиции в момент их заливки уже немодно, согласно Progressive Partitioning for Parallelized Query Execution in Google’s Napa

Внедрили динамическое партицирование для каждого запроса, потому что:
* Гранулярность партиций сильно зависит от конкретного запроса.
* Фиксированные партиции не справляются с перекошенным распределением данных и динамическими нагрузками.

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

Как это работает?
1. Данные хранятся в LSM деревьях, где каждый апдейт добавляется в виде дельты (таких дельт в системе может быть тысячи).
2. Дельта - это иммутабельные (неизменяемые) снапшоты, и они образуются, когда данные из памяти (memtable) сбрасываются на диск. Вдобавок они отсортированы по ключам. Дельты попадают сначала в Level 0, где данные остаются отсортированными, но разные дельты могут перекрываться по ключам. Компактизация со временем переносит данные на следующий уровень, устраняя дублирование и перекрытия.
3. В каждой дельте есть свой B Tree индекс, позволяющий эффективно работать с широкими диапазонами ключей и выбирать нужную гранулярность в рамках дельты.
4. Min/max информация о ключах хранится как отдельные метаданные, позволяя быстро отфильтровать ненужные дельты еще до обхода B Tree.
5. Вместо того чтобы полагаться на статическое разбиение, система динамически партицирует данные в момент выполнения запроса.

В чем плюсы?
Быстрая запись: данные просто записываются в неизменяемые файлы (дельты), без затрат на реструктуризацию.
Эффективное чтение: запросы динамически получают оптимальные партиции, что минимизирует перекос нагрузки.
Масштабируемость: иерархическая структура B-деревьев и организация дельт позволяют LSM-деревьям работать с петабайтами данных и миллиардами запросов.

Этот подход помогает Google масштабировать свои хранилища, оставаясь гибкими и эффективными даже под нагрузкой в миллиарды запросов в день.

Интересно и неожиданно - не думал что партицирование будет динамическим, но логично.
Помните, какое-то время назад просил заполнить опрос, на каких специалистов в публичном поле и каналы / блоги вы подписаны? Так вот NEWHR выпустили рейтинг и список.

В этом году ни в какие топы я не попал 😁, а в топе есть пара новых имен.

Если вам интересно посмотреть на полные рейтинги и списки экспертов из исследования можно тут.

@ohmydataengineer - канал "🕯Труба Данных" вне всяких рейтингов!
Please open Telegram to view this post
VIEW IN TELEGRAM
Пора подводить итоги 2024!

Вот тут год назад писал про свои цели. Посмотрим, что ж из этого вышло:

✔️ Рост каналов @ohmydataengineer и @career_works
Второй канал я удалил, потому что он что-то совсем меня не зажигал в течении года. Материалов копилось много, а обрабатывать их совершенно не было сил. Ну а Труба Данных выросла до 3600+, исполнив цель минимум. Так что можно сказать успех.

✔️ Полноценный релиз Data Catalog, Data Contracts и удалить Jenkins
Каталог появился, дата контракты тоже, да и на Airflow с Jenkins пошел полным ходом.

⚠️ Карьерные консультации
Продолжало идти само по себе. Но есть несколько хороших кейсов (+800 евро net в месяц на вакухе в Европе или +150 тыс. руб. net в России). В индивидуальных консультациях тоже все идет как идет. Не могу сказать, что цель провалена, но и что я достиг того, что планировал.

Substack и материалы на английском языке
Так и не нашел смысла начать писать на английском языке. Точнее смысл то был, но цель снова не легла в душу, поэтому я ее всячески откладывал и прокрастинировал. В итоге удалил Substack так и не написав ни одной статьи.

Выступление на конференции
Что-то в этом году не было ни сил, ни тем выступать. Также, к сожалению, не стало в живых Маши, моего постоянного куратора на SmartData и я не смог отойти от этого. BigData Londong тоже прошла мимо.


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

@ohmydataengineer
Please open Telegram to view this post
VIEW IN TELEGRAM
https://clickhouse.com/blog/a-simple-guide-to-clickhouse-query-optimization-part-1

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

А тут и сам Clickhouse подвез прекрасную стартовую статью для этого. Просто следуйте за ходом мыслей в статье при анализе плана запроса и применяйте в своей работе.

Ах да, мое любимое, каждый раз забываю 🤪 - An easy rule of thumb for determining which columns are good candidates for LowCardinality is that any column with less than 10,000 unique values is a perfect candidate.


@ohmydataengineer - канал "🕯Труба Данных" продолжает любить Clickhouse!
Please open Telegram to view this post
VIEW IN TELEGRAM
https://www.newsletter.swirlai.com/p/memory-in-agent-systems

Спустя почти год перерыва Swirl вернулся со своими статьями про ML, ML&Data Ops и AI. Достаточно доступным языком про эту тему пишет, с наглядными картинками.
Поговаривают в соцсеточках, что в этом году оч модно у бизнеса будут AI Agents, которые, как обычно обещают, заменят нас всех и мы пойдем грузить вагоны. Как пример - хорошая статья про то, как работает память у AI Agents.


@ohmydataengineer - канал "🕯Труба Данных" продолжает расширять горизонты контента!
Please open Telegram to view this post
VIEW IN TELEGRAM
Возвращение легендарной рубрики на телеканале @ohmydataengineer!

"Пусть данные говорят сами за себя!"
https://arch.dev/blog/2025-the-dawn-of-the-ai-data-team/

Бла-бла-бла, AI всех заменит, подходы меняются, меняйся или умри.
Пожалуйста, не поддавайтесь этой истерике, в самой статье ж прям написано: The Foundation Remains Critical
Ничего ульра-прорывного именно в data engineering с появлением AI пока не произошло, вы ничего не пропустили.

Copilot и другие умные автокомплиты - это да. Вот это стоит взять на вооружение.

@ohmydataengineer - канал "🕯Труба Данных" на страже хайпожорства!
Please open Telegram to view this post
VIEW IN TELEGRAM
https://www.jetbrains.com/lp/devecosystem-2024/

Ежегодный очень большой отчет/исследования про языки программирования от JetBrains.
Все как обычно - TypeScript подъедает JavaScript, Rust все также всеми очень любим и все хотят на него переехать.
В базах данных правда нет разделения на OLAP / OLTP, поэтому самый популярный - MySQL, а у того же Snowflake или Clickhouse по 3% всего
AWS в 3 раза больше ближайшего конкурента, который оказывается Azure, а не GCP.
Почти 50% (или всего лишь 50%, не знаю как отреагировать) пользуются регулярно каким-то AI в разработке (Copilot, ChatGPT).



@ohmydataengineer - канал "🕯Труба Данных" это больше чем просто канал про данные!
Please open Telegram to view this post
VIEW IN TELEGRAM
https://www.getdbt.com/blog/dbt-labs-acquires-sdf-labs

dbt купили себе какой-то sdf.
Впервые слышу про эту штуку и так сразу и не скажу, что она делает. Но в англоязычном интернете все очень рады, говорят, что dbt будет работать "в 10 раз быстрей". Чему там правда работать быстрей, если основную нагрузку выполняет база.... Ну да ладно, мб я тупой.

@ohmydataengineer - канал "🕯Труба Данных" который не в курсе что такое SDF!
Please open Telegram to view this post
VIEW IN TELEGRAM
https://www.qlik.com/us/news/company/press-room/press-releases/qlik-acquires-upsolver-to-deliver-low-latency-ingestion-and-optimization-for-apache-iceberg

Новость один в один как предыдущая

Qlik купил Upsolver.
Шо, кто, зачем, как....

Вот иногда читаешь новости, и даже не понял, что произошло.

@ohmydataengineer - канал "🕯Труба Данных" который все еще не в курсе всех новостей!
Please open Telegram to view this post
VIEW IN TELEGRAM
Пятничный юмор или модные словечки!

@ohmydataengineer
https://howqueryengineswork.com

Оч приятное и комфортное чтиво про то, как работают query engine (ну то есть вот та фигня, которая планирует и исполняет ваш запрос к базенке).
Описано все в общих словах, но достаточно детально.


@ohmydataengineer - канал "🕯Труба Данных" предлагает вам написать свой движок запросов!
Please open Telegram to view this post
VIEW IN TELEGRAM
2.10 Reparse button

Когда не надо лишних слов.
https://github.com/databrickslabs/dqx

Databricks выложили в опенсорс DQX - фреймворк для DQ поверх pyspark датафреймов.
Больше фреймворков богу фреймворков.

Даже мотивация для этого фреймворка какая-то хлюпкая
Current data quality frameworks often fall short in providing detailed explanations for specific row or column data quality issues and are primarily designed for complete datasets, making integration into streaming workloads difficult.


@ohmydataengineer - канал "🕯Труба Данных" не верит в очередной фреймворк
Please open Telegram to view this post
VIEW IN TELEGRAM
https://www.answer.ai/posts/2025-01-08-devin.html

Помните, какое-то время назад, в интернете появился Devin, AI программист, который должен был нас всех заменить? Тогда в демо этого AI Agent компания показывала, что он от и до смог решить какую-то задачу с Upwork без какого-либо вмешательства.

Так вот пока это все пустые обещания, все очень так себе.

@ohmydataengineer - канал "🕯Труба Данных" говорит что нас заменят, но не скоро
Please open Telegram to view this post
VIEW IN TELEGRAM
Рекрутеры используют AI, чтобы отсеивать нерелевантные отклики.

А можно просто фильтровать по словам и сразу всех "автоматизаторов откликов" выявить 😂

@ohmydataengineer - канал "🕯Труба Данных" и пятничный юмор!
Please open Telegram to view this post
VIEW IN TELEGRAM
https://www.astronomer.io/ebooks/apache-airflow-best-practices-etl-elt-pipelines/

Астрономер (главный контрибьютор Airflow) раздает книжку по best practices в Airflow. Ничего сверхестественного, но кажется вполне себе годным чтивом, обновить знания.

@ohmydataengineer - канал "🕯Труба Данных" любит Airflow, как бы его не хейтили
Please open Telegram to view this post
VIEW IN TELEGRAM
https://www.warpstream.com

Warpstream
Кстати, забыл рассказать, что я наткнулся на прикольный продукт от Confluent: Kafka, только вместо памяти на машинах - датка лежит в бакетах.
Да, скорость будет поменьше, но и ценник сильно меньше 😏

@ohmydataengineer - канал "🕯Труба Данных" радуется прикольным незнакомым инструментам!
Please open Telegram to view this post
VIEW IN TELEGRAM
https://medium.com/strava-engineering/rain-a-key-value-store-for-stravas-scale-7f580f5b4848

У меня love / hate relationships с бегом: когда-то я его любил, бегал марафоны, потом ненавидел, потом снова любил, потом снова ненавидел, ну вы поняли =)
И каждый раз я продолжал загружать свои пробежки в Strava.

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

@ohmydataengineer - канал "🕯Труба Данных" про технологии в продуктах, которыми пользуемся ежедневно!
Please open Telegram to view this post
VIEW IN TELEGRAM
https://clickhouse.com/blog/json-bench-clickhouse-vs-mongodb-elasticsearch-duckdb-postgresql

Вы будете кидать 💩, но я опять про Clickhouse
Огромная статья с технической мяготкой про 1 Billion JSON Challenge и насколько новый нативный тип JSON в клике работает быстрей и эффективней по памяти и стораджу по сравнению с другими базами данных.


@ohmydataengineer - канал "🕯Труба Данных" в очередной раз про одно и то же!
Please open Telegram to view this post
VIEW IN TELEGRAM