簡體   English   中英

通過Hive進行Spark sql的目的是什么?

[英]what's the purpose of spark sql over hive?

我知道這個問題是在幾年前提出的,但是我仍然想知道使用SparkSQL / HiveContext的真正目的。

與內置MapReduce相比,Spark方法提供了更通用的分布式方式。

我閱讀了許多文章,聲稱MR方法已經死了,而Spark是最好的方法(我知道我可以通過Spark來實現MR方法)。

建議使用HiveContext查詢數據時,我有些困惑。

的確,從SparkSQL / HiveContext運行查詢並不意味着運行MR作業嗎? 回到主要問題上不是嗎? 如果我不需要將查詢結果封裝在更復雜的代碼中,那么TEZ還不夠嗎?

我錯了嗎(我確定我是:-))?

的確,從SparkSQL / HiveContext運行查詢並不意味着運行MR作業嗎?

它不是。 實際上,將HiveContextSparkSession與“ Hive支持”一起使用並不意味着與Hive有任何連接,除了使用Hive Metastore。 ETL解決方案和數據庫等許多其他系統也使用此方法。

最后:

  • Hive是具有模塊化組件的數據庫。 它支持相對豐富的權限系統,變異和事務。
  • Spark是通用處理引擎。 盡管具有SQL-ish組件,但它不會嘗試成為數據庫。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM