你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

使用 Azure Synapse 无服务器 SQL 池的逻辑数据仓库

Azure Cosmos DB
Azure 数据工厂
Azure Data Lake
Azure Synapse Analytics
Power BI

解决方案构想

本文是一种解决方案构想。 如果你希望我们在内容中扩充更多信息,例如潜在用例、备用服务、实现注意事项或定价指南,请通过提供 GitHub 反馈来告知我们。

逻辑数据仓库 (LDW) 模式在存储在数据湖或数据库中的数据之上添加了轻型虚拟化关系层。 此虚拟化层可提供数据仓库访问,而无需移动数据。 该解决方案可以将联机事务处理 (OLTP) 数据与来自数据湖的分析数据相结合,以低复杂性、低延迟的方式为商业智能 (BI) 和分析工作负载提供服务。

Apache Spark™ 是 Apache Software Foundation 在美国和/或其他国家/地区的商标。 使用此标记并不暗示获得 Apache Software Foundation 的认可。

体系结构

数据流的示意图:显示数据按所示步骤从左到右进行传递。

下载包含本文中所有示意图的 PowerPoint 文件

数据流

  1. Azure 数据工厂将来自源系统的数据集成到企业数据湖中。

  2. 设备和传感器数据还通过 Azure IoT 中心从边缘设备流式传输到云中。 Azure 流分析处理数据并将其发送到企业数据湖。

  3. Azure Synapse 无服务器 SQL 池定义了一个 LDW,该 LDW 具有可通过 Azure Synapse 工作区无服务器 SQL 池按需终结点访问的逻辑表和视图。

  4. Azure Synapse Link for Azure Cosmos DB 通过 Azure Synapse 无服务器 SQL 池查询实时事务数据。 此数据与来自企业数据湖的冷批处理和热流式传输数据相结合,以创建逻辑视图。

  5. 报表、BI 和其他分析应用程序使用 Azure Synapse 工作区无服务器 SQL 终结点访问 LDW 数据和视图。

    注意

    可通过任何支持对 SQL Server 的表格格式数据流 (TDS) 连接的工具或服务访问 Azure Synapse 工作区无服务器 SQL 终结点。

组件

方案详细信息

通过将 LDW 与 Azure Synapse 无服务器 SQL 池结合使用,可以在单个 T-SQL 查询或视图定义中加入冷批处理数据、热流式传输数据和实时事务数据。

该解决方案避免了通过复杂、昂贵且容易延迟的提取、转换和加载 (ETL) 管道移动数据。 LDW 概念类似于数据湖屋,但结合 Azure Synapse Analytics 的 LDW 包括对混合事务/分析处理 (HTAP) 的支持。 HTAP 使用 Azure Synapse 无服务器 SQL 池来查询存储在 Azure Cosmos DB 中的 OLTP 数据。

Azure Synapse Analytics LDW 基于可用于所有 Azure Synapse 工作区的无服务器 SQL 池。 无服务器 SQL 池可通过 OPENROWSET 函数的增强版本访问 Data Lake Storage 中的数据。

这种数据访问允许基于表示逻辑实体(如产品、客户和销售交易)的数据文件集合创建关系数据库对象,如表和视图。 使用标准 SQL Server 终结点连接的 BI 工具可以将这些逻辑实体用作维度和事实数据表。

该示意图显示了 LDW 概念设计与结合 Azure Synapse Analytics 无服务器 SQL 池的 LDW 实现的并排比较。

通过 Azure Synapse Link for Azure Cosmos DB 访问事务数据存储(如 Azure Cosmos DB)的能力扩展了这些功能。 使用 HTAP 体系结构访问 OLTP 数据可提供即时更新,而不会干扰实时事务。

该示意图显示了使用 Azure Synapse Analytics 无服务器 SQL 池将外部数据流传递到报告层。

每个 Azure Synapse 工作区都包含一个按需 SQL 终结点。 该终结点允许 SQL Server 管理员和开发人员通过熟悉的环境来使用 Azure Synapse 无服务器 SQL 池定义的 LDW。

以下屏幕截图显示了连接到 Azure Synapse 无服务器 SQL 池的 SQL Server Management Studio (SSMS)。

显示连接到 Azure Synapse SQL Server 终结点的 SSMS 的屏幕截图。

Azure Synapse 无服务器 SQL 池支持以下文件格式:

  • 带分隔符的文本,例如 CSV、TSV 和 TXT
  • JSON
  • Parquet

Azure Synapse 无服务器 SQL 池还支持 Delta Lake 格式。 此种支持允许诸如 Spark 中的扩充、传递至 SQL 等模式,其中 Apache Spark™ 服务(如 Azure DatabricksAzure Synapse 中的 Apache Spark 池)设计数据以在数据湖中创建特选数据集。 不必将这些数据集加载到物理数据仓库中,可以在数据湖上定义 LDW 以提供用于报告的模型/服务层。

该示意图显示了通过 Azure Synapse Analytics 无服务器 SQL 池将外部数据流传递到报告层。

结合 Azure Synapse 无服务器 SQL 池的 LDW 是数据湖屋模式的一种实现。 使用 Databricks SQL 实现 LDW 是一种替代解决方案。 但 Databricks SQL 缺少 Azure Synapse Link for Cosmos DB 的 HTAP 功能。

可能的用例

此模式可用于以下用例:

  • 用于 BI 和其他分析用例的数据仓库服务层。
  • 对数据湖中的原始数据进行临时探索。
  • 将具有成本效益的数据流式传输到数据湖中(不需要其自身的计算资源来写入数据)。 逻辑数据库表、视图或临时 T-SQL 查询可以立即从数据湖访问数据。
  • 即时访问 Azure Cosmos DB 事务数据以生成实时聚合管道或与存储在数据湖中的分析数据联接。

作者

本文由 Microsoft 维护, 最初由以下贡献者撰写。

首席作者:

若要查看非公开的 LinkedIn 个人资料,请登录到 LinkedIn。

后续步骤