【发布时间】:2020-04-23 11:10:26
【问题描述】:
我需要你的帮助来解决跨分区查询的问题,我有一个集合(mongo db api),它存储分区类型为“applicationType”的记录。当我知道我的应用程序类型基本上满足了我 75% 的用户但很少有战略客户希望我们提供基于制造商的数据时,它工作正常,这不是分区的一部分。当我在没有应用程序类型的情况下进行查询时,查询执行得非常糟糕。
需要您的建议来解决这个问题。供您参考,请在下面找到我们存储的集合样本
{
"_id" : ObjectId("5ad5d6b7529cd2007ba73bc8"),
"applicationType" : "Highbay",
"name" : "X",
"subSeries" : "X1",
"fullSeriesName" : "C1X",
"manufacturer": "cre"
...
...
...
}
,
{
"_id" : ObjectId("5ad5d6b7529cd2007ba73bc8"),
"applicationType" : "AreaLight",
"name" : "X",
"subSeries" : "X1", (mongo db
"fullSeriesName" : "C1X",
"manufacturer": "cre"
...
...
...
【问题讨论】:
-
请编辑您的问题并提供更多详细信息。例如:您认为什么是“差”性能(以及什么是分区内的“好”性能)?是延迟问题吗?是请求单位成本问题吗?您的查询是什么样的?您正在搜索多少数据?您的任何特定于搜索的属性是否已编入索引?对此可能没有任何“正确”的答案,因为数据建模不是一个精确的东西——它是特定于应用程序的。此外,这取决于您特定的读写模式(这就是我在您的问题中提到所有未知数的原因)。
标签: azure-cosmosdb azure-cosmosdb-mongoapi