spark on hive & hive on spark的區別

1、Spark on Hive

數據源是:hive,Spark 獲取hive中的數據,然後進行SparkSQL的操作  (hive只是作爲一個spark的數據源)。

spark on hive 是spark 通過spark-sql 使用hive 語句操作hive ,底層運行的還是 spark rdd.
*(1)就是通過sparksql,加載hive的配置文件,獲取到hive的元數據信息
* (2)spark sql獲取到hive的元數據信息之後就可以拿到hive的所有表的數據
* (3)接下來就可以通過spark sql來操作hive表中的數據

2、Hive on Spark

(數據源是hive本身)   Hive 將自己的MapReduce計算引擎替換爲Spark,當我們執行HiveSQL(HQL)時底層以經不是將HQL轉換爲MapReduce任務,而是跑的Spark任務(即:將HQL轉換爲Spark任務)。

hive on spark是hive 等的執行引擎變成spark , 不再是mapreduce. 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章