在EMR 5.14群集上运行通过oozie工作流执行的火花操作时,我面临以下错误:
pyspark.sql.utils.IllegalArgumentException:u“实例化'org.apache.spark.sql.hive.HiveExternalCatalog时出错”]我的Pyspark脚本作为普通的Spark作业执行时运行良好,但未通过Oozie执行Pyspark程序:-
spark = SparkSession.builder.appName("PysparkTest").config("hive.support.quoted.identifiers", "none").enableHiveSupport().getOrCreate()
sc = SparkContext.getOrCreate();
sqlContext = HiveContext(sc)
sqlContext.sql("show databases").show()
我创建了一个工作流.xml和job.properties,它引用了LINK。
我将所有与spark和hive相关的配置文件复制到同一目录($ SPARK_CONF_DIR /)下。Hive还配置为将MySQL用于元存储。
如果您能帮助我找出在Oozie spark操作中以jar文件形式运行此Pyspark程序时遇到的问题,那将非常好。
Error while instantiating 'org.apache.spark.sql.hive.HiveExternalCatalog'
这意味着其尝试查找的Catalog
jar不是ooziesharelib spark目录。请在job.properties
文件中添加以下属性。