【问题标题】:What is the best efficient format to store a large SparseMatrix in PySpark在 PySpark 中存储大型 SparseMatrix 的最佳有效格式是什么
【发布时间】:2018-06-06 04:01:00
【问题描述】:

我有一个 pyspark.mllib.linalg.SparseMatrix 有 100k 行和 20M 列。在 PySpark 中将其保存为稀疏矩阵的最佳格式是什么?

我发现另一篇帖子的主题与一年前略有不同,但答案并不能解决我的问题。 Link to a similar question.

【问题讨论】:

    标签: python apache-spark pyspark sparse-matrix


    【解决方案1】:

    稀疏矩阵是数据的表示,它允许您在计算期间使用更少的 RAM 内存空间。

    如果你想持久化你需要考虑的数据:

    • sequenceFile 格式,其中将坐标作为键,将非零值作为值。

    • parquet 格式,您可以在其中保存密集矩阵,但 parquet 优化列中的重复值,因此它可以很好地压缩矩阵上的零。您还可以在列中提取像 (row, column, value) 这样的表示形式,并将所有非零值放在那里,然后以 parquet 格式保存。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-01-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-07
      • 2013-06-14
      • 2013-05-29
      • 1970-01-01
      相关资源
      最近更新 更多