hadoop剛開始出來的時候,使用的是
hadoop
自帶的分布式計算系統
mapreduce
,但是mapreduce
的使用難度較大,所以就開發了
hive
,hive
程式設計用的是類
sql的
hql的語句,這樣程式設計的難度就大大的降低了,
hive
的執行原理就是將
hql語句經過語法解析、邏輯計畫、物理計畫轉化成
mapreduce
程式執行。當
spark
出來以後,
spark
團隊也開發了乙個
shark
,就是在
spark
集群上安裝乙個
hive
的集群,執行引擎是
hive
轉化成mapreduce
的執行引擎,
這樣的框架就是
hive on spark
,但是這樣是有侷限性的,因為
shark
的版本公升級是依賴
hive
的版本的,所有
2023年7
月1日spark
團隊就將
shark
轉給hive
進行管理,
spark
團隊開發了乙個
sparksql
,這個計算框架就是將
hive on spark
的將sql
語句轉化為
spark rdd
的執行引擎換成自己團隊從新開發的執行引擎。
spark sql
經歷了幾次的更新,演變歷程如下:
-1 1.0版本以前
hive on spark shark
-2 1.0.x版本
spark sql
alpha版本(測試版本,不建議商業專案使用)
這個版本讓spark公升為了
apache
的頂級專案
。-3 1.3.x版本
sparksql dataframe
release(成熟,可以使用)
-4 spark 1.5.x版本
鎢絲計畫(底層**的優化)
-5 spark 1.6.x版本
dataset(
alpha
版本)
-6 spark 2.x.x版本
dataset(正式的)
structrued streaming
從發展歷史來看會發現spark的重要版本的變更都跟
sparksql
有關
RSS的發展歷史
引自田春峰blog rss的第乙個版本是 rss 0.90 是 natscape 大概在99年開發和設計的,主要用來建立乙個整合各主要新聞站點內容的門戶。由於這項技術是利用w3c新一代的語義網技術rdf resource description framework 為基礎,這時 natscape 把...
Python的發展歷史
python的作者是乙個荷蘭人guido von rossum。他雖然是數學專業出身,但卻對計算機有著巨大的興趣,熱衷於程式設計。在他所在的80年代,計算機的ram普遍很小,因此所有編譯器的核心是優化,讓程式得以執行。這使得程式設計師不得不想計算機一樣思考。這種程式設計方式讓guido感到效率低下,...
C 的發展歷史
c 是一門應用廣泛的程式語言,最初是bjarne博士等人試圖去分析unix的核心的時候,沒有合適的工具,在解決這個問題的過程中,bjarne博士開始思考是不是要開發一種新的語言,當時貝爾實驗室對這個想法很感興趣,就讓bjarne博士等人組成乙個開發小組,專門進行研究。當時c 叫做 c with cl...