【发布时间】:2022-11-06 04:16:45
【问题描述】:
我正在研究一个 Glue ETL 作业,它基本上读取 Pyspark 中的数据框,并且应该以 XML 格式输出数据。 我已经搜索了很多解决方案,代码在如下所示的特定写入语句中失败:
df.write.format('com.databricks.spark.xml').options(rowTag='book', rootTag='books').save('newbooks.xml')
我目前使用的 Glue 版本是 Glue 3.0 - Spark 3.1、Scala 2 和 Python 3。 由于我正在尝试使用火花-XML我尝试过的库包括以下内容罐子作为家属在里面胶水脚本:
spark-xml_2.10-0.3.5,
spark-xml_2.11-0.7.0,
spark-xml_2.12-0.14.0,
spark-xml_2.13-0.14.0
我在不同版本中看到的不同错误如下:
An error occurred while calling o92.save. java.lang.NoClassDefFoundError: scala/runtime/java8/JFunction0$mcD$sp
An error occurred while calling o95.save. java.lang.RuntimeException: java.lang.ClassNotFoundException: Class org.apache.hadoop.mapred.DirectOutputCommitter not found
调用o95.save. scala/$less$colon$less 时出错
我发现其他人之前发布了一个类似的问题,并尝试了这些方法,但它们似乎不再起作用了。最近有人遇到过类似的问题吗?如果是的话,你能解释一下这个决议吗?
【问题讨论】:
标签: python apache-spark pyspark aws-glue apache-spark-xml