日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

使用執(zhí)行計(jì)劃分析查詢

AnalyticDB MySQL版的SQL診斷功能支持以樹形圖的形式展現(xiàn)SQL查詢的執(zhí)行計(jì)劃。執(zhí)行計(jì)劃樹分為兩層:第一層是Stage層,第二層是算子(Operator)層。本文介紹如何使用Stage層和算子層執(zhí)行計(jì)劃樹來分析查詢。

Stage層執(zhí)行計(jì)劃樹

Stage層執(zhí)行計(jì)劃樹由多個(gè)Stage節(jié)點(diǎn)組成,數(shù)據(jù)流向自下而上,先由具有掃描算子的Stage進(jìn)行數(shù)據(jù)掃描,再經(jīng)過中間Stage節(jié)點(diǎn)的層層處理后,再由最上層的根節(jié)點(diǎn)將查詢結(jié)果返回客戶端。

1

Stage層執(zhí)行計(jì)劃樹中主要包含如下信息:

  • 基本信息

    圖中的每個(gè)矩形框代表一個(gè)Stage,框里會(huì)包含Stage ID、數(shù)據(jù)輸出類型、耗時(shí)或內(nèi)存(選擇按內(nèi)存排序時(shí)展示)等信息。

    說明

    當(dāng)Stage層執(zhí)行計(jì)劃樹上出現(xiàn)紅色警示號(hào),表示該Stage被診斷出存在可優(yōu)化點(diǎn)。

  • 數(shù)據(jù)輸出行數(shù)

    兩個(gè)相鄰Stage間連線上的數(shù)字表示上游Stage向下游Stage輸出的數(shù)據(jù)行數(shù)。數(shù)據(jù)輸出行數(shù)越多,Stage間的連線越粗。

  • 數(shù)據(jù)輸出方法

    表示在兩個(gè)相鄰的Stage間,上游向下游Stage傳輸數(shù)據(jù)時(shí)所用的方法。AnalyticDB MySQL版支持以下數(shù)據(jù)輸出方法。

    數(shù)據(jù)輸出方法

    說明

    Broadcast

    表示上游Stage中每個(gè)計(jì)算節(jié)點(diǎn)的數(shù)據(jù)都會(huì)復(fù)制到所有下游Stage的計(jì)算節(jié)點(diǎn)。1-1

    Repartition

    表示上游Stage中每個(gè)節(jié)點(diǎn)的數(shù)據(jù)會(huì)按照固定的規(guī)則切分后,再分發(fā)到下游Stage的指定計(jì)算節(jié)點(diǎn)。1-2

    Gather

    表示上游Stage中每個(gè)節(jié)點(diǎn)的數(shù)據(jù)會(huì)集中到下游Stage中某一個(gè)特定的計(jì)算節(jié)點(diǎn)。1-3

  • 查看內(nèi)存使用率或執(zhí)行耗時(shí)Top 10的Stage詳情

    執(zhí)行計(jì)劃樹右側(cè)的Top10耗時(shí)/內(nèi)存倒序頁簽下,會(huì)展示執(zhí)行耗時(shí)占總查詢耗時(shí)比例最大,或使用內(nèi)存占總查詢使用內(nèi)存比例最大的前10個(gè)Stage的ID和對(duì)應(yīng)的比例。

    說明
    • 默認(rèn)按耗時(shí)排序,您也可以選擇執(zhí)行計(jì)劃樹右上角的按內(nèi)存排序。

    • Top10耗時(shí)/內(nèi)存倒序頁簽下不會(huì)顯示內(nèi)存使用量或執(zhí)行耗時(shí)占比小于1%的Stage數(shù)據(jù)。

    • 由于統(tǒng)計(jì)方式的差異,可能存在一個(gè)查詢中的所有Stage耗時(shí)或內(nèi)存的百分比之和不等于100%的情況。

  • 診斷結(jié)果

    單擊執(zhí)行計(jì)劃樹中某個(gè)Stage(如Stage[1]),即可在右側(cè)查看對(duì)應(yīng)Stage的診斷結(jié)果詳情,包括如下兩類診斷:

    • Stage診斷:這類診斷結(jié)果包含了對(duì)目標(biāo)Stage診斷結(jié)果的詳細(xì)說明,包括診斷出的問題(如存在較大的數(shù)據(jù)量被廣播或數(shù)據(jù)傾斜)以及對(duì)應(yīng)的調(diào)優(yōu)方案。

    • 算子診斷:這類診斷僅展示當(dāng)前Stage中有問題的算子名稱以及對(duì)應(yīng)問題的概述,詳細(xì)的說明和調(diào)優(yōu)方案需要到算子執(zhí)行計(jì)劃樹中才能看到。更多詳情,請(qǐng)參見算子層計(jì)劃執(zhí)行樹

    關(guān)于Stage的診斷結(jié)果的說明,請(qǐng)參見Stage級(jí)別診斷結(jié)果

  • 統(tǒng)計(jì)信息

    診斷結(jié)果下方展示了目標(biāo)Stage中各項(xiàng)指標(biāo)的統(tǒng)計(jì)信息

    指標(biāo)項(xiàng)

    說明

    峰值內(nèi)存

    目標(biāo)Stage的峰值內(nèi)存消耗量。系統(tǒng)會(huì)根據(jù)實(shí)際內(nèi)存消耗量選擇Bytes、KB、MB、GB或TB為單位。

    累積耗時(shí)

    目標(biāo)Stage內(nèi)存中所有算子多節(jié)點(diǎn)多線程執(zhí)行時(shí)耗時(shí)的累加,系統(tǒng)會(huì)根據(jù)實(shí)際耗時(shí)選擇ms、s、m或h為單位。

    說明

    該累積耗時(shí)不能和當(dāng)前查詢的總耗時(shí)進(jìn)行比較。

    輸出行數(shù)

    目標(biāo)Stage輸出的行數(shù)。

    輸出大小

    目標(biāo)Stage輸出的數(shù)據(jù)量。系統(tǒng)會(huì)根據(jù)實(shí)際數(shù)據(jù)量選擇Bytes、KB、MB、GB或TB為單位。

    輸入行數(shù)

    目標(biāo)Stage輸入的行數(shù)。

    輸入大小

    目標(biāo)Stage輸入的數(shù)據(jù)量。系統(tǒng)會(huì)根據(jù)實(shí)際數(shù)據(jù)量選擇Bytes、KB、MB、GB或TB為單位。

    掃描行數(shù)

    目標(biāo)Stage掃描的行數(shù)。

    說明

    僅當(dāng)目標(biāo)Stage中存在數(shù)據(jù)掃描算子時(shí)支持該參數(shù)。

    掃描量

    目標(biāo)Stage掃描的數(shù)據(jù)量。系統(tǒng)會(huì)根據(jù)實(shí)際數(shù)據(jù)量選擇Bytes、KB、MB、GB或TB為單位。

    說明

    僅當(dāng)目標(biāo)Stage中存在數(shù)據(jù)掃描算子時(shí)支持該參數(shù)。

算子層計(jì)劃執(zhí)行樹

算子層執(zhí)行計(jì)劃由多個(gè)算子組成,圖中的每個(gè)矩形框代表一個(gè)算子,數(shù)據(jù)流向自下而上,掃描數(shù)據(jù)過程或接收網(wǎng)絡(luò)數(shù)據(jù)由最上游的算子(TableScan和RemoteSource)完成,掃描到的數(shù)據(jù)和接收到的網(wǎng)絡(luò)數(shù)據(jù)經(jīng)過中間算子層層處理后,再由最上層的根節(jié)點(diǎn)算子(StageOutput或Output)將數(shù)據(jù)輸出到下游Stage或?qū)⒉樵兘Y(jié)果返回給客戶端。

您可以將鼠標(biāo)移動(dòng)到目標(biāo)Stage上,在彈出的信息框中單擊查看Stage計(jì)劃,即可進(jìn)入對(duì)應(yīng)Stage的計(jì)劃詳情頁來查看算子層計(jì)劃執(zhí)行樹。3

算子層執(zhí)行計(jì)劃樹中包含如下信息:2

說明

當(dāng)算子層執(zhí)行計(jì)劃樹上出現(xiàn)紅色警示號(hào),表示該算子被診斷出存在可優(yōu)化點(diǎn)。

  • 基本信息

    圖中的每個(gè)矩形框代表一個(gè)算子,框里會(huì)包含算子名稱及ID、算子屬性(如Join算子的Join條件、算法等)、耗時(shí)或內(nèi)存(選擇按內(nèi)存排序時(shí)展示)等信息。

  • 數(shù)據(jù)輸出行數(shù)

    兩個(gè)相鄰算子間連線上的數(shù)字表示上游算子向下游算子輸出的數(shù)據(jù)行數(shù)。數(shù)據(jù)輸出行數(shù)越多,算子間的連線越粗。

  • 查看內(nèi)存使用率或執(zhí)行耗時(shí)Top 10的算子詳情

    執(zhí)行計(jì)劃樹右側(cè)的Top10耗時(shí)/內(nèi)存倒序頁簽下,會(huì)展示執(zhí)行耗時(shí)占總查詢耗時(shí)比例最大,或使用內(nèi)存占總查詢使用內(nèi)存比例最大的前10個(gè)算子的ID和對(duì)應(yīng)的比例。

    說明
    • 默認(rèn)按耗時(shí)排序,您也可以選擇執(zhí)行計(jì)劃樹右上角的按內(nèi)存排序。

    • Top10耗時(shí)/內(nèi)存倒序頁簽下不會(huì)顯示內(nèi)存使用量或執(zhí)行耗時(shí)占比小于1%的算子數(shù)據(jù)。

    • 由于統(tǒng)計(jì)方式的差異,可能存在一個(gè)Stage中的所有算子耗時(shí)或內(nèi)存的百分比之和不等于100%的情況。

  • 診斷結(jié)果

    單擊執(zhí)行計(jì)劃樹中某個(gè)算子(如Join[36148]),即可在右側(cè)查看對(duì)應(yīng)算子的診斷結(jié)果詳情,包括診斷出的問題(如存在數(shù)據(jù)膨脹或Join的右表過大)以及對(duì)應(yīng)的調(diào)優(yōu)方案。更多關(guān)于算子診斷的詳情,請(qǐng)參見算子級(jí)別診斷結(jié)果4

  • 統(tǒng)計(jì)信息

    診斷結(jié)果下方展示了目標(biāo)算子中各項(xiàng)指標(biāo)的統(tǒng)計(jì)信息

    指標(biāo)項(xiàng)

    說明

    峰值內(nèi)存

    目標(biāo)算子的峰值內(nèi)存消耗量。系統(tǒng)會(huì)根據(jù)實(shí)際內(nèi)存消耗量選擇Bytes、KB、MB、GB或TB為單位。

    耗時(shí)

    目標(biāo)算子在一定并發(fā)度上的平均耗時(shí),系統(tǒng)會(huì)根據(jù)實(shí)際耗時(shí)選擇ms、s、m或h為單位。

    說明

    該耗時(shí)可以和當(dāng)前查詢的耗時(shí)進(jìn)行比較。

    輸出行數(shù)

    目標(biāo)算子輸出的行數(shù)。

    輸出大小

    目標(biāo)算子輸出的數(shù)據(jù)量。系統(tǒng)會(huì)根據(jù)實(shí)際數(shù)據(jù)量選擇Bytes、KB、MB、GB或TB為單位。

    輸入行數(shù)

    目標(biāo)算子輸入的行數(shù)。

    輸入大小

    目標(biāo)算子輸入的數(shù)據(jù)量。系統(tǒng)會(huì)根據(jù)實(shí)際數(shù)據(jù)量選擇Bytes、KB、MB、GB或TB為單位。

    Builder統(tǒng)計(jì)信息

    包括Builder的類型、峰值內(nèi)存、耗時(shí)、輸出輸入行數(shù)和數(shù)據(jù)量等信息。主要有如下Builder類型:

    • HashBuilder:用于構(gòu)建Hash表來完成Hash Join計(jì)算。

    • SetBuilder:用于構(gòu)造Set結(jié)構(gòu)來完成Semi Join計(jì)算。

    • NestLoopBuilder:用于完成Nest Loop Join計(jì)算。

    說明

    僅Join算子支持該統(tǒng)計(jì)指標(biāo)項(xiàng)。

    屬性

    不同算子的屬性信息不同,例如Join算子的屬性信息中包括了Join的類型、方式等。更多詳情,請(qǐng)參見算子