Orion 的实体插入越来越慢

Entity insertions at Orion increasingly slower

当我在 Context Orion Broker(在 MongoDB)中有很多信息并且当我尝试插入更多信息时,您的插入速度越来越慢。 例如:此时基本上我在 Orion 中有 3GB 的信息,当我尝试向 Orion 发送更多信息时,我等待或多或少 15 分钟才能发送 50MB,但是,如果我在 Orion 为空时发送相同的信息此过程在 1 分钟内完成。

admin   0.000GB    
config  0.000GB    
local   0.000GB
orion   2.932GB

正常是这个过程吗?我的意思是,你的插入越来越慢。

额外信息:VPS Linux 2 核和 8GB 内存。

索引信息:

> use orion
switched to db orion
> show collections
entities
> db.entities.getIndexes()
[
        {
                "v" : 2,
                "key" : {
                        "_id" : 1
                },
                "name" : "_id_",
                "ns" : "orion.entities"
        },
        {
                "v" : 2,
                "key" : {
                        "location.coords" : "2dsphere"
                },
                "name" : "location.coords_2dsphere",
                "ns" : "orion.entities",
                "2dsphereIndexVersion" : 3
        },
        {
                "v" : 2,
                "key" : {
                        "expDate" : 1
                },
                "name" : "expDate_1",
                "ns" : "orion.entities",
                "expireAfterSeconds" : 0
        }
]

要加速 Orion DB 操作,您应该创建索引以优化 performance tunning Orion documentation 中推荐的性能。特别是:

  • {_id.servicePath: 1, _id.id: 1, _id.type: 1}(请注意,这是一个复合索引,在这种情况下键顺序很重要)
  • creDate

现在很快...我用这个(正如你所说):db.entities.createIndex({"_id.id": 1, "_id.type": 1, "_id.servicePath": 1}) 谢谢!