Корпоративные хранилища и витрины данных были рассмотрены здесь, в материале про ETL-процессы. Сегодня проанализируем еще один важный элемент современной ИТ-инфраструктуры для хранения больших данных (Big Data). Читайте в этой статье, что такое озеро данных (Data Lake), зачем оно нужно, как используется, на каких технологиях основано и чем чревато его некорректное применение.
Одно из отличительных свойств Big Data – это разный формат представления информации: посты в соцсетях, файлы мультимедиа, логи с технологического оборудования, записи из корпоративных баз данных и пр. Чтобы извлечь из всех этих данных полезные для бизнеса сведения, их прежде всего необходимо собрать. Как раз для этого и используется озеро данных – хранилище большого объема неструктурированных данных, собранных или генерированных одной компанией [1].
В отличие от корпоративных хранилищ данных (КХД) или Data Warehouse (DWH), в озере данных хранится неструктурированная, т.н. сырая (raw) информация. Например, видеозаписи с беспилотников и камер наружного наблюдения, транспортная телеметрия, фотографии, логи пользовательского поведения, метрики сайтов, показатели нагрузки информационных систем и пр. Такие данные пока непригодны для типового использования в ежедневной аналитике в рамках BI-систем, но могут использоваться для быстрой отработки новых бизнес-гипотез с помощью ML-алгоритмов. Таким образом, именно Data Scientist – это типичный пользователь озера данных, тогда как с DWH работает гораздо больше сотрудников: аналитики, профильные специалисты и руководители. Однако, это не единственная разница между Data Lake и КХД.
Чтобы лучше понять, что общего между этими элементами корпоративной ИТ-инфраструктуры и чем они отличаются, проанализируем их по следующим критериям [2]:
Критерий |
Data Warehouse |
Data Lake |
Полезность |
Хранятся только полезные данные, актуальные в текущем периоде времени |
Хранятся все данные, в т.ч. и «бесполезные», которые могут пригодиться в будущем или же не понадобиться никогда |
Структура |
Четко структурированные данные одного формата |
Структурированные, полуструктурированные и неструктурированные разнородные данных любых форматов: от мультимедиа файлов до текстовых и бинарных из разных источников |
Гибкость |
Низкая гибкость: структура и типы данных продумываются заранее и не подлежат изменению в процессе эксплуатации |
Высокая гибкость, которая позволяет в процессе эксплуатации добавлять новые типы и структуры данных |
Доступность |
Благодаря четкой структуре данных процесс их извлечения и обработки происходит быстро |
Из-за отсутствия четкой структуры необходима дополнительная обработка данных для их практического использования |
Стоимость |
Высокая стоимость из-за сложности проектирования и модернизации, а также цены оборудования для быстрой и эффективной работы |
Озеро данных намного дешевле DWH, т.к. основная статья затрат – это хранение гигабайт информации |
Таким образом, озера данных дают практическому применению Data Science (DS) в бизнесе следующие преимущества [3]:
Как было отмечено выше, в большинстве случаев озера данных строятся на основе коммерческих дистрибутивов Apache Hadoop (Cloudera/HortonWorks, MapR, Arenadata) или облачных решений от Amazon Web Services, Microsoft Azure, Mail.ru, Яндекса и других Cloud-провайдеров. Существуют также готовые продукты от специализированных вендоров корпоративного сектора Big Data: Teradata, Zaloni, HVR, Podium Data, Snowflake и т.д. [4]
В любом случае, независимо от выбранной базы, организация Data Lake включает следующие компоненты [5]:
Хотя Data Lake позиционируется, в первую очередь, как хранилище сырой информации, оно может содержать также и обработанные данные. При корректном использовании Data Lake предоставляет пользователям возможность быстро запрашивать меньшие, более актуальные и гибкие наборы данных по сравнению с DWH при аналогичном времени выполнения запросов. Это возможно благодаря вычисляемой на лету схеме данных (ad hoc), которая не предопределяется заранее, а формируется в момент доступа. Таким образом, на практике озеро данных может использоваться вместе с КХД, обеспечивая бизнес-инфраструктуру на основе информации (data-driven) [6].
При всех своих достоинствах, озера данных чреваты следующими рисками [7]:
Чтобы озеро данных не превратилось в болото, необходимо отладить процесс управления данными — data governance, определяя качество информации еще до загрузки в data lake. Это можно сделать следующими способами [2]:
В дополнение к этим рекомендациям, компания Teradata, один из ведущих поставщиков Big Data решений для аналитики, приводит еще 5 советов по эффективному развертыванию озер данных [7]:
Интересна также корреляция чистоты озера данных со степенью управленческой зрелости предприятия по модели CMMI. В частности, когда ведется непрерывный мониторинг отлаженных бизнес-процессов, современные Big Data инструменты с интегрированными средствами машинного обучения позволяют обеспечить самоорганизацию Data Lake, выполняя непрерывный сбор, агрегацию и мета-разметку информации с помощью так называемых конвейеров данных (data pipeline) [8].
Уровень зрелости управления |
Состояние и характер данных |
Состояние Data Lake |
1. Начальный |
Данные дублируются или частично отсутствуют, представлены в разных форматах и системах, не связаны между собой, велика доля ручной обработки данных |
Локальное хранилище данных без определенного порядка автоматизированной обработки |
2. Управляемый |
Информация достаточно успешно обрабатывается автоматически в пределах одного подразделения, но не интегрирована с другими корпоративными процессами и структурами (отделами, филиалами и пр.) |
Лужа или болото данных |
3. Определенный |
Обмен данными между различными процессами, системами и структурами предприятия частично автоматизирован, имеется единый каталог корпоративных данных |
Озеро данных |
4. Управляемый на основе количественных данных |
Синхронизация данных между различными процессами, системами и структурами предприятия автоматизирована не полностью, часть процедур запускается по требованию или вручную |
Управляемое озеро данных
|
5. Оптимизируемый |
Процедуры автоматизированного появления, обновления, обмена и синхронизации данных между различными процессами, системами и структурами предприятия отлажены и успешно работают |
Самоорганизующееся озеро данных |
Вместо заключения
По прогнозу Markets&Markets, к 2021 году рынок озер данных вырастет до $8,81 млрд с годовым темпом роста 28,3% [4]. Этот тренд подтверждает исследование «Angling for Insights in Today's Data Lake», показывая почти 10% рост выручки у компании, использующих эту технологию [2]. Однако, при универсальности и высокой потенциальной пользе Data Lake, организация чистого озера данных, которое принесет реальную выгоду бизнесу – это достаточно сложная задача. Как и в любом DS-проекте, прежде всего следует оценить его будущие перспективы с учетом затрат на реализацию. Сегодня организация озера данных оправдана в компаниях, которые можно отнести к data-driven организациям: телекомы, крупные ритейлеры, особенно интернет-маркеты, банки и производственные холдинги с распределенной структурой филиалов. Обычно в таких организациях процессы находятся на 4-5 уровне CMMI, а ИТ-инфраструктура, включая Big Data, представляет собой сложный комплекс проприетарных и самописных решений по непрерывной поставке различных данных. Поэтому Data Lake отлично впишется в уже существующий ИТ-ландшафт, дополняя и обогащая его новыми данными.
Источники