"Cosmosdb"
- DB3 Vendor Selection:document / KV / multi-model 三方選型 + workload shape 前置判讀
MongoDB / DynamoDB / Cosmos DB 三家 NoSQL 選型 entry point:workload shape × access pattern × consistency 三軸前置判讀、migration path 三型、federated DB 視角、三 vendor 對比 10 軸
- Cosmos DB MongoDB API vs SQL API:遷移路徑、dogfood signal、multi-model、跨雲 hedging
從『MongoDB API 跟 SQL API 哪個快』推進到 vendor selection 的四層問題:三型遷移路徑、dogfood signal 怎麼讀、multi-model 差異化、跨雲 hedging — 從 Microsoft 365 dogfood 案例切入
- Cosmos DB RU/s 成本模型 + 容量規劃:RU 思維、payload、index、provisioned vs autoscale vs serverless
從 CPU+IOPS 思維轉到 RU 思維的學習曲線、依負載形狀選容量模式、payload + index policy 對 RU 的影響、autoscale reactive 限制 — 從 ASOS Black Friday + Minecraft Earth 1M RU/s 壓測切入
- Cosmos DB Multi-Region Write:active-active、LWW、custom merge、Strong + multi-region 互斥的 AP 取捨
Multi-region active-active write 的 conflict resolution(LWW / custom merge / conflict feed)、Strong 跟 multi-region write 為什麼互斥、廣告 SLA vs 實測可用性鏈路拆解 — 從 Minecraft Earth + Toyota Connected 切入
- Cosmos DB Partition Key Design:synthetic / composite / hierarchical + 不可逆性硬約束
Cosmos DB logical partition 10000 RU/s 上限、partition key 不可改、三種設計模式(synthetic / composite / hierarchical)、跟 DynamoDB / MongoDB 可逆性對比、latency budget 拆解 — 從 Minecraft Earth + ASOS 切入
- Cosmos DB 5 Consistency Levels:Session 預設、Bounded staleness、Strong 邊界跟跨 collection 分流策略
Cosmos DB 5 個 consistency level 的工程選擇邏輯、Session 為何是 production 預設、per-request override 跟跨 collection 分流的進階策略、Strong + multi-region 互斥的 cross-link — 從 Minecraft Earth + ASOS 切入
- Cosmos DB Change Feed (CDC):persistent change log、Azure Functions trigger、latest-version vs all-versions-and-deletes 與跟 DynamoDB Streams 對照
Cosmos DB Change Feed 的工程展開:partition-scoped 持久變更 log、change feed processor 的 lease / continuation token、latest-version 與 all-versions-and-deletes 兩種模式的取捨、Azure Functions trigger 整合、跟 DynamoDB Streams 的語義差 — 從 ASOS catalog 寫入投影切入
- Cosmos DB Stored Procedure / Trigger(JavaScript):partition-scoped 交易、server-side 邏輯邊界、何時用何時讓 application 層處理
Cosmos DB 用 JavaScript 寫的 stored procedure、pre/post trigger 與 UDF 的工程展開:single-partition transaction 語義、bounded execution 與 continuation 模式、何時值得用 server-side 邏輯、為何多數邏輯應留在 application 層 — 跟 Change Feed 的非同步路徑對照
- 從 MongoDB / Cassandra 遷入 Cosmos DB:protocol-compat API drop-in vs native API paradigm shift、相容性邊界與 dual-write cutover
MongoDB / Cassandra 遷入 Azure Cosmos DB 的 migration playbook:用 Cosmos 的 MongoDB API / Cassandra API 做 wire-protocol drop-in(Type B)vs 換 native SQL API 的 paradigm shift(Type E)兩條路徑的取捨、6 維 diff audit、相容性邊界、dual-write 與 cutover — 從 Microsoft 365 / Forbes 遷移對照切入
- Cosmos DB for PostgreSQL:基於 Citus 的分散式 PostgreSQL、跟核心 Cosmos DB 是不同產品、何時選它而非核心 Cosmos 或一般 PG
Cosmos DB for PostgreSQL(2022、Citus-based distributed PG)的定位釐清:它是分散式 PostgreSQL、不是 NoSQL Cosmos DB;distribution column / coordinator-worker 架構、何時選它而非核心 Cosmos DB、何時夠用一般 Azure Database for PostgreSQL — 命名混淆的選型陷阱
- Cosmos DB ↔ Azure Synapse Link:analytical store、HTAP federation、何時把分析 workload 從 OLTP 分出去
Cosmos DB Azure Synapse Link 的工程展開:column-oriented analytical store 自動同步、HTAP federation 讓分析 query 不打 OLTP transactional store、no-ETL 對 RU 的隔離、何時把分析 workload 從 Cosmos OLTP 分出去 vs 何時 federate 到專用 OLAP — 從 Microsoft 365 analytics 切入