TopDownRuleDriver 是 cascades 論文的標(biāo)準(zhǔn)實(shí)現(xiàn),我們以下面的 case 來(lái)跟蹤代碼: TopDownRuleDrive...
一、IterativeRuleQueue 該算法不斷的從 RuleQueue 中取出 Rule 并執(zhí)行,該過(guò)程有兩個(gè)退出條件: RuleQueu...
一、問(wèn)題 & 目標(biāo) 數(shù)據(jù)庫(kù)/大數(shù)據(jù)引擎主要由三部分組成,分別是解析器、優(yōu)化器和執(zhí)行引擎,如下圖所示: 其中,優(yōu)化器在很大程度上決定了性能,其作用...
一、如何選取到 broadcast join Join 具有 hint 的情況會(huì)調(diào)用 createBroadcastHashJoin(onlyL...
一、Join 邏輯計(jì)劃生成 和 Join 相關(guān)的邏輯層的優(yōu)化規(guī)則主要包含以下幾種: ReorderJoin EliminateOuterJoin...
Paper "Optimizing Queries Using Materialized Views: A Practical, Scalabl...
由前文我們知道,StreamGraph 表示一個(gè)流任務(wù)的邏輯拓?fù)洌梢杂靡粋€(gè) DAG 來(lái)表示(代碼實(shí)現(xiàn)上沒(méi)有一個(gè) DAG 結(jié)構(gòu)),DAG 的頂點(diǎn)...
一、作業(yè)生成及提交整體流程 上圖為一個(gè) Flink 作業(yè)的提交流程,主要可以分為以下幾個(gè)步驟: Client 將作業(yè) code 生成 Strea...
javacc 會(huì)根據(jù) parser.jj 中定義的相互穿插的 Token、Java 代碼來(lái)自動(dòng)生成 org.apache.calcite.sql...