如何将多个巨大的csv(具有不同的列)加载到AWS S3

时间:2018-05-17 05:56:09

标签: amazon-s3 amazon-dynamodb amazon-data-pipeline

我有大约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中的任何建议?

1 个答案:

答案 0 :(得分:1)

启动EMR集群并将文件与Apache Spark合并。这使您可以完全控制架构。 This answer可能会有所帮助。

或者,您也可以试试运气,并在创建AWS Glue时查看crawler如何处理多个架构。

在这两种情况下,您都应该将数据复制到s3。