Skip to content

Куратор раздела

Подвальный Артем, Data Engineer

Канал Data Engineer Lab

Хочешь перейти в дата-инженерию, но не знаешь с чего начать? Пиши - составим резюме, продумаем твое развитие https://t.me/ampodvalniy

Хочешь улучшить текущий раздел, внести недостающее или поправить формулировку? Предлагай PR и тегай @Artemlin6231

DataLakehouse

Почему появился Data Lakehouse?

Традиционные Data Warehouse (DWH) хорошо справлялись с аналитикой по структурированным данным, но имели ограничения: высокая стоимость, жёсткие схемы и слабая поддержка машинного обучения.

Data Lake стал ответом на эти проблемы: он позволил хранить любые данные (сырые, полу- и неструктурированные) в дешёвых масштабируемых объектных хранилищах (S3, ADLS, GCS). Однако озёра данных не обеспечивали транзакционность (ACID), контроль качества и удобный SQL-доступ.

Data Lakehouse объединяет лучшее из двух миров: - гибкость и низкую стоимость озёр данных, - надёжность и транзакционность хранилищ.

Благодаря открытым табличным форматам (Apache Iceberg, Delta Lake, Apache Hudi) Lakehouse стал единым слоем для BI, аналитики, потоковой обработки и машинного обучения. Сегодня он рассматривается как архитектурный стандарт для современных платформ данных.

map_reduce

DataLakehouse

Введение

Data Lakehouse — это архитектура, которая объединяет в себе преимущества традиционного Data Warehouse (DWH) и гибкого Data Lake.
Она позволяет хранить данные любого типа в дешёвом масштабируемом хранилище и работать с ними с помощью SQL, потоковой обработки и ML/AI.


Архитектура и компоненты Lakehouse

1. Слой хранения данных (Storage Layer)

  • Используются объектные хранилища: Amazon S3, Azure Data Lake Storage (ADLS), Google Cloud Storage (GCS), HDFS.
  • Поддерживаются все типы данных:
  • Структурированные: таблицы в формате Parquet, ORC, Avro.
  • Полуструктурированные: JSON, CSV, логи, события.
  • Неструктурированные: изображения, аудио, видео, документы.
  • Основные свойства: низкая стоимость хранения, горизонтальная масштабируемость, независимость от вычислительных ресурсов.

2. Форматы таблиц (Open Table Formats)

Это ключевая инновация, превращающая «просто озеро» в Lakehouse.
- Популярные реализации: Apache Iceberg, Delta Lake, Apache Hudi.
- Основные возможности: - ACID-транзакции — гарантии целостности и согласованности данных.
- Time travel и снапшоты — возможность читать таблицу в прошлом состоянии.
- Эволюция схемы и партиционирования без перелива данных.
- Оптимизация запросов — partition pruning, min/max статистики, Bloom-фильтры.
- Табличный слой абстрагирует физическое хранение файлов и делает данные доступными через SQL-интерфейсы.


3. Каталоги и метаданные (Catalog Layer)

  • Хранят сведения о таблицах, их схемах и снимках:
  • Hive Metastore, AWS Glue, Project Nessie, REST/JDBC-каталоги.
  • Функции:
  • Регистрация и управление таблицами.
  • Отслеживание истории изменений (снапшоты, версии).
  • Обеспечение согласованности между разными движками (Spark, Flink, Trino и т. д.).
  • Это «точка входа» для всех клиентов Lakehouse.

4. Слой вычислений (Compute Layer)

  • Lakehouse поддерживает различные сценарии обработки:
  • Batch: Apache Spark, Trino, Dremio, Presto.
  • Streaming: Apache Flink, Structured Streaming, Kafka + Iceberg/Hudi/Delta.
  • ML/AI: PyTorch, TensorFlow, Spark MLlib, MLflow.
  • Возможности:
  • Массовая аналитическая обработка (OLAP).
  • Real-time аналитика на потоках.
  • Подготовка датасетов для моделей машинного обучения.

5. BI и аналитика (BI & Analytics Layer)

  • BI-инструменты подключаются напрямую к Lakehouse:
  • Power BI, Tableau, Looker, Superset.
  • Возможности:
  • SQL-доступ без выгрузки данных в отдельный DWH.
  • Поддержка интерактивных дашбордов и batch-отчётов.
  • Объединение BI и Data Science на едином источнике данных.

6. Управление и безопасность (Governance & Security Layer)

  • Ключевой слой для корпоративного использования:
  • Data Governance: контроль качества данных, аудит, каталогизация.
  • Data Lineage: отслеживание происхождения и преобразований данных.
  • Безопасность: row-level / column-level security, маскирование, RBAC/ABAC.
  • Интеграция с каталогами данных: Collibra, Atlan, Apache Atlas.