我在Azure DocumentDB中有一个集合,其中我使用名为clusterName的JSON属性将文档集群到3个集合中.这三组文件的模板有些像:
{"clusterName":"CustomerInformation","id":"CustInfo1001","custName":"XXXX"},
{"clusterName":"ZoneInformation","id":"ZoneInfo5005","zoneName":"YYYY"},
{"clusterName":"CustomerZoneAssociation","id":"CustZoneAss9009","custId":"CustInfo1001","zoneId":"ZoneInfo5005"}
如您所见,CustomerZoneAssociation的文档将CustomerInformation和ZoneInformation的文档与其ID相关联.我需要帮助在CustomerInformation和ZoneInformation集群中查询来自CustomerZoneAssociation集群中关联的Id的信息.我期待的查询结果是:
{"clusterName":"CustomerZoneAssociation","id":"CustZoneAss9009","custId":"CustInfo1001","custName":"XXXX","zoneId":"ZoneInfo5005","zoneName":"YYYY"}
请建议一个只需1次访问DocumentDB的解决方案
DocumentDB不支持文档间JOIN ...相反,该JOIN关键字用于执行文档内交叉产品(与嵌套数组一起使用).
我建议采用以下方法之一:
请记住,您不必像使用传统RDBMS那样对每个实体进行规范化.值得重新审视您的数据模型,并在适当的时候对数据的某些部分进行反规范化.还要记住,去规范化伴随着自己的权衡(散布写入与发布后续读取).查看以下SO答案,了解有关规范化与非规范化数据之间权衡的更多信息.
| 归档时间: |
|
| 查看次数: |
8500 次 |
| 最近记录: |