Poznámka
Na prístup k tejto stránke sa vyžaduje oprávnenie. Môžete sa skúsiť prihlásiť alebo zmeniť adresáre.
Na prístup k tejto stránke sa vyžaduje oprávnenie. Môžete skúsiť zmeniť adresáre.
Poznámka
Pred čítaním tohto článku si prečítajte prehľad vyhodnocovania dotazov a skladania dotazov v Power Query, aby ste lepšie pochopili, ako folding funguje v Power Query.
Indikátory skladania dotazov vám pomôžu pochopiť, ktoré kroky sa skladajú a ktoré nie. Krok sa preloží, keď Power Query preloží svoje transformácie do dotazu zdroja údajov a spustí ich v zdroji údajov.
Keď použijete indikátory prekladania dotazov, je jasné, keď urobíte zmenu, ktorá prerušuje skladanie. Táto funkcia pomáha riešiť problémy, vyhnúť sa problémom s výkonom a získať lepší prehľad o dotazoch. Vo väčšine prípadov sa schody buď skladajú, alebo neskladajú. Ale existuje mnoho prípadov, kde výsledok nie je zrejmý. Tieto prípady sa týkajú časti Diagnostika krokov (Môže sa zložiť, Nepriehľadné a Neznáme).
Poznámka
Funkcia indikátorov postupného posúvania dotazov je k dispozícii len pre Power Query Online.
Interpretácia diagnostiky postupného posúvania dotazov
V Power Query Online indikátor postupného posúvania dotazov vedľa kroku ukazuje, či sa dotaz postupne posúva. Stav diagnostiky nie je sekvenčný. Ak indikátor ukazuje, že dotaz sa neskladá, za ktorým nasleduje indikátor, ktorý ukazuje, že postupne funguje, dotaz až do tohto bodu sa postupne posúva.
Tento výklad funguje aj pri jednoduchom dotaze na zdroj SQL. Môžete sa napríklad pripojiť k tabuľke Production.Product v ukážkovej databáze AdventureWorks a potom načítať údaje. Načítanie tejto ukážky pomocou navigátora Power Query poskytne nasledujúci dotaz:
let
Source = Sql.Database("ServerName", "AdventureWorks"),
Navigation = Source{[Schema = "Production", Item = "Product"]}[Data]
in
Navigation
Ak budete skúmať, ako sa tento kód zobrazuje v indikátoroch postupného posúvania dotazov, všimnite si, že prvý krok je nepresvedčivý. Druhý krok sa však skladá z postupne, čo znamená, že dotaz sa až do tohto bodu postupne posúva.
V tomto príklade nie je možné potvrdiť, že počiatočné kroky sa postupne posúvajú (sú nepresvedčivé), ale posledný krok vygenerovaný pri prvom načítaní údajov sa postupne posúva. Spôsob narábania s prvými krokmi (Zdroj a niekedy aj iné kroky navigácie ) závisí od konektora. Napríklad s SQL sa krok spracováva ako hodnota tabuľky katalógu, ktorá sa nezbalí. Hneď ako však vyberiete údaje pre tento konektor, údaje sa zbalia.
Naopak, toto označenie môže tiež znamenať, že váš dotaz sa zbalí do bodu a potom sa zastaví skladanie. Indikátor neskladania neznamená, že sa nič neskladá. Namiesto toho to znamená, že nie všetko sa skladá. Vo všeobecnosti platí, že všetko až do posledného skladacieho indikátora sa postupne posúva, pričom postupne pretrvá viac operácií.
Po úprave predchádzajúceho príkladu môžete poskytnúť transformáciu, ktorá sa nikdy nezbalí – každé slovo veľkým písmenom.
let
Source = Sql.Database("ServerName", "AdventureWorks"),
Navigation = Source{[Schema = "Production", Item = "Product"]}[Data],
#"Capitalized each word" = Table.TransformColumns(Navigation, {{"Name", each Text.Proper(_), type text}})
in
#"Capitalized each word"
V indikátoroch postupného posúvania dotazov máte rovnaké indikátory ako predtým, ale posledný krok sa nezbalí. Všetko až do tohto posledného kroku sa vykoná v zdroji údajov, zatiaľ čo posledný krok sa vykoná lokálne.
Ukazovatele diagnostiky krokov
Indikátory skladania dotazov používajú základný plán dotazu a vyžadujú, aby reportoval informácie o dotaze. Plán dotazov v súčasnosti podporuje iba tabuľky, a preto sa v niektorých prípadoch (zoznamy, záznamy, primitívne) nezostáv nezobrazujú ako postupné posúvanie alebo nie. Podobne platí, že zostava konštantných tabuliek je nepriehľadná.
| Indikátor | Ikona | Popis |
|---|---|---|
| Skladací |
|
Indikátor postupného posúvania znamená, že zdroj údajov vyhodnotí dotaz až do tohto kroku. |
| Nie postupné posúvanie |
|
Indikátor postupného posúvania znamená, že časť dotazu až do tohto kroku sa vyhodnocuje mimo zdroja údajov. Môžete ho porovnať s posledným indikátorom skladania, ak existuje, a zistiť, či je možné zmeniť usporiadanie dotazu tak, aby malo výkonnejší výkon. |
| Možno zbalí |
|
Môže fold ukazovatele sú nezvyčajné. Znamená to, že dotaz sa môže postupne posúvať. Označujú buď to, že postupné posúvanie alebo postupné posúvanie sa určuje v čase spustenia, pri vytváraní výsledkov z dotazu a že plán dotazov je dynamický. Tieto ukazovatele sa pravdepodobne zobrazia len s pripojeniami ODBC alebo OData. |
| Nepriehľadný |
|
Nepriehľadné indikátory zobrazujú, že výsledný plán dotazu je z nejakého dôvodu nepresvedčivý. Všeobecne označuje, že existuje skutočná "konštantná" tabuľka alebo to, že indikátory a nástroj plánu dotazov túto transformáciu ani konektor nepodporujú. |
| Neznámy |
|
Neznáme indikátory predstavujú absenciu plánu dotazu, a to buď z dôvodu chyby, alebo pokusu o spustenie vyhodnocovania plánu dotazu na niečo iné ako tabuľku (napríklad záznam, zoznam alebo primitívne). |
Analýza indikátorov postupného posúvania dotazov
Ak chcete analyzovať indikátory postupného posúvania dotazov, pripojte sa k tabuľke Production.Product v databáze AdventureWorks (SQL). Počiatočné načítanie zobrazuje krok Source ako nepresvedčivý a krok Navigácia ako postupné posúvanie, ako je to znázornené na nasledujúcom obrázku.
Keď pridáte viac krokov, ktoré sa skladajú, predĺžite zelenú čiaru napravo. K tomuto rozšíreniu dochádza preto, lebo tento krok sa tiež posúva.
Keď pridáte krok, ktorý sa neskladá, vidíte iný indikátor. Napríklad: Každé slovo sa nikdy nezloží veľkým písmenom . Indikátor sa zmení a ukazuje, že v tomto kroku prestalo skladanie. Ako už bolo spomenuté, predchádzajúce kroky sa postupne posúvajú.
Keď pridáte ďalšie kroky v smere toku, ktoré závisia od veľkých písmen každého slova, neprehádzajú sa.
Ak však odstránite stĺpec, na ktorý ste použili veľké písmeno, optimalizovaný plán dotazu sa môže znova zbaliť. V tomto neobvyklom výsledku sa posledný krok postupne posúva, aj keď sa predchádzajúci krok nezbalí, ako je to znázornené na nasledujúcom obrázku. Tento výsledok znázorňuje, ako postupné posúvanie závisí od poradia krokov aj transformácií, ktoré platia.