宽表/在 Apache Arrow 中存储时间序列数据

时间:2021-07-26 07:25:26

标签: pyarrow apache-arrow

问题描述:我在内存中有很多时间序列数据,其中时间序列可以是不同的数据类型(虽然99%是相同的类型——int64)和时间跨度系列也可以不同(即一个可能跨越一天,另一个可能跨越 2 天)。我必须将这些数据存储在 Apache Arrow 表中。

用例示例:我有 300,000 个不同的时间序列,每个序列有大约 300-1000 个数据点。

示例解决方案:我最初将每个时间序列放在单独的列中,其中行代表时间,列代表不同的时间序列。在上面的示例中,Arrow 表将有 300,000 列和 300-1000 行。我会在时间跨度不同的地方附加 NaN 值。桌子是一个长方形。

解决方案的问题:这意味着我们的 Arrow 表非常宽,据我所知,这不是 Arrow 的理想用例。我们还会遇到超过 500,000 列的问题(根据我在 GitHub 上发现的一个问题,这在 1.0.1 版本上似乎是一个限制,但在 4.0.0 中显然增加了)。

问题是: 有没有人处理过类似的用例(在 Arrow 中表示许多短时间序列/宽表)?您的解决方案是什么?

0 个答案:

没有答案
相关问题