AWS Glue 作业默认使用 DynamicFrame 将数据加载到 DataFrame 中,但在此过程中 XML 数据中的前导零会丢失。为了保留前导零,需要使用 XML 数据解析器将 XML 数据转换为 StructType,然后才能将数据加载到 DataFrame 中。
以下是示例代码:
import org.apache.spark.sql.types._
val xmlSchema = new StructType() .add("field1", StringType, true) .add("field2", StringType, true) .add("field3", StringType, true)
import com.databricks.spark.xml._
val df = spark.read .option("rootTag", "root") .option("rowTag", "row") .schema(xmlSchema) .xml("s3://path/to/xml/file.xml")
import com.amazonaws.services.glue.DynamicFrame
val dynamicFrame = DynamicFrame(df, glueContext)
现在,您可以在 AWS Glue 作业中使用 dynamicFrame 进行后续处理,并且前导零不会丢失。