Hen*_*son 7 python arrays on-disk key-value sparse-matrix
我想知道是否有一个带有 Python 绑定的快速磁盘键值存储,它支持对单独键的数百万次读/写调用。我的问题涉及计算一个非常大的语料库(维基百科)中的单词共现,并不断更新共现计数。这涉及使用 64 位密钥和 64 位值读取和写入约 3 亿个值 70 次。
我还可以将我的数据表示为尺寸约为 2M x 2M 的上三角稀疏矩阵。
到目前为止我已经尝试过:
目前唯一运行良好的解决方案是 LMDB,但运行时间约为 12 天,这似乎不合理,因为我感觉自己没有处理那么多数据。使用 .npz 将子矩阵(大约 300M 值)保存到磁盘几乎是即时的。
有任何想法吗?
Maj*_*ani -1
PySpark 在这里更有用。
PairFunction<String, String, String> keyData =
new PairFunction<String, String, String>() {
public Tuple2<String, String> call(String x) {
return new Tuple2(x.split(" ")[0], x);
}
};
Run Code Online (Sandbox Code Playgroud)
JavaPairRDD<String, String>pairs =lines.mapToPair(keyData); https://www.oreilly.com/library/view/learning-spark/9781449359034/ch04.html