我有一个具有以下架构的动态框架
root
|-- data1: string (nullable = false)
|-- data2: string (nullable = false)
|-- data3: array (nullable = false)
| |-- element: string (containsNull = true)
现在当我使用
将其写入 dynamodb 时glue_context.write_dynamic_frame_from_options(
frame=DynamicFrame.fromDF(df, glue_context, "output"),
connection_type="dynamodb",
connection_options={
"dynamodb.output.tableName": "table_name",
"dynamodb.throughput.write.percent": "1.0",
},
)
数据三被写为
[ { "L" : [ { "S" : "" }, { "S" : "" }, { "S" : "" }, { "S" : "" } ] } ]
,但我希望它为["","","",""]
,
我如何实现这一目标?
DynamoDB 始终将数据存储在 DynamoDB-JSON 中,其中包括您称为 AttributesValues 的类型描述符。
这个博客强调了两者的区别。
根据您读取数据的方式/位置,您可以使用 unmarshall 函数将其恢复为本机 JSON 或使用高级 SDK 之一,如上述博客中所述。 Web 控制台还有一个切换开关,因此您可以在控制台中查看时在两种类型的 JSON 之间切换。