Создание современной архитектуры аналитики с помощью Azure Databricks
Идеи решения
В этой статье описывается идея решения. Ваш архитектор облака может использовать это руководство, чтобы визуализировать основные компоненты для типичной реализации этой архитектуры. Используйте эту статью в качестве отправной точки для разработки хорошо спроектированного решения, которое соответствует конкретным требованиям рабочей нагрузки.
Это решение описывает основные принципы и компоненты современной архитектуры данных. Azure Databricks формирует ядро решения. Эта платформа легко работает с другими службами, такими как Azure Data Lake Storage, Microsoft Fabric и Power BI.
Apache® и Apache Spark™ являются зарегистрированными товарными знаками или товарными знаками Apache Software Foundation в США и/или других странах. Использование этих меток не подразумевает подтверждения от Apache Software Foundation.
Архитектура
Скачайте файл Visio для этой архитектуры.
Поток данных
Azure Databricks прием необработанных потоковых данных из Центров событий Azure с помощью разностных динамических таблиц.
Фабрика данных Fabric загружает необработанные пакетные данные в Data Lake Storage.
Для хранилища данных:
Data Lake Storage содержит все типы данных, включая структурированные, неструктурированные и частично структурированные данные. Он также хранит пакетные и потоковые данные.
Delta Lake формирует курированный слой озера данных. Он сохраняет уточненные данные в формате с открытым кодом.
Azure Databricks хорошо работает с архитектурой медальона, которая упорядочивает данные на слои:
- Бронзовый слой: содержит необработанные данные.
- Серебряный слой: содержит очищенные, отфильтрованные данные.
- Золотой слой: хранит агрегированные данные, полезные для бизнес-аналитики.
Аналитические платформы передают данные из разрозненных источников пакетной и потоковой передачи. Специалисты по обработке и анализу данных используют эти данные для таких задач, как:
- Подготовка данных.
- Исследование данных.
- Подготовка модели.
- Обучение модели.
MLflow управляет параметрами, метриками и отслеживанием моделей в коде обработки и анализа данных. Возможности написания кода являются гибкими:
- Код может находиться в SQL, Python, R и Scala.
- Код может использовать популярные библиотеки и платформы с открытым кодом, такие как Koalas, Pandas и scikit-learn, которые предварительно установлены и оптимизированы.
- Пользователи могут оптимизировать производительность и затраты с помощью параметров вычислений с одним узлом и несколькими узлами.
Модели машинного обучения доступны в следующих форматах:
Службы, работающие с данными, подключаются к одному базовому источнику данных, чтобы обеспечить согласованность. Например, можно запускать SQL-запросы в озере данных с помощью хранилищ SQL Azure Databricks. Эта служба:
- Предоставляет редактор запросов и каталог, журнал запросов, базовую панель мониторинга и оповещения.
- Использует встроенную безопасность, включающую разрешения на уровне строк и разрешения на уровне столбцов.
- Использует фотонациональный подсистему Delta Engine для повышения производительности.
Вы можете зеркально зеркально отображать наборы данных из каталога Unity Azure Databricks в Fabric. Используйте зеркальное отображение Azure Databricks в Fabric , чтобы легко интегрироваться без необходимости перемещать или реплицировать данные.
Power BI создает аналитические и исторические отчеты и панели мониторинга на основе унифицированной платформы данных. Эта служба использует следующие функции при работе с Azure Databricks:
- Встроенный соединитель Azure Databricks для визуализации базовых данных.
- Оптимизированные драйверы подключения к базе данных Java и открытые драйверы подключения к базе данных.
- Вы можете использовать Direct Lake с зеркальным отображением Azure Databricks в Fabric для загрузки семантических моделей Power BI для запросов с более высокой производительностью.
Решение использует каталог Unity и службы Azure для совместной работы, производительности, надежности, управления и безопасности:
Каталог 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 для обработки больших потоков данных. Она очищает и преобразует неструктурированные данные и объединяет их со структурированными данными. Он также может обучать и развертывать модели машинного обучения. В этой архитектуре Azure Databricks служит центральным средством для приема, обработки и обслуживания данных. Она предоставляет единую среду для управления всем жизненным циклом данных.
Хранилища SQL Azure Databricks — это вычислительные ресурсы, которые можно использовать для запроса и изучения данных в Azure Databricks. В этой архитектуре можно использовать конечные точки SQL для подключения непосредственно к данным из Power BI.
Azure Databricks Delta Live Tables является декларативной платформой для создания надежных, доступных для обслуживания и тестируемых конвейеров обработки данных. В этой архитектуре Delta Live Tables помогает определить преобразования для выполнения данных. Она также помогает управлять оркестрацией задач, управлением кластерами, мониторингом, качеством данных и обработкой ошибок в Azure Databricks.
Microsoft Fabric — это сквозная аналитика и платформа данных для организаций, которым требуется единое решение. Платформа предоставляет такие службы, как проектирование данных, фабрика данных, обработка и анализ данных, Real-Time аналитика, хранилище данных и базы данных. Эта архитектура отражает таблицы каталога Unity в Fabric и использует Direct Lake в Power BI для повышения производительности.
Фабрика данных в Microsoft Fabric — это современная платформа интеграции данных, которую можно использовать для приема, подготовки и преобразования данных из богатого набора источников данных в Fabric. Эта архитектура использует встроенные соединители для нескольких источников данных для быстрого приема данных в Data Lake Storage или OneLake. Azure Databricks позже извлекает и преобразует пакетные данные.
Центры событий — это полностью управляемая платформа потоковой передачи больших данных. Как платформа как услуга, она предоставляет возможности приема событий. Эта архитектура использует Центры событий для потоковой передачи данных. Azure Databricks может подключаться к этим данным и обрабатывать их с помощью потоковой передачи Spark или разностных динамических таблиц.
Data Lake Storage — это масштабируемое и безопасное озеро данных для высокопроизводительной аналитики. Он обрабатывает несколько петабайт данных и поддерживает сотни гигабит пропускной способности. Data Lake Storage может хранить структурированные, частично структурированные и неструктурированные данные. Эта архитектура использует Data Lake Storage для хранения как пакетных, так и потоковых данных.
Машинное обучение — это облачная среда, которая помогает создавать и развертывать решения прогнозной аналитики, а также управлять ими. С помощью этих моделей можно прогнозирует поведение, результаты и тенденции. В этой архитектуре машинное обучение использует данные, преобразуемые Azure Databricks для обучения и вывода моделей.
AKS — это высокодоступная, защищенная и полностью управляемая служба Kubernetes. AKS упрощает развертывание контейнерных приложений и управление ими. В этой архитектуре AKS размещает модели машинного обучения в контейнерной среде для масштабируемого вывода.
Delta Lake — это слой хранения, использующий открытый формат файла. Этот уровень выполняется поверх облачных решений хранилища, таких как Data Lake Storage. Delta Lake поддерживает управление версиями данных, откат и транзакции для обновления, удаления и объединения данных. В этой архитектуре Delta Lake работает в качестве основного формата файла для записи и чтения данных из Data Lake Storage.
MLflow — это платформа с открытым исходным кодом для управления жизненным циклом машинного обучения. Его компоненты отслеживают модели машинного обучения во время обучения и эксплуатации. В этой архитектуре, аналогично машинному обучению, можно использовать MLflow в Azure Databricks для управления жизненным циклом машинного обучения. Обучение и вывод моделей с помощью данных каталога Unity, преобразованных в Azure Databricks.
Создание отчетов и управление компонентами
Каталог Azure Databricks Unity предоставляет централизованный контроль доступа, аудит, происхождение данных и возможности обнаружения данных в рабочих областях Azure Databricks. В этой архитектуре каталог Unity работает в качестве основного средства в Azure Databricks для управления и защиты доступа к данным.
Power BI — это коллекция программных служб и приложений. Эти службы создают и совместно используют отчеты, которые подключают и визуализируют несвязанные источники данных. Вместе с Azure Databricks Power BI может обеспечить определение первопричин и анализ необработанных данных. Эта архитектура использует Power BI для создания панелей мониторинга и отчетов, которые предоставляют аналитические сведения о данных, которые обрабатываются Azure Databricks и Fabric.
Microsoft Purview управляет локальными, многооблачными и программными средствами как услугами (SaaS). Эта служба управления поддерживает карты ландшафта данных. Ее функции включают автоматическое обнаружение данных, классификацию конфиденциальных данных и происхождение данных. Эта архитектура использует Microsoft Purview для сканирования и отслеживания данных, которые используются в каталоге Unity, Fabric, Power BI и Data Lake Storage.
Azure DevOps — это платформа оркестрации DevOps . Эта служба SaaS предоставляет средства и среды для создания, развертывания и совместной работы с приложениями. Эта архитектура использует Azure DevOps для автоматизации развертывания инфраструктуры Azure. Вы также можете использовать GitHub для автоматизации и управления версиями кода Azure Databricks для улучшения совместной работы, отслеживания изменений и интеграции с конвейерами CI/CD.
Key Vault хранит и управляет доступом к секретам, таким как маркеры, пароли и ключи API. Key Vault также создает и контролирует ключи шифрования и управляет сертификатами безопасности. Эта архитектура использует Key Vault для хранения ключей подписи общего доступа из Data Lake Storage. Затем эти ключи используются в Azure Databricks и других службах для проверки подлинности.
Идентификатор Microsoft Entra предлагает облачные службы управления удостоверениями и доступом. Эти функции позволяют пользователям входить и получать доступ к ресурсам. Эта архитектура использует идентификатор Microsoft Entra для проверки подлинности и авторизации пользователей и служб в Azure.
SCIM позволяет настроить подготовку в учетной записи Azure Databricks с помощью идентификатора Microsoft Entra. Эта архитектура использует SCIM для управления пользователями, которые обращаются к рабочим областям Azure Databricks.
Azure Monitor собирает и анализирует данные в средах и ресурсах Azure. Сюда входят данные телеметрии приложений, такие как метрики производительности и журналы действий. Эта архитектура использует Azure Monitor для мониторинга работоспособности вычислительных ресурсов в Azure Databricks и Машинном обучении и других компонентах, которые отправляют журналы в Azure Monitor.
Управление затратами помогает управлять облачными расходами. Используя бюджеты и рекомендации, эта служба упорядочивает расходы и показывает, как сократить затраты. Эта архитектура использует управление затратами, чтобы отслеживать затраты всего решения и управлять ими.
Подробности сценария
Современные архитектуры данных:
- Объединение данных, аналитики и рабочих нагрузок ИИ.
- Эффективное и надежное выполнение в любом масштабе.
- Предоставление аналитических сведений с помощью панелей мониторинга аналитики, операционных отчетов или расширенной аналитики.
Это решение описывает современную архитектуру данных, которая достигает этих целей. Azure Databricks формирует ядро решения. Эта платформа легко работает с другими службами. Вместе эти службы предоставляют решение, которое:
- Простой: унифицированная аналитика, обработка и анализ данных и машинное обучение упрощают архитектуру данных.
- Open: Решение поддерживает открытый исходный код, открытые стандарты и открытые платформы. Он также работает с популярными интегрированными средами разработки (IDEs), библиотеками и языками программирования. Благодаря собственным соединителям и API решение также работает с широким спектром других служб.
- Совместная работа: инженеры данных, специалисты по обработке и анализу данных работают вместе с этим решением. Они могут использовать записные книжки для совместной работы, идентификаторы, панели мониторинга и другие средства для доступа к общим базовым данным и их анализа.
Потенциальные варианты использования
Система, которая швейцарская Re Group построила для своего подразделения по собственности и жертве перестраховки вдохновила это решение. Помимо страховой отрасли, любая область, которая работает с большими данными или машинным обучением, также может воспользоваться этим решением. Вот некоторые примеры.
- Энергетический сектор.
- Розничная торговля и электронная коммерция.
- Банковские услуги и финансы.
- Медицина и здравоохранение.
Следующие шаги
- Создание сквозного конвейера данных в Azure Databricks
- Запуск первого конвейера разностных динамических таблиц
Связанные ресурсы
Дополнительные сведения о связанных решениях см. в следующих руководствах и архитектурах.
Связанные руководства по архитектуре
- Сравнение продуктов машинного обучения от Майкрософт
- Выбор технологии обработки естественного языка
- Выбор технологии потоковой обработки