问题描述
我想估算 Azure CosmosDB 在 Scalar DB 上的成本。 CosmosDB 需要以下参数。但是这些参数不是ScalarDB的参数。
- API
- 区域数量
- 多区域写入
- 默认一致性
- 索引政策
- 存储在交易存储中的总数据
- 使用分析商店
- 工作负载模式
- 商品尺寸
- 房产数量
- 点读取/秒
- 创建/秒
- 更新/秒
- 删除/秒
- 查询/秒
- 每次查询的平均 RU 费用
那么,我们应该设置哪个配置,我们上面的参数可以映射到标量数据库参数吗?
我确认以下问题。 关于配置
- API -> 卡桑德拉
- Region of Regions -> 如果需要写入multi-region,设置2个以上。
- 多区域写入 -> 如果多区域超过 2,则设置为“已启用”
- 默认一致性 -> 强。但是 CosmosDB 可以满足跨多个分区的事务。它由标量数据库覆盖。
关于 API 调用 标量数据库 API 与 ComosDB API
- Put:无条件插入 => createItem()
- Put:插入条件 => readItem() -> 不存在 -> createItem()
- Put:使用条件更新 => readItem() -> 如果条件满足 -> 合并列 -> replaceItem()
- 获取 -> readItem()
- 无条件删除 => deleteItem()
- 使用条件删除 => readItem() -> 如果条件满足 -> deleteItem()
- 扫描 => container.queryItems()
我认为ScalarDB在上述检查事务状态的操作之前有一些操作。那么,Scalar DB 是否需要更多的 ComosDB API 调用?
解决方法
请使用以下设置。
- API:核心 (SQL)(不是 Cassandra)
- 区域数量:1(自强 一致性不支持多区域)
- 多区域写入: 已禁用(因为强一致性不支持多区域)
- 默认一致性:强
对于 Scalar DB API 调用哪个 Cosmos DB API, 请检查代码。