spark可以通过读取hive的元数据来兼容hive,读取hive的表数据,然后在spark引擎中进行sql统计分析,从而,通过spark sql与hive结合实现数据分析将成为一种最佳实践。配置步骤如下:
1、启动hive的元数据服务hive可以通过服务的形式对外提供元数据读写操作,通过简单的配置即可编辑 $HIVE_HOME/conf/hive-site.xml,增加如下内容:hive.metastore.uristhrift:// master:9083启动hive metastore
[root@master apache-hive-1.2.2-bin]# ./bin/hive --service metastore 1>/dev/null 2>&1 &查看 metastore:
[root@master apache-hive-1.2.2-bin]# jobs
[1]+ Running ./bin/hive --service metastore > /dev/null 2>&1 &
2、spark配置将hive的配置文件拷贝给spark将 $HIVE_HOME/conf/hive-site.xml copy $SPARK_HOME/conf/
[root@master apache-hive-1.2.2-bin]# cp ./conf/hive-site.xml /usr/local/spark-2.3.0/conf/
将mysql的jdbc驱动包拷贝给spark将 $HIVE_HOME/lib/mysql-connector-java-5.1.12.jar copy或者软链到$SPARK_HOME/lib/
[root@master lib]# cp ./mysql-connector-5.1.8.jar /usr/local/spark-2.3.0/jars/
3、启动spark-sql的shell交互界面
[root@master lib]# spark-sql
4、在spark sql 中执行hive操作
spark-sql> show databases;
2018-06-27 09:52:08 INFO CodeGenerator:54 - Code generated in 461.952527 ms
default
hive