spark能夠經過讀取hive的元數據來兼容hive,讀取hive的表數據,而後在spark引擎中進行sql統計分析,從而,經過spark sql與hive結合實現數據分析將成爲一種最佳實踐。配置步驟以下:java
一、啓動hive的元數據服務mysql
hive能夠經過服務的形式對外提供元數據讀寫操做,經過簡單的配置便可
編輯 $HIVE_HOME/conf/hive-site.xml,增長以下內容
:
<property>
<name>hive.metastore.uris</name>
<value>thrift:// master:9083</value>
</property>
啓動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 &
二、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/
三、啓動spark-sql的shell交互界面
[root@master lib]# spark-sql sql
四、在spark sql 中執行hive操做shell
spark-sql> show databases;
2018-06-27 09:52:08 INFO CodeGenerator:54 - Code generated in 461.952527 ms
default
hive