Jaa


Kyselydiagnostiikan visualisointi ja tulkinta Power BI:ssä

Esittely

Kun olet tallentanut haluamasi diagnostiikan, seuraava askel on ymmärtää, mitä ne sanovat.

On hyödyllistä ymmärtää tarkalleen, mitä kukin sarake kyselydiagnostiikkaskeemassa tarkoittaa, mitä emme aio toistaa tässä lyhyessä tutoriaalissa. Tässä on täydellinen kirjoitus siitä.

Yleisesti ottaen visualisointia rakentaessa on parempi käyttää koko yksityiskohtaista taulukkoa. Koska riippumatta siitä, kuinka monta riviä se on, todennäköisesti katsot jonkinlaista kuvausta siitä, miten eri resursseissa käytetty aika kertyy tai mitä natiivikysely on lähettänyt.

Kuten mainitsin artikkelissamme diagnostiikan tallentamisesta, työskentelen OData- ja SQL-jäljityksillä samalle taululle (tai lähes sillä)—Northwindin Customers-taululle. Erityisesti keskityn asiakkaidemme yleisiin kysymyksiin ja yhteen helpoimmin tulkittavista jäljitysjoukoista: datamallin täydelliseen päivitykseen.

Visualisointien rakentaminen

Kun käyt läpi jälkiä, on monia tapoja arvioida niitä. Tässä artikkelissa keskitymme kahden visualisointijaon – toinen näyttää sinulle tärkeät yksityiskohdat, ja toinen tarkastelee helposti eri tekijöiden aikavaikutuksia. Ensimmäisessä visualisoinnissa käytetään taulukkoa. Voit valita minkä tahansa alan, mutta suositellut alat helpon ja yleisluontoisen katsauksen näkemiseksi ovat:

Toisessa visualisoinnissa yksi vaihtoehto on käyttää pinottua sarakkekaaviota. 'Axis'-parametrissa saatat haluta käyttää 'Id' tai 'Step'. Jos tarkastelemme päivitystä, koska sillä ei ole mitään tekemistä Editorin vaiheiden kanssa, haluamme todennäköisesti vain katsoa 'ID:tä'. 'Legend'-parametrille sinun pitäisi asettaa 'Category' tai 'Operation' (riippuen haluamastasi tarkkuudesta). 'Arvolle' aseta 'Exclusive Duration' (ja varmista, ettei se ole %, jotta saat raaka-keston arvon). Lopuksi Tooltipissä aseta 'Aikaisin aloitusaika'.

Kun visualisointisi on rakennettu, varmista, että lajittelet 'Aikaisin aloitusaika' nousevasti, jotta näet tapahtumajärjestyksen.

Yksityiskohtien visualisointi ja ajan yhdistäminen.

Vaikka tarkat tarpeesi voivat vaihdella, tämä kaavioiden yhdistelmä on hyvä paikka aloittaa, kun tarkastellaan lukuisia diagnostiikkatiedostoja ja monista eri syistä.

Visualisointien tulkinta

Kuten edellä mainittiin, kyselydiagnostiikalla voi yrittää vastata moniin kysymyksiin, mutta useimmin näemme kysymykset siitä, miten aikaa käytetään, ja kysymme, mitä lähdekoodiin lähetetty kysely on.

Kysyminen, miten aika kuluu, on helppoa, ja sama pätee useimpiin liittimiin. Varoitus kyselydiagnostiikassa, kuten muualla mainittiin, on se, että näet huomattavasti erilaisia ominaisuuksia riippuen liittimestä. Esimerkiksi monet ODBC-pohjaiset liittimet eivät tallenna tarkkaa tietoa siitä, mikä kysely lähetetään varsinaiseen taustajärjestelmään, koska Power Query näkee vain sen, mitä se lähettää ODBC-ajurille.

Jos haluamme nähdä, miten aika kuluu, voimme vain katsoa yllä rakentamiamme visualisointeja.

Koska esimerkkikyselyiden aikaarvot ovat niin pieniä, jos haluamme työskennellä Power BI:n ajan raportoinnin kanssa, on parempi muuntaa Exclusive Duration -sarake muotoon 'Seconds' Power Query -editorissa. Kun teemme tämän muunnoksen, voimme katsoa kaaviotamme ja saada hyvän käsityksen siitä, mihin aikaa käytetään.

OData-tuloksissani näen kuvassa, että suurin osa ajasta kului datan hakemiseen lähteestä – jos valitsen legendasta 'Data Source' -kohdan, se näyttää kaikki eri toiminnot, jotka liittyvät kyselyn lähettämiseen tietolähteeseen.

OData Northwindin kyselydiagnostiikan yhteenveto.

Jos teemme kaikki samat operaatiot ja rakennamme samankaltaisia visualisointeja, mutta SQL-jäljityksillä ODATA-jälkien sijaan, näemme, miten nämä kaksi tietolähdettä vertautuvat!

OData Northwind -kyselydiagnostiikan yhteenveto SQL-jäljityksillä.

Jos valitsemme Data Source -taulukon, kuten ODATA-diagnostiikassa, näemme, että ensimmäinen arviointi (2.3 tässä kuvassa) lähettää metatietokyselyitä, ja toinen arviointi hakee meille tärkeät tiedot. Koska tässä tapauksessa haemme pieniä määriä dataa, palautettu data vie pienen ajan (alle kymmenesosa sekunnista koko sekunnin arviointiin, ja itse tiedon hakemiseen alle kahdeskymmenesosasekunti), mutta se ei päde kaikissa tapauksissa.

Kuten yllä, voimme valita 'Data Source' -kategorian legendasta nähdäksemme lähetetyt kyselyt.

Datan tutkiminen

Polkujen tarkastelu

Kun tarkastelet tätä, jos aika tuntuu oudolta – esimerkiksi OData-kyselyssä saatat nähdä, että Data Source Query on seuraava arvo:

Request:
https://services.odata.org/V4/Northwind/Northwind.svc/Customers?$filter=ContactTitle%20eq%20%27Sales%20Representative%27&$select=CustomerID%2CCountry HTTP/1.1
Content-Type: application/json;odata.metadata=minimal;q=1.0,application/json;odata=minimalmetadata;q=0.9,application/atomsvc+xml;q=0.8,application/atom+xml;q=0.8,application/xml;q=0.7,text/plain;q=0.7

<Content placeholder>

Response:
Content-Type: application/json;odata.metadata=minimal;q=1.0,application/json;odata=minimalmetadata;q=0.9,application/atomsvc+xml;q=0.8,application/atom+xml;q=0.8,application/xml;q=0.7,text/plain;q=0.7
Content-Length: 435

<Content placeholder>

Tämä tietolähdekysely liittyy operaatioon, joka vie esimerkiksi vain yhden% eksklusiivisesta kestosta. Sillä välin on samankaltainen:

Request:
GET https://services.odata.org/V4/Northwind/Northwind.svc/Customers?$filter=ContactTitle eq 'Sales Representative'&$select=CustomerID%2CCountry HTTP/1.1

Response:
https://services.odata.org/V4/Northwind/Northwind.svc/Customers?$filter=ContactTitle eq 'Sales Representative'&$select=CustomerID%2CCountry
HTTP/1.1 200 OK

Tämä tietolähdekysely liittyy operaatioon, joka vie lähes 75% eksklusiivisesta kestosta. Jos kytket Polun päälle, huomaat, että jälkimmäinen on itse asiassa edellisen lapsi. Tämä tarkoittaa, että ensimmäinen kysely lisäsi käytännössä pienen ajan itsessään, ja varsinaista tiedonhakua seurataan 'sisäisen' kyselyn avulla.

Nämä ovat äärimmäisiä arvoja, mutta ne ovat sen rajoissa, mitä voidaan nähdä.