日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內(nèi)最全IT社區(qū)平臺 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當(dāng)前位置:首頁 > 互聯(lián)網(wǎng) > 廣而告之:Databricks終止Shark項目,轉(zhuǎn)至Spark SQL

廣而告之:Databricks終止Shark項目,轉(zhuǎn)至Spark SQL

來源:程序員人生   發(fā)布時間:2014-09-13 08:00:01 閱讀次數(shù):2919次

在2014年7月1日的Spark Summit上,Databricks宣布終止對Shark的開發(fā),將重點放到Spark SQL上。Databricks表示,Spark SQL將涵蓋Shark的所有特性,用戶可以從Shark 0.9進行無縫的升級。


本次Databricks推廣的Shark相關(guān)項目一共有兩個,分別是Spark SQL和新的Hive on Spark(HIVE-7292),在介紹這兩個項目之前,我們首先關(guān)注下被終止的項目Shark。

Shark及項目終止原因

About Shark

Shark發(fā)布于3年前,那個時候,Hive可以說是SQL on Hadoop的唯一選擇,負責(zé)將SQL編譯成可擴展的MapReduce作業(yè)。鑒于Hive的性能以及與Spark的兼容,Shark項目由此而生。

Shark即Hive on Spark,本質(zhì)上是通過Hive的HQL解析,把HQL翻譯成Spark上的RDD操作,然后通過Hive的metadata獲取數(shù)據(jù)庫里的表信息,實際HDFS上的數(shù)據(jù)和文件,會由Shark獲取并放到Spark上運算。

Shark的最大特性就是快和與Hive的完全兼容,且可以在shell模式下使用rdd2sql()這樣的API,把HQL得到的結(jié)果集,繼續(xù)在scala環(huán)境下運算,支持自己編寫簡單的機器學(xué)習(xí)或簡單分析處理函數(shù),對HQL結(jié)果進一步分析計算。

除去Spark本身的迭代計算,Shark速度快的原因還在于其本身的改造,比如:

  • partial DAG execution:對join優(yōu)化,調(diào)節(jié)并行粒度,因為Spark本身的寬依賴和窄依賴會影響并行計算和速度
  • 基于列的壓縮和存儲:把HQL表數(shù)據(jù)按列存,每列是一個array,存在JVM上,避免了JVM GC低效,而壓縮和解壓相關(guān)的技術(shù)是Yahoo!提供的。

終止Shark的原因

在會議上,Databricks表示,Shark更多是對Hive的改造,替換了Hive的物理執(zhí)行引擎,因此會有一個很快的速度。然而,不容忽視的是,Shark繼承了大量的Hive代碼,因此給優(yōu)化和維護帶來了大量的麻煩。隨著性能優(yōu)化和先進分析整合的進一步加深,基于MapReduce設(shè)計的部分無疑成為了整個項目的瓶頸。

因此,為了更好的發(fā)展,給用戶提供一個更好的體驗,Databricks宣布終止Shark項目,從而將更多的精力放到Spark SQL上。

兩個相關(guān)/替代項目介紹

About Spark SQL

既然不是基于Hive,Spark SQL究竟有什么樣的改變,這里我們不妨看向 張包峰的博客。Spark新發(fā)布的Spark SQL組件讓Spark對SQL有了別樣于Shark基于Hive的支持。參考官方手冊,具體分三部分:

  • 其一,能在Scala代碼里寫SQL,支持簡單的SQL語法檢查,能把RDD指定為Table存儲起來。此外支持部分SQL語法的DSL。
  • 其二,支持Parquet文件的讀寫,且保留Schema。
  • 其三,能在Scala代碼里訪問Hive元數(shù)據(jù),能執(zhí)行Hive語句,并且把結(jié)果取回作為RDD使用。

第一點對SQL的支持主要依賴了Catalyst這個新的查詢優(yōu)化框架(下面會給出一些Catalyst的簡介),在把SQL解析成邏輯執(zhí)行計劃之后,利用Catalyst包里的一些類和接口,執(zhí)行了一些簡單的執(zhí)行計劃優(yōu)化,最后變成RDD的計算。雖然目前的SQL解析器比較簡單,執(zhí)行計劃的優(yōu)化比較通配,還有些參考價值,所以看了下這塊代碼。目前這個PR在昨天已經(jīng)merge進了主干,可以在SQL模塊里看到這部分實現(xiàn),還有catalyst模塊看到Catalyst的代碼。下面會具體介紹Spark SQL模塊的實現(xiàn)。

第二點對Parquet的支持不關(guān)注,因為我們的應(yīng)用場景里不會使用Parquet這樣的列存儲,適用場景不一樣。

第三點對Hive的這種結(jié)合方式,沒有什么核心的進展。與Shark相比,Shark依賴Hive的Metastore,解析器等能把hql執(zhí)行變成Spark上的計算,而Hive的現(xiàn)在這種結(jié)合方式與代碼里引入Hive包執(zhí)行hql沒什么本質(zhì)區(qū)別,只是把hive hql的數(shù)據(jù)與RDD的打通這種交互做得更友好了。

About HIVE-7292

HIVE-7292更像是Spark SQL成為標(biāo)準(zhǔn)SQL on Spark項目的補充,首先它是一個Hive on Spark Project,旨在服務(wù)已有Hive投入的機構(gòu),這個項目將Spark作為一個替代執(zhí)行引擎提供給Hive,從而為這些機構(gòu)提供一個遷往Spark的途徑,提供一個更流暢的Hive體驗。(文/仲浩 審校/魏偉)


免費訂閱“CSDN云計算”微信公眾號,實時掌握第一手云中消息!

CSDN作為國內(nèi)最專業(yè)的云計算服務(wù)平臺,提供云計算、大數(shù)據(jù)、虛擬化、數(shù)據(jù)中心、OpenStack、CloudStack、Hadoop、Spark、機器學(xué)習(xí)、智能算法等相關(guān)云計算觀點,云計算技術(shù),云計算平臺,云計算實踐,云計算產(chǎn)業(yè)資訊等服務(wù)。

生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對您的學(xué)習(xí)有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 欧美大吊视频 | 日本伊人网 | 最新av电影网站 | 亚洲精品之草原avav久久 | 国产精品一区免费视频 | 国产中文一区二区三区 | 久久91| 欧美日韩综合在线 | 91久久久久久 | 久久a久久| 国产欧美日韩综合精品一区二区 | 久久免费国产视频 | 国产精品久久久久久久久久新婚 | va天堂| www.91亚洲 | 欧美亚洲国产视频 | 久久精品国产精品 | 精品一区二区电影 | 99精品小视频 | 欧美中文字幕在线 | 免费a级毛片在线观看 | 精品久久99| 亚洲成人高清在线观看 | 精品久久久久久久久久 | 国产精品自拍小视频 | 99视频这里有精品 | 久久免费视频观看 | 91精品国产一区 | 欧美综合网 | 91精品国产综合久久小美女 | 欧美日韩国产91 | 视频一区二区在线 | 免费一级淫片 | 国产精品久久av | 日日日操操操 | 黄色免费高清视频 | 一区二区精品 | 在线免费av网址 | 国产一区二区三区四区 | 99久草 | 午夜三级 |