如何将多个巨大的 csv(具有不同列)加载到 AWS S3
How to load multiple huge csv (with different columns) into AWS S3
我有大约 50 个不同结构的 csv 文件。每个 csv 文件都有近 1000 列。我正在使用 DictReader 在本地合并 csv 文件,但合并需要花费太多时间。方法是合并 1.csv 和 2.csv 以创建 12.csv。然后将 12.csv 与 3.csv 合并。这不是正确的方法。
for filename in inputs:
with open(filename, "r", newline="") as f_in:
reader = csv.DictReader(f_in) # Uses the field names in this file
由于我最终必须将这个巨大的单个 csv 上传到 AWS,所以我在考虑一个更好的基于 AWS 的解决方案。关于如何导入这些多个不同结构的 csv 并将其合并到 AWS 中有什么建议吗?
启动 EMR 集群并将文件与 Apache Spark 合并。这使您可以完全控制模式。 例如可能有帮助。
或者,您也可以试试运气,看看在创建 crawler
.
时 AWS Glue
如何处理多个模式
在这两种情况下,您都应该将数据复制到 s3。
我有大约 50 个不同结构的 csv 文件。每个 csv 文件都有近 1000 列。我正在使用 DictReader 在本地合并 csv 文件,但合并需要花费太多时间。方法是合并 1.csv 和 2.csv 以创建 12.csv。然后将 12.csv 与 3.csv 合并。这不是正确的方法。
for filename in inputs:
with open(filename, "r", newline="") as f_in:
reader = csv.DictReader(f_in) # Uses the field names in this file
由于我最终必须将这个巨大的单个 csv 上传到 AWS,所以我在考虑一个更好的基于 AWS 的解决方案。关于如何导入这些多个不同结构的 csv 并将其合并到 AWS 中有什么建议吗?
启动 EMR 集群并将文件与 Apache Spark 合并。这使您可以完全控制模式。
或者,您也可以试试运气,看看在创建 crawler
.
AWS Glue
如何处理多个模式
在这两种情况下,您都应该将数据复制到 s3。