TL; DR: Cosmos, похоже, игнорирует параметр maxTimeMS
.
Я работаю с довольно большой многораздельной коллекцией CosmosDB (несколько миллионов документов) с использованием API MongoDB и обнаружил, что некоторые агрегатыистекают через ~ 10 секунд.Я могу нормально запросить с очень маленькими окнами (то есть с очень конкретными критериями соответствия), но если я сопоставлю 50 000+ документов, время ожидания запроса.Если это уместно, я использую индексы по умолчанию, добавленные Cosmos.
Я пытался передать maxTimeMs
(30 с) и установить другие параметры тайм-аута на моем клиенте Mongo, но безрезультатно.
Для справки я использую драйвер C # Mongo и вот команда:
{
"aggregate" : "MyDocuments",
"pipeline" : [{
"$match" : {
"Created" : {
"$gt" : ...,
"$lt" : ...
}
}
}, {
"$group" : {
"_id" : "$QueryTerms",
"Count" : {
"$sum" : 1
},
"FooCount" : {
"$max" : "$Foo.Count"
},
"Bar" : {
"$first" : "$Bar"
}
}
}, {
"$sort" : {
"Count" : -1
}
}],
"maxTimeMS" : 30000.0,
"cursor" : { }
}