我有大量文件要处理。我需要在每个文件的一列上执行set_index。
我读过set_index确实很昂贵,我们应该减少分区数。我已经尝试过了,但是暂时没有帮助。
要对庞大的数据集执行这种操作需要什么?根据与工作程序和线程相关联的内存,分区的理想大小是多少?
[我已经注意到,例如,如果我设置了8个worker,并且每个工人有30GB,70GB或100GB,我认为我的配置有问题(目前在单个节点上,但希望很快会在群集模式下运行):
Event loop was unresponsive in Worker for 12.02s. This is often caused by long-running GIL-holding functions or moving large chunks of data. This can cause timeouts and instability
是不是一个问题?我建议通读Dask's best practices。
您的问题非常广泛,很遗憾,答案也是如此。通常,您问题的答案将在很大程度上取决于您如何使用Dask。