Озеро данных (Data Lake)
1. Что такое Data Lake?
2. Как устроено озеро данных?
3. Озера данных и базы данных
4. Кому будут полезны Data Lake?
5. Недостатки озер данных
Data Lake, Smart Data Lake, озеро данных – что это и в чём его польза для бизнеса? Можно ли называть его Big Data Lake? Чем отличается озеро данных от базы данных? В своей новой статье технический директор DIS Group Олег Гиацинтов объясняет сложные вещи простыми словами.
Что такое Data Lake?
Озеро данных – это средство организации данных для их хранения и использования. В настоящее время применение озера данных ограничивается несколькими направлениями:
- в качестве песочницы дата-саентистов для исследования данных, результаты которых будут использованы для развития продуктов и бизнеса в целом. Это первое направление встречается чаще всего;
- для хранения различных неструктурированных и сложных в использовании данных, включая различную медиаинформацию, которая уже используется или будет использоваться в будущем, но которую невозможно сохранить в каком-то удобном виде в единой зоне, будь то реляционная структура, такая как хранилище данных, или файловая структура.
Таким образом, Data Lake – удобный инструмент для хранения там данных. Однако следует понимать, что хранение любых данных, которые есть в организации, влечёт за собой определённые затраты на инфраструктуру и на системное программное обеспечение. Поэтому основной частью озера данных является именно песочница, то есть тот слой, в котором проводятся аналитические исследования (analytics).
Как устроено озеро данных?
В структуре озера данных можно выделить следующие ключевые элементы:
- Первоначальные (сырые) данные
- Возможно, какие-то зоны консолидации этих данных и связывания их между собой
- Огромная зона песочницы.
Озеро данных как единая среда для работы строится следующим образом. Обычно сначала строят слой первоначальных необработанных данных, которые загружаются из доступных источников. Чаще всего идёт разделение на данные из источников, которые не могут быть обработаны (например, всё, что касается интернета вещей, медиаресурсов и т.д.), и структурированные данные из систем-источников, которые используются для аналитики. Они уже не проходят слой первоначальных данных, за исключением случаев, когда требуется связать между собой данные из разных источников. Здесь есть некое сходство с хранилищем данных: внутри озера тоже промежуточные стейджинги (зоны хранения), но озеро покрывает их все, потому что все зоны хранения реализованы на одной и той же платформе. Это может быть Hadoop или различный набор нереляционных баз данных. Однако у озера данных есть одна очень важная функция, отличающая его от хранилища: это наличие у бизнес-пользователя возможности создавать новые структуры данных самостоятельно, без обращения к IT-разработчикам. Когда бизнес-пользователь что-то исследует, он перемещает данные из одних структур в другие и создаёт при этом новые структуры, в которые перекладываются результаты исследования. Именно поэтому песочница, как я уже говорил, является самым крупным блоком озера данных.
Озеро данных в первую очередь моделируется с определённой структурой для тех целей, с которыми они будут использованы. Из-за особенностей индексации озеро данных редко используют для построения отчётности, хотя строгого запрета на это нет.
Озера данных и базы данных
Озеро данных не следует путать с базами данных или корпоративными хранилищами данных (DWH). Озеро данных и база данных – понятия совершенно разного типа.
- Озеро данных предназначено для хранения данных и для аналитических исследований с возможностью обработки данных.
- База данных – это средство для хранения и использования данных в рамках какой-либо системы.
Таким образом, озеро предназначено в первую очередь для работы со сложными данными и с любыми вариациями аналитических построений, база данных – для их хранения, структурирования и обработки. Это абсолютно разные цели. Если базы используются чаще всего как основное средство для хранения данных в хранилище данных, то озеро – это механизм, в котором данные используют предложенную среду для хранения и для обработки. С точки зрения инфраструктурной части озеро может оказаться дешевле за счёт того, что затраты на аппаратную составляющую из расчёта на единицу информации будут ниже, чем в базе данных, поскольку кластер можно выстроить на довольно простых серверах.
Кому будут полезны Data Lake?
Бизнес-пользователь может даже не подозревать о существовании озера данных, но при этом пользоваться результатами работы на нём, а именно – результатами обработки данных и исследований. Data Scientist – человек, который проводит исследование таких гипотез. Из числа всех гипотез, которые он сделал, совместно с бизнес-пользователем будет выбран именно тот набор гипотез, который даёт наилучший результат для того, чтобы создать новый продукт, поменять что-то существующее, изменить ценообразование, уменьшить объёмы оттока, увеличить приток новых клиентов или снизить свои затраты. Соответственно, пользователями являются, если говорить в самом широком смысле, всё руководство и все люди, принимающие решение о том, как будет развиваться бизнес, какие продукты надо использовать и каким образом. Другое дело, что для того, чтобы прийти к такому решению, есть Data Scientists, которые эти данные используют. Их работа, которая ведётся на озере данных, имеет для бизнеса важное значение, но люди, принимающие решение, могут об ней не знать и не задумываться. В этом заключаются основные преимущества озёр данных для всего бизнеса компании, в том числе для затратных подразделений, которые используют это для оптимизации своей работы.
Недостатки озер данных
Что касается недостатков, здесь есть как технические вопросы, так и вопросы, связанные с организационным использованием.
- Во-первых, неконтролируемое использование озёр данных большим количеством бизнес-пользователей чаще всего приводит к «замусориванию» озёр, то есть появлению большого количества структур данных, где они хранятся после различных вычислений. Это приводит к тому, что эти структуры появляются, но бизнес-пользователь или Data Scientist, приняв решение «а надо попробовать ещё и вот так», не удаляет предыдущую структуру, а просто создаёт всё новые и новые. Происходит бесконтрольное увеличение числа структур данных, и если подразделение архитектуры не отслеживает используемость этих данных и, соответственно, не подчищает эти структуры, это приводит к тому, что затраты на инфраструктуру растут очень серьёзно, а реальная используемость данных не увеличивается. Поэтому первая и основная вещь – надо следить именно за изменением используемости тех структур данных, которые создаются в озере.
- Второе – это не очень хороший набор знаний у специалистов, которые есть сейчас на рынке. Всё дело в том, что все озёра строятся, скажем так, не на самых привычных технологиях, которые есть на рынке. В связи с этим очень часто встречается применение озёр в качестве своего рода «решений для всего, на всякий случай на будущее». Например, там могут храниться биометрические данные, образцы голосов, которые компания ещё только планирует использовать, не располагая пока что нужными для этого технологиями. Другой вариант – складирование данных с нескольких тысяч промышленных датчиков «на будущее», в расчёте на то, что в дальнейшем в штате появятся аналитики, которые будут с этими данными работать. Таким образом, очень важно правильное архитектурное использование решения, то есть понимание, какую информацию в озеро складывают и для чего. Не менее важно понимать, кто эти данные запрашивает и нужны ли они для хранения дальше. Наконец, нужно понимать особенности программного обеспечения, лежащего под озером, чтобы принять правильное решение об использовании. Например, я уже говорил, что на озёрах данных редко стоят отчётность. Это можно сделать, но зачастую особенности программного обеспечения, которое обеспечивает кластер под озером, приводят к тому, что извлечение отчётности будет занимать очень много времени. Другой пример: очень редко данные из озера, особенно в больших объёмах, передают в какие-то реляционные базы данных.
- Третья большая проблема – это отсутствие каких-либо описаний того, что именно из данных используется. На самом деле появление и усиление направления Data Governance было связано с серьёзным, взрывным ростом направления Big Data. Появилось огромное количество типов новых данных, с которыми стало необходимо работать, но их описание сильно запаздывало. Бесконтрольное увеличение объёмов информации привело к тому, что значительная часть времени тратилась на то, чтобы понять: что же это за данные? Как мы их используем? Чего нам не хватает? Фактически бизнес-пользователь нередко не знает тех возможностей, какими располагает, поэтому возможно многократное дублирование информации, использование одних и тех же источников. И чтобы ваше озеро данных не превратилось в болото, необходимо внедрение механизмов Data Governance с учётом той информации, которая в озеро попадает и которая постоянно меняется. Это в первую очередь применение каталогов данных на техническом уровне, которые позволяют понять зависимость данных между собой и увидеть их реальную используемость.
Олег Гиацинтов – технический директор DIS Group с опытом руководства IT-проектами более 16 лет. Один из ведущих экспертов России во многих областях, связанных с Big Data и стратегическим управлением данными, включая интеграцию данных, обеспечение их качества, управления знаниями и построение датацентричных бизнес-процессов. Один из авторов «Учебника 4CIO» – самого современного пособия по управлению IT-структурой предприятий и организаций.
Области экспертизы:
- Стратегическое управление данными
- Интеграция данных
- Качество данных
- Управление мастер-данными
- Управление знаниями
- Защита данных и антифрод
- Big Data.
Обновлено: 19.12.2023
Опубликовано: 18.05.2022