我有一个大型股票报价数据集(200GB 未压缩,9GB 在 bz2 -9 中压缩)。
我想对它们进行一些基本的时间序列分析。
我的机器有 16GB 的 RAM。
我宁愿:
将所有数据压缩后保存在内存中
即时解压缩该数据,并将其流式传输[所以没有任何东西会命中磁盘]
在内存中进行所有分析
现在,我认为这与 Clojure 的惰性和未来对象之间存在很好的交互(即,当我尝试访问它们时,我可以定义对象 st,我会即时解压缩它们。)
问题:在 Clojure 中进行高性能时间序列分析时,我应该记住哪些事项?
我对涉及的技巧特别感兴趣:
有效地将分时数据存储在内存中
高效地进行计算
奇怪的卷积来减少数据的传递次数
欢迎书籍/文章/研究论文建议。(我是一名 CS 博士生)。
谢谢。