Kyselyn lähteeseen delegoinnin ilmaisimet
Muistiinpano
Ennen kuin luet tämän artikkelin, suosittelemme, että luet Yleiskatsaus kyselyn arviointiin ja kyselyn delegointaan lähteeseen Power Queryssa , jotta ymmärrät paremmin, miten delegointi toimii Power Queryssä.
Kyselyn delegoinnin ilmaisimet auttavat ymmärtämään vaiheet, jotka delegoidaan lähteeseen tai ei taiteta.
Kyselyn delegoinnin ilmaisimet ovat ilmeisiä, kun teet muutoksen, joka rikkoo lähteeseen delegoinnin. Tämän ominaisuuden avulla voit ratkaista ongelmia entistä helpommin, välttää suorituskykyongelmia ja saada kyselyistäsi paremman käsityksen. Useimmissa tapauksissa törmäät vaiheisiin, jotka delegoivat lähteeseen tai eivät ole lähteessä. On kuitenkin monia tapauksia, joissa tulos ei ole yhtä ilmeinen, ja näitä tapauksia käsitellään vaiheen diagnostiikkailmaisimissa (dynaaminen, läpinäkymätön ja tuntematon).
Muistiinpano
Kyselyn delegoinnin ilmaisimet -ominaisuus on käytettävissä vain Power Query Onlinessa.
Kyselyn delegoinnin diagnostiikan tulkitseminen
Kun tarkastelet kyselyn delegoinnin lähteeseen -ilmaisinta vaiheen vieressä, tärkeintä on, että diagnostiikkatila ei ole peräkkäin. Toisin sanoen vaiheen ilmaisin kuvaa, onko kysely kokonaisuutena enintään siihen asti taitettu vai ei. Jos ilmaisin näyttää, että kyselyä ei taiteta lähteeseen ja sen jälkeen ilmaisin näyttää, että se taittuu, kyselysi tähän asti delegoidaan lähteeseen.
Tämä tulkinta toimii myös yksinkertaisessa SQL-lähdekyselyssä. Esimerkiksi AdventureWorks-mallitietokannan avulla voit muodostaa yhteyden Production.Product-taulukkoon ja ladata tiedot. Kun tämä malli ladataan Power Query -siirtymistoiminnon kautta, saat seuraavan kyselyn:
let
Source = Sql.Database("ServerName", "AdventureWorks"),
Navigation = Source{[Schema = "Production", Item = "Product"]}[Data]
in
Navigation
Jos tarkastelet, miten tämä koodi näkyy Kyselyn delegointi lähteeseen -ilmaisimissa, huomaat, että ensimmäinen vaihe ei ole ratkaiseva. Toinen vaihe kuitenkin delegoidaan lähteeseen, mikä tarkoittaa sitä, että kysely lähteeseen asti.
Tässä esimerkissä alkuvaiheita ei voida vahvistaa lähteeseen (ei ole ratkaisevaa), mutta lopullinen vaihe luodaan, kun lataat tiedot aluksi lähteeseen. Se, miten ensimmäiset vaiheet (Lähde ja joskus muut siirtymisvaiheet ) käsitellään, määräytyy liittimen mukaan. Esimerkiksi SQL:ssä se käsitellään luettelotaulukkoarvona, jota ei voi delegoida lähteeseen. Kuitenkin heti, kun valitset tiedot kyseiselle liittimelle, se taittuu.
Toisaalta tämä merkintä voi tarkoittaa myös sitä, että kyselysi taittuu tiettyyn pisteeseen ja lopettaa sitten delegoinnin lähteeseen. Toisin kuin tapauksessa, jossa sinulla on taitettava ilmaisin osavaiheelle, joka näyttää, että kaikki lähteeseen, jos sinulla on taittamaton ilmaisin, se ei tarkoita sitä, että kaikki ei taitu. Sen sijaan se tarkoittaa, että "kaikki ei" taittuu. Yleensä kaikki viimeiseen lähteeseen delegoinnin ilmaisimeen asti taittuu, ja sen jälkeen tapahtuu enemmän toimintoja.
Jos muokkaat edellistä esimerkkiä, voit antaa muunnoksen, jota ei koskaan taiteta: kirjoita jokainen sana isolla kirjaimella.
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"
Kyselyn delegoinnin ilmaisimissa käytössä on samat ilmaisimet kuin aiemminkin, mutta lopullinen vaihe ei taitu. Kaikki tähän viimeiseen vaiheeseen asti suoritetaan tietolähteessä, kun taas viimeinen vaihe suoritetaan paikallisesti.
Vaiheen diagnostiikan ilmaisimet
Ilmaisimien kyselyn delegointi lähteeseen käyttää pohjana olevaa kyselymallia ja edellyttää, että se voi saada tietoja kyselystä raporttia varten. Tällä hetkellä kyselysuunnitelma tukee vain taulukoita, joten joissakin tapauksissa (luettelot, tietueet, primitivit) ei raportoida lähteeseen delegoinniksi tai olematta. Samalla tavalla vakiotaulukoiden raportti on läpinäkymätön.
Ilmaisin | Icon | Kuvaus |
---|---|---|
Taitto | Lähteeseen delegoinnin ilmaisin kertoo, että tietolähde arvioi kyselyn tähän vaiheeseen asti. | |
Ei taiteta | Ei-lähteeseen -ilmaisin kertoo, että osa kyselystä tähän vaiheeseen asti arvioidaan tietolähteen ulkopuolella. Voit verrata sitä viimeiseen lähteeseen delegoinnin ilmaisimeen, jos sellainen on, jotta näet, voitko järjestää kyselyn uudelleen suorituskykyisimmäksi. | |
Saattaa taittaa | Ilmaisimet saattavat olla harvinaisia. Ne tarkoittavat sitä, että kysely "saattaa" delegoida lähteeseen. Ne ilmaisevat, että joko lähteeseen delegointi tai lähteeseen delegointi määritetään suorituksen aikana, kun tuloksia vastaanotetaan kyselystä, ja että kyselysuunnitelma on dynaaminen. Nämä ilmaisimet näkyvät todennäköisesti vain ODBC- tai OData-yhteyksillä. | |
Läpinäkymätön | Läpinäkymättömät ilmaisimet kertovat, että tulokseksi saatava kyselysuunnitelma ei jostain syystä ole ratkaiseva. Se yleensä ilmaisee, että on olemassa todellinen vakiotaulukko tai että ilmaisimet ja kyselysuunnitelmatyökalu eivät tue kyseistä muunninta tai liitintä. | |
Tuntematon | Tuntemattomat ilmaisimet edustavat kyselysuunnitelman puuttumista joko virheen vuoksi tai yrittäessään suorittaa kyselysuunnitelman arviointia jossakin muussa kuin taulukossa (kuten tietueessa, luettelossa tai primitiivissä). |
Esimerkkianalyysi
Aloita esimerkiksi yhdistämällä Production.Product-taulukkoon Adventure Worksissa (SQL). Alkuperäinen lataus näyttää alkuperäisen esimerkin kaltaiselta.
Lisävaiheiden lisääminen lähteeseen laajentaa kyseisen vihreän viivan oikealla puolella. Tämä laajennus tapahtuu, koska myös tämä vaihe taittuu.
Sellaisen vaiheen lisääminen, joka ei taita, näyttää eri ilmaisimen. Esimerkiksi isoilla kirjaimilla kutakin sanaa ei koskaan taiteta. Ilmaisin muuttuu osoittaen, että tässä vaiheessa se lakkasi taittamasta. Kuten aiemmin mainittiin, edelliset vaiheet delegoidaan edelleen lähteeseen.
Lisäämällä vaiheita, jotka riippuvat kunkin vaiheen isosta alkukirjaimesta, ei edelleenkään taiteta.
Jos kuitenkin poistat sarakkeen, jolle olet käyttänyt isoa kirjainta, jotta optimoitu kyselysuunnitelma voi delegoida lähteeseen vielä kerran, saat seuraavan kuvan kaltaisen tuloksen. Kuitenkin jotain tällaista on harvinaista. Tämä kuva havainnollistaa, miten vaiheiden järjestyksen lisäksi myös todelliset muunnokset ovat käytössä.