4

我们发现了一个对我们很重要的问题,我们需要在继续使用 Orion Contex Broker 之前解决。在我们的分布式网络中,我们不能假设链接始终处于打开状态,有时我们会在过去探测到历史值,一旦通信恢复,我们希望将其推送到 contex 代理。这些探针应该在附加测量时间的情况下传送到 Orion,然后通过 Cygnus 发送到 Hadoop。

在查看 Orion API 之后,似乎发布的值被认为是当前的,并且无法判断它们是半小时前探测到的值(例如)。

我们的疑惑:

1)是否可以通过某种方式告诉 Context Broker 推送信息的时间?

2)如果不是,也许这种情况应该通过其他方式解决?除了探针之外,是否已经有一些组件或 IoT Ge 放置了队列探针,直到链接恢复,然后以正确的时间戳将它们推送到中央上下文代理?

谢谢

4

1 回答 1

1

我认为您可以将元数据附加到有关应该创建数据的时间戳的属性。Cygnus 也将这种元数据存储到 HDFS 中,如下例所示:

{
    "recvTimeTs":"13453464536",
    "recvTime":"2014-02-27T14:46:21Z",
    "entityId":"Room1",
    "entityType":"Room",
    "attrName":"temperature",
    "attrType":"centigrade",
    "attrValue":"26.5",
    "attrMd":[
        {
            name:CreationTime,
            type:timestamp,
            value:2014-02-26T12:34:09.672Z
        }
    ]
}

在这种情况下,您有接收时间(recvTime)和创建时间(元数据)。

于 2015-04-29T19:58:32.717 回答