Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Pendahuluan
Setelah Anda merekam diagnostik yang ingin Anda gunakan, langkah berikutnya adalah dapat memahami apa yang mereka katakan.
Sangat membantu untuk memiliki pemahaman yang baik tentang apa sebenarnya setiap kolom dalam skema diagnostik kueri, yang tidak akan kita ulangi dalam tutorial singkat ini. Ada tulisan lengkap tentang itu di sini.
Secara umum, saat membangun visualisasi, lebih baik menggunakan tabel terperinci lengkap. Karena tidak peduli berapa banyak barisnya, apa yang mungkin Anda lihat adalah semacam representasi tentang bagaimana waktu yang dihabiskan dalam sumber daya yang berbeda dijumlahkan, atau apa yang dihasilkan oleh kueri asli.
Seperti disebutkan dalam artikel kami tentang merekam diagnostik, saya bekerja dengan jejak OData dan SQL untuk tabel yang sama (atau hampir sama)—tabel Pelanggan dari Northwind. Secara khusus, saya akan fokus pada pertanyaan umum dari pelanggan kami, dan salah satu serangkaian jejak yang lebih mudah untuk diinterpretasikan: penyegaran penuh model data.
Membangun visualisasi
Saat Anda menelusuri jejak data, ada banyak cara untuk mengevaluasi jejak tersebut. Dalam artikel ini, kita akan fokus pada dua visualisasi terpisah--satu untuk menunjukkan detail yang Anda pedulikan, dan yang lain untuk dengan mudah melihat kontribusi waktu dari berbagai faktor. Untuk visualisasi pertama, tabel digunakan. Anda dapat memilih bidang apa pun yang Anda suka, tetapi bidang yang direkomendasikan untuk tampilan tingkat tinggi yang mudah dipahami adalah:
- Id
- Waktu Mulai
- Pertanyaan
- Step
- Kueri Sumber Data
- Durasi Eksklusif (%)
- Jumlah Baris
- Kategori
- Adalah Kueri Pengguna
- Jalur
Untuk visualisasi kedua, salah satu pilihannya adalah menggunakan Bagan Kolom Bertumpuk. Dalam parameter 'Axis', Anda mungkin ingin menggunakan 'Id' atau 'Langkah'. Jika kita melihat Refresh, karena tidak ada hubungannya dengan langkah-langkah di Editor itu sendiri, kita mungkin hanya ingin melihat 'Id'. Untuk parameter 'Legenda', Anda harus mengatur 'Kategori' atau 'Operasi' (tergantung pada granularitas yang Anda inginkan). Untuk 'Nilai', atur 'Durasi Eksklusif' (dan pastikan itu bukan %, sehingga Anda mendapatkan nilai durasi mentah). Terakhir, untuk Tooltip, atur 'Paling Awal Waktu Mulai'.
Setelah visualisasi Anda dibangun, pastikan Anda mengurutkan berdasarkan ' Waktu Mulai Terawal' secara naik sehingga Anda dapat melihat urutan kejadian.
Meskipun kebutuhan persis Anda mungkin berbeda, kombinasi bagan ini adalah langkah awal yang baik untuk menelaah berbagai file diagnostik dan untuk berbagai tujuan.
Menginterpretasikan visualisasi
Seperti disebutkan di atas, ada banyak pertanyaan yang dapat Anda coba jawab dengan diagnostik kueri, tetapi keduanya yang paling sering kita lihat adalah menanyakan berapa waktu yang dihabiskan, dan menanyakan apa kueri yang dikirim ke sumbernya.
Menanyakan bagaimana waktu yang dihabiskan mudah, dan akan serupa untuk sebagian besar konektor. Peringatan dengan diagnostik kueri, seperti yang disebutkan di tempat lain, adalah Anda akan melihat perbedaan kemampuan yang sangat besar tergantung pada konektor. Misalnya, banyak konektor berbasis ODBC tidak akan memiliki rekaman yang akurat tentang kueri apa yang dikirim ke sistem back-end aktual, karena Power Query hanya melihat apa yang dikirimnya ke driver ODBC.
Jika kita ingin melihat bagaimana waktu yang dihabiskan, kita hanya dapat melihat visualisasi yang kita bangun di atas.
Sekarang, karena nilai waktu untuk kueri sampel yang kami gunakan di sini sangat kecil, jika kita ingin bekerja dengan cara Power BI melaporkan waktu, lebih baik jika kita mengonversi kolom Durasi Eksklusif menjadi 'Detik' di editor Power Query. Setelah kita melakukan konversi ini, kita dapat melihat bagan kita dan mendapatkan gambaran yang layak tentang di mana waktu dihabiskan.
Untuk hasil OData saya, saya melihat pada gambar bahwa sebagian besar waktu yang dihabiskan untuk mengambil data dari sumber—jika saya memilih item 'Sumber Data' pada legenda, itu menunjukkan kepada saya semua operasi berbeda yang terkait dengan pengiriman kueri ke Sumber Data.
Jika kita melakukan semua operasi yang sama dan membangun visualisasi serupa, tetapi dengan jejak SQL alih-alih yang ODATA, kita dapat melihat bagaimana dua sumber data dibandingkan!
Jika kita memilih tabel Sumber Data, seperti diagnostik ODATA, kita dapat melihat evaluasi pertama (2.3 dalam gambar ini) menghasilkan kueri metadata, dengan evaluasi kedua benar-benar mengambil data yang kita pedulikan. Karena kami mengambil sejumlah kecil data dalam hal ini, data yang ditarik kembali membutuhkan waktu yang sedikit (kurang dari sepersepuluh detik agar evaluasi kedua seluruhnya terjadi, dengan kurang dari dua puluh detik untuk pengambilan data itu sendiri), tetapi itu tidak akan benar dalam semua kasus.
Seperti di atas, kita dapat memilih kategori 'Sumber Data' pada legenda untuk melihat kueri yang dipancarkan.
Menganalisis data secara mendalam
Melihat jalur
Saat Anda melihat ini, jika sepertinya waktu yang dihabiskan aneh—misalnya, pada kueri OData Anda mungkin melihat bahwa ada Kueri Sumber Data dengan nilai berikut:
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>
Kueri Sumber Data ini dikaitkan dengan operasi yang hanya memakan waktu, misalnya, 1% Durasi Eksklusif. Sementara itu, ada yang serupa:
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
Kueri Sumber Data ini dikaitkan dengan operasi yang memakan hampir 75% dari Waktu Eksklusif. Jika Anda menyalakan Path, Anda menemukan bahwa yang terakhir sebenarnya adalah anak dari yang pertama. Ini berarti bahwa kueri pertama pada dasarnya menambahkan sejumlah kecil waktu sendiri, dengan pengambilan data sebenarnya yang dipantau oleh kueri 'bagian dalam'.
Ini adalah nilai ekstrem, tetapi berada dalam batas-batas apa yang mungkin terlihat.