Fiware orion Orion的实体插入速度越来越慢

Fiware orion Orion的实体插入速度越来越慢,fiware-orion,Fiware Orion,当我在上下文Orion Broker(在MongoDB中)中有很多信息时,并且当我尝试越来越多地插入更多信息时,您的插入速度会变慢。 例如:目前基本上我在Orion中有3GB的信息,当我尝试向Orion发送更多信息时,我会等待大约15分钟发送50MB的信息,但是,如果我在Orion为空时发送相同的信息,这个过程将在1分钟内完成 admin 0.000GB config 0.000GB local 0.000GB orion 2.932GB 这通常是一个过程吗?我的

当我在上下文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操作,您应该创建索引以优化中建议的性能。特别是:

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

要加快Orion DB操作,您应该创建索引以优化中建议的性能。特别是:

  • {{u id.servicePath:1,{u id.id:1,{u id.type:1}
    (注意,这是一个复合索引,在这种情况下键顺序很重要)
  • creDate
    • 现在很快。。。我使用它(如您所说):db.entities.createIndex({“\u id.id”:1,“\u id.type”: 1,“_id.servicePath”:1}) 谢谢大家!

      现在很快。。。我使用它(如您所说):db.entities.createIndex({“\u id.id”:1,“\u id.type”: 1,“_id.servicePath”:1})
      谢谢大家!

      我需要知道你在DB的索引设置。我的意思是,数据库中对应于Orion的mongo控制台中的
      db.entities.getIndexes()
      命令的结果(我的意思是,在使用
      mongo
      运行mongo shell之后运行该命令,然后
      使用Orion
      使用Orion-
      如果您的实体在特定服务中)。你能编辑你的问题帖子来包含这些信息吗?谢谢!嗨,谢谢你的回复。。。我的问题更新了。谢谢。我需要知道你在DB的索引设置。我的意思是,数据库中对应于Orion的mongo控制台中的
      db.entities.getIndexes()
      命令的结果(我的意思是,在使用
      mongo
      运行mongo shell之后运行该命令,然后
      使用Orion
      使用Orion-
      如果您的实体在特定服务中)。你能编辑你的问题帖子来包含这些信息吗?谢谢!嗨,谢谢你的回复。。。我的问题更新了。谢谢。谢谢你的回复。。。我创建了这样的实体:{“id”:“Room1”,“type”:“Room1”,“type”:“roome”,“temperature”:{“value”:23,“type”:“Float”},“pressure”:{“value”:720,“type”:“Integer”}}具有唯一的id。我的问题/疑问是,实际条件是,如何创建此示例的索引?在此发布请求:localhost:1026/v2/entities非常感谢您的帮助!不确定是否理解您的疑问。。。你是说如何在MongoDB中创建索引吗?哦,好的!我现在明白了,我需要在MongoDB中创建索引。。。我认为我们需要发送一个带有新实体的新参数。我将在Mongo中创建aíndex to ID.。准确地说,这不是在MongoDB中创建“索引”(任何索引)的问题,而是我在回答中建议的两个索引;)现在很快。。。我使用它(如您所说):db.entities.createIndex({“\u id.id”:1,“\u id.type”:-1,“\u id.servicePath”:1})。谢谢@fgalan谢谢你的回复。。。我创建了这样的实体:{“id”:“Room1”,“type”:“Room1”,“type”:“roome”,“temperature”:{“value”:23,“type”:“Float”},“pressure”:{“value”:720,“type”:“Integer”}}具有唯一的id。我的问题/疑问是,实际条件是,如何创建此示例的索引?在此发布请求:localhost:1026/v2/entities非常感谢您的帮助!不确定是否理解您的疑问。。。你是说如何在MongoDB中创建索引吗?哦,好的!我现在明白了,我需要在MongoDB中创建索引。。。我认为我们需要发送一个带有新实体的新参数。我将在Mongo中创建aíndex to ID.。准确地说,这不是在MongoDB中创建“索引”(任何索引)的问题,而是我在回答中建议的两个索引;)现在很快。。。我使用它(如您所说):db.entities.createIndex({“\u id.id”:1,“\u id.type”:-1,“\u id.servicePath”:1})。谢谢@fgalan