我正在使用这个读取数据:
ddf1 = dd.read_sql_table('mytable', conn_string, index_col='id', npartitions=8)
当然,由于惰性计算,这会立即运行。这个表有几亿行。
接下来,我要过滤这个 Dask 数据框:
ddf2 = ddf1.query('some_col == "converted"')
最后,我想将其转换为 Pandas 数据框。结果应该只有大约 8000 行:
ddf3 = ddf2.compute()
但是,这需要很长时间(约 1 小时)。我可以就如何大幅加快速度获得任何建议吗?我试过使用.compute(scheduler='threads')
,改变分区的数量,但到目前为止没有一个工作。我究竟做错了什么?