Presto 架構(gòu)

Presto Server

Coordinator擔(dān)當(dāng) Master 角色捶码,負(fù)責(zé)解析 SQL,生成查詢計(jì)劃豁鲤,提交查詢?nèi)蝿?wù)給 Worker 執(zhí)行秽誊,管理 Worker 節(jié)點(diǎn)。

Worker執(zhí)行任務(wù)和處理數(shù)據(jù)

Data Source

ConnectorConnector 是一個(gè)適配連接器琳骡,Presto 使用 Connector 去連接不同的數(shù)據(jù)源养距,比如 Hive 、關(guān)系型數(shù)據(jù)庫等日熬。可以通過實(shí)現(xiàn)自己的 Connector 去擴(kuò)展數(shù)據(jù)源肾胯。

CatalogCatalog 多個(gè) schema 的集合,表示通過 connector 獲取的一種數(shù)據(jù)源竖席,你可以使用 hive connector 的多個(gè) catalog 來代表不同的 hive 集群數(shù)據(jù)源。常見的 catalog 為:mysql catalog,hive catalog 等

Schema表的集合敬肚,類似于 Hive毕荐、MySQL 中的 database。

Table類似于Hive中的table

查詢 catalog 為 hive艳馒,數(shù)據(jù)庫為 test憎亚,表為 table1 的語句為

select count(*) from hive.test.table1

Query Model

Statement表示一個(gè) SQL 查詢語句

Query表示 Statement 經(jīng)過解析系谐,生成的執(zhí)行計(jì)劃惠赫,查詢計(jì)劃。在 Presto 集群中運(yùn)行的查詢, 一個(gè) Query 由多個(gè) Stage 組成亡资、Task、Driver厅瞎、Split迎捺、Operator 和 Datasource 組成。

Stage查詢執(zhí)行階段别威,一個(gè) Query 會(huì)被拆分成具有層級關(guān)系的多個(gè) Stage 執(zhí)行,一個(gè) Stage 就是查詢執(zhí)行計(jì)劃的一部分躯舔。 四種stage:Coordinator_Only:一般表示 DDL,DML 的 Stage。Single:用于聚合子 stages 數(shù)據(jù)省古,并最終將數(shù)據(jù)輸出給終端用戶粥庄。比如每個(gè)查詢中的 Root Stage。Fixed:用于接收子 Stage 產(chǎn)生的數(shù)據(jù)豺妓,并在集群中對這些數(shù)據(jù)進(jìn)行聚合或分組計(jì)算惜互。Source:連接數(shù)據(jù)源,從數(shù)據(jù)源讀取數(shù)據(jù)科侈。

Exchange連接不同的 Stage载佳,用于不同 Stage 之間的數(shù)據(jù)交互Output Buffer:向下游提供數(shù)據(jù),數(shù)據(jù)提供者Exchange Client:從上游讀取數(shù)據(jù)臀栈,數(shù)據(jù)消費(fèi)者

TaskStage 有多個(gè) Task 組成蔫慧。Stage 并不會(huì)運(yùn)行,只是負(fù)責(zé)管理 Task 和封裝建模权薯。Stage 實(shí)際運(yùn)行的是 Task姑躲。每個(gè)Task 處理一個(gè)或者多個(gè) Split。每個(gè) Task 都有對應(yīng)的輸入和輸出盟蚣。

DriverTask 被分解成一個(gè)或者多個(gè) Driver黍析,并行執(zhí)行多個(gè) Driver 的方式來實(shí)現(xiàn) Task 的并發(fā)執(zhí)行。Driver 是作用于一個(gè) Split 的一系列 Operator 的集合屎开。一個(gè) Driver 處理一個(gè) Split阐枣,產(chǎn)生輸出由 Task 收集并傳遞給下游的 Stage 中的一個(gè) Task。一個(gè) Driver 擁有一個(gè)輸入和輸出奄抽。

OperatorOperator 表示對一個(gè) Split 的一種操作蔼两。比如過濾、轉(zhuǎn)換等逞度。 一個(gè) Operator 一次讀取一個(gè) Split 的數(shù)據(jù)额划,將 Operator 所表示的計(jì)算、操作作用于 Split 的數(shù)據(jù)上档泽,產(chǎn)生輸出俊戳。每個(gè) Operator 會(huì)以 Page 為最小處理單位分別讀取輸入數(shù)據(jù)和產(chǎn)生輸出數(shù)據(jù)揖赴。Operator 每次只讀取一個(gè) Page,輸出產(chǎn)生一個(gè) Page

Split一個(gè)分片表示大的數(shù)據(jù)集合中的一個(gè)小子集,與 MapReduce 中的 Split 概念類似。

PagePresto 中處理的最小數(shù)據(jù)單元抑胎。一個(gè) Page 對象包括多個(gè) Block 對象燥滑,而每個(gè) Block 對象是一個(gè)字節(jié)數(shù)組,存儲(chǔ)一個(gè)字段的若干行圆恤。多個(gè) Block 的橫切的一行表示真實(shí)的一行數(shù)據(jù)突倍。一個(gè) Page 最大1MB,最多1 6x1024 行數(shù)據(jù)盆昙。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末羽历,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子淡喜,更是在濱河造成了極大的恐慌秕磷,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,185評論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件炼团,死亡現(xiàn)場離奇詭異澎嚣,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)瘟芝,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,445評論 3 385
  • 文/潘曉璐 我一進(jìn)店門易桃,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人锌俱,你說我怎么就攤上這事晤郑。” “怎么了贸宏?”我有些...
    開封第一講書人閱讀 157,684評論 0 348
  • 文/不壞的土叔 我叫張陵造寝,是天一觀的道長。 經(jīng)常有香客問我吭练,道長诫龙,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,564評論 1 284
  • 正文 為了忘掉前任鲫咽,我火速辦了婚禮签赃,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘分尸。我一直安慰自己姊舵,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,681評論 6 386
  • 文/花漫 我一把揭開白布寓落。 她就那樣靜靜地躺著,像睡著了一般荞下。 火紅的嫁衣襯著肌膚如雪伶选。 梳的紋絲不亂的頭發(fā)上史飞,一...
    開封第一講書人閱讀 49,874評論 1 290
  • 那天,我揣著相機(jī)與錄音仰税,去河邊找鬼构资。 笑死,一個(gè)胖子當(dāng)著我的面吹牛陨簇,可吹牛的內(nèi)容都是我干的吐绵。 我是一名探鬼主播,決...
    沈念sama閱讀 39,025評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼河绽,長吁一口氣:“原來是場噩夢啊……” “哼己单!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起耙饰,我...
    開封第一講書人閱讀 37,761評論 0 268
  • 序言:老撾萬榮一對情侶失蹤纹笼,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后苟跪,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體廷痘,經(jīng)...
    沈念sama閱讀 44,217評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,545評論 2 327
  • 正文 我和宋清朗相戀三年件已,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了笋额。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,694評論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡篷扩,死狀恐怖兄猩,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情瞻惋,我是刑警寧澤厦滤,帶...
    沈念sama閱讀 34,351評論 4 332
  • 正文 年R本政府宣布,位于F島的核電站歼狼,受9級特大地震影響掏导,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜羽峰,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,988評論 3 315
  • 文/蒙蒙 一趟咆、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧梅屉,春花似錦值纱、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,778評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至惰聂,卻和暖如春疆偿,著一層夾襖步出監(jiān)牢的瞬間咱筛,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,007評論 1 266
  • 我被黑心中介騙來泰國打工杆故, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留迅箩,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,427評論 2 360
  • 正文 我出身青樓处铛,卻偏偏與公主長得像饲趋,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子撤蟆,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,580評論 2 349

推薦閱讀更多精彩內(nèi)容