Spark和hive整合的时候出现问题

由于之前有事情回家, 然后这几天才开始继续的学习,今天学习Sparksql 的时候遇到了整合不了的情况,然后在网上找资料并且整理好了这些相关的知识,希望可以帮助大家!


Spark操纵hive表

 

      1.描述

              如果没有hive依赖,spark会自动加载hive的依赖库,注意hive所有依赖需要出现在worker中。

              配置hive只需要复制core-site.xml + hdfs-site.xml +hive-site.xml三个文档到/soft/spark/conf下即可。

              如果没有配置hive-site.xml,spark启动时会在当前目录下创建metastore_db和spark-warehouse两个目录。


  准备工作:

拷贝$HIVE_HOME/conf/hive-site.xmlhive-log4j.properties$SPARK_HOME/conf/
2.
在$SPARK_HOME/conf/目录中,修改spark-env.sh,添加
export HIVE_HOME=/soft/hive
export SPARK_CLASSPATH=$HIVE_HOME/lib/
mysql-connector-java-5.0.8-bin.jar
3. 另外也可以设置一下Spark的log4j配置文件,使得屏幕中不打印额外的INFO信息:
log4j.rootCategory=WARN, console

这里的准备工作切记你之前的驱动可以用,至于这个驱动你们要自己找自己合适的!这是很重要的一点


      $>cd /soft/spark/conf

              $>cp/soft/hive/conf/hive-site.xml .

              $>cp/soft/hadoop/etc/hadoop/core-site.xml .

              $>cp/soft/hadoop/etc/hadoop/hdfs-site.xml .


2.分发文档

              $>cd/soft/spark/conf

              $>xsync core-site.xml

              $>xsync hdfs-site.xml

              $>xsync hive-site.xml

3.操作过程

             

              a.启动zk cluster

                     [202+ 203]

                     $>zkServer.shstart

 

              b.启动hadoop(只需要hdfs)

                     [s201]

                     $>start-dfs.sh

                    

                     //

                     $>start-yarn.sh

 

              c.验证hive

                     $>hive

                     $hive>showdatabases ;

                     $hive>showtables ;

                     $hive>descformatted weblogs ;

 

              d.启动spark-shell

                     //本地模式

                     $>spark-shell--master local

 

                     //创建支持hive的Spark Session

                     $scala>importorg.apache.spark.sql.Row

                     $scala>importorg.apache.spark.sql.SparkSession

                     $scala>valspark2 = SparkSession.builder().appName("Spark HiveExample").enableHiveSupport().getOrCreate()

                     $scala>spark2.sql("showdatabases").show;

                     $scala>spark2.sql("showtables").show;

                     $scala>spark2.sql("select* from weblogs").show;


就这样之前出现的错误全部解决了!



  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值