Spark与Hive整合

本文详细描述了如何在Spark环境中连接Hive的MetaStore,包括复制Hive-site.xml和MySQL连接驱动,配置HiveMetastore服务,以及通过SparkSQL和PySpark测试集成的步骤。
摘要由CSDN通过智能技术生成

原理

Spark连接上Hive的MetaStore

实现上述步骤包含两点:1.MetaStore需要存在并开机。2.Spark知道MetaStore的IP和端口号。

实现步骤

一、将hive-site.xml拷贝到spark安装路径conf目录

打开虚拟机登录节点,执行以下命令来拷贝hive-site.xml到所有的spark安装服务器上面去

#注意切换至自己的hive目录
cd /export/server/hive/conf
cp hive-site.xml /export/server/spark/conf/
scp hive-site.xml root@node2:/export/server/spark/conf/
scp hive-site.xml root@node3:/export/server/spark/conf/
二、将mysql的连接驱动包拷贝到spark的jars目录下

执行以下命令将连接驱动包拷贝到spark的jars目录下,若是完全分布式安装,则三台机器都要进行拷贝

cd /export/server/hive/lib
cp mysql-connector-java-5.1.32.jar  /export/server/spark/jars/
scp mysql-connector-java-5.1.32.jar  root@node2:/export/server/spark/jars/
scp mysql-connector-java-5.1.32.jar  root@node3:/export/server/spark/jars/
三、Hive开启MetaStore服务

P.s.若安装Hive时启动过该服务则略过。

3.1 修改 hive/conf/hive-site.xml新增如下配置,远程模式部署metastore服务地址
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
    <property>
        <name>hive.metastore.uris</name>
#注意修改主机名
        <value>thrift://master:9083</value>
    </property>
</configuration>
3.2 后台启动Hive MetaStore服务
nohup /export/server/hive/bin/hive --service metastore 2>&1 >> /var/log.log &

四、测试SparkSQL整合Hive是否成功(2种方式)

4.1 Spark-SQL

#注意切换目录
cd /export/server/spark
bin/spark-sql --master local[2] --executor-memory 512m --total-executor-cores 1

 成功进入后,输入show databases; 查看数据库。

4.2 PySpark-Shell

bin/spark-shell --master local[3]或bin/pyspark --master local[2]

成功进入后,输入 spark.sql("show databases").show() 查看数据库。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值