Архитектура современной аналитики с Azure Databricks

Azure Databricks
Microsoft Fabric
Power BI
Azure Data Lake Storage

Идеи решения

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

Это решение описывает современную архитектуру данных. Azure Databricks формирует ядро решения. Эта платформа легко работает с другими службами, такими как Azure Data Lake Storage 2-го поколения, Microsoft Fabric и Power BI.

Apache® и Apache Spark™ являются зарегистрированными товарными знаками или товарными знаками Apache Software Foundation в США и/или других странах. Использование этих меток не подразумевает подтверждения от Apache Software Foundation.

Архитектура

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

Скачайте файл Visio для этой архитектуры.

Поток данных

  1. Azure Databricks отправляет необработанные данные потоковой передачи из Центров событий Azure с помощью разностных динамических таблиц.

  2. Фабрика данных Fabric загружает необработанные пакетные данные в Data Lake Storage 2-го поколения.

  3. Для хранилища данных:

    • Data Lake Storage 2-го поколения содержит данные всех типов, таких как структурированные, неструктурированные и полуструктурированные. Он также хранит пакетные и потоковые данные.

    • Delta Lake формирует курированный слой озера данных. Он сохраняет уточненные данные в формате с открытым кодом.

    • Azure Databricks хорошо работает с архитектурой медальона, которая упорядочивает данные на слои:

      • Бронза: содержит необработанные данные.
      • Silver: содержит очищенные, отфильтрованные данные.
      • Gold: хранит агрегированные данные, полезные для бизнес-аналитики.
  4. Аналитические платформы передают данные из разрозненных источников пакетной и потоковой передачи. Специалисты по обработке и анализу данных используют эти данные для следующих задач:

    • Подготовка данных.
    • Исследование данных.
    • Подготовка модели.
    • Обучение модели.

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

    • Код может находиться в SQL, Python, R и Scala.
    • Код может использовать популярные библиотеки и платформы с открытым кодом, такие как Koalas, Pandas и scikit-learn, которые предварительно установлены и оптимизированы.
    • Специалисты могут оптимизировать производительность и затраты с помощью параметров вычислений с одним узлом и несколькими узлами.
  5. Модели машинного обучения доступны в нескольких форматах:

    • Azure Databricks хранит сведения о моделях в реестре моделей MLflow. Реестр предоставляет модели с помощью пакетной, потоковой передачи и REST API.
    • Решение также может развертывать модели для Машинное обучение Azure веб-служб или Служба Azure Kubernetes (AKS).
  6. Службы, работающие с данными, подключаются к одному базовому источнику данных, чтобы обеспечить согласованность. Например, пользователи могут выполнять sql-запросы в озере данных с помощью хранилищ SQL Azure Databricks. Эта служба:

  7. Пользователи могут зеркально отображать наборы золотых данных из каталога Databricks Unity в Fabric. зеркальное отображение Databricks в Fabric позволяет пользователям легко интегрироваться без перемещения данных или репликации данных.

  8. Power BI создает аналитические и исторические отчеты и панели мониторинга на основе унифицированной платформы данных. Эта служба использует эти функции при работе с Azure Databricks:

    • Встроенный соединитель Azure Databricks для визуализации базовых данных.
    • Оптимизированные драйверы подключения к базе данных Java (JDBC) и open Database Connectivity (ODBC).
    • С помощью зеркального отображения Databricks в Fabric можно использовать Direct Lake для загрузки семантических моделей PBI для более высоких запросов производительности.
  9. Решение использует каталог Unity и службы Azure для совместной работы, производительности, надежности, управления и безопасности:

    • Каталог Databricks Unity обеспечивает централизованный контроль доступа, аудит, происхождение и обнаружение данных в рабочих областях Azure Databricks.

    • Microsoft Purview предоставляет службы обнаружения данных, классификацию конфиденциальных данных и аналитические сведения об управлении в пределах хранилища данных.

    • Azure DevOps предлагает непрерывную интеграцию и непрерывное развертывание (CI/CD) и другие интегрированные функции управления версиями.

    • Azure Key Vault безопасно управляет секретами, ключами и сертификатами.

    • Идентификатор Microsoft Entra и подготовка SCIM предоставляют единый вход для пользователей и групп Azure Databricks. Azure Databricks поддерживает автоматическую подготовку пользователей с помощью идентификатора Microsoft Entra для следующих задач:

      • Создание новых пользователей и групп.
      • Назначение каждому пользователю уровня доступа.
      • Удаление пользователей и запрет доступа к ним.
    • Azure Monitor собирает и анализирует данные телеметрии ресурсов Azure. Заранее определяя проблемы, эта служба повышает производительность и надежность.

    • Microsoft Cost Management предоставляет службы управления финансовыми ресурсами для рабочих нагрузок Azure.

Компоненты

Решение использует следующие компоненты.

Основные компоненты

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

  • хранилище SQL Azure Databricks — это вычислительные ресурсы, которые позволяют запрашивать и изучать данные в Databricks. В этой архитектуре можно использовать конечные точки SQL для подключения непосредственно к данным из Power BI.

  • Azure Databricks Delta Live Tables является декларативной платформой для создания надежных, доступных для обслуживания и тестируемых конвейеров обработки данных. В этой архитектуре Delta Live Tables помогает определять преобразования для выполнения данных и управления оркестрацией задач, управлением кластерами, мониторингом, качеством данных и обработкой ошибок в Databricks.

  • Microsoft Fabric — это сквозная аналитика и платформа данных, предназначенная для предприятий, нуждающихся в едином решении. Платформа предлагает такие службы, как проектирование данных, фабрика данных, обработка и анализ данных, Real-Time аналитика, хранилище данных и базы данных. В этой архитектуре мы зеркально отражаем таблицы каталога Unity в Fabric и используем Direct Lake в Power BI для повышения производительности.

  • Фабрике данных в Microsoft Fabric позволяет использовать современный интерфейс интеграции с данными для приема, подготовки и преобразования данных из богатого набора источников данных в Fabric. В этой архитектуре мы будем использовать встроенные соединители для нескольких источников данных для быстрого приема в ADLS или OneLake, где Databricks будет позже извлекать и дополнительно преобразовывать пакетные данные.

  • Центры событий — это полностью управляемая платформа потоковой передачи больших данных. Как платформа как услуга (PaaS), она предоставляет возможности приема событий. В этой архитектуре центры событий используются для потоковой передачи данных, к которым Databricks может подключаться и обрабатывать с помощью потоковой передачи Spark или разностных динамических таблиц.

  • Data Lake Storage 2- го поколения — это масштабируемое и безопасное озеро данных для высокопроизводительной аналитики. Он обрабатывает несколько петабайт данных и поддерживает сотни гигабит пропускной способности. ADLS может хранить структурированные, полуструктурированные и неструктурированные данные. В этой архитектуре мы используем ADLS для хранения как пакетных, так и потоковых данных.

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

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

  • Delta Lake — это слой хранения, использующий открытый формат файла. Этот уровень выполняется поверх облачного хранилища, например Data Lake Storage 2-го поколения. Delta Lake поддерживает управление версиями данных, откат и транзакции для обновления, удаления и объединения данных. В этой архитектуре Delta работает в качестве основного формата файла для записи и чтения данных из ADLS.

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

Создание отчетов и управление компонентами

  • Каталог Databricks Unity обеспечивает централизованный контроль доступа, аудит, происхождение и обнаружение данных в рабочих областях Azure Databricks. В этой архитектуре каталог Unity работает в качестве основного средства в Databricks для управления и защиты доступа к данным.

  • Power BI — это коллекция программных служб и приложений. Эти службы создают и совместно используют отчеты, которые подключают и визуализируют несвязанные источники данных. Вместе с Azure Databricks Power BI может обеспечить определение первопричин и анализ необработанных данных. В этой архитектуре Power BI используется для создания панелей мониторинга и отчетов, которые предоставляют аналитические сведения о данных, обработанных Databricks и Fabric.

  • Microsoft Purview управляет локальными, многооблачными и программными средствами как услугами (SaaS). Эта служба управления поддерживает карты ландшафта данных. К функциям относятся автоматическое обнаружение данных, классификация конфиденциальных данных и происхождение данных. В этой архитектуре Purview используется для сканирования и отслеживания приема данных в каталоге Unity, Fabric, Power BI и ADLS.

  • Azure DevOps — это платформа оркестрации DevOps . Эта служба SaaS предоставляет средства и среды для создания, развертывания и совместной работы с приложениями. В этой архитектуре Azure DevOps используется для автоматизации развертывания инфраструктуры Azure. Кроме того, вы можете использовать GitHub для автоматизации и управления версиями кода Databricks, для улучшения совместной работы, отслеживания изменений и интеграции с конвейерами CI/CD.

  • Azure Key Vault хранит секреты, такие как маркеры, пароли и ключи API, а также управляет доступом к ним. Key Vault также создает и контролирует ключи шифрования и управляет сертификатами безопасности. В этом архитекурсе AKV используется для хранения ключей SAS из ADLS. Затем эти ключи используются в Databricks и других службах для проверки подлинности.

  • Идентификатор Microsoft Entra предлагает облачные службы управления удостоверениями и доступом. Эти функции позволяют пользователям входить и получать доступ к ресурсам. В этом architecure идентификатор Entra используется для проверки подлинности и авторизации пользователей и служб в Azure.

  • SCIM позволяет настроить подготовку в учетной записи Azure Databricks с помощью идентификатора Microsoft Entra. В этой архитектуре она используется для управления доступом пользователей к рабочим областям Databricks.

  • Azure Monitor собирает и анализирует данные в средах и ресурсах Azure. Сюда входят данные телеметрии приложений, такие как метрики производительности и журналы действий. В этой архитектуре Azure Monitor используется для мониторинга работоспособности вычислительных ресурсов в Databricks и Машинном обучении Azure, а также других компонентов, которые отправляют журналы в Azure Monitor.

  • Управление затратами Майкрософт управляет облачными расходами. Используя бюджеты и рекомендации, эта служба упорядочивает расходы и показывает, как сократить затраты. В этой архитектуре microsoft Cost Management используется для мониторинга и управления затратами всего решения.

Подробности сценария

Современные архитектуры данных соответствуют следующим критериям:

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

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

  • Простой: унифицированная аналитика, обработка и анализ данных и машинное обучение упрощают архитектуру данных.
  • Open: Решение поддерживает открытый исходный код, открытые стандарты и открытые платформы. Он также работает с популярными интегрированными средами разработки (IDEs), библиотеками и языками программирования. Благодаря собственным соединителям и API решение также работает с широким спектром других служб.
  • Совместная работа: инженеры данных, специалисты по обработке и анализу данных работают вместе с этим решением. Они могут использовать записные книжки для совместной работы, идентификаторы, панели мониторинга и другие средства для доступа к общим базовым данным и их анализа.

Потенциальные варианты использования

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

  • Энергетический сектор
  • Розничная электронная торговля
  • Банковское дело и финансы
  • Медицина и здравоохранение

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

Сведения о связанных решениях см. в следующих статьях: