我正在尝试使用 kdb+ 来捕获并聚合从物联网传感器整理的许多感官流。
每个传感器都有一个唯一标识符、一个时间分量 (.zz) 和一个标量值:
percepts:([]time:`datetime$(); id:`symbol$(); scalar:`float$())
然而,由于数据本质上是时间的,在不同的列中维护单独的感知/感觉流似乎是合乎逻辑的,即:
time id_1 id_2 ...
15 0.15 ...
16 ... 1.5
然而,附加到表指示性仅支持插入方式的行操作,即感知插入(.zz;`id_1;0.15)
看起来好像我想在此设置中支持大量非静态传感器,附加上述格式的行似乎是一种反模式,然后再进行转换以将行转换为基于列的列他们的身份证。是否有可能/有必要根据新的特征流创建一个具有动态(增长)列数的表?
如何最有效地实现允许插入列式时间序列数据的逻辑,从而避免对基于行的数据进行转换?