本文详细介绍了当前 Azure Cosmos DB 帐户镜像到 Microsoft Fabric 的限制。 本页上的限制和配额详细信息将来可能会发生变化。
重要
Azure Cosmos DB 镜像目前处于预览阶段。 预览期间不支持生产工作负载。 目前,仅支持 Azure Cosmos DB for NoSQL 帐户。
可用性
Azure Cosmos DB 的 Fabric 和 API 的一组特定区域支持镜像。
受支持的 API
镜像仅适用于此处列出的 Azure Cosmos DB 帐户类型。
可用 | |
---|---|
用于 NoSQL 的 API | 是 |
API for MongoDB(基于 RU) | 否 |
API for MongoDB(基于 vCore) | 否 |
适用于 Apache Gremlin 的 API | 否 |
API for Table | 否 |
API for Apache Cassandra(基于 RU) | 否 |
适用于 Apache Cassandra 的 Azure 托管实例 | 否 |
支持的区域
以下是支持数据库镜像和开放镜像的 Fabric 区域:
美洲:
- 巴西南部
- 加拿大中部
- 加拿大东部
- 美国中部
- 美国东部
- 美国东部 2
- 美国中北部
- 美国中南部
- 美国西部
- 西部美国 2
- 美国西部 3
亚太:
- 东亚
- 东南亚
- 澳大利亚东部
- 澳大利亚东南部
- 印度中部
- 印度南部
- 日本东部
- 韩国中部
欧洲、中东和非洲:
- 北欧
- 西欧
- 法国中部
- 德国中西部
- 意大利北部
- 挪威东部
- 波兰中部
- 南非北部
- 瑞典中部
- 瑞士北部
- 瑞士西部
- 阿拉伯联合酋长国北部
- 英国南部
- 英国西部
帐户和数据库限制
- 仅当 Azure Cosmos DB 帐户配置了 7 天或 30 天连续备份时,才能启用镜像。
- Azure Cosmos DB 中连续备份功能的所有当前限制也适用于 Fabric 镜像。
- 这些限制包括但不限于:启用后无法禁用连续备份,并且不支持多区域写入帐户。 有关详细信息,请参阅 Azure Cosmos DB 连续备份限制。
- 可在同一 Azure Cosmos DB 帐户上启用分析存储和连续备份功能。
- 无法在启用了连续备份的 Azure Cosmos DB 帐户上禁用分析存储功能。
- 如果之前禁用了容器的分析存储功能,则无法在 Azure Cosmos DB 帐户上启用连续备份。
安全性限制
- 连接到源帐户的唯一支持机制是使用 Azure Cosmos DB 读写帐户密钥和结合基于角色的访问控制的 Microsoft Entra ID 身份验证。 不支持只读帐户密钥和托管标识。
- 对于Microsoft Entra ID 身份验证,需要以下基于角色的访问控制权限:
Microsoft.DocumentDB/databaseAccounts/readMetadata
Microsoft.DocumentDB/databaseAccounts/readAnalytics
- 有关详细信息,请参阅 数据平面基于角色的访问控制文档。
- 对于Microsoft Entra ID 身份验证,需要以下基于角色的访问控制权限:
- 如果轮换帐户密钥,则必须更新 Fabric 镜像的连接凭证。 如果不更新密钥,镜像就会失败。 若要解决此问题,请停止复制,使用新轮换的密钥更新凭证,然后重启复制。
- 有权访问工作区的 Fabric 用户会自动继承对镜像数据库的访问权限。 但你可以精细控制工作区和租户级别的访问权限,以管理组织中用户的访问权限。
- 你可以直接在 Fabric 中共享镜像数据库。
权限
- 如果在 Fabric 中只有查看者权限,则无法在 SQL 分析终结点中预览或查询数据。
- 如果打算使用数据资源管理器,Azure Cosmos DB 数据资源管理器不会使用与 Fabric 相同的权限。 使用数据资源管理器查看和查询数据的请求将路由到 Azure,而不是 Fabric。
网络安全性
- 源 Azure Cosmos DB 帐户必须为所有网络启用公用网络访问。
- Azure Cosmos DB 帐户不支持专用终结点。
- Azure Cosmos DB 帐户不支持使用 IP 地址或服务终结点等技术和功能进行网络隔离。
- OneLake 中的数据不支持专用终结点、客户管理的密钥或双重加密。
数据资源管理器限制
- Fabric 数据资源管理器查询是只读的。 可以查看现有容器、查看项和查询项。
- 无法使用 Fabric 中的数据资源管理器创建或删除容器。
- 无法使用 Fabric 中的数据资源管理器插入、修改或删除项。
- 你可以只与其他用户共享 SQL 分析终结点进行分析,从而避免共享源数据库。
- 无法关闭镜像数据库中的数据资源管理器。
复制限制
- 镜像不支持包含属性名称含有空格或通配符的项的容器。 此限制会导致特定容器镜像失败。 同一数据库中的其他容器仍可以成功镜像。 如果更新属性名以删除这些无效字符,则必须为同一数据库和容器配置新的镜像,且无法使用旧的镜像。
- 在 Azure Cosmos DB 帐户有多个读取区域的情况下,Fabric OneLake 会从地理位置上最靠近 Fabric 容量区域的 Azure 区域镜像。 在灾难恢复场景中,镜像自动扫描并选取新的读取区域,因为读取区域可能会进行故障转移和更改。
- 源容器中的删除操作会立即通过镜像反映在 Fabric OneLake 中。 不支持使用生存时间 (TTL) 值的软删除操作。
- 镜像不支持自定义分区。
- Fabric 在 T-SQL 方面存在现有限制。 有关详细信息,请参阅 T-SQL 限制。
架构和数据更改
- 删除和添加类似的容器只会将仓库表中的数据替换为新容器的数据。
- 跨多个项更改属性中的数据类型会导致复制器在适用的情况下向上转换数据。 此行为与本机 delta 体验一致。 任何不符合所支持条件的数据都将变为 null 类型。 例如,将数组属性更改为字符串将向上转换为 null 类型。
- 向项添加新属性会导致镜像无缝检测新属性,并将相应的列添加到仓库表中。 如果删除或缺少项属性,则相应记录的值为 null。
- 使用镜像复制数据没有完全保真或定义良好的架构。 镜像会自动连续跟踪属性更改和数据类型(如果允许)。
嵌套数据
- Azure Cosmos DB 项中的嵌套 JSON 对象在仓库表中表示为 JSON 字符串。
OPENJSON
、CROSS APPLY
和OUTER APPLY
等命令可用于有选择地扩展 JSON 字符串数据。- 通过
OPENJSON
进行自动架构推理,可以使用未知或不可预知的嵌套架构平展和浏览嵌套数据。 有关详细信息,请参阅 如何查询嵌套数据。
- 通过
- PowerQuery 包括
ToJson
,用于有选择地扩展 JSON 字符串数据。 - 镜像在嵌套级别上没有架构约束。 有关详细信息,请参阅 Azure Cosmos DB 分析存储架构约束。
数据仓库限制
- 仓库无法处理大小超过 8 KB 的 JSON 字符串列。 此场景的错误消息是“JSON 文本格式不正确,在该位置发现意外字符‘"’”。
- 当前的解决方法是在 Fabric Lakehouse 中创建镜像数据库的快捷方式,并使用 Spark Notebook 查询数据以避免此限制。
- 在 SQL 分析终结点和仓库表中以 JSON 字符串表示的嵌套数据通常会导致列的大小增加到 8 KB 以上。 如果收到此错误消息,请监视嵌套级别和数据量。
镜像项限制
- 在工作区中为 Azure Cosmos DB 帐户启用镜像需要工作区中的管理员或成员角色。
- 停止复制将完全禁用镜像。
- 再次开始复制会重新设定所有目标仓库表的种子。 该操作实际上是从头开始镜像。
提供反馈
如果要提供有关当前限制、功能或问题的反馈;请发送电子邮件至 fabriccosmosdbmirror@microsoft.com。