Что такое озера данных и почему в них дешевле хранить big data

Сейчас все вокруг твердят про пользу big data. В итоге бизнес пытается работать с масштабными базами данных, но сталкивается с проблемой — все данные разнородные и неструктурированные, перед загрузкой в базы их нужно долго обрабатывать. В итоге работа с big data оказывается слишком сложной и дорогой, а часть данных теряется, хотя могла бы принести пользу в будущем.

Помочь с этим могут data lake — озера данных, которые помогают быстро и недорого работать с большими объемами неструктурированных данных. Расскажем о их особенностях, ключевых отличиях озер от обычных баз данных и о сферах, в которых они будут наиболее полезны.

Что такое data lake

На русский язык data lake переводится как «озеро данных». Оно представляет собой огромное хранилище, в котором разные данные хранятся в «сыром», то есть неупорядоченном и необработанном виде. Данные в data lake как рыба в озере, которая попала туда из реки, — вы точно не знаете, какая именно там рыба и где она находится. А чтобы «приготовить» рыбу, то есть обработать данные, ее нужно еще поймать.

Мы в своей жизни чаще всего сталкиваемся именно с неструктурированными данными. Видеоролики, книги, журналы, документы Word и PDF, аудиозаписи и фотографии — все это неструктурированные данные, и все они могут хранится в Data Lake.

Как работает озеро данных

Data lake — это огромное хранилище, которое принимает любые файлы всех форматов. Источник данных тоже не имеет никакого значения. Озеро данных может принимать данные из CRM- или ERP-систем, продуктовых каталогов, банковских программ, датчиков или умных устройств — любых систем, которые использует бизнес.

Уже потом, когда данные сохранены, с ними можно работать — извлекать по определенному шаблону в классические базы данных или анализировать и обрабатывать прямо внутри data lake.

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

Еще одним примером инструмента обработки данных в data lake являются BI-системы, помогающие бизнесу решать задачи углубленной аналитики (data mining), прогнозного моделирования, а также визуализировать полученные результаты. Область использования многогранна — от финансового менеджмента до управления рисками и маркетинга.

«Чтобы работать с озером данных, в компании должны быть технические специалисты: Data Scientist, Data Developer, бизнес-аналитик. Такие специалисты имеют доступ к данным в data lake и могут их обрабатывать с помощью различных аналитических систем и подходов. В data lake данные можно обрабатывать без извлечения — достаточно оборудовать системы для анализа прямо внутри озера», — Константин Савчук, управляющий партнер компании Constanta.

Чем озера данных отличаются от обычных баз данных

Ключевое отличие озер данных от обычных баз данных — структура. В базах данных хранятся только четко структурированные данные, а в озерах — неструктурированные, никак не систематизированные и неупорядоченные.

Пример: представим, что есть вольное художественное описание вашей целевой аудитории: «Девушки возрастом 20–30 лет, незамужние, обычно без детей, работающие на низких руководящих должностях. И мужчины 18–25 лет, женатые, без детей, без четкого места работы». Такое описание — неструктурированные данные, которые можно загрузить в data lake.

Чтобы эти данные о целевой аудитории стали структурированными, их нужно обработать и преобразовать в таблицу:

Пол
Возраст
Семейный статус
Дети
Работа

Портрет 1
женский
20–30
в браке
нет
низкая руководящая должность

Портрет 2
мужской
18–25
в браке
нет
любая

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

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

Если упростить, можно представить, что data lake — это ваш жесткий диск, на котором хранятся все ваши файлы. А база данных — таблица, в которой учтены все эти файлы.

Есть и другие различия между базами данных и озерами данных:

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

В озерах хранятся в том числе и бесполезные данные, которые могут пригодиться в будущем или не понадобиться никогда.

Типы данных. В базах хранятся таблицы с конкретными цифрами и текстом, распределенными по четкой структуре.

В озерах лежат любые данные: картинки, видео, звук, файлы, документы, разнородные таблицы.

Гибкость. У базы данных гибкость низкая — еще на старте нужно определить актуальные для нее типы данных и структуру. Если появятся данные новых форматов — базу придется перестраивать.

У озер гибкость максимальная, потому что ничего не нужно определять заранее. Если вы вдруг решите записывать новые данные, например, видео с камер для распознавания лиц, озеро не придется перестраивать.

Стоимость. Базы данных стоят дороже, особенно если требуется хранить много данных. Нужно организовывать сложную инфраструктуру и фильтрацию, все это требует денег.

Озеро данных стоит намного дешевле — вы платите исключительно за занятые гигабайты.

Понятность и доступность данных. Данные в базе легко смогут прочитать и понять любые сотрудники компании, с ними могут работать бизнес-аналитики.

Чтобы структурировать данные в озере требуются технические специалисты, например Data Scientist.

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

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

Кому и зачем нужны озера данных

Озера данных можно использовать в любом бизнесе, который собирает данные. Маркетинг, ритейл, IT, производство, логистика — во всех этих сферах можно собирать big data и загружать их в data lake для дальнейшей работы или анализа.

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

«Data lake позволяет накапливать данные «про запас», а не под конкретный запрос бизнеса. За счет того, что данные всегда «под рукой», компания может быстро проверить любую гипотезу или использовать данные для своих целей. Например, для оптимизации логистики и эффективного управления цепочками поставок — от более детального планирования и прогнозирования объема продаж до поставок в нужном количестве, нужного качества, в нужное время с минимальными затратами», — Алексей Кулешов, директор департамента организационного развития и технологий ИТ-компании ОТР.

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

Или можно использовать data lake в маркетинге. Например, в ритейле и e-commerce можно хранить в data lake разрозненную информацию о клиентах: время, проведенное на сайте, активность в группе в соцсетях, тон голоса при звонках менеджеру и регулярность покупок. Потом эту информацию можно использовать для глобальной и масштабной аналитики и прогнозирования поведения клиентов.

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

Исследование ANGLING FOR INSIGHT IN TODAY’S DATA LAKE показывает, что компании, внедрившие Data Lake, на 9% опережают своих конкурентов по выручке. Так что можно сказать, что озера данных нужны компаниям, которые хотят зарабатывать больше, используя для этого анализ собственных данных.

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

Чем опасны data lake

У озер данных есть одна серьезная проблема. Любые данные, попадающие в data lake, попадают туда практически бесконтрольно. Это значит, что определить их качество невозможно. Если у компании нет четкой модели данных, то есть понимания типов структур данных и методов их обработки, плохо организовано управление озером, в нем быстро накапливаются огромные объемы неконтролируемых данных, чаще всего бесполезных. Уже непонятно, откуда и когда они пришли, насколько релевантны, можно ли их использовать для аналитики.

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

Чтобы озеро не стало болотом, нужно наладить в компании процесс управления данными — data governance. Главная составляющая этого процесса — определение достоверности и качества данных еще до загрузки в data lake. Есть несколько способов это сделать:

  • отсекать источников с заведомо недостоверными данными;
  • ограничить доступ на загрузку для сотрудников, у которых нет на это прав;
  • проверять некоторые параметры файлов, например не пропускать в озеро картинки, которые весят десятки гигабайт.

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

Управление данными — это не факультативная, а приоритетная задача. В компании должен быть отдельный сотрудник, ответственный за data governance. Обычно это Chief Data Officer, CDO.

«Накапливать данные в расчете “потом разберемся, зачем нужно, и поймем, как использовать” — неправильно. Потом вычленить что-то полезное из этого огромного массива абсолютно разных данных будет сложно и затратно. Поэтому при проектировании любого озера данных в первую очередь надо еще “на берегу” определиться, для каких целей его строить», — Алексей Кулешов, директор департамента организационного развития и технологий ИТ-компании ОТР.

Главное о data lake — озерах данных

  1. Data lake — это озеро данных, хранилище, в котором собрана неструктурированная информация любых форматов из разных источников.
  2. Озера данных дешевле обычных баз данных, они более гибкие и легче масштабируются.
  3. Озера данных можно использовать для любых целей: анализов, прогнозов, оптимизации бизнес-процессов.
  4. Данные можно извлекать из озера по определенным признакам или анализировать прямо внутри озера, используя системы аналитики.
  5. Если собирать слишком много данных «просто так» и никак с ними не работать, озеро может стать бесполезным болотом. Поэтому важно заранее определить, для чего именно вы собираете данные, и не накапливать их просто так.