我正在创建一个不能直接放入内存的非常大的文件。因此,我在S3中创建了一堆小文件,并且正在编写一个脚本,可以读取这些文件并合并它们。我正在使用aws wrangler来完成此操作
我的代码如下:
try:
dfs = wr.s3.read_parquet(path=input_folder, path_suffix=['.parquet'], chunked=True, use_threads=True)
for df in dfs:
path = wr.s3.to_parquet(df=df, dataset=True, path=target_path, mode="append")
logger.info(path)
except Exception as e:
logger.error(e, exc_info=True)
logger.info(e)问题是w4.s3.to_parquet创建了很多文件,而不是写在一个文件中,而且我也不能删除chunked=True,否则我的程序会因为OOM而失败
如何在s3中编写单个文件。
发布于 2021-11-05 12:00:38
AWS Data Wrangler正在写入多个文件,因为您指定了dataset=True。只要您指定的是完整的path,删除此标志或切换到False就可以完成此任务
https://stackoverflow.com/questions/69186376
复制相似问题