Прочитать на английском Изменить

Поделиться через


Гринфилд лейкхаус в Microsoft Fabric

Microsoft Fabric
Power BI

В этом примере рабочей нагрузки показано решение для создания масштабируемой платформы данных с помощью Microsoft Fabric и парадигмы проектирования Lakehouse. Структура — это платформа, которая интегрирует хранилище данных, обработку и аналитику. Greenfield lakehouse предоставляет чистый старт для разработки эффективной, будущей экосистемы данных.

Архитектура

Схема, демонстрирующая решение greenfield для создания надежной масштабируемой платформы данных с помощью парадигмы проектирования Lakehouse в Microsoft Fabric.

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

Поток данных

Эта архитектура отражает архитектуру Лямбда, которая разделяет обработку данных на два уровня:

  • Уровень пакетной обработки большого объема, который периодически обрабатывается для анализа журнала
  • Низкой задержки, высокопроизводительный уровень обработки потоковой передачи для аналитики в режиме реального времени

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

Холодный путь: пакетная аналитика

Хранилища данных, основанные на семантике реляционного SQL, являются обычным подходом для анализа исторических данных. Однако этот шаблон развивался со временем, и lakehouses являются текущим отраслевым стандартом для пакетного анализа данных. Lakehouse основан на открытый код форматах файлов и, в отличие от традиционных хранилищ данных, обслуживает все типы данных: структурированные, полуструктурированные и неструктурированные. Уровень вычислений в lakehouse обычно построен на основе платформы Apache Spark, которая является предпочтительным механизмом обработки больших данных из-за его распределенных вычислительных возможностей и высокой производительности. Fabric предлагает собственный интерфейс lakehouse, основанный на формате файла Delta Lake открытый код и управляемой среде выполнения Spark.

Реализация Lakehouse обычно использует архитектуру медальона. В этой архитектуре бронзовый слой содержит необработанные данные, серебряный слой содержит проверенные и дедупликированные данные, а золотой слой содержит высокоуровневые данные, которые подходят для поддержки бизнес-вариантов использования. Этот подход работает во всех организациях и отраслях. Хотя это общий подход, его можно настроить для ваших требований. В этой архитектуре показано, как создать lakehouse с помощью собственных компонентов Fabric.

Прием данных с помощью фабрики данных

(См. шаг 1 на схеме.)

Функция Фабрика данных Azure в Fabric предоставляет возможности службы Фабрика данных Azure, которая широко используется службой интеграции данных. Хотя служба фабрики данных в основном предоставляет возможности оркестрации через конвейеры, функция в Fabric предоставляет как конвейеры, так и потоки данных.

  • Конвейеры данных позволяют применять встроенные возможности оркестрации данных для создания гибких рабочих процессов данных, которые соответствуют вашим корпоративным потребностям.
  • Потоки данных позволяют использовать более 300 преобразований в конструкторе потоков данных. Эти преобразования можно использовать для преобразования данных с помощью графического интерфейса, аналогичного этому в Power Query. Эти преобразования включают преобразования данных на основе интеллектуального ИИ. Потоки данных также могут записывать данные в собственные хранилища данных в Fabric, такие как lakehouse, хранилище, SQL Azure и базы данных Kusto.

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

Преобразования данных

(См. шаг 2 на схеме.)

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

Записные книжки Fabric — это важное средство для разработки заданий Apache Spark. Они предоставляют интерактивную веб-поверхность, которую инженеры данных используют для написания кода. Они также предоставляют расширенные визуализации и позволяют использовать текст Markdown. Инженеры данных записывают код для приема данных, подготовки данных и преобразования данных. Специалисты по обработке и анализу данных используют записные книжки для создания решений машинного обучения. Например, они используют их для создания экспериментов и моделей, а также для отслеживания и развертывания моделей.

Каждая рабочая область в Fabric поставляется с начальным пулом Spark, который используется для заданий Spark по умолчанию. При использовании начальных пулов можно ожидать быструю инициализацию сеанса Apache Spark( обычно в течение 5–10 секунд без ручной настройки). Вы также получаете гибкость для настройки пулов Apache Spark в соответствии с требованиями к проектированию данных. Вы можете размер узлов, автомасштабирования и динамического выделения исполнителей на основе требований задания Spark. Для настроек среды выполнения Spark можно использовать среды. В среде можно настроить свойства вычислений, выбрать разные среды выполнения и настроить зависимости пакета библиотеки в зависимости от требований рабочей нагрузки.

Потоки данных позволяют извлекать данные из различных источников, преобразовывать их с помощью широкого диапазона операций и при необходимости загружать их в место назначения. Традиционно инженеры данных тратят значительное время на извлечение, преобразование и загрузку данных в используемый формат для нижестоящей аналитики. Поток данных 2-го поколения предоставляет простой и многократно используемый способ выполнения задач извлечения, преобразования, загрузки (ETL) с помощью визуальных подсказок в Power Query Online. Поток данных сохраняет все шаги преобразования. Чтобы выполнить другие задачи или загрузить данные в другое место после преобразования, создайте конвейер данных и добавьте действие потока данных 2-го поколения в оркестрацию конвейера.

Горячий путь: аналитика в режиме реального времени

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

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

Прием в режиме реального времени

(См. шаг 3 на схеме.)

Потоки событий — это функция Fabric, которая включает метод без кода для приема событий в режиме реального времени из различных источников и отправки их в разные места назначения. Он позволяет фильтровать данные, преобразовываться, агрегирование и маршрутизацию на основе содержимого. Вы также можете использовать его для создания новых потоков из существующих и совместного использования их в организации с помощью концентратора реального времени. Потоки событий поддерживают несколько источников данных и назначений данных. Вы можете использовать широкий спектр соединителей для внешних источников, таких как кластеры Apache Kafka, каналы отслеживания измененных данных базы данных, источники потоковой передачи AWS (Kinesis) и Google (GCP Pub/Sub).

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

Анализ в реальном времени

(См. шаг 4 на схеме.)

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

Рефлекс — это элемент Fabric, который позволяет реагировать на возникновение условия данных, как это происходит. Эта реакция может быть простым сообщением оповещений через электронную почту или Microsoft Teams, или может включать вызов пользовательского действия путем активации потока Power Automate. Вы также можете активировать любой элемент Fabric из ваших рефлексов. Многие варианты использования наблюдаемости поддерживаются рефлексами, одним из которых является реагирование на потоковую передачу данных по мере поступления в потоки событий.

Хранилище событий — это коллекция одной или нескольких баз данных язык запросов Kusto (KQL). Базы данных KQL создаются для событий потоковой передачи структурированных, полуструктурированных и неструктурированных данных. Данные автоматически индексируются и секционируются на основе времени приема, что обеспечивает быстрые и сложные возможности аналитических запросов, даже если потоки данных в ней. Данные, хранящиеся в хранилищах событий, можно сделать доступными в OneLake для использования другими процессами Fabric. Эти данные можно запрашивать с помощью различных параметров кода, низкого кода или без кода в Fabric, включая собственный KQL и T-SQL в наборе запросов KQL .

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

Обслуживание данных

(См. шаг 5 на схеме.)

Существуют различные варианты низкокода или pro-code для использования данных из Fabric lakehouses и событий.

Конечная точка аналитики SQL

Конечная точка аналитики SQL автоматически создается для каждого озера в Fabric. Конечная точка аналитики SQL доступна только для чтения. Чтобы изменить данные, необходимо переключиться в режим Lakehouse и использовать Spark. Конечную точку аналитики SQL можно использовать непосредственно на портале Fabric для запроса данных, перейдя из режима lakehouse в режим SQL lakehouse. Кроме того, вы можете использовать SQL строка подключения озера для подключения с помощью клиентских средств, таких как Power BI, Excel и SQL Server Management Studio. Этот вариант подходит для данных и бизнес-аналитиков в команде данных.

Записные книжки Spark

Записные книжки — это популярный способ взаимодействия с данными Lakehouse. Fabric предоставляет интерактивную веб-поверхность, которую рабочие данные могут использовать для написания кода. Эти работники могут применять расширенные визуализации и текст Markdown. Инженеры данных записывают код для приема данных, подготовки данных и преобразования данных. Специалисты по обработке и анализу данных используют записные книжки для исследования данных, для создания экспериментов и моделей машинного обучения, а также для отслеживания и развертывания моделей. Этот вариант подходит для профессиональных инженеров и специалистов по обработке и анализу данных.

Power BI

Каждый lakehouse в Fabric поставляется с предварительно созданной семантической моделью по умолчанию. Он автоматически создается при настройке lakehouse и загрузке данных в него. Эти модели наследуют бизнес-логику из lakehouse, чтобы упростить создание отчетов и панелей мониторинга Power BI непосредственно в интерфейсе Lakehouse. Вы также можете создавать пользовательские семантические модели на основе конкретных бизнес-требований в таблицах Lakehouse. При создании отчетов Power BI в лейкхаусе можно использовать режим Direct Lake, который не требует импорта данных отдельно. Этот режим позволяет получать производительность в памяти в отчетах без перемещения данных из lakehouse.

Пользовательские API

Структура предоставляет многофункциональную поверхность API в его элементах. OneLake предоставляет открытый доступ ко всем элементам Fabric через API и пакеты SDK Azure Data Lake Storage. Вы можете получить доступ к данным в OneLake с помощью любого API, пакета SDK или средства, совместимого с Data Lake Storage, просто используя универсальный код ресурса (URI) OneLake. Вы можете передать данные в lakehouse с помощью служба хранилища Azure Explorer или считывать разностную таблицу с помощью ярлыка из Azure Databricks. OneLake также поддерживает драйвер файловой системы BLOB-объектов Azure (ABFS) для обеспечения большей совместимости с Data Lake Storage и Хранилище BLOB-объектов Azure. Чтобы использовать потоковую передачу данных в подчиненных приложениях, можно отправить данные потока событий в пользовательскую конечную точку API. Затем вы можете использовать эти выходные данные потоковой передачи из Fabric с помощью Центры событий Azure или протокола AMQP или Kafka.

Power Automate

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

Компоненты

В этом решении используются следующие компоненты.

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

    • OneLake: центральный концентратор для всех данных в Fabric. Он разработан как открытое озеро данных, что означает, что он может хранить данные в собственном формате независимо от структуры.

    • Фабрика данных: облачная служба ETL и оркестрации для автоматического перемещения и преобразования данных. Это позволяет автоматизировать перемещение и преобразование данных в большом масштабе в различных источниках данных.

    • Проектирование данных: средства, которые позволяют собирать, хранить, обрабатывать и анализировать большие объемы данных.

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

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

    • Copilot: средство, которое можно использовать для анализа данных, создания аналитических сведений и создания визуализаций и отчетов в Fabric и Power BI с помощью естественного языка.

  • Power BI: средство бизнес-аналитики для создания интерактивных панелей мониторинга и отчетов для визуализации данных и получения аналитических сведений.

Альтернативные варианты

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

  • Azure Databricks может заменить или дополнить возможности машинного проектирования данных Fabric. Azure Databricks предлагает альтернативу для крупномасштабной обработки данных, предоставляя облачную среду Apache Spark. Azure Databricks также обеспечивает общее управление всеми ресурсами данных и возможностями для включения ключевых вариантов использования, таких как обработка и анализ данных, машинное обучение, ИИ и аналитика на основе SQL.

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

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

Эта архитектура применима к следующим сценариям:

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

Не рекомендуется использовать это решение для:

  • Teams с фоном базы данных SQL или реляционной базы данных с ограниченными навыками в Apache Spark.
  • Организации, которые переносятся из устаревшей системы или хранилища данных на современную платформу.

Рекомендации

Эти рекомендации реализуют основные принципы платформы Azure Well-Architected Framework, которая является набором руководящих принципов, которые можно использовать для улучшения качества рабочей нагрузки. Дополнительные сведения см. в статье Microsoft Azure Well-Architected Framework.

Надежность

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

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

Безопасность

Безопасность обеспечивает гарантии от преднамеренного нападения и злоупотребления ценными данными и системами. Дополнительные сведения см. в контрольном списке проверки конструктора для безопасности.

Вы можете использовать Fabric для управления, контроля и аудита параметров безопасности в соответствии с изменяющимися потребностями и требованиями. Основные рекомендации по безопасности для использования Fabric:

  • Проверка подлинности. Настройте единый вход (единый вход) в идентификаторе Microsoft Entra для предоставления доступа с различных устройств и расположений.

  • Управление доступом на основе ролей (RBAC). Реализуйте управление доступом на основе рабочей области, чтобы управлять доступом к определенным наборам данных и взаимодействовать с ними.

  • Безопасность сети. Используйте элементы управления безопасности сети для входящих и исходящих подключений Fabric при подключении к данным или службам в пределах сети или за ее пределами. К ключевым функциям относятся условный доступ, частные ссылки, доступ к доверенной рабочей области и управляемые частные конечные точки.

  • Журналы аудита. Используйте подробные журналы аудита, предоставляемые Fabric, для отслеживания действий пользователей и обеспечения подотчетности на платформе.

Дополнительные сведения см. в разделе "Безопасность" в Microsoft Fabric.

Оптимизация затрат

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

Fabric предлагает резервирования емкости для заданного количества единиц емкости (ЦС). Резервирования емкости помогут сэкономить затраты при фиксации резервирования для использования емкости Fabric в течение одного года.

Чтобы максимизировать использование емкости Fabric, рассмотрите следующие рекомендации.

  • Rightsize FKU. Чтобы определить правильный размер емкости, можно подготовить пробные емкости или номера SKU по мере использования F, чтобы оценить фактический размер емкости, который требуется перед покупкой зарезервированного экземпляра SKU F. Мы рекомендуем выполнить ограниченное доказательство концепции с репрезентативной рабочей нагрузкой, отслеживать использование cu, а затем экстраполировать, чтобы получить оценку использования cu для рабочей среды. Структура обеспечивает простое масштабирование. Вы можете начать с консервативного размера емкости и увеличить масштаб, если вам нужна дополнительная емкость.
  • Отслеживайте шаблоны использования. Регулярно отслеживайте и анализируйте использование, чтобы определить пиковые и непиковые часы. Это поможет вам понять, когда ресурсы наиболее используются, чтобы вы могли планировать некритичные задачи во время внепиковой нагрузки, чтобы избежать пиков использования cu.
  • Оптимизация запросов и рабочих нагрузок. Убедитесь, что ваши запросы и рабочие нагрузки оптимизированы для уменьшения ненужного использования вычислительных ресурсов. Оптимизация запросов DAX, кода Python и других операций.
  • Используйте ускорение и сглаживание. Используйте функции ускорения и сглаживания Fabric для обработки интенсивных операций ЦП, не требуя более высокого номера SKU. Это поможет вам управлять затратами, сохраняя производительность. Дополнительные сведения см. в статье "Оценка и оптимизация емкости Fabric".
  • Настройка оповещений и уведомлений. Настройте упреждающие оповещения, чтобы администраторы емкости могли отслеживать высокую загрузку вычислительных ресурсов и управлять ими. Это может позволить им своевременно принимать меры, чтобы предотвратить превышение затрат.
  • Реализуйте управление рабочими нагрузками. Планирование заданий, выполняемых в журнале, в ошеломленное время на основе доступности ресурсов и системного спроса для оптимизации использования емкости. Дополнительные сведения см. в разделе "Управление рабочими нагрузками".

Имейте в виду следующие рекомендации:

  • Цены на Data Lake Storage зависят от объема хранящихся данных и частоты использования этих данных. Пример цен включает 1 ТБ данных, хранящихся и других допущений транзакций. 1 ТБ относится к размеру озера данных, а не к размеру исходной устаревшей базы данных.
  • Цены на Структуру основаны на цене емкости SKU Fabric F или ценовой категории "Премиум на пользователя". Бессерверные емкости используют ЦП и память из выделенной емкости.
  • Счета за центры событий на основе уровня, подготовленных единиц пропускной способности и получения трафика входящего трафика. В примере предполагается, что пропускная способность на уровне "Стандартный" составляет более одного миллиона событий за один месяц.

Эффективность работы

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

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

Уровень производительности

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

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

К некоторым ключевым возможностям эффективности производительности в Fabric относятся:

  • Ускорение и сглаживание, чтобы обеспечить быстрое выполнение операций с большим объемом ЦП, не требуя более высокого номера SKU. Запланируйте эти действия в любое время дня.

  • Регулирование, чтобы отложить или отклонить операции при возникновении устойчивого спроса на ЦП, превышающего ограничение SKU.

  • Приложение "Метрики емкости Fabric" для визуализации использования емкости, оптимизации производительности артефактов и оптимизации элементов с высоким уровнем вычислений. Приложение различает интерактивные операции (например, запросы DAX) и фоновые операции (например, обновления семантической модели) для целевых оптимизаций.

Соавторы

Эта статья поддерживается корпорацией Майкрософт. Первоначально он был написан следующими участниками.

Основные авторы:

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

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