"Озеро или хранилище?" может показаться неправильным вопросом, ведь современные архитектуры объединили оба понятия под зонтиком lakehouse. Но поскольку они отвечают фундаментально разным потребностям, организациям всё ещё необходимо понимать обе парадигмы.
Ключевое различие
Data warehouse (DWH) — это структурированный слой хранения с принципом schema-on-write, оптимизированный в первую очередь под отчётность. Моделируется по star- или snowflake-схеме, индексируется под SQL и подключается напрямую к BI-инструментам.
Data lake работает иначе, по принципу schema-on-read. Данные сначала хранятся в сыром виде (JSON, Parquet, изображения, логи), структура добавляется, когда появляется аналитическая потребность. Lake хорошо подходит для машинного обучения, полуструктурированных данных и задач, требующих огромного масштаба.
Как lakehouse объединяет оба подхода
Проекты Databricks Delta Lake, Apache Iceberg и Snowflake Polaris приносят в lake ACID и гарантии производительности warehouse. Организация может выполнять и ML-пайплайны, и BI-отчёты поверх одного и того же слоя хранения.
Что определяет выбор?
- Разнообразие типов данных: если в основном транзакционные данные и главный потребитель — BI, приоритет у warehouse.
- Объём ML и AI: если много изображений, текстов или крупных временных рядов — приоритет у lake.
- Масштаб и стоимость: на петабайтах lake в разы дешевле.
- Задержка запроса: если дашборд правления должен открываться за две секунды — без warehouse не обойтись.
Практическая рекомендация
У среднего размера турецких клиентов мы последовательно видим такой шаблон: Snowflake или Azure Synapse как warehouse, а поверх общего хранилища — lakehouse-слой на Databricks или Fabric. Операционная отчётность идёт из warehouse, ML-пайплайны и архив сырых данных — из lakehouse. Чисто однослойные архитектуры редко масштабируются.
