Комплексная аналитика с помощью Azure Synapse
Решение, описанное в этой статье, сочетает в себе ряд служб Azure, которые будут принимать, хранить, обрабатывать, обогащать и обслуживать данные и аналитические сведения из различных источников (структурированные, частично структурированные, неструктурированные и потоковые).
Architecture
Скачайте файл Visio этой архитектуры.
Note
- Службы, охватываемые этой архитектурой, являются лишь подмножеством большого семейства служб Azure. Аналогичные результаты могут быть получены с использованием других служб или функций, не охватываемых этим проектом.
- Конкретные бизнес-требования для вашего варианта использования аналитики могут включать использование различных служб или функций, которые не рассматриваются в этом проекте.
Dataflow
Варианты использования аналитики, охватываемые архитектурой, иллюстрируются различными источниками данных в левой части диаграммы. Поток данных проходит через решение снизу вверх следующим образом:
Note
В следующих разделах Azure Data Lake используется в качестве дома для данных на различных этапах жизненного цикла данных. Azure Data Lake организовано различными уровнями и контейнерами следующим образом:
- Необработанный слой — это целевая область для данных, поступающих из исходных систем. Как подразумевает имя, данные в этом слое являются необработанными, нефильтрованными и необработанными.
- На следующем этапе жизненного цикла данные перемещаются на обогащенный слой, где данные очищаются, фильтруются и, возможно, преобразуются.
- Затем данные перемещаются на курированный слой, где хранятся данные, готовые к потребителю.
Ознакомьтесь с документацией по зонам озера данных и контейнерам для полной проверки уровней и контейнеров Azure Data Lake и их использования.
Службы данных Azure, облачная HTAP с Azure Cosmos DB и Dataverse
Process
Azure Synapse Link для Azure Cosmos DB и Azure Synapse Link для Dataverse позволяют выполнять аналитику практически в режиме реального времени с помощью операционных и бизнес-приложений с помощью обработчиков аналитики, доступных в рабочей области Azure Synapse: SQL Serverless и Пулы Spark.
При использовании Azure Synapse Link для Azure Cosmos DB используйте бессерверный запрос или записную книжку пула Spark. Вы можете получить доступ к аналитическому хранилищу Azure Cosmos DB, а затем объединить наборы данных из практически в реальном времени с данными из озера данных или из хранилища данных.
При использовании Azure Synapse Link для Dataverse используйте бессерверный запрос SQL Server или записную книжку пула Spark. Вы можете получить доступ к выбранным таблицам Dataverse, а затем объединить данные бизнес-приложений практически в режиме реального времени с данными из озера данных или хранилища данных.
Store
- Результирующие наборы данных из бессерверных запросов SQL Server можно сохранить в озере данных. If you are using Spark notebooks, the resulting datasets can be persisted either in your data lake or data warehouse (SQL pool).
Serve
Загрузите соответствующие данные из пула SQL Azure Synapse или озера данных в наборы данных Power BI для визуализации и изучения данных. Модели Power BI реализуют семантику модели для упрощения анализа бизнес-данных и связей. Business analysts use Power BI reports and dashboards to analyze data and derive business insights.
Данные также можно безопасно предоставлять другим бизнес-подразделениям или внешним доверенным партнерам с помощью Azure Data Share. Потребители данных могут выбрать используемый формат данных и подсистему вычислений, которая лучше всего подходит для обработки общих наборов данных.
Структурированные и неструктурированные данные, хранящиеся в рабочей области Synapse, также можно использовать для создания решений интеллектуального анализа знаний и использования ИИ для обнаружения ценных бизнес-аналитических сведений в разных типах документов и форматах, включая документы Office, PDF-файлы, изображения, аудио, формы и веб-страницы.
Relational databases
Ingest
- Используйте конвейеры Azure Synapse для извлечения данных из различных баз данных, как локальных, так и в облаке. Конвейеры могут активироваться на основе предварительно определенного расписания, в ответ на событие или вызываться явным образом с помощью REST API.
Store
В уровне озера необработанных данных упорядочение озера данных следует рекомендациям по созданию слоев, структурам папок, используемым в каждом слое и формату файлов, используемым для каждого сценария аналитики.
Из конвейера Azure Synapse используйте действие копирования данных для этапов данных, скопированных из реляционных баз данных в необработанный слой озера данных Azure Data Lake Store 2-го поколения . Данные можно сохранить в текстовом формате с разделителями или в сжатом виде как файлы Parquet.
Process
Use either data flows, SQL serverless queries, or Spark notebooks to validate, transform, and move the datasets from the Raw layer, through the Enriched layer and into your Curated layer in your data lake.
- В рамках преобразований данных можно вызывать модели машинного обучения из пулов SQL с помощью стандартных записных книжек T-SQL или Spark. Эти модели машинного обучения можно использовать для обогащения наборов данных и формирования дополнительной бизнес-аналитики. Эти модели машинного обучения можно использовать из служб ИИ Azure или пользовательских моделей машинного обучения из Azure ML.
Serve
You can serve your final dataset directly from the data lake Curated layer or you can use Copy Data activity to ingest the final dataset into your SQL pool tables using the COPY command for fast ingestion.
Загрузите соответствующие данные из пула SQL Azure Synapse или озера данных в наборы данных Power BI для визуализации данных. Модели Power BI реализуют семантику модели для упрощения анализа бизнес-данных и связей. Business analysts use Power BI reports and dashboards to analyze data and derive business insights.
Данные также можно безопасно предоставлять другим бизнес-подразделениям или внешним доверенным партнерам с помощью Azure Data Share. Потребители данных могут выбрать используемый формат данных и подсистему вычислений, которая лучше всего подходит для обработки общих наборов данных.
Структурированные и неструктурированные данные, хранящиеся в рабочей области Synapse, также можно использовать для создания решений интеллектуального анализа знаний и использования ИИ для обнаружения ценных бизнес-аналитических сведений в разных типах документов и форматах, включая документы Office, PDF-файлы, изображения, аудио, формы и веб-страницы.
Источники частично структурированных данных
Ingest
Используйте конвейеры Azure Synapse для извлечения данных из различных полуструктурированных источников данных, как локальных, так и в облаке. For example:
- Получите данные из файловых источников, содержащих файлы CSV или JSON.
- Подключитесь к базам данных No-SQL, таким как Azure Cosmos DB или MongoDB.
- Вызывайте REST API, предоставляемые приложениями SaaS, которые будут выступать в качестве источника данных для конвейера.
Store
В уровне озера необработанных данных упорядочение озера данных следует рекомендациям по созданию слоев, структурам папок, используемым в каждом слое и формату файлов, используемым для каждого сценария аналитики.
Из конвейера Azure Synapse используйте действие копирования данных для этапов данных, скопированных из полуструктурированных источников данных, в необработанный слой озера данных Azure Data Lake Store 2-го поколения . Сохраните данные, полученные из источников данных, в исходном формате.
Process
For batch/micro-batch pipelines, use either data flows, SQL serverless queries or Spark notebooks to validate, transform, and move your datasets into your Curated layer in your data lake. SQL Serverless queries expose underlying CSV, Parquet, or JSON files as external tables, so that they can be queried using T-SQL.
- В рамках преобразований данных можно вызывать модели машинного обучения из пулов SQL с помощью стандартных записных книжек T-SQL или Spark. Эти модели машинного обучения можно использовать для обогащения наборов данных и формирования дополнительной бизнес-аналитики. Эти модели машинного обучения можно использовать из служб ИИ Azure или пользовательских моделей машинного обучения из Azure ML.
Для сценариев телеметрии и аналитики временных рядов практически в режиме реального времени используйте пулы Обозревателя данных для легкого приема, консолидации и сопоставления журналов и данных событий Интернета вещей в нескольких источниках данных. С помощью пулов Обозревателя данных можно использовать запросы Kusto (KQL) для выполнения анализа временных рядов, геопространственного кластеризации и обогащения машинного обучения.
Serve
You can serve your final dataset directly from the data lake Curated layer or you can use Copy Data activity to ingest the final dataset into your SQL pool tables using the COPY command for fast ingestion.
Load relevant data from the Azure Synapse SQL pools, Data Explorer pools, or a data lake into Power BI datasets for data visualization. Модели Power BI реализуют семантику модели для упрощения анализа бизнес-данных и связей. Business analysts use Power BI reports and dashboards to analyze data and derive business insights.
Данные также можно безопасно предоставлять другим бизнес-подразделениям или внешним доверенным партнерам с помощью Azure Data Share. Потребители данных могут выбрать используемый формат данных и подсистему вычислений, которая лучше всего подходит для обработки общих наборов данных.
Структурированные и неструктурированные данные, хранящиеся в рабочей области Synapse, также можно использовать для создания решений интеллектуального анализа знаний и использования ИИ для обнаружения ценных бизнес-аналитических сведений в разных типах документов и форматах, включая документы Office, PDF-файлы, изображения, аудио, формы и веб-страницы.
Источники неструктурированных данных
Ingest
Используйте конвейеры Azure Synapse для извлечения данных из различных неструктурированных источников данных, как локальных, так и в облаке. For example:
- Получите видео, изображение, звук или произвольный текст из файловых источников, содержащих исходные файлы.
- Вызывайте REST API, предоставляемые приложениями SaaS, которые будут выступать в качестве источника данных для конвейера.
Store
В слое необработанных озера данных упорядочение озера данных , следуя рекомендациям по созданию слоев, каким структурам папок следует использовать в каждом слое, а также о том, какие файлы следует использовать для каждого сценария аналитики.
Из конвейера Azure Synapse используйте действие копирования данных для этапов данных, скопированных из неструктурированных источников данных, в необработанный слой озера данных Azure Data Lake Store 2-го поколения . Сохраните данные, полученные из источников данных, в исходном формате.
Process
Use Spark notebooks to validate, transform, enrich, and move your datasets from the Raw layer, through the Enriched layer and into your Curated layer in your data lake.
- В рамках преобразований данных можно вызывать модели машинного обучения из пулов SQL с помощью стандартных записных книжек T-SQL или Spark. Эти модели машинного обучения можно использовать для обогащения наборов данных и формирования дополнительной бизнес-аналитики. Эти модели машинного обучения можно использовать из служб ИИ Azure или пользовательских моделей машинного обучения из Azure ML.
Serve
You can serve your final dataset directly from the data lake Curated layer or you can use Copy Data activity to ingest the final dataset into your data warehouse tables using the COPY command for fast ingestion.
Загрузите соответствующие данные из пула SQL Azure Synapse или озера данных в наборы данных Power BI для визуализации данных. Модели Power BI реализуют семантику модели для упрощения анализа бизнес-данных и связей.
Business analysts use Power BI reports and dashboards to analyze data and derive business insights.
Данные также можно безопасно предоставлять другим бизнес-подразделениям или внешним доверенным партнерам с помощью Azure Data Share. Потребители данных могут выбрать используемый формат данных и подсистему вычислений, которая лучше всего подходит для обработки общих наборов данных.
Структурированные и неструктурированные данные, хранящиеся в рабочей области Synapse, также можно использовать для создания решений интеллектуального анализа знаний и использования ИИ для обнаружения ценных бизнес-аналитических сведений в разных типах документов и форматах, включая документы Office, PDF-файлы, изображения, аудио, формы и веб-страницы.
Streaming
Ingest
- Используйте Центры событий Azure или Центры Интернета вещей Azure для приема потоков данных, созданных клиентскими приложениями или устройствами Интернета вещей. Затем Центры событий или Центр Интернета вещей будут принимать и сохранять данные потоковой передачи без изменения последовательности полученных событий. После этого потребители смогут подключиться к Центрам событий или конечным точкам Центра Интернета вещей и получить сообщения для последующей обработки.
Store
В уровне озера необработанных данных упорядочение озера данных следует рекомендациям по созданию слоев, структурам папок, используемым в каждом слое и формату файлов, используемым для каждого сценария аналитики.
Настройте конечные точки хранилища Центров событий или Центра Интернета вещей , чтобы сохранить копию событий в необработанном слое озера данных Azure Data Lake Store 2-го поколения . Эта функция реализует "холодный путь" шаблона лямбда-архитектуры и позволяет выполнять анализ исторических и тенденций для потоковых данных, сохраненных в озере данных, с помощью запросов SQL Serverless или записных книжек Spark после шаблона для частично структурированных источников данных, описанных выше.
Process
Для аналитики в режиме реального времени используйте задание Stream Analytics , чтобы реализовать "горячий путь" шаблона архитектуры Лямбда и получить аналитические сведения от передаваемых данных потока. Define at least one input for the data stream coming from your Event Hubs or IoT Hub, one query to process the input data stream and one Power BI output to where the query results will be sent to.
- В ходе обработки данных с помощью Stream Analytics можно вызывать модели машинного обучения, чтобы обогатить наборы данных в рамках потока данных и принимать бизнес-решения на основе созданных прогнозов. Эти модели машинного обучения можно использовать из служб ИИ Azure или из пользовательских моделей машинного обучения в Машинном обучении Azure.
Use other Stream Analytics job outputs to send processed events to Azure Synapse SQL pools or Data Explorer pools for further analytics use cases.
Для сценариев телеметрии и аналитики временных рядов практически в режиме реального времени используйте пулы Обозревателя данных для легкого приема событий Интернета вещей непосредственно из Центров событий или Центров Интернета вещей. С помощью пулов Обозревателя данных можно использовать запросы Kusto (KQL) для выполнения анализа временных рядов, геопространственного кластеризации и обогащения машинного обучения.
Serve
Затем бизнес-аналитики используют наборы данных Power BI в режиме реального времени и возможности панели мониторинга для визуализации быстро меняющихся аналитических сведений, созданных запросом Stream Analytics.
Данные также можно безопасно предоставлять другим бизнес-подразделениям или внешним доверенным партнерам с помощью Azure Data Share. Потребители данных могут выбрать используемый формат данных и подсистему вычислений, которая лучше всего подходит для обработки общих наборов данных.
Структурированные и неструктурированные данные, хранящиеся в рабочей области Synapse, также можно использовать для создания решений интеллектуального анализа знаний и использования ИИ для выявления ценных бизнес-аналитических сведений в разных типах документов и форматах, включая документы Office, PDF-файлы, изображения, аудио, формы и веб-страницы.
Components
В архитектуре были использованы следующие службы Azure:
- Azure Synapse Analytics
- Azure Data Lake 2-го поколения
- Azure Cosmos DB
- Службы ИИ Azure
- Машинное обучение Azure
- Центры событий Azure
- Центр Интернета вещей Azure
- Azure Stream Analytics
- Microsoft Purview
- Общий ресурс данных Azure
- Microsoft Power BI
- Идентификатор Microsoft Entra
- Управление затратами Майкрософт
- Azure Key Vault
- Azure Monitor
- Microsoft Defender для облака
- Azure DevOps
- Azure Policy
- GitHub
Alternatives
В приведенной выше архитектуре конвейеры Azure Synapse отвечают за оркестрацию конвейеров данных. Конвейеры Фабрики данных Azure также предоставляют те же возможности, что и в этой статье.
Azure Databricks can also be used as the compute engine used to process structured and unstructured data directly on the data lake.
В приведенной выше архитектуре служба Azure Stream Analytics отвечает за обработку данных потоковой передачи. Пулы Spark Azure Synapse и Azure Databricks могут использоваться для решения той же задачи с помощью записных книжек.
Кластеры Azure HDInsight Kafka также можно использовать для приема потоковых данных и обеспечения правильного уровня производительности и масштабируемости, необходимых для больших рабочих нагрузок потоковой передачи.
You also can make use of Azure Functions to invoke Azure AI services or Azure Machine Learning custom ML models from an Azure Synapse pipeline.
Технологии, используемые в этой архитектуре, были выбраны потому, что каждая из них предоставляет необходимые функции для решения наиболее распространенных задач по обработке данных в организации. Эти службы соответствуют требованиям к масштабируемости и доступности, что помогает контролировать затраты. Службы, охватываемые этой архитектурой, являются лишь подмножеством большого семейства служб Azure. Аналогичные результаты могут быть получены с использованием других служб или функций, не охватываемых этим проектом.
Конкретные бизнес-требования для вашего варианта использования аналитики также могут включать использование различных служб или функций, которые не рассматриваются в этом проекте.
Сравните с другими альтернативами:
Scenario details
В этом примере сценария показано, как использовать Azure Synapse Analytics с обширным семейством служб данных Azure для создания современной платформы данных, которая может использоваться для решения самых распространенных задач, связанных с обработкой данных в организации.
Потенциальные варианты использования
Этот подход также может использоваться для:
- Establish a data product architecture, which consists of a data warehouse for structured data and a data lake for semi-structured and unstructured data. Вы можете развернуть один продукт данных для централизованных сред или несколько продуктов данных для распределенных сред, таких как Сетка данных. Дополнительные сведения об управлении данными и целевых зонах данных.
- Интегрируйте реляционные источники данных с другими неструктурированными наборами данных, используя технологии обработки больших данных.
- Использования семантического моделирования и мощных средств визуализации для более простого анализа данных.
- Совместно используйте наборы данных в организации или с доверенными внешними партнерами.
- Реализуйте решения интеллектуального анализа знаний, чтобы извлечь ценные бизнес-сведения из изображений, файлов PDF, документов и т. д.
Recommendations
Обнаружение и управление
Управление данными в крупных корпоративных средах часто является сложной задачей. С одной стороны, бизнес-аналитики должны иметь возможность обнаруживать и анализировать ресурсы данных, которые могут помочь им в решении бизнес-задач. С другой стороны, старшие специалисты по данным хотят иметь представление о конфиденциальности и безопасности бизнес-данных.
Microsoft Purview
Use Microsoft Purview for data discovery and insights on your data assets, data classification, and sensitivity, which covers the entire organizational data landscape.
Microsoft Purview can help you maintain a business glossary with the specific business terminology required for users to understand the semantics of what datasets mean and how they are meant to be used across the organization.
Вы можете зарегистрировать все источники данных и упорядочить их в коллекции, которая также служит границей безопасности для метаданных.
Setup regular scans to automatically catalog and update relevant metadata about data assets in the organization. Microsoft Purview can also automatically add data lineage information based on information from Azure Data Factory or Azure Synapse pipelines.
Data classification and data sensitivity labels can be added automatically to your data assets based on pre-configured or customs rules applied during the regular scans.
Data governance professionals can use the reports and insights generated by Microsoft Purview to keep control over the entire data landscape and protect the organization against any security and privacy issues.
Platform services
Чтобы улучшить качество решений Azure, следуйте рекомендациям и рекомендациям, определенным в Azure Well-Architected Framework пять основных принципов архитектуры: оптимизация затрат, эффективность работы, надежность и безопасность.
Следуя этим рекомендациям, в составе проекта необходимо использовать следующие службы:
- Идентификатор Microsoft Entra: службы удостоверений, единый вход и многофакторная проверка подлинности в рабочих нагрузках Azure.
- Управление затратами Майкрософт: финансовое управление рабочими нагрузками Azure.
- Azure Key Vault: безопасное управление учетными данными и сертификатами. Например, Azure Synapse Pipelines, Пулы Azure SynapseSpark и Azure ML могут получать учетные данные и сертификаты из Azure Key Vault, используемых для безопасного доступа к хранилищам данных.
- Azure Monitor: collect, analyze, and act on telemetry information of your Azure resources to proactively identify problems and maximize performance and reliability.
- Microsoft Defender для Облака: укрепление и мониторинг состояния безопасности рабочих нагрузок Azure.
- Azure DevOps & GitHub: implement DevOps practices to enforce automation and compliance to your workload development and deployment pipelines for Azure Synapse and Azure ML.
- Azure Policy: implement organizational standards and governance for resource consistency, regulatory compliance, security, cost, and management.
Considerations
Эти рекомендации реализуют основные принципы Azure Well-Architected Framework, которые являются набором руководящих принципов, которые можно использовать для улучшения качества рабочей нагрузки. For more information, see Well-Architected Framework.
Cost Optimization
Оптимизация затрат фокусируется на способах сокращения ненужных расходов и повышения эффективности работы. Дополнительные сведения см. в контрольном списке проверки конструктора для оптимизации затрат.
Как правило, используйте калькулятор цен Azure для оценки затрат. Идеальная ценовая категория и общие затраты для каждой службы, включенной в архитектуру, зависят от объема обрабатываемых и сохраняемых данных, а также от ожидаемого уровня производительности. Для получения дополнительных сведений о расценках для каждой службы используйте приведенную ниже информацию:
Бессерверная архитектура Azure Synapse Analytics позволяет масштабировать уровни вычислений и хранилища независимо. Стоимость вычислительных ресурсов определяется на основе использования. По требованию пользователя эти ресурсы могут быть приостановлены или масштабированы. В ресурсах хранилища стоимость взимается за используемые терабайты, что значит, что при получении большего количества данных стоимость увеличится.
Плата за Azure Data Lake 2-го поколения взимается на основе объема данных, хранящихся и на основе количества транзакций для чтения и записи данных.
Плата за Центры событий Azure и Центры Интернета вещей Azure взимается на основе объема вычислительных ресурсов, необходимых для обработки потоков сообщений.
Плата за машинное обучение Azure взимается из объема вычислительных ресурсов, используемых для обучения и развертывания моделей машинного обучения.
AI services is charged based on the number of call you make to the service APIs.
Microsoft Purview is priced based on the number of data assets in the catalog and the amount of compute power required to scan them.
Плата за Azure Stream Analytics взимается на основе объема вычислительной мощности, необходимой для обработки потоковых запросов.
Power BI has different product options for different requirements. Power BI Embedded предоставляет возможность внедрения функций Power BI в приложения на основе Azure. Экземпляр Power BI Embedded включен в образец цены выше.
Стоимость Azure Cosmos DB зависит от объема хранилища и вычислительных ресурсов, необходимых базам данных.
Подобную архитектуру также можно реализовать в подготовительных средах, в которых можно разрабатывать и тестировать рабочие нагрузки. Чтобы получить экономичную подготовительную среду, учитывайте конкретные требования к рабочим нагрузкам и возможности каждой службы.
Развертывание этого сценария
В этой статье есть репозиторий компаньонов, доступный в GitHub, который показывает, как автоматизировать развертывание служб, описанных в этой архитектуре. Следуйте комплексному руководству по развертыванию Azure Synapse в Azure Analyticse , чтобы развернуть эту архитектуру в подписке. В этом руководстве по развертыванию приведены подробные инструкции и несколько вариантов развертывания.
Contributors
Эта статья обновляется и поддерживается корпорацией Майкрософт. Первоначально он был написан следующими участниками.
Principal author:
- Fabio Braga | Principal MTC Technical Architect
Чтобы просмотреть недоступные профили LinkedIn, войдите в LinkedIn.
Next steps
Ознакомьтесь с рекомендациями, определенными в сценарии управления данными и аналитики Azure для масштабируемой аналитической среды в Azure.
Изучите схемы обучения инженера данных в Microsoft learn для дальнейшего обучения содержимого и лабораторий в службах, участвующих в этой эталонной архитектуре.
Просмотрите документацию и разверните эталонную архитектуру, используя рекомендации по развертыванию, доступные на сайте GitHub.