我想将 shardlet 从一个分片移动到另一个分片。我正在使用 Azure Elastic Scale 库和提供的拆分/合并/移动示例。
尝试移动 shardlet 时,我不断收到错误消息,因为该工具正在将(引用)表复制到不同的分片,但顺序错误。该工具正在尝试复制与该Firmware
表具有 FK 关系的User
表。但是,此User
表尚未复制,因此当它尝试执行INSERT
命令时,由于不满足 FK 关系而失败。
该网站上的文档说明如下:
引用完整性:拆分/合并服务分析表之间的依赖关系,并使用外键-主键关系来暂存移动引用表和 shardlet 的操作。通常,引用表首先按依赖顺序复制,然后 shardlet 在每个批次中按照它们的依赖顺序复制。这是必要的,以便在新数据到达时遵守目标分片上的 FK-PK 约束。
有没有办法在处理表格时管理订单?
也许通过改变他们注册的顺序?