閱讀 Doris SQL 原理解析,總結(jié)下Doris中SQL解析流程:
- 詞法識別:解析原始SQL文本,拆分token
- 語法識別:將token轉(zhuǎn)換成AST
- 單機(jī)邏輯查詢計劃:將AST經(jīng)過一系列的優(yōu)化(比如,謂詞下推等)成查詢計劃,提高執(zhí)行性能與效率。
- 分布式邏輯查詢計劃:根據(jù)分布式環(huán)境(數(shù)據(jù)分布信息、連接信息、Join算法等)將單機(jī)邏輯查詢計劃轉(zhuǎn)換成分布式邏輯查詢計劃。
- 分布式物理查詢計劃:在邏輯查詢計劃的基礎(chǔ)上,根據(jù)數(shù)據(jù)的存儲方式和機(jī)器的分布情況生成實際的執(zhí)行計劃。
文章來源:http://www.zghlxwxcb.cn/news/detail-747250.html
邏輯查詢與物理查詢的區(qū)別如下文章來源地址http://www.zghlxwxcb.cn/news/detail-747250.html
- 邏輯查詢計劃(Logical Query Plan):
○ 關(guān)注邏輯操作: 邏輯查詢計劃描述了查詢的邏輯操作,即查詢的高層次邏輯結(jié)構(gòu),而不關(guān)心具體的物理執(zhí)行細(xì)節(jié)。
○ 抽象和通用性: 邏輯查詢計劃是相對抽象和通用的,與底層存儲引擎和執(zhí)行引擎的具體實現(xiàn)無關(guān)。
○ 用于優(yōu)化器: 邏輯查詢計劃是優(yōu)化器進(jìn)行查詢優(yōu)化的基礎(chǔ)。優(yōu)化器根據(jù)邏輯查詢計劃來選擇合適的物理執(zhí)行計劃。 - 物理查詢計劃(Physical Query Plan):
○ 關(guān)注具體執(zhí)行細(xì)節(jié): 物理查詢計劃描述了如何在底層存儲引擎上執(zhí)行查詢的具體細(xì)節(jié),包括如何訪問數(shù)據(jù)、執(zhí)行連接、過濾和聚合等操作。
○ 與底層存儲引擎相關(guān): 物理查詢計劃是與底層存儲引擎和執(zhí)行引擎密切相關(guān)的,考慮了存儲布局、索引選擇、并行度等底層執(zhí)行細(xì)節(jié)。
○ 用于執(zhí)行引擎: 物理查詢計劃是執(zhí)行引擎直接使用的計劃,它指導(dǎo)具體的查詢執(zhí)行。
到了這里,關(guān)于聊聊分布式 SQL 數(shù)據(jù)庫Doris(五)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!