如何根据S3中的特定模式修改文件内容

时间:2016-07-01 03:06:50

标签: hadoop apache-spark amazon-s3

我有许多json文件(下面给出的示例)以压缩格式存在于S3文件夹(例如s3:// data /)中,如foo.json.gz,foo1.json.gz,foo2.json.gz。其中一个类别(例如1010)被错误地分配,需要将所有文件更改为1020.我们如何进行此更改并使用修改后的内容重新打包S3中的这些文件?

foo.json
    {
      "flower": "lilly",
      "animal": "cat",
      "category": "1010"
    }
    {
      "flower": "rose",
      "animal": "dog",
      "category": "1000"
    }
    {
      "flower": "daisy",
      "animal": "cat",
      "category": "1010"
    }

1 个答案:

答案 0 :(得分:1)

最简单的&有效的方法是:

  1. 获取与Bucket所在区域相同的EC2实例中的所有文件,以最大限度地降低成本。(使用aws cli
  2. 解压缩* .gz文件(使用gunzip
  3. 务实更新json文件。(使用php
  4. 重新压缩文件。
  5. 将文件复制回S3。(使用aws cli