Indikátory skladacích krokov

Poznámka

Pred prečítaním tohto článku odporúčame prečítať si skladanie dotazu v doplnku Power Query, aby ste lepšie pochopili, ako funguje skladanie v doplnku Power Query.

Skladacie indikátory krokov vám umožňujú pochopiť kroky, ktoré sa skladajú alebo nezložia.

Pomocou krokov skladacích indikátorov, keď urobíte zmenu, ktorá zlomí skladacie, bude to zrejmé. To vám umožní ľahšie vyriešiť problémy rýchlejšie, vyhnúť sa problémom s výkonom a mať lepší prehľad o vašich dotazoch. Vo väčšine prípadov narazíte na kroky, kroky sa zložia alebo nezložia. Existuje mnoho prípadov, keď výsledok nie je tak zrejmý, diskutované v časti o ukazovateľoch diagnostiky krokov (dynamické, nepriehľadné a neznáme) neskôr v tomto článku.

Poznámka

Funkcia indikátorov skladania krokov je k dispozícii iba pre Power Query Online.

Diagnostika krokov tlmočenia

Pri pohľade na diagnostiku krokov je najdôležitejšie pochopiť, že diagnostický stav nie je sekvenčný. Inými slovami, indikátor pre tento krok popisuje, či dotaz ako celok, až do tohto bodu, sa zloží alebo nie. Ak máte indikátor, ktorý ukazuje, že dotaz sa nezloží, za ktorým nasleduje indikátor, ktorý ukazuje, že sa zloží, znamená to, že každý krok až do tohto bodu sa zloží.

Príklad toho môžete vidieť aj pri jednoduchom dotaze proti zdroju SQL.

Pomocou vzorovej databázy Northwind sa pripojte k tabuľke Produkty a načítajte údaje. Ak to urobíte prostredníctvom navigačného zážitku, poskytnete nasledujúci dotaz:

let
  Source = Sql.Databases("localhost"),
  #"Navigation 1" = Source{[Name = "AdventureWorksLT"]}[Data],
  #"Navigation 2" = #"Navigation 1"{[Schema = "SalesLT", Item = "Product"]}[Data]
in
  #"Navigation 2"

Ak sa pozriete na to, ako sa to prejavuje v krokových skladacích ukazovateľoch, môžete vidieť, že prvý krok sa nezloží, druhý krok je nepresvedčivý a tretí krok sa zloží.

Zdroj, Navigácia 1 a Navigácia 2 kroky na table Indikátor skladania.

Môžete vidieť, že počiatočné kroky sa nezložia, ale posledný krok generovaný pri načítaní údajov sa spočiatku zloží. Ako sa riešia prvé kroky (Zdroj, niekedy Navigácia) závisí od konektora. Napríklad s SQL sa s ním zaobchádza ako s hodnotou tabuľky katalógu, ktorá sa nezloží. Akonáhle však vyberiete údaje pre tento konektor, bude to tak.

Naopak, môže to tiež znamenať, že váš dotaz sa zloží až do bodu a potom sa zastaví skladanie. Na rozdiel od prípadu, keď máte skladací indikátor pre krok, ktorý ukazuje, že všetko sa zloží, keď máte indikátor, ktorý nie je skladací, neznamená to, že sa všetko nezloží - namiesto toho to znamená, že "nie všetko" sa zloží. Vo všeobecnosti sa všetko až do posledného skladacieho indikátora zloží, pričom po ďalších operáciách sa uskutoční viac operácií.

Úpravou príkladu zhora môžete poskytnúť transformáciu, ktorá sa nikdy nezloží - veľké písmená každé slovo.

let
  Source = Sql.Databases("localhost"),
  #"Navigation 1" = Source{[Name = "AdventureWorksLT"]}[Data],
  #"Navigation 2" = #"Navigation 1"{[Schema = "SalesLT", Item = "Product"]}[Data],
  #"Capitalized each word" = Table.TransformColumns(#"Navigation 2", {{"ProductID", each Text.Proper(Text.From(_)), type text}})
in
  #"Capitalized each word"

V krokových skladacích ukazovateľoch uvidíte, že máte presne rovnaké ukazovatele ako vyššie, s výnimkou posledného kroku, ktorý sa nezloží. Všetko až do tohto posledného kroku sa vykoná na zdroji údajov, zatiaľ čo posledný krok sa vykoná lokálne.

Zdroj, Navigácia 1, Navigácia 2 a Veľké písmená Každý krok slova na table Indikátor skladania.

Indikátory diagnostiky krokov

Skladacie indikátory krokov používajú základný plán dotazu a vyžadujú, aby bol schopný získať informácie o dotaze na jeho nahlásenie. V súčasnosti plán dotazu podporuje iba tabuľky, takže niektoré prípady (zoznamy, záznamy, primitívy) sa nebudú vykazovať ako skladacie alebo nie. Podobne sa konštantné tabuľky budú vykazovať ako nepriehľadné.

Indikátor Ikona Description
Postupné posúvanie Indikátor skladania pre "zloží sa". Indikátor skladania informuje, že dotaz až do tohto kroku bude vyhodnotený zdrojom údajov.
Nie skladanie Indikátor skladania pre "nezloďovanie". Indikátor nezloženia vám povie, že časť dotazu až do tohto kroku sa vyhodnotí mimo zdroja údajov. Môžete ho porovnať s posledným indikátorom skladania, ak existuje, aby ste zistili, či môžete zmeniť usporiadanie dotazu tak, aby bol výkonnejší.
Môže sa zložiť Indikátor skladania pre "môže sa zložiť". Indikátory môžu zložiť sú nezvyčajné. Znamená to, že dotaz "by" mohol zložiť. Označujú buď, že skladanie/nie skladanie bude určené v čase behu, pri vytiahnutí výsledkov z dotazu a že plán dotazu je dynamický. Tieto sa pravdepodobne zobrazia iba s pripojeniami ODBC alebo OData.
Nepriehľadný Indikátor skladania pre "nepriehľadné, nepresvedčivé skladanie". Nepriehľadné indikátory vám povedia, že výsledný plán dotazu je z nejakého dôvodu nepresvedčivý. Vo všeobecnosti označuje, že existuje skutočná "konštantná" tabuľka, alebo že táto transformácia alebo konektor nie je podporovaný indikátormi a nástrojom plánu dotazov.
Neznáme Indikátor skladania pre "žiadny plán dotazu". Neznáme indikátory predstavujú absenciu plánu dotazu, a to buď z dôvodu chyby alebo pokusu o spustenie hodnotenia plánu dotazu na niečom inom ako v tabuľke (napríklad v zázname, zozname alebo primitívnom).

Príklad analýzy

Príklad môžete vidieť pripojením k tabuľke Produkty v adventure works (SQL). Počiatočné zaťaženie, podobne ako vyššie, bude vyzerať takto:

Počiatočné ukazovatele krokov na načítanie tabuľky Produkt.

Pridaním ďalších krokov, ktoré sa zložia, sa táto zelená čiara rozšíri. Je to preto, že tento krok sa tiež skladá.

Pridanie kroku odstránenia stĺpca k predchádzajúcemu dotazu a rozšírenie riadka indikátora skladania.

Pridaním kroku, ktorý sa nezloží, sa zobrazí indikátor, napríklad Veľké písmená, ktoré sa každé slovo nikdy nezloží. Vidíme, že indikátor sa mení, čo ukazuje, že od tohto kroku sa prestalo skladať. Ako už bolo spomenuté, predchádzajúce kroky sa budú stále stáť.

Pridanie veľkými písmenami Každý krok slova na prerušenie skladania.

Pridanie ďalších krokov po prúde, ktoré závisia od kapitalizácie každého kroku, sa nebude naďalej kladať.

Pridajte ďalšie kroky, ktoré sa nezložia.

Ak však odstránite stĺpec, na ktorý ste použili veľké písmená, aby sa optimalizovaný plán dotazov mohol znova zložiť, takýto výsledok sa zobrazí; Aj keď niečo také je nezvyčajné. To vám ukáže, ako to nie je len poradie krokov, ale aj skutočné transformácie, ktoré platia.

Zobrazenie toho, ako odstránenie problematického stĺpca umožňuje, aby sa veci zložili bez odstránenia kroku.