从Cosmos DB复制数据到Table Storage时自定义RowKey失败
Cosmos DB到Table Storage数据迁移Row Key报错的解决方向
- 检查Row Key的配置字段名:报错提示找不到
UserId,但你实际要使用的是文档Id。确认接收器的Row Key设置里,是否误将字段名写成了UserId,而非Cosmos DB文档中实际的Id字段名(比如id或Id)。Partition Key能正常运行说明该字段在源数据中存在,大概率是Row Key的字段名配置错误。 - 确保字段映射包含两次Id字段:因为需要将同一个Id同时映射为Partition Key和Row Key,必须在字段映射面板中添加两条独立的映射规则:一条是把Cosmos DB的Id字段映射到Table Storage的
PartitionKey,另一条是把同一个Id字段映射到Table Storage的RowKey。如果只配置了一次映射,Row Key会因找不到对应源字段报错。 - 核对字段名的大小写一致性:Cosmos DB的字段名称是大小写敏感的,比如源文档中的字段是
id(小写),但你在Row Key配置中写了Id(大写),就会导致找不到字段。虽然Partition Key能正常工作,仍需确认Row Key配置的字段名和源文档完全匹配。 - 排查源数据集的投影/筛选设置:检查Cosmos DB源数据集是否设置了投影规则,是否不小心排除了Id字段。如果投影只包含了你要导入的3个字段,没包含Id,会导致Row Key找不到字段(不过Partition Key正常的话这条可能性较低,但可以快速排查确认)。
内容的提问来源于stack exchange,提问作者Jean-Paul Smit
相关产品推荐
相关产品推荐

