CosmosDB - Correct Partition Key

久未见 提交于 2019-12-12 05:43:09

问题


Every JSON file I upload to the collection is in the following format:

{
  "Blocks": [
    {
      "radarID": "51p01", ...
    },
    {
      "radarID": "51p02", ...
    }
  ]
}

The partition key I use is '/Blocks/radarID', but it does not work. I guess radarID is not an immediate child of Blocks, it is in a list. So do you know what I should write as my partition key?

Thanks.


回答1:


Partition Key has to be a single value for each document, it can't be a field in sub-array. Partition Key is used to determine which database node will host your document, and it wouldn't be possible if you specified multiple values, of course.

If your single document contains data from multiple entities, and you will query those entities separately, it might make sense to split your documents per entity. If all those "radars" are related to some higher level entity, use that entity ID as partition key.

Bottom line: partition key should be defined by your query patterns, so that the most popular queries are executed against a single partition.



来源:https://stackoverflow.com/questions/44768663/cosmosdb-correct-partition-key

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!