首页 > 解决方案 > 尝试使用 pyspark SQL 上下文连接两个文件时出现 RuntimeException

问题描述

你能帮我理解为什么我在尝试使用 pyspark SQL 上下文连接这两个文件时得到一个 RuntimeException 吗?我通过注释掉其中一行然后运行代码尝试了下面的两种 SQL 查询方法,但错误不断出现。

非常感谢

这是我的代码:

#input data
vin = sqlContext.read.format('com.databricks.spark.csv').options(header='true', 
inferschema='true').load("hdfs://andromeda.eecs.qmul.ac.uk/data/bitcoin/vin.csv")
vout = sqlContext.read.format('com.databricks.spark.csv').options(header='true', 
inferschema='true').load("hdfs://andromeda.eecs.qmul.ac.uk/data/bitcoin/vout.csv")


#filter
voutf = vout.filter(vout['pubkey']== "{?1HB5XMLmzFVj8ALj6mfBsbifRoD4miY36v}")


#use spark sql to join
vin.createOrReplaceTempView("vinsql")
voutf.createOrReplaceTempView("voutsql")

#method1
join1 = sqlContext.sql("select * from vinsql i, voutsql o where i.txid == o.pubkey")
#method2
join1 = sqlContext.sql("SELECT vinsql.*, voutsql.* FROM vinsql JOIN voutsql ON vinsql.txid = 
voutsql.pubkey")

这是错误消息:

pyspark.sql.utils.AnalysisException: u'org.apache.hadoop.hive.ql.metadata.HiveException: 
java.lang.RuntimeException: Unable to instantiate 
org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient;'

标签: sqlapache-sparkpysparkapache-spark-sqlruntimeexception

解决方案


推荐阅读