Что такое озеро данных

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

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

Схема, показывающая варианты использования data lake.

Распространенные варианты использования озера данных включают:

  • Прием и перемещение данных: Сбор и консолидация данных из облачных служб, устройств Интернета вещей , локальных систем и потоковой передачи источников в один репозиторий.

  • Обработка больших данных: Обработка высокоскоростных данных в масштабе с помощью распределенных платформ обработки.

  • Аналитика и машинное обучение: Поддержка исследовательского анализа, расширенной аналитики и обучения модели ИИ и точной настройки больших, разнообразных наборов данных.

  • Бизнес-аналитика (BI) и отчеты: Включите панели мониторинга и отчеты, интегрируя курированные подмножества данных озера в хранилища или средства бизнес-аналитики.

  • Архивация и соответствие данным: Храните исторические или необработанные наборы данных для долгосрочного хранения, аудита и соответствия нормативным требованиям.

Преимущества озера данных

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

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

  • Поддержка гибких данных: В отличие от хранилищ, требующих структурированных форматов, озера данных обрабатывают структурированные, полуструктурированные и неструктурированные данные естественным образом.

  • Масштабируемость и производительность: В распределенных архитектурах озера данных поглощают и обрабатывают данные параллельно в масштабах. Они часто превосходят традиционные конвейеры извлечения, преобразования и загрузки (ETL) в высокопроизводительных рабочих нагрузках. Получите следующие преимущества производительности за счет:

    • Параллелизм: Распределенные вычислительные системы, такие как Apache Spark, разделяют данные и выполняют преобразования на многих узлах одновременно. Традиционные платформы ETL часто зависят от последовательной или ограниченной многопоточной обработки.

    • Масштабируемость: Распределенные системы масштабируется горизонтально путем эластичного добавления узлов вычислений и хранилищ по мере необходимости. Традиционные конвейеры ETL обычно зависят от вертикального масштабирования одного хоста, который быстро достигает пределов ресурсов.

  • Основы для гибридных архитектур: Озера данных часто сосуществуют со складами в озерном подходе, который объединяет необработанное хранилище с структурированной производительностью запросов.

Современное решение озера данных состоит из двух основных компонентов:

  • Хранения: Обеспечивает устойчивость, отказоустойчивость, бесконечную масштабируемость и прием различных типов данных с высокой пропускной способностью.

  • Processing: Движки, такие как Spark в Azure Databricks и Microsoft Fabric, обеспечивают эти решения. Эти механизмы поддерживают крупномасштабные преобразования, аналитику и машинное обучение.

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

Типичная архитектура озера данных

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

К общим слоям относятся:

  • Необработанный (Bronze) слой: Хранит полученные данные в их оригинальном формате с минимальной обработкой.

  • Очищенный (серебряный) слой: Содержит проверенные и преобразованные данные, оптимизированные для рабочих нагрузок аналитики и машинного обучения.

  • Курированный (золотой) слой: Хранит объединенные и готовые к бизнесу наборы данных, используемые командами для создания отчетов, панелей мониторинга и подчиненных приложений данных.

Этот многоуровневый дизайн, известный как архитектура медальона, улучшает качество данных, управление и производительность.

Когда следует использовать озеро данных

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

Озеро данных в качестве источника для хранилищ данных

Озеро данных может функционировать в качестве вышестоящего источника для хранилища данных, где необработанные данные приемируются из исходных систем и загружаются в озеро. Современные хранилища, такие как Fabric Data Warehouse, используют встроенные подсистемы SQL для массовой параллельной обработки (MPP) для преобразования необработанных данных в структурированный формат через extract, load, transform (ELT). Этот подход отличается от традиционных конвейеров ETL, где подсистема ETL извлекает и преобразует данные перед загрузкой в хранилище. Оба подхода обеспечивают гибкость в зависимости от варианта использования. Они балансируют качество данных, производительность и использование ресурсов и гарантируют, что хранилище оптимизировано для аналитики.

Сценарии потоковой передачи событий и Интернета вещей

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

В следующей таблице сравниваются озера данных и хранилища данных.

Функция Озеро данных Хранилище данных
Тип данных Необработанные, неструктурированные, полуструктурированные и структурированные Структурированные и курированные данные, организованные в реляционные схемы
Производительность запросов Производительность запросов зависит от процессинговых механизмов, а преобразование может происходить в момент выполнения запроса (схема на чтение данных) Оптимизировано для высокоэффективных аналитических запросов к структурированным данным (схема, определенная при записи)
Latency Более высокая задержка из-за обработки во время запроса Низкая задержка с предварительно обработанными структурированными данными
Этап преобразования данных Преобразование происходит во время запроса, что влияет на общее время обработки Преобразование происходит во время процесса ETL или ELT
Масштабируемость Высокомасштабируемый и экономичный для больших объемов разнообразных данных Масштабируемые, но более дорогие, особенно в большом масштабе
Cost Снижение затрат на хранение из-за низкой стоимости хранилища для необработанных данных. Затраты на вычисления возникают при обработке или запросе данных. Более высокая стоимость из-за оптимизации выделенных вычислений и производительности для аналитических рабочих нагрузок
Соответствие варианта использования Лучше всего подходит для больших данных, машинного обучения и исследовательской аналитики. В архитектурах медальона команды используют золотой слой для отчетности. Идеально подходит для бизнес-аналитики, создания отчетов и структурированного анализа данных

Проблемы озер данных

  • Масштабируемость и сложность: Управление петабайтами необработанных, неструктурированных и полуструктурированных данных требует надежной инфраструктуры, распределенной обработки и тщательного управления затратами.

  • Обработка узких мест: По мере увеличения объема данных и разнообразия, преобразование и рабочие нагрузки запросов могут привести к задержке, что требует тщательного проектирования конвейера и оркестрации рабочих нагрузок.

  • Риски целостности данных: Без строгой проверки и мониторинга ошибки или неполные загрузки данных могут нарушить надежность содержимого озера.

  • Качество данных и управление: Разнообразные источники и форматы усложняют применение стандартов. Управление метаданными, каталогизация и платформы управления критически важны.

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

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

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

Выбор технологий

При создании комплексного решения озера данных на Azure рассмотрите следующие технологии:

  • Azure Data Lake Storage объединяет Azure Blob Storage с возможностями озера данных для обеспечения доступа, совместимого с Apache Hadoop, иерархических возможностей пространства имен и повышения безопасности для эффективной аналитики больших данных. Он обрабатывает большие объемы структурированных, полуструктурированных и неструктурированных данных.

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

  • Azure Data Factory — это облачная служба интеграции данных и службы ETL. Его можно использовать для перемещения, преобразования и оркестрации рабочих процессов данных в разных источниках, будь то в облаке или локальной среде.

  • Fabric — это сквозная платформа аналитики данных, которая объединяет перемещение данных, обработку и анализ данных в режиме реального времени и бизнес-аналитику в едином программном обеспечении как услуга (SaaS).

    Каждому клиенту Fabric автоматически выделяется единое логическое озеро данных под названием OneLake. OneLake основан на Data Lake Storage и предоставляет единый уровень хранения, который может обрабатывать структурированные и неструктурированные данные.

Соавторы

Microsoft поддерживает эту статью. Следующие авторы написали эту статью.

Главный автор

  • Avijit Prasad | Консультант по облачным технологиям

Другой участник:

Чтобы просмотреть закрытые профили LinkedIn, войдите в LinkedIn.

Следующие шаги