使用 Spark 规划 JSON 的 DynamoDB 数据格式
Posted
技术标签:
【中文标题】使用 Spark 规划 JSON 的 DynamoDB 数据格式【英文标题】:DynamoDB data format to plan JSON using spark 【发布时间】:2020-09-16 22:22:36 【问题描述】:我有一个 S3 存储桶,其中包含使用 DataPipline 从 DynamoDB 复制的数据。因此 s3 中的数据格式如下(在 s3 中为单行)。
"file":
"S": "file1.mp4"
,
"id":
"S": "1"
,
"canvas":
"S": "This is Canvas1"
我想将其转换为另一个应用程序所需的不同格式(我无法控制)。
预期的输出格式:
"file": "file1.mp4",
"id": "1",
"canvas": "This is Canvas1"
有没有办法在火花中做到这一点?我不能使用 Lambda,因为文件数量会很大。
注意:S3 中的 JSON 将是单行的。我在这里对其进行了格式化以便更好地查看和理解。
【问题讨论】:
【参考方案1】:您可以使用AWS Glue,而使用的AWS Glue将使用spark重新格式化。
您可以查看 Json flattening
示例,使用胶水 Relationalize Transform here。
简而言之,使用 Glue ,您将需要这样做
在 AWS Glue 中创建爬虫后,让它在目录(数据库)中创建架构。
创建一个用于转换 json 的 Glue 作业,这里再次选择 json 作为输出文件。这将使用转换步骤使用 Rationalize 类来展平数据
【讨论】:
以上是关于使用 Spark 规划 JSON 的 DynamoDB 数据格式的主要内容,如果未能解决你的问题,请参考以下文章