我有一个数据框df。它有几列,大部分为空。我正在使用以下代码将其写入s3存储桶。然后,我对s3存储桶进行爬网以在datacatalog中获取表模式。我在搜寻数据时发现大部分为空的字段都被删除了。我检查了输出的json,发现某些记录包含该字段,而另一些则没有。有人知道这个问题可能是什么吗?我想包括这些字段,即使它们大多为空。
代码:
# importing libraries
import sys
from awsglue.transforms import *
from awsglue.utils import getResolvedOptions
from pyspark.context import SparkContext
from awsglue.context import GlueContext
from awsglue.job import Job
glueContext = GlueContext(SparkContext.getOrCreate())
from pyspark.sql.functions import col
from pyspark.sql.functions import first
from pyspark.sql.functions import date_format
from pyspark.sql.functions import lit,StringType
from pyspark.sql.types import *
from pyspark.sql.functions import to_date,format_number,dayofmonth,hour,dayofyear,month,year,weekofyear,date_format,unix_timestamp
from pyspark.sql.functions import *
# write to table
df.write.json('s3://path/table')
答案 0 :(得分:0)
为什么不使用AWS Glue写入方法代替spark DF?
glueContext.write_dynamic_frame.from_options