将 CosmosDB 与地理空间数据结合使用的建议策略是什么? Cosmos DB 需要分区键,单个分区不能超过 10GB。因此,如果我有超过 10GB 的数据:
- 我无法选择地理空间索引作为分区键
- 我手动创建一个包含地理部分(即按城市)的分区键
- 单个空间查询不能跨越两个分区。因此,如果我在
EastLondon
和WestLondon
都有土地区域,我无法搜索数据库来确定它们是否相交。
实际使用方法是什么?
最佳答案
如果分区键只是地理空间属性,那就太理想了。然而,根据我的阅读,答案是您应该将分区数量限制为存储数据所需的最少数量。如果分区相交,则必须冗余存储相交的位。如果您限制 20GB(increased,因为您可能写了问题)分区的数量,那么跨分区查询的成本应该最小化。
解决此问题的一种可能方法是仅将 ID 与地理空间数据一起存储,然后您可以在其他地方存储和检索与该 ID 相关的详细信息。例如,这可以通过连接来完成。
关于c# - 如何通过分区使用 CosmosDB 中的地理空间数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50517221/