排查 Azure Cosmos DB 中的 Microsoft Fabric 镜像数据库(预览)问题

Microsoft Fabric 中的镜像提供了无缝的无 ETL 体验,可将现有 Azure Cosmos DB 数据与 Fabric 中的其余数据集成。 在 Fabric 中为 Azure Cosmos DB 创建镜像数据库时,可使用本文中的提示来帮助排查可能遇到的问题。

重要

Azure Cosmos DB 镜像目前处于预览阶段。 预览期间不支持生产工作负载。 目前,仅支持 Azure Cosmos DB for NoSQL 帐户。

下面列出了常见问题,以及将 Azure Cosmos DB 数据库镜像到 Microsoft Fabric 未按预期工作时应遵循的相关故障排除步骤。

加载数据库时镜像失败并出现“SQLAPIendpoint”错误。 如何解决此错误?

此错误通常表示 Azure Cosmos DB 帐户密钥对您选择的连接不再有效。 使用有效的帐户密钥更新连接凭据后,再次设置镜像。

Fabric 无法配置镜像,并显示错误,指示我的 Azure Cosmos DB 帐户没有连续备份。 如何修复此错误?

为 Azure Cosmos DB 帐户启用连续备份。 有关详细信息,请参阅创建具有连续备份的 Azure Cosmos DB 帐户将现有 Azure Cosmos DB 帐户迁移到连续备份

启用连续备份功能后,返回 Fabric 镜像设置并继续执行其余步骤。

如何知道我的 Azure Cosmos DB 帐户是否启用了连续备份?

使用 Azure 门户,可通过在 Azure Cosmos DB 帐户的资源菜单中找到“时间点还原”选项,检查是否启用了连续备份功能。 如果此选项不可用,则表明该帐户未启用连续备份,或者该帐户正在迁移到连续备份。

在我的 Azure Cosmos DB 帐户中启用连续备份会导致各种错误。 我还可以设置 Fabric 镜像吗?

不,必须为要作为镜像源的 Azure Cosmos DB 帐户启用连续备份。

如果在为 Azure Cosmos DB 帐户启用连续备份时出现错误消息,则该帐户可能存在阻止该功能的限制。 例如,如果之前删除了帐户的分析存储,该帐户就不支持连续备份。 在此场景中,唯一剩下的选项就是使用新的 Azure Cosmos DB 帐户进行镜像。

为什么当我选择“监视复制”时,复制无法工作,并且出现“内部服务器错误”?

如果 Azure Cosmos DB 限制来自 Fabric 的请求,复制可能会正常工作,并且您会观察到暂时性错误。 此外,可能是 Azure Cosmos DB 镜像的限制导致了这个问题。 有关详细信息,请参阅 Azure Cosmos DB 镜像限制

刷新 Fabric 门户并确定问题是否已自动解决。 此外,还可以停止和启动复制。 如果这些选项都不起作用,请开立支持票证

如何确定 Fabric 正在从 Azure Cosmos DB 复制数据?

首先,请遵循 Fabric 镜像数据库的常规故障排除步骤。 有关详细信息,请参阅故障排除

在大多数情况下,“监视复制”选项可以提供进一步的详细信息,指示数据是否成功复制到 Fabric。 常见的故障排除步骤是检查上次刷新时间是否是最近的。 如果时间不是最近的,请停止,然后重启复制。 请注意,仅当源数据库自复制记录以来发生更改时,才会更新“上次刷新时间”。 如果源数据库没有更新、删除或插入,则不会更新“上次刷新时间”。

“监视复制”窗格中包含长时间后没有复制行的表。 复制停滞?

复制可能停滞。 请停止,然后重启复制。 如果此步骤不起作用,请开立支持票证

为什么在 SQL 分析终结点中找不到任何表?

首先,刷新 Schemasdbo 节点以确定表是否已准备就绪。 表准备就绪后会自动加载。 如果在长时间后仍没有表准备就绪,请使用“监视复制”窗格来确定是否发生任何复制错误。

为什么我的目标仓库表在复制后只包含 `_rid` 列?

首先,刷新 Schemasdbo 节点以确定表是否已准备就绪。 表准备就绪后会自动加载。 如果在长时间后仍有很多列未准备就绪,请使用“监视复制”窗格来确定是否发生任何复制错误。

我在 Azure Cosmos DB 数据库的容器中添加了新项。 这些项不包含在 SQL 分析终结点查询的结果中。 我如何知道复制是否正常工作?

监视复制”选项可以提供进一步的详细信息,指示数据是否成功复制到 Fabric。 常见的故障排除步骤是检查上次刷新时间是否是最近的。 如果时间不是最近的,请停止,然后重启复制。 如果时间是最近的,请再次尝试查询。 有时,数据插入 Azure Cosmos DB 与复制数据并在 Fabric 中可用之间可能存在延迟。

如果数据仍然不可用,请使用 Lakehouse 创建快捷方式并从笔记本运行 Spark 查询。 Spark 始终显示最新数据。 如果数据在 Spark 中可用,但在 SQL 分析中不可用,请开立支持票证

如果数据在 Spark 中也不可用,可能会出现意外的复制延迟问题。 等待一段时间,然后重试复制。 如果问题仍然存在,请开立支持票证

为什么我对 SQL 分析终结点运行 T-SQL 查询时。 会收到“JSON 文本格式不正确,在该位置发现意外字符"”错误消息?

数据仓库无法处理大小超过 8 KB 的 JSON 字符串列。 在 SQL 分析终结点或仓库表中以 JSON 字符串表示的嵌套数据通常会导致列的大小增加到 8 KB 以上。 如果收到此错误消息,请监视嵌套级别和数据量。 有关详细信息,请参阅数据仓库限制

为什么我在“监视复制”窗格中收到“列名无效”错误?

镜像不支持包含属性名称含有空格或通配符的项的容器。 此限制会导致特定容器镜像失败。 同一数据库中的其他容器仍可以成功镜像。 有关详细信息,请参阅复制限制