我试图通过Robo3T创建一个视图。该命令执行成功,但无论我如何为视图指定聚合管道,视图始终为空。例:
db.createView("testView","originCollection", [{
$project : {
_id: 1
}
}])
CosmosDB甚至支持MongoDB的视图吗?
编辑:正如凯文史密斯在评论中问db.testView.stats()
返回:
{
"_t" : "CollStatsResponse",
"ok" : 1,
"ns" : "myDb.testView",
"count" : 0.0,
"size" : 0,
"avgObjSize" : 0,
"numExtents" : 0,
"lastExtentSize" : 0,
"paddingFactor" : 0,
"systemFlags" : 0,
"userFlags" : 0,
"totalIndexSize" : 0,
"indexSizes" : {
"indexSizes" : {}
}
}
根据您提供的详细信息,看起来它将视图视为另一个集合,并且在创建视图时没有发生任何事情(我已经看到这个与其他命令一起继续而没有任何错误)。
当您在视图上调用统计信息时,通常会得到以下结果
db.testView.stats()
{
"ok" : 0,
"errmsg" : "Namespace test.testView is a view, not a collection",
"code" : 166,
"codeName" : "CommandNotSupportedOnView"
}
另外,查看文档(https://docs.microsoft.com/en-us/azure/cosmos-db/mongodb-feature-support#administration-commands),管理命令不支持createView
。