Что такое data lake простыми словами: как хранят сырые данные

Що таке data lake простими словами: як зберігають сирі дані

Компания собирает логи мобильного приложения, записи разговоров колл-центра, снимки с камер склада и таблицы продаж — и всё это в разных форматах, разных объёмах и с разной скоростью поступления. Класть такое в классическую базу данных дорого и больно: сначала надо всё почистить, привести к единой структуре, определить схему. Именно для такой ситуации и придумали data lake — хранилище, куда данные сбрасывают в том виде, в котором они родились, а разбирают уже тогда, когда появляется конкретный вопрос.

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

Что такое data lake простыми словами

Data lake (дословно — «озеро данных») — это централизованное хранилище, которое принимает данные любого типа в первозданном, «сыром» виде и хранит их без предварительной трансформации. Структуру и схему применяют не на входе, а на выходе — в момент, когда аналитик или модель машинного обучения начинает эти данные читать.

Озеро, в которое впадают разные потоки, — метафора хранилища сырых данных

Термин предложил Джеймс Диксон, технический директор компании Pentaho, примерно в 2010 году. Он сравнил data lake с бутылкой воды: если хранилище данных (data warehouse) — это бутилированная, очищенная и расфасованная вода для конкретного потребителя, то озеро — природный резервуар, куда стекают разные потоки и откуда каждый берёт то, что ему нужно. Метафора прижилась, хотя сам Диксон позже жаловался, что её часто понимают слишком буквально.

Простая аналогия из повседневной жизни: представьте гараж, куда складывают инструменты, запчасти, старые коробки и спортивный инвентарь без сортировки. Лишних затрат на организацию нет, место дешёвое, сложить можно всё что угодно. Но чтобы что-то найти, придётся либо помнить, где что лежит, либо вести хотя бы приблизительный реестр. Если реестра нет — гараж быстро превращается в свалку.

Что именно кладут в озеро

В data lake может попасть практически всё:

  • структурированные данные — выгрузки из CRM, таблицы транзакций, бухгалтерские регистры;
  • полуструктурированные — JSON-файлы из API, XML-документы, логи серверов, CSV-выгрузки;
  • неструктурированные — аудио звонков, видео с камер, сканы документов, письма, посты в соцсетях;
  • потоковые данные — телеметрия датчиков, клики пользователей на сайте, события из мобильных приложений в реальном времени.

Ключевое здесь — отсутствие требования к единому формату на входе. Один день в хранилище падают миллионы строк телеметрии, в другой — архив PDF-договоров за десять лет.

Как data lake работает изнутри

Архитектура озера данных основана на принципе schema-on-read — «схема при чтении». Это главное отличие от традиционных систем, где схему определяют заранее (schema-on-write). Работает это так.

Стойки с серверами в дата-центре, где хранятся данные озера

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

  • зона сырых данных (raw) — всё в оригинальном виде, ничего не удаляется и не изменяется;
  • зона очищенных данных (curated) — данные после базовой обработки: убраны дубликаты, согласованы форматы, добавлены обязательные поля;
  • зона для потребления (analytics-ready) — агрегированные наборы, готовые для отчётов, дашбордов или обучения моделей.

Вычисления происходят поверх хранилища отдельными инструментами: SQL-движками, Spark-кластерами, сервисами машинного обучения. Именно разделение хранения и вычислений делает подход гибким — можно увеличивать объём данных, не покупая более мощные серверы для аналитики, и наоборот.

Технически озёра чаще всего строят на объектных хранилищах облачных провайдеров — Amazon S3, Azure Data Lake Storage, Google Cloud Storage — или на распределённых файловых системах на собственном оборудовании, классический пример которых — HDFS в экосистеме Hadoop. Объектные хранилища доминируют, потому что гигабайт там стоит копейки, а масштабирование практически неограниченно.

Роль метаданных и каталогизации

Сырые файлы без описания — это просто куча байтов. Чтобы озеро работало, рядом с данными хранят метаданные: откуда пришёл набор, когда обновлялся, кто владелец, какие в нём поля и что они означают. Этой задачей занимаются каталоги данных и сервисы вроде AWS Glue или Apache Atlas.

Именно каталогизация отделяет озеро от болота. Термин data swamp («болото данных») описывает типичную неудачу: компания годами сбрасывала в хранилище всё подряд, не ведя учёта, и теперь никто не знает, что там лежит, можно ли этим пользоваться и не устарело ли оно. Расходы на хранение растут, пользы — ноль.

Чем data lake отличается от data warehouse

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

Сравнение упорядоченных банок и корзины с несортированными вещами
Критерий Data lake Data warehouse
Формат данных Любой, в сыром виде Структурированные, предварительно обработанные
Схема Определяется при чтении Определяется при записи
Подход к обработке ELT: загрузить, затем трансформировать ETL: трансформировать, затем загрузить
Стоимость хранения Низкая, дешёвые объектные хранилища Высокая, оптимизированные аналитические системы
Скорость ответа на запрос Медленнее без предварительной подготовки Быстрая, данные оптимизированы под запросы
Типичные пользователи Дата-инженеры, дата-сайентисты Бизнес-аналитики, менеджеры, BI-команды
Типичные задачи Машинное обучение, исследования, архивы Отчётность, KPI-дашборды, регулярная аналитика

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

В последние годы распространяется гибридная архитектура lakehouse, которая сочетает дешёвое хранение озера с транзакционными возможностями и скоростью хранилища. Форматы вроде Delta Lake или Apache Iceberg позволяют держать одно хранилище и для сырых файлов, и для аккуратных таблиц.

Где data lake применяют на практике

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

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

В банках и финтехе озёра хранят потоки транзакций и логи систем мониторинга. Это основа для выявления мошенничества: модель ищет аномалии в больших массивах сырых событий, а не только в агрегированных сводках. Плюс сырой архив упрощает регуляторные проверки — оригиналы записей никуда не исчезли.

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

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

Преимущества и ограничения подхода

Сильные стороны озера данных:

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

Но есть и ограничения, о которых стоит знать до старта проекта. Скорость аналитики без предварительной подготовки низкая — запрос по сырым JSON-логам на терабайты может выполняться часами. Качество данных никто не гарантирует: мусор на входе означает мусор на выходе. Безопасность и разграничение доступа сложнее, чем в классической базе, потому что хранилище одно, а уровней конфиденциальности в данных — много. И наконец, озеро требует дисциплинированной команды: без инженеров, которые поддерживают пайплайны и каталог, система деградирует за год-два.

Важная оговорка: data lake не заменяет культуру работы с данными. Технология лишь даёт место для хранения; ценность создают процессы каталогизации, контроля качества и управления доступом.

Облако или собственная инфраструктура

Первые озёра данных строили на собственных серверах с Hadoop-кластерами — это было сложно, дорого и требовало отдельной команды администраторов. С появлением облаков ситуация изменилась: объектные хранилища сделали вход в технологию доступным даже для небольших компаний.

Облака, отражающиеся в фасаде современного офиса, как символ облачной инфраструктуры

Облачный вариант выигрывает в большинстве случаев: оплата за фактически занятый объём, масштабирование без закупки железа, готовые управляемые сервисы для каталогизации и вычислений. Типичные комбинации — S3 плюс Athena в экосистеме AWS, ADLS плюс Synapse в Azure, Cloud Storage плюс BigQuery в Google Cloud.

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

Типичные ошибки при запуске озера данных

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

  1. Хранить всё без плана. «Сложим, потом разберёмся» — прямой путь к болоту. Даже сырые данные требуют минимального реестра источников.
  2. Игнорировать каталог метаданных. Без него поиск нужного набора превращается в археологические раскопки.
  3. Не определять владельцев данных. Если за набор никто не отвечает, он устаревает, и никто этого не замечает.
  4. Забыть о жизненном цикле. Часть данных теряет ценность или подлежит удалению по закону — нужны политики архивации и ретенции.
  5. Строить озеро «потому что все строят». Если компании достаточно отчётов из одной CRM, озеро станет дорогой игрушкой.

Частые вопросы о data lake

Чем data lake отличается от обычной базы данных?

База данных хранит информацию в строго определённой структуре и оптимизирована под конкретные операции — например, учёт заказов. Озеро принимает любые форматы без структуры и служит долговременным архивом и источником для анализа, а не операционной системой.

Нужен ли data lake малому бизнесу?

Обычно нет. Если все данные компании помещаются в несколько систем и нужна только стандартная отчётность, хватит базы данных и простого хранилища. Озеро начинает окупаться, когда объёмы большие, источников много, а форматы разнообразны.

Что такое data swamp?

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

Можно ли обойтись только data lake без хранилища данных?

Теоретически да, особенно с современными lakehouse-форматами, но на практике регулярную бизнес-отчётность быстрее и удобнее строить поверх оптимизированного хранилища. Чаще всего обе системы работают параллельно.

Насколько дорого обходится озеро данных?

Само хранение в облаке стоит недорого — счёт считают за гигабайты в месяц. Основные расходы идут на вычисления, когда данные обрабатывают, и на работу инженеров, которые поддерживают инфраструктуру. Точная сумма зависит от объёмов и частоты аналитики.

Как понять, что компании пора строить озеро

Есть несколько практических сигналов, что data lake — не прихоть, а потребность: данные поступают из многих систем в разных форматах, и их согласование «на лету» отнимает слишком много времени; дата-сайентистам или аналитикам регулярно нужны исторические сырые данные, которых в отчётах уже нет; объёмы растут так, что хранить всё в аналитических базах становится слишком дорого; появляются задачи машинного обучения, которым нужны большие массивы необработанной информации. Если ни один из этих пунктов не про вас — начните с более простого решения, а озеро оставьте на потом. Технология легко масштабируется, так что поздно начать почти не бывает.

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

Добавить комментарий