我使用Robo 3T
来测试Azure Cosmos MongoDb
,而另一个MongoDb在VM中具有完全相同的数据。
我在本地计算机(Windows)中运行非常简单的查询:
db.getCollection('PSTN_inspector_wav_data').find({})
我可以控制我想要的文件数量。结果显示在这里。
对于Azure Cosmos Mongodb:
对于Vm中的mongoDb:
如果我想获取25000个文档,它只需要1.448s The capture image
对于Azure Cosmos Mongodb
来说,查询时间与文档大小呈线性关系。
我已经检查了网络,它没有任何问题。
所以有人可以猜出为什么它很慢?
按此顺序:1。Azure DC的延迟2. Auth /加密/备份/复制层增加开销。如果你在本地MongoDB中关闭所有这些,它也会慢得多。 3.未分区(例如未缩放)集合4.低吞吐量设置(此处不太可能出现问题,因为您会收到错误,但是随着用户数量的增长您可以控制的事情之一(并且您不能使用独立的MongoDB)。
总而言之 - 不要将社区版未硬化的软件过程与生产就绪的货币支持的分布式服务进行比较。他们不等同。