TGViewer
开发者工具箱|编程·开发工具·资源 开发者工具箱|编程·开发工具·资源 @devtoolboxhub · 570 subscribers
Post #1349 5
Azure Cosmos DB 分区键变更方案

在 Azure Cosmos DB 中,容器创建后分区键不可原地修改。若原始键导致跨分区查询或热分区,需考虑变更。本文梳理四种路径,按意图分为重新分区(移动数据)和全局二级索引(只改查询不改写入)。

重新分区(移动数据)

选项一:门户的 Change partition key 功能。最省力,由 Azure 创建目标容器并复制数据,支持在线/离线模式。适用于容器 <1,000,000 RU/s、<4 TB 的路径。

选项二:容器复制作业(CLI)。与门户同引擎但可脚本化,支持在线/离线。在线模式下写入继续,但源写入 RU 翻倍,需连续备份和 all-versions-and-deletes 更改馈送。离线模式需暂停写入。作业按尽力执行,无保证完成时间。注意 TTL 会重置,目标吞吐应设为源的两倍。

选项三:自行迁移。需在移动时做转换、容器超限或需完全控制时使用。可用 .NET v3 SDK 的批量导入、Azure Data Factory、Spark 连接器加载,配合更改馈送增量同步。预创高 RU/s 并关闭索引以降低成本。需自行处理增量同步、错误处理和切换。

不移动数据(全局二级索引)

全局二级索引(GSI)是一个只读容器,以不同分区键自动同步源容器。查询匹配 GSI 分区键时可变为单分区查询,解决读取端跨分区问题。写入端不变,不缓解写入热分区。需连续备份,最终一致,按自动缩放计费,替换和删除操作额外消耗 50-100% RU。

决策参考

- 需点选、小容器:门户功能。
- 需脚本化、精细控制:容器复制作业(CLI)。
- 需转换或超限:自行迁移。
- 只有读取跨分区:全局二级索引。


#开发者 #工具 #Azure #CosmosDB #NoSQL #分区键 #GSI
@DevToolboxHub
More from @devtoolboxhub
  1. Sep 30, 2026AMSI 绕过技术 2026 开发者指南 AMSI(Antivirus Malware Scan Interface)是 Windows 的恶意脚本扫描接口,覆盖 PowerShe…
  2. Sep 30, 2026AI Agent 为什么记不住事 和 AI Agent 协作时最容易注意到的一点是:它们很擅长回答问题,却不擅长记住昨天发生过什么。你可以和它长聊一轮,做出一堆决定、说明偏好、一起…
  3. Sep 30, 2026wpipe:面向 Python 开发者的轻量编排库 wpipe 是一个纯 Python 可嵌入的编排库,目标是让数据管道的开发回到「编辑—运行—调试」的快速循环,而不必为验证业务逻…
  4. Sep 29, 20262,916 个 AI 网站 8 月流量:转录与图生 3D 起飞 Anjin Radar 追踪了 2,916 个 AI 网站的月度访问量,数据截至 2026 年 9 月 28 日。访…
  5. Sep 29, 2026Python 虚拟环境其实是个软链接 在 Linux 和 macOS 上执行 python3 -m venv .venv,并不会复制一份 Python。venv 里的 python…
  6. Sep 29, 2026Will It Focus:相机自动对焦兼容性查询 Agent 这是一个面向摄影器材的自动对焦兼容性查询工具,但它真正的看点在于工程实现:如何让模型引用厂商原文时,保证引用的确实是…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →