spark SQL和hive到底什麼關係

2021-03-11 02:13:52 字數 1882 閱讀 7293

1樓:加米穀大資料科技

hive是一種bai基於hdfs的資料倉

du庫,並且zhi提供了基於sql模型的,針dao對儲存了大內資料的資料倉儲,進行分散式互動查詢容的查詢引擎。

sparksql並不能完全替代hive,它替代的是hive的查詢引擎,sparksql由於其底層基於spark自身的基於記憶體的特點,因此速度是hive查詢引擎的數倍以上,spark本身是不提供儲存的,所以不可能替代hive作為資料倉儲的這個功能。

sparksql相較於hive的另外一個優點,是支援大量不同的資料來源,包括hive、json、parquet、jdbc等等。sparksql由於身處spark技術堆疊內,基於rdd來工作,因此可以與spark的其他元件無縫整合使用,配合起來實現許多複雜的功能。比如sparksql支援可以直接針對hdfs檔案執行sql語句。

2樓:匿名使用者

spark sql解決了這兩個問題。

第一,spark sql在hive相容層面僅依賴hql parser、hive metastore和hive serde。也就是說,從hql被解回析成抽象語法樹(答ast)起,就全部由spark sql接管了。執行計劃生成和優化都由catalyst負責。

藉助scala的模式匹配等函式式語言特性,利用catalyst開發執行計劃優化策略比hive要簡潔得多。去年spark summit上catalyst的作者michael armbrust對catalyst做了一個簡要介紹:2013 | spark summit。

第二,相對於shark,由於進一步削減了對hive的依賴,spark sql不再需要自行維護打了patch的hive分支。shark後續將全面採用spark sql作為引擎,不僅僅是查詢優化方面。

3樓:千鋒教育

spark sql解決了這兩個抄問題。

第一襲,spark sql在hive相容層面僅依賴hql parser、hive metastore和hive serde。也就是說,從hql被解析成抽象語法樹(ast)起,就全部由spark sql接管了。執行計劃生成和優化都由catalyst負責。

藉助scala的模式匹配等函式式語言特性,利用catalyst開發執行計劃優化策略比hive要簡潔得多。去年spark summit上catalyst的作者michael armbrust對catalyst做了一個簡要介紹:2013 | spark summit。

第二,相對於shark,由於進一步削減了對hive的依賴,spark sql不再需要自行維護打了patch的hive分支。shark後續將全面採用spark sql作為引擎,不僅僅是查詢優化方面。

4樓:兄弟連教育

歷史上存在的原理,以前都是使用hive來構建資料倉儲,所以存在大量對hive所管理的資料查詢的專需求。而

屬hive、shark、sparlsql都可以進行hive的資料查詢。shark是使用了hive的sql語法解析器和優化器,修改了執行器,使之物理執行過程是跑在spark上;而sparksql是使用了自身的語法解析器、優化器和執行器,同時sparksql還擴充套件了介面,不單單支援hive資料的查詢,可以進行多種資料來源的資料查詢。

5樓:花蛤雞蛋麵

歷史上存在來的原理,以前都是源

使用hive來構建資料倉bai庫,du所以存在大量對hive所管理的數zhi據查dao詢的需求。而hive、shark、sparlsql都可以進行hive的資料查詢。shark是使用了hive的sql語法解析器和優化器,修改了執行器,使之物理執行過程是跑在spark上;而sparksql是使用了自身的語法解析器、優化器和執行器,同時sparksql還擴充套件了介面,不單單支援hive資料的查詢,可以進行多種資料來源的資料查詢。

hive資料倉儲和關係型資料庫mysql的區別

1 首選在編譯安裝mysql的時候指定兩個引數 使用utf8編碼。2 次選在配置檔案回my.f或my.ini設定兩個引數,同答時設定init connect引數。3 第三在配置檔案my.f或my.ini設定兩個引數,同時客戶端的連線指定set names命令。4 在配置檔案my.f.hive是什麼,...

聯想和ibm到底什麼關係,聯想和IBM到底什麼關係

尊敬的聯想使用者,您好。聯想在幾年前收購了ibm的筆記本部門 更多問題您可以諮詢 idea論壇 think論壇 聯想樂社群 聯想收購了ibm的pc業務,就是個人電腦,包括筆記本的thinkpad品牌的永久使用權。因為高階商務機市場太小了,ibm禁不起折騰,虧損不如賣了的好,現在ibm玩的是伺服器市場...

團隊和組織到底有什麼區別呢團隊和組織到底有什麼區別呢。

團隊和組織區別如下 1 在工作表現方面不同 工作中組織的成員側重於個人能力與個人結果的表現。而工作中團隊在資源 信訊共享的基礎上,側重於團體的整體業績,共同成長。2 在協同配合方面不同 組織中成員以自己優先,只有在自己達成目標的前提下去協助他人或是迫於組織上的權力而去幫助他人,很少有主動自發的過程。...