工具IDEA使用pyspark连接Hbase提示找不到类的错误

其实我是真性情 2019-03-04 10:05:59
代码如下,我使用的工具是IDEA,语言python,使用python访问hbase提示如下错误


py4j.protocol.Py4JJavaError: An error occurred while calling z:org.apache.spark.api.python.PythonRDD.newAPIHadoopRDD.
: java.lang.ClassNotFoundException: org.apache.hadoop.hbase.io.ImmutableBytesWritable



from pyspark import SparkContext, SparkConf

import os

os.environ['JAVA_HOME'] = 'D:\Java\jdk1.8.0_92'
conf = SparkConf().setMaster("local").setAppName("spark_hbase_test")
sc = SparkContext(conf=conf)
host = 'devhadoop3.reachauto.com,devhadoop2.reachauto.com,devhadoop1.reachauto.com'
table = '2:IndexMessage'
conf = {"hbase.zookeeper.quorum": host, "hbase.mapreduce.inputtable": table}
keyConv = "org.apache.spark.examples.pythonconverters.ImmutableBytesWritableToStringConverter"
valueConv = "org.apache.spark.examples.pythonconverters.HBaseResultToStringConverter"
hbase_rdd = sc.newAPIHadoopRDD("org.apache.hadoop.hbase.mapreduce.TableInputFormat",
"org.apache.hadoop.hbase.io.ImmutableBytesWritable",
"org.apache.hadoop.hbase.client.Result", keyConverter=keyConv, valueConverter=valueConv,
conf=conf)
count = hbase_rdd
print(count)

...全文
443 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
xxbb339 2019-04-25
  • 打赏
  • 举报
回复
python与大数据对接,需要配置env变量SPARK_HOME 或者HADOOP_HOME 这里面有相应的jar包。
  • 打赏
  • 举报
回复
引用 5 楼 xxbb339 的回复:
spark官网,下载一个spark-hadoop包,配置环境变量,指向解压目录就可以了。
回头我试试
xxbb339 2019-04-25
  • 打赏
  • 举报
回复
spark官网,下载一个spark-hadoop包,配置环境变量,指向解压目录就可以了。
  • 打赏
  • 举报
回复
引用 3 楼 xxbb339 的回复:
python与大数据对接,需要配置env变量SPARK_HOME 或者HADOOP_HOME 这里面有相应的jar包。
我本地又没有spark和hadoop环境,怎么设啊,我用java没环境本地就能跑起来,python这两个你告诉我怎么设?
4qw 2019-03-04
  • 打赏
  • 举报
回复
https://www.cnblogs.com/junle/p/7611540.html 或许有用
4qw 2019-03-04
  • 打赏
  • 举报
回复
缺少hbase相应的包,你找找python有没有hbase的安装包,安装下,然后试下通过python直接连接hbase 是否可行;
可行的话再使用pyspark应该就没问题了

1,270

社区成员

发帖
与我相关
我的任务
社区描述
Spark由Scala写成,是UC Berkeley AMP lab所开源的类Hadoop MapReduce的通用的并行计算框架,Spark基于MapReduce算法实现的分布式计算。
社区管理员
  • Spark
  • shiter
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧