对新列进行100GB数据帧排序/ set_index的内存不足问题

时间:2019-12-02 14:21:04

标签: sorting indexing dask dask-distributed

我有一个大约100GB的dask数据帧和4个列,这些列不适合内存。我的计算机是带有64GB Ram的8 CORE Xeon,具有本地Dask群集。

我将数据帧转换为150个分区(每个分区700MB)。但是

我简单的set_index()操作失败,错误为“达到95%的内存”

    g=dd.read_parquet(geodata,columns=['lng','indexCol'])
    g.set_index('lng').to_parquet('output/geodata_vec_lng.parq',write_index=True  )

我尝试过:

  • 1个工作者4个线程。 55 GB分配的RAM
  • 1个工作者2个线程。 55 GB分配的RAM
  • 1个工作者1个线程。 55 GB分配的RAM

如果我使分区变小,我的混洗就会成倍增加。 100GB不大。我在做什么错了?

0 个答案:

没有答案