1

我有一堆历史数据(csv),我想通过 sth-comet 访问它们。数据是多次反转的水位历史。这些数据不是实时提供的,而是每天或多或少地提供,并且包含多天的所有历史记录。

到目前为止我所做的是:

  1. dateObserved: DateTime使用和waterlevel : number字段将数据转换为 NGSIv2 格式的数据模型
  2. 将数据更新/附加到 Fiware orion
  3. 为实体类型创建 sth-comet 订阅
  4. 访问 sth-comet 中的历史数据(错误时间)

有了这个,我现在遇到的问题是“rcvTime”当然是sth-comet接收数据的时间。有没有办法可以“覆盖”该属性,或者有更好的解决方案吗?我还在插入数据时查看了 cygnus,但我认为根本问题是相同的。我在可用的文档中找不到任何提示。

4

1 回答 1

1

在使用 Cygnus NGSIMongoSink 和 NGSISthSink 的情况下,您可以使用TimeInstant属性中的元数据来使用元数据值中给出的时间覆盖接收到的时间。

查看NGSIMongoSink 文档

默认情况下,NGSIMongoSink存储通知接收时间戳。然而,如果(且仅当)在row模式下工作并且通知了命名的元数据TimeInstant,则使用此类元数据值而不是接收时间戳。当想要保持测量生成时间(因此作为TimeInstant元数据通知)而不是接收时间时,这很有用。

或NGSISTHSink 文档中的类似片段:

默认情况下,NGSISTHSink存储通知接收时间戳。然而,如果TimeInstant通知了命名的元数据,则使用此类元数据值而不是接收时间戳。当想要保持测量生成时间(因此作为TimeInstant元数据通知)而不是接收时间时,这很有用。

于 2019-08-28T15:54:03.113 回答