FilnkSQL怎么查詢優(yōu)化
Apache Flink 使用并擴展了 Apache Calcite 來執(zhí)行復(fù)雜的查詢優(yōu)化。 這包括一系列基于規(guī)則和成本的優(yōu)化,例如:
? 基于 Apache Calcite 的子查詢解相關(guān)
? 投影剪裁
? 分區(qū)剪裁
? 過濾器下推
? 子計劃消除重復(fù)數(shù)據(jù)以避免重復(fù)計算
? 特殊子查詢重寫,包括兩部分:
? 將 IN 和 EXISTS 轉(zhuǎn)換為 left semi-joins
? 將 NOT IN 和 NOT EXISTS 轉(zhuǎn)換為 left anti-join
? 可選 join 重新排序
? 通過 table.optimizer.join-reorder-enabled 啟用
注意: 當前僅在子查詢重寫的結(jié)合條件下支持 IN / EXISTS / NOT IN / NOT EXISTS。
優(yōu)化器不僅基于計劃,而且還基于可從數(shù)據(jù)源獲得的豐富統(tǒng)計信息以及每個算子(例如 io,cpu,網(wǎng)絡(luò)和內(nèi)存)的細粒度成本來做出明智的決策。
高級用戶可以通過 CalciteConfig 對象提供自定義優(yōu)化,可以通過調(diào)用 TableEnvironment#getConfig#setPlannerConfig 將其提供給 TableEnvironment。文章來源:http://www.zghlxwxcb.cn/news/detail-410213.html
FilnkSQL用什么代碼查看優(yōu)化
Table API 提文章來源地址http://www.zghlxwxcb.cn/news/detail-410213.html
到了這里,關(guān)于【Flink】FlinkSQL中執(zhí)行計劃以及如何用代碼看執(zhí)行計劃的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!