【发布时间】:2015-07-28 15:57:16
【问题描述】:
我正在尝试确定将我的时间序列数据存储在 mongodb 中的最佳方式。在 mongo 之外,我将它们作为 numpy 数组或 pandas DataFrames 使用。我看到很多人(例如在这个post)建议腌制它并存储二进制文件,但我的印象是腌制永远不应该用于长期存储。这仅适用于可能对其类结构进行底层代码更改的数据结构吗?换句话说,numpy 数组可能很稳定,可以腌制,但 pandas 的 DataFrames 可能会因为 pandas 仍在发展而变坏?
更新:
一位朋友向我指出了这一点,这似乎是我想要的一个好的开始:
http://docs.scipy.org/doc/numpy/reference/routines.io.html
Numpy 有自己的二进制文件格式,应该是长期存储稳定的。一旦我得到它实际工作,我会回来并发布我的代码。如果其他人已经完成了这项工作,我会很乐意接受您的回答。
【问题讨论】:
-
不看你的数据很难说,但如果只是一个简单的时间序列,为什么不只是一个 CSV 文件呢?
-
我想尽量减少数据进出时的处理。如果我手头有一个 100,000 个浮点数的 numpy 数组,并且我想将它们作为 numpy 数组后缀使用,那么将它们转换为 csv 文件进行存储似乎很昂贵。
-
您得到了答案,但对于其他所有人:如果您认为转换为 CSV 会很慢而且很痛苦,请等到您尝试将其加载到 mongodb 中
标签: python mongodb numpy pandas