当前位置:   article > 正文

Spark集成Hive和Hbase实现离线数据分析_spark hive-hbase.jar

spark hive-hbase.jar

目录

前言

一、Spark+Hive

1. 配置

2.测试

二、Spark+Hbase

1. 配置

2. 测试


前言

Spark SQL是Spark处理结构化数据的模块。本节中将Spark SQL和Hive以及Hbase集成,实现离线数据的分析。Hive和Hbase的集成请参阅:Hive+Mysql+Hbase集成配置实现离线数据分析

说明:三台机器的主机名分别为:bigdata.centos01、bigdata.centos02、bigdata.centos03

服务分布:

 bigdata.centos01bigdata.centos02bigdata.centos03

Spark

(v2.2.0)

 

Spark

(Master&Worker)

 

Hive

(v0.13.1)

  Hive

Hbase

(0.98.6)

 master

regionServer

master(后备)

regionServer

regionServer

一、Spark+Hive

1. 配置

  • 复制Hive的配置文件 hive-site.xml 到spark的 conf 目录
  1. # bigdata.centos03
  2. scp conf/hive-site.xml bigdata.centos02:/opt/modules/spark-2.2.0-bin/conf
  • 修改复制的hive-site.xml
  1. <!-- 配置hive metastore服务地址 -->
  2. <property>
  3. <name>hive.metastore.uris</name>
  4. <value>thrift://bigdata.centos03:9083</value>
  5. </property>
  • 复制mysql驱动包到spark的 jars 目录
scp lib/mysql-connector-java-5.1.35.jar bigdata.centos02:/opt/modules/spark-2.2.0-bin/jars

2.测试

  • 启动hive的 metastore 服务
bin/hive --service metastore
  • 进入spark-shell命令行
bin/spark-shell
  • 读取hive内部表(u_data)数据
scala> spark.sql("select * from test.u_data").show()
  • 测试结果如下:

二、Spark+Hbase

Spark SQL和Hbase的集成,其核心就是Spark SQL通过Hive外部表来获取Hbase表的数据。

1. 配置

  • 复制以下hive和hbase中的jar包到spark目录
  1. # hbase
  2. hbase-client-0.98.6-cdh5.3.9.jar
  3. hbase-common-0.98.6-cdh5.3.9.jar
  4. hbase-protocol-0.98.6-cdh5.3.9.jar
  5. hbase-server-0.98.6-cdh5.3.9.jar
  6. htrace-core-2.04.jar
  7. # hive
  8. # 由于spark编译未指定hive的版本号,默认版本是1.2.1,而我用的hive版本是0.13.1
  9. # 故而需要额外下载hive-hbase-handler-1.2.1.jar放入spark jars目录
  10. # 总而言之:jar包版本号要和spark编译的hive版本号一致
  11. hive-hbase-handler-1.2.1.jar

2. 测试

  • 进入spark-shell命令行
bin/spark-shell
  • 读取hive外部表的数据
scala> spark.sql("select * from test.weblogs limit 2").show()
  • 测试结果

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/690291
推荐阅读
相关标签
  

闽ICP备14008679号