这个问题通常是由于将一些记录视为字符串而不是实际的Python对象所致,使输出结果的格式错误。您可以使用以下代码示例将输出结果设置为正确的格式:
from awsglue.dynamicframe import DynamicFrame from pyspark.sql.functions import to_json from pyspark.sql.types import StringType
df = dynamic_frame.toDF()
df = df.withColumn("jsonS", to_json(df.data, 'Map(String,String)'))
df.write.mode("overwrite").json("s3://myoutputbucket/data/")
这将正确地将输出结果写入S3并避免了自动添加双引号的问题。