W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
執(zhí)行計(jì)劃
優(yōu)化器為某條 SQL 生成的執(zhí)行過(guò)程,一般使用操作符樹來(lái)表示。
當(dāng)執(zhí)行計(jì)劃只涉及到單表或分區(qū)表的單個(gè)分區(qū),且該表或分區(qū)在本節(jié)點(diǎn)時(shí),該計(jì)劃為“本地計(jì)劃”。
當(dāng)執(zhí)行計(jì)劃只涉及到單表或分區(qū)表的單個(gè)分區(qū),且該表或分區(qū)在其他節(jié)點(diǎn)時(shí),該計(jì)劃為“遠(yuǎn)程計(jì)劃”。
當(dāng)執(zhí)行計(jì)劃涉及到多表或多分區(qū)時(shí),該計(jì)劃為分布式計(jì)劃。
訪問(wèn)某張表時(shí)使用的訪問(wèn)方式,包括主表訪問(wèn)和二級(jí)索引訪問(wèn)兩類。具體參見(jiàn) 訪問(wèn)路徑。
多表聯(lián)接時(shí)各表之間的聯(lián)接順序,目前 OceanBase 數(shù)據(jù)庫(kù)僅支持左深樹的聯(lián)接順序。具體參見(jiàn) 聯(lián)接順序。
執(zhí)行兩表聯(lián)接時(shí)使用的算法,包括 NESTED LOOP JOIN、MERGE JOIN 和 HASH JOIN 三種。
通過(guò)對(duì)用戶查詢做等價(jià)的改寫以便于生成最佳執(zhí)行計(jì)劃的過(guò)程。
用戶通過(guò)給定 outline 來(lái)指定某條 SQL 的執(zhí)行計(jì)劃的過(guò)程,具體參見(jiàn) 計(jì)劃綁定。
一種計(jì)劃演進(jìn)的機(jī)制。當(dāng)優(yōu)化器生成新的計(jì)劃時(shí),需要通過(guò)演進(jìn)機(jī)制來(lái)保證這個(gè)計(jì)劃的性能不會(huì)出現(xiàn)回退,如果出現(xiàn)回退,就拒絕使用該計(jì)劃,否則使用該計(jì)劃。
一種可以讓優(yōu)化器每一個(gè)參數(shù)化 SQL 存儲(chǔ)多個(gè)計(jì)劃,并根據(jù) SQL 語(yǔ)句中謂詞的選擇率空間選擇合適的計(jì)劃的機(jī)制。
分布式計(jì)劃以數(shù)據(jù)重分布點(diǎn)為邊界,切分為可以并行執(zhí)行的邏輯子計(jì)劃,每個(gè)子計(jì)劃由一個(gè) DFO 進(jìn)行封裝。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: