【问题标题】:convert parquet to json for dynamodb import将镶木地板转换为 json 以进行 dynamodb 导入
【发布时间】:2019-12-29 21:12:23
【问题描述】:

我正在使用 AWS Glue 作业以 parquet 格式备份 s3 中的 dynamodb 表,以便能够在 Athena 中使用它。

如果我想使用这些 parquet 格式的 s3 文件来恢复 dynamodb 中的表,这就是我的想法 - 读取每个 parquet 文件并将其转换为 json,然后将 json 格式的数据插入 dynamodb (在下面的行中使用 pyspark)

# set sql context
parquetFile = sqlContext.read.parquet(input_file)
parquetFile.write.json(output_path)

使用 -https://github.com/Alonreznik/dynamodb-json 将普通 json 转换为 dynamo 预期的 json

这种方法听起来正确吗?这种方法还有其他替代方法吗?

【问题讨论】:

  • 您可以使用 emr-dynamodb-connector 从 spark 直接写入 dynamodb。这样就不用转成json了。
  • 谢谢,这有帮助,我可以使用 hive 导入发电机。

标签: pyspark amazon-dynamodb


【解决方案1】:

您可以使用 AWS Glue 直接将 Parquet 格式转换为 JSON,然后创建一个 lambda 函数,在 S3 put 上触发并加载到 DyanmoDB 中

https://medium.com/searce/convert-csv-json-files-to-apache-parquet-using-aws-glue-a760d177b45f

【讨论】:

    【解决方案2】:

    您的方法可行,但您可以直接写入 DynamoDB。运行pyspark时只需要导入几个jars。看看这个: https://github.com/audienceproject/spark-dynamodb

    希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-01-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-21
      • 2014-11-25
      • 2016-04-16
      • 2016-04-15
      相关资源
      最近更新 更多