合并 b/w 两个给出 MemoryError 的数据帧
Merge b/w two dask data frame giving MemoryError
正在读取 parquet 文件
df_ss_parq = dd.read_parquet("trainSearchStream.parquet/")
df_ai_parq = dd.read_parquet("AdsInfo.parquet/")
合并两个数据集
df_train =(df_ss_parq.merge(df_ai,on="ad_id",how="left")
).compute()
内存:16GB
我试过在列 "ad_id" 上使用索引,这使速度更快但显示相同的错误。
trainSearchStream 大小 = 17 GB
AdsInfo 大小 = 17 GB
有人知道如何解决吗?
我建议使用 SQL 引擎,例如 Impala 或 Drill 来进行连接,将结果写入新的 Parquet 文件。 Python 数据堆栈目前不太适合在内存受限的环境中处理大型表之间的连接。
正在读取 parquet 文件
df_ss_parq = dd.read_parquet("trainSearchStream.parquet/")
df_ai_parq = dd.read_parquet("AdsInfo.parquet/")
合并两个数据集
df_train =(df_ss_parq.merge(df_ai,on="ad_id",how="left")
).compute()
内存:16GB
我试过在列 "ad_id" 上使用索引,这使速度更快但显示相同的错误。
trainSearchStream 大小 = 17 GB
AdsInfo 大小 = 17 GB
有人知道如何解决吗?
我建议使用 SQL 引擎,例如 Impala 或 Drill 来进行连接,将结果写入新的 Parquet 文件。 Python 数据堆栈目前不太适合在内存受限的环境中处理大型表之间的连接。