Smart Data 2024: Максим Гудзикевич, Кирилл Осинцев (Yandex) — "Как навести порядок в двух эксабайтах данных?"
Интро: "В компании с быстрорастущим объемом данных ориентироваться в них становится сложнее с каждым днем. В этой ситуации помогают каталоги данных, однако информация в них, как правило, заполняется пользователями собственноручно или берется из ERM-связей небольших БД. Мы же во внутреннем DataCatalog научились автоматически на основе логов ETL-операций и ad hoc-расчетов собирать Data Lineage системы YTsaurus."
https://youtu.be/dhDU-xA_qVQ?si=3RheeeRL-Xx6Yh4w
Интро: "В компании с быстрорастущим объемом данных ориентироваться в них становится сложнее с каждым днем. В этой ситуации помогают каталоги данных, однако информация в них, как правило, заполняется пользователями собственноручно или берется из ERM-связей небольших БД. Мы же во внутреннем DataCatalog научились автоматически на основе логов ETL-операций и ad hoc-расчетов собирать Data Lineage системы YTsaurus."
https://youtu.be/dhDU-xA_qVQ?si=3RheeeRL-Xx6Yh4w
YouTube
Максим Гудзикевич, Кирилл Осинцев — Как навести порядок в двух эксабайтах данных?
Подробнее о конференции SmartData: https://jrg.su/aTWU2K
— —
Скачать презентацию с сайта SmartData — https://jrg.su/OMxXcv
В компании с быстрорастущим объемом данных ориентироваться в них становится сложнее с каждым днем. В этой ситуации помогают каталоги…
— —
Скачать презентацию с сайта SmartData — https://jrg.su/OMxXcv
В компании с быстрорастущим объемом данных ориентироваться в них становится сложнее с каждым днем. В этой ситуации помогают каталоги…
SmartData 2024: Валентин Пановский - Как кролик съел зелёную сливу и не умер: сказ о миграции на Iceberg
Процесс миграции DWH из состояния AS IS (Greenplum) в целевое состояние TO BE (Trino, Iceberg REST Catalog, Object Storage).
https://youtu.be/YWD7WcfFfk8?si=Meqb8QIAsCQa4D8X
#trino #apacheiceberg
Процесс миграции DWH из состояния AS IS (Greenplum) в целевое состояние TO BE (Trino, Iceberg REST Catalog, Object Storage).
https://youtu.be/YWD7WcfFfk8?si=Meqb8QIAsCQa4D8X
#trino #apacheiceberg
YouTube
Валентин Пановский — Как кролик съел зеленую сливу и не умер: сказ о миграции на Iceberg
Подробнее о конференции SmartData: https://jrg.su/aTWU2K
— —
Скачать презентацию с сайта SmartData — https://jrg.su/t0xTmS
Спикер рассказал о процессе миграции DWH из состояния AS IS (Greenplum) в целевое состояние TO BE (Trino, Iceberg REST Catalog, Object…
— —
Скачать презентацию с сайта SmartData — https://jrg.su/t0xTmS
Спикер рассказал о процессе миграции DWH из состояния AS IS (Greenplum) в целевое состояние TO BE (Trino, Iceberg REST Catalog, Object…
❤10💩1
SmartData 2024: Данил Сабиров (Яндекс GO) - Рецепт платформы потоковой обработки данных на Apache Flink
Презентация pdf
https://youtu.be/8QyD9dS6sZM?si=vrTtifypQX7u9kxb
Презентация pdf
https://youtu.be/8QyD9dS6sZM?si=vrTtifypQX7u9kxb
YouTube
Данил Сабиров — Рецепт платформы потоковой обработки данных на Apache Flink
Подробнее о конференции SmartData: https://jrg.su/aTWU2K
— —
Скачать презентацию с сайта SmartData — https://jrg.su/sJ1PiN
Apache Flink в инфраструктуре Яндекс Go работает более 4 лет. Но до недавнего момента воспользоваться им могли лишь некоторые продвинутые…
— —
Скачать презентацию с сайта SmartData — https://jrg.su/sJ1PiN
Apache Flink в инфраструктуре Яндекс Go работает более 4 лет. Но до недавнего момента воспользоваться им могли лишь некоторые продвинутые…
👍2
Перевод 5 главы из книги "Building a Scalable Data Warehouse with Data Vault 2.0"
https://datatalks.ru/data-vault-chapter-5-intermediate-data-vault-modeling/
#DataVault
https://datatalks.ru/data-vault-chapter-5-intermediate-data-vault-modeling/
#DataVault
DataTalks.RU. Data Engineering / DWH / Data Pipeline
Перевод 5 Главы — Intermediate Моделирование Data Vault
❤9🔥6👍2
База по Базам Данных - Storage (Индексы, Paging, LSM, B+-Tree, R-Tree) | Влад Тен Систем Дизайн
0:00 Начало
2:21 DBMS
5:50 Архитектуры DBMS
9:50 Storage
11:55 Paging
15:53 Overflow Page
19:44 Page Header
22:40 VACUUM
24:50 Row/Column oriented DB
29:08 System Catalog
30:10 Buffer Pool
33:10 LRU Cache
35:33 Sequential flood
36:56 Индексы
42:00 Hash индекс
45:10 B Trees
52:47 Bitmap индекс
54:50 Инвертированный индекс
56:29 Embedding
57:53 R Tree
1:04:19 LSM Storage
1:15:25 Bloom Filter
1:22:37 WAL, Manifest Log
1:23:12 Memtable
1:23:50 Skip List
1:28:15 Обобщение
1:30:03 Query Plan
1:31:52 Эквивалентные выражения
https://www.youtube.com/watch?v=i-FFVM4cIXQ
0:00 Начало
2:21 DBMS
5:50 Архитектуры DBMS
9:50 Storage
11:55 Paging
15:53 Overflow Page
19:44 Page Header
22:40 VACUUM
24:50 Row/Column oriented DB
29:08 System Catalog
30:10 Buffer Pool
33:10 LRU Cache
35:33 Sequential flood
36:56 Индексы
42:00 Hash индекс
45:10 B Trees
52:47 Bitmap индекс
54:50 Инвертированный индекс
56:29 Embedding
57:53 R Tree
1:04:19 LSM Storage
1:15:25 Bloom Filter
1:22:37 WAL, Manifest Log
1:23:12 Memtable
1:23:50 Skip List
1:28:15 Обобщение
1:30:03 Query Plan
1:31:52 Эквивалентные выражения
https://www.youtube.com/watch?v=i-FFVM4cIXQ
YouTube
База по Базам Данных - Storage (Индексы, Paging, LSM, B+-Tree, R-Tree) | Влад Тен Систем Дизайн
База по Базам Данных - Storage (Индексы, Paging, LSM, B+-Tree, R-Tree) | Влад Тен Систем Дизайн
Подарка на 10 000 подписчиков
Подарка на 10 000 подписчиков
🔥14👍3❤1
Перевод 6 Главы - Продвинутое моделирование Data Vault 2.0 - Advanced Data Vault Modeling
Рассмотрено использование PIT- и Bridge-таблиц
https://datatalks.ru/chapter-6-data-vault-advanced-data-vault-modeling/
#DataVault
Рассмотрено использование PIT- и Bridge-таблиц
https://datatalks.ru/chapter-6-data-vault-advanced-data-vault-modeling/
#DataVault
DataTalks.RU. Data Engineering / DWH / Data Pipeline
Перевод 6 Главы — Продвинутое моделирование Data Vault 2.0 — Advanced Data Vault Modeling
Перевод 6 Главы Продвинутое моделирование Advanced Data Vault Modeling. Книга "Building a Scalable Data Warehouse with Data Vault 2.0"
👍13💯2
⚡️🔗 Большая подборка GitHub проектов с Data Vault примерами и тулзами
1️⃣ Datavault-UK/automate-dv: A free to use dbt package for creating and loading Data Vault 2.0 compliant Data Warehouses.
👉🏻 https://github.com/Datavault-UK/automate-dv - Инструмент
👉🏻 https://github.com/Datavault-UK/automate-dv-demo - An example dbt project using AutomateDV to create a Data Vault 2.0 Data Warehouse based on the Snowflake TPC-H dataset.
👉🏻 https://automate-dv.readthedocs.io/en/latest/ - описание dbt package.
2️⃣ CarlTimms/Data-Vault-Example-Northwind: An example Data Vault 2.0 data warehouse modelling Microsoft's Northwind sample database.
👉🏻 https://github.com/CarlTimms/Data-Vault-Example-Northwind
3️⃣ ScalefreeCOM/datavault4dbt: Scalefree's dbt package for a Data Vault 2.0 implementation congruent to the original Data Vault 2.0 definition by Dan Linstedt including the Staging Area, DV2.0 main entities, PITs and Snapshot Tables.
👉🏻 https://github.com/ScalefreeCOM/datavault4dbt
4️⃣ Brezencat/dwh-data-vault: Построение DWH по методологии Data Vault (с модификациями).
👉🏻 https://github.com/Brezencat/dwh-data-vault
5️⃣ nshcode/data-vault-modeling: The repository contains the SQL scripts for creating a Data Vault model for a PostgreSQL demo database
👉🏻 https://github.com/nshcode/data-vault-modeling
6️⃣ gtoonstra/etl-with-airflow: Здесь есть пример автоматизации Data Vault 2.0 на Airflow + dbt
👉🏻 https://github.com/gtoonstra/etl-with-airflow
7️⃣ 👉🏻 https://t.me/data_engineer_path/322 - ссылка на пост с DataVault репозиторием и другими материалами.
8️⃣ fang360/data-vault: This project is designed to store data from 2 different studies with python and PostgreSQL.
👉🏻 https://github.com/fang360/data-vault
9️⃣ MarinaZenkova/DataVault: Docker-compose to build a Data Vault from Adventureworks
👉🏻 https://github.com/MarinaZenkova/DataVault
1️⃣0️⃣ infinitelambda/dq-vault: Data Quality Observation of Data Vault layer
👉🏻 https://github.com/infinitelambda/dq-vault
1️⃣1️⃣ AdventureWorks/DataVault/DanLinstedt: ddl, sql, ER diagram
👉🏻 https://github.com/cjheath/AdventureWorks/tree/master/DataVault/DanLinstedt
1️⃣2️⃣ cimt-ag/data_vault_pipelinedescription: A concept and syntax to provide a universal data format, for storing all essential informations, that are needed to implement or generate a data loading process for a data vault model.
👉🏻 https://github.com/cimt-ag/data_vault_pipelinedescription
🏁 Ну и напоследок, полезная библиотечка datnguye/dbterd, которая позволяет генерировать ERD as a code из dbt проектов
🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸
#DataVault
Channel: @data_engineer_path
1️⃣ Datavault-UK/automate-dv: A free to use dbt package for creating and loading Data Vault 2.0 compliant Data Warehouses.
👉🏻 https://github.com/Datavault-UK/automate-dv - Инструмент
👉🏻 https://github.com/Datavault-UK/automate-dv-demo - An example dbt project using AutomateDV to create a Data Vault 2.0 Data Warehouse based on the Snowflake TPC-H dataset.
👉🏻 https://automate-dv.readthedocs.io/en/latest/ - описание dbt package.
2️⃣ CarlTimms/Data-Vault-Example-Northwind: An example Data Vault 2.0 data warehouse modelling Microsoft's Northwind sample database.
👉🏻 https://github.com/CarlTimms/Data-Vault-Example-Northwind
3️⃣ ScalefreeCOM/datavault4dbt: Scalefree's dbt package for a Data Vault 2.0 implementation congruent to the original Data Vault 2.0 definition by Dan Linstedt including the Staging Area, DV2.0 main entities, PITs and Snapshot Tables.
👉🏻 https://github.com/ScalefreeCOM/datavault4dbt
4️⃣ Brezencat/dwh-data-vault: Построение DWH по методологии Data Vault (с модификациями).
👉🏻 https://github.com/Brezencat/dwh-data-vault
5️⃣ nshcode/data-vault-modeling: The repository contains the SQL scripts for creating a Data Vault model for a PostgreSQL demo database
👉🏻 https://github.com/nshcode/data-vault-modeling
6️⃣ gtoonstra/etl-with-airflow: Здесь есть пример автоматизации Data Vault 2.0 на Airflow + dbt
👉🏻 https://github.com/gtoonstra/etl-with-airflow
7️⃣ 👉🏻 https://t.me/data_engineer_path/322 - ссылка на пост с DataVault репозиторием и другими материалами.
8️⃣ fang360/data-vault: This project is designed to store data from 2 different studies with python and PostgreSQL.
👉🏻 https://github.com/fang360/data-vault
9️⃣ MarinaZenkova/DataVault: Docker-compose to build a Data Vault from Adventureworks
👉🏻 https://github.com/MarinaZenkova/DataVault
1️⃣0️⃣ infinitelambda/dq-vault: Data Quality Observation of Data Vault layer
👉🏻 https://github.com/infinitelambda/dq-vault
1️⃣1️⃣ AdventureWorks/DataVault/DanLinstedt: ddl, sql, ER diagram
👉🏻 https://github.com/cjheath/AdventureWorks/tree/master/DataVault/DanLinstedt
1️⃣2️⃣ cimt-ag/data_vault_pipelinedescription: A concept and syntax to provide a universal data format, for storing all essential informations, that are needed to implement or generate a data loading process for a data vault model.
👉🏻 https://github.com/cimt-ag/data_vault_pipelinedescription
🏁 Ну и напоследок, полезная библиотечка datnguye/dbterd, которая позволяет генерировать ERD as a code из dbt проектов
🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸
#DataVault
Channel: @data_engineer_path
GitHub
GitHub - Datavault-UK/automate-dv: A free to use dbt package for creating and loading Data Vault 2.0 compliant Data Warehouses…
A free to use dbt package for creating and loading Data Vault 2.0 compliant Data Warehouses (powered by dbt, an open source data engineering tool, registered trademark of dbt Labs) - Datavault-UK/...
🔥9❤5👏2
Перевод 7 Главы - Dimensional Modeling (Data Vault 2.0)
https://datatalks.ru/chapter-7-data-vault-2-0-dimensional-modeling/
#DataVault #DimensionalModeling
https://datatalks.ru/chapter-7-data-vault-2-0-dimensional-modeling/
#DataVault #DimensionalModeling
DataTalks.RU. Data Engineering / DWH / Data Pipeline
Перевод 7 Главы — Dimensional Modeling (Data Vault 2.0)
Перевод 7 Главы - Dimensional Modeling (Data Vault 2.0)
🔥8❤4
Перевод первых трех глав книги Apache Airflow Best Practices
Глава 1. "Начало работы с Airflow 2.0"
Глава 2. "Основные концепции Airflow"
Глава 3. "Компоненты Airflow"
#Airflow
Глава 1. "Начало работы с Airflow 2.0"
Глава 2. "Основные концепции Airflow"
Глава 3. "Компоненты Airflow"
#Airflow
DataTalks.RU. Data Engineering / DWH / Data Pipeline
Apache Airflow Best Practices — Глава 1 «Начало работы с Airflow 2.0»
Apache Airflow Best Practices - Глава 1 "Начало работы с Airflow 2.0"
🔥32👏4🤔3👍1
How we built fast UPDATEs for the ClickHouse column store
▫️Part 1: Purpose-built engines
▫️Part 2: SQL-style UPDATEs
В первой части автор Том Шрайбер поясняет, как ClickHouse обходится без традиционного обновления строк, превращая UPDATE/DELETE в вставки с помощью специальных движков вроде ReplacingMergeTree, CollapsingMergeTree и др., которые позднее сливаются фоновым процессом, обеспечивая высокую скорость и масштабируемость на аналитических нагрузках. Это решение позволило объединить эффективность вставок и возможность правки данных без ущерба для быстрого чтения.
Вторая статья рассказывает о новой архитектуре патч‑партиций (patch parts), благодаря которым ClickHouse наконец поддерживает классический синтаксис UPDATE … WHERE, но без затрат на перестройку колонок: патч‑партиции содержат только изменённые значения и сливаются в фоновом режиме, обеспечивая мгновенную видимость изменений и высокую производительность. Автор подробно описывает эволюцию от тяжёлых мутаций до экономных, декларативных обновлений на основе SQL, вдохновлённых механизмами MergeTree.
#ClickHouse
▫️Part 1: Purpose-built engines
▫️Part 2: SQL-style UPDATEs
В первой части автор Том Шрайбер поясняет, как ClickHouse обходится без традиционного обновления строк, превращая UPDATE/DELETE в вставки с помощью специальных движков вроде ReplacingMergeTree, CollapsingMergeTree и др., которые позднее сливаются фоновым процессом, обеспечивая высокую скорость и масштабируемость на аналитических нагрузках. Это решение позволило объединить эффективность вставок и возможность правки данных без ущерба для быстрого чтения.
Вторая статья рассказывает о новой архитектуре патч‑партиций (patch parts), благодаря которым ClickHouse наконец поддерживает классический синтаксис UPDATE … WHERE, но без затрат на перестройку колонок: патч‑партиции содержат только изменённые значения и сливаются в фоновом режиме, обеспечивая мгновенную видимость изменений и высокую производительность. Автор подробно описывает эволюцию от тяжёлых мутаций до экономных, декларативных обновлений на основе SQL, вдохновлённых механизмами MergeTree.
#ClickHouse
ClickHouse
How we built fast UPDATEs for the ClickHouse column store – Part 1: Purpose-built engines
ClickHouse is a column store, but that doesn’t mean updates are slow. In this post, we explore how purpose-built engines like ReplacingMergeTree deliver fast, efficient UPDATE-like behavior through smart insert semantics.
👍15
Денис Лукьянов - Data Vault 2.0. Когда внедрять, проблемы применения при построении DWH на GreenPlum
https://youtu.be/oGwQbeP5iss?si=HT-W93nX2d6Ig_ZP
#DataVault
https://youtu.be/oGwQbeP5iss?si=HT-W93nX2d6Ig_ZP
#DataVault
YouTube
Денис Лукьянов — Data Vault 2.0. Когда внедрять, проблемы применения при построении DWH на Greenplum
Подробнее о конференции SmartData: https://jrg.su/aTWU2K
— —
Скачать презентацию с сайта SmartData — https://jrg.su/bTcWPn
При внедрении Data Vault на Greenplum возникает множество корнер-кейсов, которые могут привести как к просадке производительности системы…
— —
Скачать презентацию с сайта SmartData — https://jrg.su/bTcWPn
При внедрении Data Vault на Greenplum возникает множество корнер-кейсов, которые могут привести как к просадке производительности системы…
👍9❤1
SmartData 2024: Александр Токарев - Пишем свой cluster manager для Apache Spark
https://youtu.be/oDuL8-ptFyk?si=VO_QTc7E7S8y-16v
https://youtu.be/oDuL8-ptFyk?si=VO_QTc7E7S8y-16v
YouTube
Александр Токарев — Пишем свой cluster manager для Apache Spark
Подробнее о конференции SmartData: https://jrg.su/aTWU2K
— —
Скачать презентацию с сайта SmartData — https://jrg.su/Vsou2A
Apache Spark — это развитый фреймворк для обработки больших объемов неструктурированных данных. Одно из его достоинств — способность…
— —
Скачать презентацию с сайта SmartData — https://jrg.su/Vsou2A
Apache Spark — это развитый фреймворк для обработки больших объемов неструктурированных данных. Одно из его достоинств — способность…
👍4🔥1
Первые 3 главы Designing Data-Intensive Applications, 2nd Edition
Глава 1. Компромиссы в архитектуре систем данных
Глава 2. Определение нефункциональных требований
Глава 3. Модели данных и языки запросов
#DesigningDataIntensiveApplications
Глава 1. Компромиссы в архитектуре систем данных
Глава 2. Определение нефункциональных требований
Глава 3. Модели данных и языки запросов
#DesigningDataIntensiveApplications
DataTalks.RU. Data Engineering / DWH / Data Pipeline
Глава 1. Компромиссы в архитектуре систем данных
🔥18
Глава 4. Хранение и извлечение
Продолжение перевода книги «Designing Data-Intensive Applications, 2nd Edition»
https://datatalks.ru/chapter-4-storage-and-retrieval/
#DesigningDataIntensiveApplications
Продолжение перевода книги «Designing Data-Intensive Applications, 2nd Edition»
Глава объясняет ключевые отличия между движками хранения, оптимизированными под OLTP (такими как лог‑структурированные, LSM‑деревья и B‑деревья), и OLAP/аналитическими хранилищами, где используются колоночные форматы сжатия, векторной обработкой и материализованными представлениями, чтобы эффективно работать с большими объёмами и аналитическими запросами
https://datatalks.ru/chapter-4-storage-and-retrieval/
#DesigningDataIntensiveApplications
DataTalks.RU. Data Engineering / DWH / Data Pipeline
Глава 4. Хранение и извлечение
🔥19❤1👍1
Небольшая статья "Введение в gRPC: Python, proto Protocol Buffers, client и server"
с коротким упрощенным примером "gRPC Unary Client <---> Server" на github grpc-protobuf-example
Краткий алгоритм "Как начать работать с gRPC":
1. Установить зависимости (
2. Определить контракт (
3. Сгенерировать код из
4. Реализовать сервер
5. Реализовать клиент (вызов RPC)
Если вам необходимо интегрироваться с каким-либо сервисом, который поддерживает gRPC, то алгоритм действий следующий:
1. Получить/скачать из репозитория
2. Сгенерировать Python-клиентский код из
3. Импортировать сгенерированный код в ваш проект
4. Подключиться к gRPC-endpoint через channel
5. Вызывать методы через stub
#gRPC #ProtoBuf
с коротким упрощенным примером "gRPC Unary Client <---> Server" на github grpc-protobuf-example
Краткий алгоритм "Как начать работать с gRPC":
1. Установить зависимости (
grpcio, grpcio-tools)2. Определить контракт (
.proto файл)3. Сгенерировать код из
.proto через grpc_tools.protoc4. Реализовать сервер
5. Реализовать клиент (вызов RPC)
Если вам необходимо интегрироваться с каким-либо сервисом, который поддерживает gRPC, то алгоритм действий следующий:
1. Получить/скачать из репозитория
.proto файл2. Сгенерировать Python-клиентский код из
.proto с помощью grpc_tools.protoc3. Импортировать сгенерированный код в ваш проект
4. Подключиться к gRPC-endpoint через channel
5. Вызывать методы через stub
#gRPC #ProtoBuf
DataTalks.RU. Data Engineering / DWH / Data Pipeline
Введение в gRPC: Python, proto Protocol Buffers, client и server
Введение в gRPC: Python, proto Protocol Buffers, client и server. Что такое gRPC и как работает? Сравнение с REST. Примеры на Python
👍5❤3
Глава 5. Кодирование и Эволюция (Encoding and Evolution)
Продолжение перевода книги «Designing Data-Intensive Applications, 2nd Edition»
https://datatalks.ru/chapter-5-encoding-and-evolution/
#DesigningDataIntensiveApplications
Продолжение перевода книги «Designing Data-Intensive Applications, 2nd Edition»
Статья рассматривает, как различные форматы кодирования данных (JSON, XML, Protocol Buffers, Avro и др.) обеспечивают поддержку эволюции — то есть возможности изменять структуры данных (схемы), сохраняя совместимость между старым и новым кодом.
Обсуждаются два вида совместимости: обратная (новый код читает старые данные) и прямая (старый код читает данные, сделанные новым кодом), а также то, как форматы и схемы помогают избежать потери данных при таких изменениях.
Также статья показывает, как схемы и кодирование применяются при передачи данных между компонентами (базы данных, RPC, веб-сервисы, события), и какие практики и форматы (например, Avro, вызовы сервисов) подходят для поддержания эволюции в распределённых системах.
https://datatalks.ru/chapter-5-encoding-and-evolution/
#DesigningDataIntensiveApplications
DataTalks.RU. Data Engineering / DWH / Data Pipeline
Глава 5. Кодирование и Эволюция (Encoding and Evolution)
🔥9👍1
Если хотели поиграться с trino iceberg и minio, тот вот репозиторий с docker compose настройками.
Можно провалиться в кишки таблицы iceberg на s3, ну и посмотреть на логику работы trino в ui.
Для развертывания трино необходим новый тип CPU, не везде может запуститься. Но в крайнем случае можно VPS арендовать на время 😉
https://github.com/ivanshamaev/trino-iceberg-minio
#trino #iceberg #minio
Можно провалиться в кишки таблицы iceberg на s3, ну и посмотреть на логику работы trino в ui.
Для развертывания трино необходим новый тип CPU, не везде может запуститься. Но в крайнем случае можно VPS арендовать на время 😉
https://github.com/ivanshamaev/trino-iceberg-minio
#trino #iceberg #minio
GitHub
GitHub - ivanshamaev/trino-iceberg-minio: Тестовый проект по Trino + Iceberg + Rest Catalog + Minio s3
Тестовый проект по Trino + Iceberg + Rest Catalog + Minio s3 - ivanshamaev/trino-iceberg-minio
🔥30❤4👍3
Оптимизация запросов в Trino
Наковырял из документации основные термины и понятия по Trino (плюс настройки из последней версии 478, которые могут пригодиться для оптимизации). Получился в некотором виде конспект.
https://ivan-shamaev.ru/trino-query-optimizer/
Также на днях вышел перевод книги Trino. Анализ больших данных.
Первая глава и оглавление доступны для просмотра
#trino #iceberg
Наковырял из документации основные термины и понятия по Trino (плюс настройки из последней версии 478, которые могут пригодиться для оптимизации). Получился в некотором виде конспект.
https://ivan-shamaev.ru/trino-query-optimizer/
Также на днях вышел перевод книги Trino. Анализ больших данных.
Первая глава и оглавление доступны для просмотра
#trino #iceberg
Персональный блог Data Engineer | Ex-TeamLead BI Developer
Оптимизация запросов в Trino. Обзор функциональности и настроек
Оптимизация запросов в Trino. Обзор функциональности и настроек. Перевод документации по улучшению производительности sql запросов в трино
🔥20👍7❤1
Как устроена работа Iceberg на примере Trino и Rest Catalog?
Iceberg - это табличный формат хранения данных в datalake, который управляется через библиотеку на Java (есть также реализации на Go, Rust, C++ и Python). Но базово работает через Java.
В статье кратко рассматривается как устроено Trino и как устроен Iceberg Java API (без погружения в разработку).
Ну и ссылочки на deepwiki по Iceberg/Trino/Rest Catalog.
https://ivan-shamaev.ru/how-iceberg-works-using-trino-and-rest-catalog/
#Trino #Iceberg #RestCatalog #Java
Iceberg - это табличный формат хранения данных в datalake, который управляется через библиотеку на Java (есть также реализации на Go, Rust, C++ и Python). Но базово работает через Java.
В статье кратко рассматривается как устроено Trino и как устроен Iceberg Java API (без погружения в разработку).
Ну и ссылочки на deepwiki по Iceberg/Trino/Rest Catalog.
https://ivan-shamaev.ru/how-iceberg-works-using-trino-and-rest-catalog/
#Trino #Iceberg #RestCatalog #Java
Персональный блог Data Engineer | Ex-TeamLead BI Developer
Как устроена работа Iceberg на примере Trino и Rest Catalog?
🔥10❤2👍1👀1
Trino vs Starrocks.pdf
1 MB
Обзор Trino vs Starrocks
Кажется, что Trino выигрывает по популярности, как единый SQL инструмент под разные источники данных и возможность их объединить (Federated queries). Еще в Трино имеется фича по динамическому расширению воркеров и Velox на C++.
На одном из meetup команда Авито говорила, что в Starrocks плохо обстоят дела с ограничениями по ресурсам на query. То есть может случиться, что несколько запросов заберут все ресурсы и кластер может "упасть" (возможно ошибаюсь в пересказе). Может быть уже это пофиксили в новых версиях. В трино похожая ситуация может быть, если включить FTE Task mode, то может закончиться память.
Еще в Starrocks при рестарте загружаются заново детальные Iceberg statistics.
Пока по обзорам Starrocks выглядит лучше, но вероятно есть детали. Нужно иметь ввиду, что у Trino ОЧЕНЬ много различных настроек и конфигураций. Взять тот же FTE или spills. Поэтому только по одним графикам сложно утверждать однозначно, что Starrocks лучше.
Не воспринимайте этот пост как рекомендацию 😇
Кажется, что Trino выигрывает по популярности, как единый SQL инструмент под разные источники данных и возможность их объединить (Federated queries). Еще в Трино имеется фича по динамическому расширению воркеров и Velox на C++.
На одном из meetup команда Авито говорила, что в Starrocks плохо обстоят дела с ограничениями по ресурсам на query. То есть может случиться, что несколько запросов заберут все ресурсы и кластер может "упасть" (возможно ошибаюсь в пересказе). Может быть уже это пофиксили в новых версиях. В трино похожая ситуация может быть, если включить FTE Task mode, то может закончиться память.
Еще в Starrocks при рестарте загружаются заново детальные Iceberg statistics.
Пока по обзорам Starrocks выглядит лучше, но вероятно есть детали. Нужно иметь ввиду, что у Trino ОЧЕНЬ много различных настроек и конфигураций. Взять тот же FTE или spills. Поэтому только по одним графикам сложно утверждать однозначно, что Starrocks лучше.
Не воспринимайте этот пост как рекомендацию 😇
👍7