你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
在本教程中,从现有的 Azure Cosmos DB for NoSQL 帐户配置 Fabric 镜像数据库。
以增量方式将 Azure Cosmos DB 数据近乎实时地复制到 Fabric OneLake,而不会影响事务工作负荷的性能,也不会消耗请求单位(RU)。 可以使用 DirectLake 模式直接在 OneLake 中的数据上生成 Power BI 报表。 可以在 SQL 或 Spark 中运行即席查询,使用笔记本生成数据模型,并使用 Fabric 中的内置 Copilot 和高级 AI 功能来分析数据。
重要
Azure Cosmos DB 的镜像目前处于 预览版。 预览期间不支持生产工作负载。 目前,仅支持用于 NoSQL 帐户的 Azure Cosmos DB。
先决条件
- 一个现有的适用于 NoSQL 的 Azure Cosmos DB 帐户。
- 如果没有 Azure 订阅, 请尝试免费试用 Azure Cosmos DB for NoSQL。
- 如果有现有的 Azure 订阅, 请创建新的 Azure Cosmos DB for NoSQL 帐户。
- 现有的 Fabric 容量。 如果没有现有容量, 请启动 Fabric 试用版。 某些 Fabric 区域中可能无法使用镜像。 有关详细信息,请参阅 支持的区域。
小窍门
在公共预览版中,建议使用现有 Azure Cosmos DB 数据的测试或开发副本,以便从备份中快速恢复。
配置 Azure Cosmos DB 帐户
首先,确保源 Azure Cosmos DB 帐户已正确配置为与 Fabric 镜像配合使用。
在 Azure 门户中进入 Azure Cosmos DB 帐户。
确保已启用连续备份。 如果未启用,请按照指南将 现有 Azure Cosmos DB 帐户迁移到连续备份以 启用连续备份。 在某些情况下,此功能可能不可用。 有关详细信息,请参阅 数据库和帐户限制。
确保网络选项设置为公用网络访问适用于所有网络。 否则,请按照 为 Azure Cosmos DB 帐户配置网络访问的指南进行操作。
创建镜像数据库
现在,创建一个镜像数据库,该数据库是复制数据的目标。 有关详细信息,请参阅 镜像的预期内容。
导航到 Fabric 门户 主页。
打开现有工作区或创建新工作区。
在导航菜单中,选择“ 创建”。
选择“创建”,找到“数据仓库”部分,然后选择“镜像 Azure Cosmos DB”(预览版)。
提供镜像数据库的名称,然后选择“ 创建”。
连接到源数据库
接下来,将源数据库连接到镜像数据库。
在“ 新建连接 ”部分中,选择 Azure Cosmos DB for NoSQL。
为 Azure Cosmos DB for NoSQL 帐户提供凭据,包括以下项:
价值 Azure Cosmos DB 终结点 源帐户的 URL 终结点。 连接名称 连接的唯一名称。 身份验证类型 选择 帐户密钥 或 组织帐户。 帐户密钥 源帐户的读写密钥。 组织帐户 由 Microsoft Entra ID 颁发的访问令牌。 注释
对于Microsoft Entra ID 身份验证,需要以下 RBAC 权限:
Microsoft.DocumentDB/databaseAccounts/readMetadataMicrosoft.DocumentDB/databaseAccounts/readAnalytics
有关详细信息,请参阅 数据平面基于角色的访问控制文档。
选择 连接。 然后选择要镜像的数据库。 (可选)选择要镜像的特定容器。
启动镜像过程
选择“镜像数据库”。 现在开始镜像过程。
等待两到五分钟。 然后选择“监视复制”以查看复制操作的状态。
几分钟后,状态应更改为 “正在运行”,指示正在同步容器。
小窍门
如果找不到容器和相应的复制状态,请等待几秒钟,然后刷新窗格。 在极少数情况下,可能会收到暂时性错误消息。 可以安全地忽略它们并继续刷新。
镜像完成容器的初始复制后,最后一个 刷新 列中会显示一个日期。 如果成功复制数据,则 总行 列将包含复制的项数。
监视结构镜像
现在,你的数据已启动并运行,整个 Fabric 中具有各种可用的分析场景。
配置 Fabric 镜像后,会自动导航到 “复制状态 ”窗格。
在此处,监视复制的当前状态。 有关复制状态的详细信息和细节,请参阅监视 Fabric 镜像数据库复制。
从 Fabric 查询源数据库
使用 Fabric 门户浏览 Azure Cosmos DB 帐户中已存在的数据,并查询源 Cosmos DB 数据库。
在 Fabric 门户中导航到镜像数据库。
选择 “视图”,然后选择 “源数据库”。 此动作使用源数据库的只读视图打开 Azure Cosmos DB 数据浏览器。
选择容器,然后打开上下文菜单,然后选择“ 新建 SQL 查询”。
运行任何查询。 例如,使用
SELECT COUNT(1) FROM container来计算容器中的项数。注释
源数据库上的所有读取请求都会被路由到 Azure,并消耗在帐户上分配的请求单位(请求单位,RU)。
分析目标镜像数据库
现在,使用 T-SQL 查询现在存储在 Fabric OneLake 中的 NoSQL 数据。
在 Fabric 门户中导航到镜像数据库。
从 镜像 Azure Cosmos DB 切换到 SQL 分析终结点。
源数据库中的每个容器都应在 SQL 分析终结点中表示为仓库表。
选择任意表,打开上下文菜单,然后选择“ 新建 SQL 查询”,最后选择“ 选择前 100 名”。
查询执行并返回所选表中的 100 条记录。
打开同一表的上下文菜单,然后选择“ 新建 SQL 查询”。 编写使用聚合的示例查询,例如
SUM、COUNT或MINMAX。 联接仓库中的多个表,以跨多个容器执行查询。注释
例如,此查询将跨多个容器执行:
SELECT d.[product_category_name], t.[order_status], c.[customer_country], s.[seller_state], p.[payment_type], sum(o.[price]) as price, sum(o.[freight_value]) freight_value FROM [dbo].[products] p INNER JOIN [dbo].[OrdersDB_order_payments] p on o.[order_id] = p.[order_id] INNER JOIN [dbo].[OrdersDB_order_status] t ON o.[order_id] = t.[order_id] INNER JOIN [dbo].[OrdersDB_customers] c on t.[customer_id] = c.[customer_id] INNER JOIN [dbo].[OrdersDB_productdirectory] d ON o.product_id = d.product_id INNER JOIN [dbo].[OrdersDB_sellers] s on o.seller_id = s.seller_id GROUP BY d.[product_category_name], t.[order_status], c.[customer_country], s.[seller_state], p.[payment_type]此示例假设您的表和列的名称。 编写 SQL 查询时,请使用自己的表和列。
选择查询,然后选择另存为视图。 为视图指定唯一的名称。 可以随时从 Fabric 门户访问此视图。
返回到 Fabric 门户中的镜像数据库。
选择 “新建视觉对象查询”。 使用查询编辑器生成复杂的查询。
基于 SQL 查询或视图生成 BI 报表
- 选择查询或视图,然后选择“浏览此数据”(预览版)。 此操作直接使用 OneLake 的 Direct Lake 浏览 Power BI 中的查询。
- 根据需要编辑图表并保存报表。
小窍门
还可以选择使用 Copilot 或其他增强功能来生成仪表板和报表,而无需进行任何进一步的数据移动。
更多示例
详细了解如何在 Fabric 中访问和查询镜像的 Azure Cosmos DB 数据:
- 如何:从 Azure Cosmos DB 查询 Microsoft Fabric 镜像数据库中的嵌套数据(预览版)
- 如何从 Microsoft Fabric 访问 Lakehouse 和笔记本中的 Azure Cosmos DB 镜像数据(预览版)
- 如何:在 Microsoft Fabric 中将镜像的 Azure Cosmos DB 数据与其他镜像数据库联接(预览版)