Data lake
Озеро данных (англ. Data Lake) — это централизованное хранилище, предназначенное для накопления информации в её исходном, «сыром» виде, без предварительной жёсткой структуризации. Оно позволяет собирать, сохранять и обрабатывать значительные объёмы структурированных, полуструктурированных и неструктурированных данных для последующего анализа, визуализации, машинного обучения и решения других прикладных задач.
Определение[править | править код]
Озеро данных представляет собой репозиторий, в который поступает информация разнообразных типов из множества источников. При загрузке данные, как правило, не подвергаются глубокой трансформации и сохраняются в первоначальном формате. Схема или преобразование могут применяться позднее, на этапе анализа.
История[править | править код]
Активное использование термина «Data Lake» началось в начале 2010-х годов. Одним из первых его ввёл Джеймс Диксон, технический директор компании Pentaho, противопоставляя эту концепцию традиционным хранилищам данных и витринам данных (data mart). С развитием технологий хранения, таких как облачные хранилища, распределённые файловые системы и средства потоковой обработки, популярность озёр данных существенно возросла.
Архитектура[править | править код]
Типичная архитектура озера данных состоит из нескольких ключевых компонентов:
- Хранилище — для сохранения исходных данных используются объектные хранилища или распределённые файловые системы.
- Загрузка данных (ингестия) — поддерживается как пакетная, так и потоковая передача информации из различных источников.
- Метаданные и каталогизация — система описания происхождения, формата и состояния данных, которая предотвращает превращение озера в так называемое «болото данных».
Преимущества и недостатки[править | править код]
К сильным сторонам подхода относятся гибкость хранения разнородных данных без необходимости предварительного определения схемы, а также снижение затрат благодаря использованию облачных ресурсов. Среди недостатков выделяют сложности в обеспечении безопасности и конфиденциальности[1], рост расходов на хранение при увеличении объёмов информации[2], а также трудности с поиском и каталогизацией данных[3].
Сравнение с другими подходами[править | править код]
| Подход | Характеристика | Применение | Преимущества | Ограничения |
|---|---|---|---|---|
| Хранилище данных (Data Warehouse) | Хранение структурированных данных с предопределённой схемой | Бизнес-аналитика, отчётность | Высокая производительность запросов, зрелость инструментов | Низкая гибкость, ограниченная поддержка неструктурированных данных |
| Data Lakehouse | Комбинирует хранение исходных и структурированных данных | Гибридная аналитика | Сочетание гибкости и управляемости | Сложность архитектурной реализации |
Области применения[править | править код]
- Консолидация информации из множества источников в едином репозитории.
- Подготовка данных для обучения моделей машинного обучения.
- Интерактивная аналитика и визуализация.
- Обработка потоков данных с устройств Интернета вещей (IoT) и телеметрии.
- Долгосрочное архивное хранение для потенциального будущего использования.
См. также[править | править код]
- Хранилище данных (Data Warehouse)
- Data Lakehouse
- Большие данные
- ETL и ELT
- Объектное хранилище
Ссылки[править | править код]
- https://aws.amazon.com/what-is/data-lake/
- https://en.wikipedia.org/wiki/Data_lake
- https://www.ibm.com/think/topics/data-lake
- https://www.databricks.com/discover/data-lakes
- https://azure.microsoft.com/en-us/resources/cloud-computing-dictionary/what-is-a-data-lake
- https://cloud.google.com/learn/what-is-a-data-lake
- https://www.salesforce.com/data/what-is-a-data-lake/
- https://www.telefonica.com/en/communication-room/blog/what-is-data-lake-advantages-disadvantages/