Bagikan melalui


Memantau dan mengoptimalkan performa gateway data lokal

Pemantauan performa gateway (pratinjau publik)

Untuk memantau performa, admin gateway secara tradisional bergantung pada pemantauan penghitung kinerja secara manual melalui alat Monitor Performa Windows. Kami sekarang menawarkan pengelogan kueri tambahan dan file templat PBI Performa Gateway untuk memvisualisasikan hasilnya. Fitur ini memberikan wawasan baru tentang penggunaan gateway. Anda dapat menggunakannya untuk memecahkan masalah kueri berkinerja lambat.

Catatan

Fitur ini saat ini hanya tersedia untuk gateway data lokal dalam mode standar. Ini tidak tersedia untuk mode pribadi.

Catatan

Diagnostik gateway tidak menangkap diagnostik yang terkait langsung dengan komputer (virtual) dan jaringannya, seperti bandwidth atau latensi. Namun, diagnostik ini dapat memengaruhi performa gateway Anda. Anda dapat menggunakan alat pemantauan sumber daya untuk memantau komputer Anda.

Pengelogan performa

Fitur ini sekarang diaktifkan secara default.

Catatan

  • Saat ini, kueri dari kapasitas premium ke gateway terkadang terlewatkan dalam pengelogan ini. Kami secara aktif berupaya memperbaiki masalah ini.
  • Saat ini, kueri laporan paginasi Power BI tidak dicatat menggunakan alat ini.

Mengonfigurasi pengelogan Performa

Ada nilai lain dalam file C:\Program Files\On-premises data gateway\Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.dll.config konfigurasi yang dapat Anda perbarui sesuai kebutuhan:

  • ReportFilePath: Menentukan jalur tempat empat file log disimpan. Secara default, jalur ini adalah \Users\PBIEgwService\AppData\Local\Microsoft\On-premises data gateway\Report atau \Windows\ServiceProfiles\PBIEgwService\AppData\Local\Microsoft\On-premises data gateway\Report. Jalur tergantung pada versi OS. Jika Anda menggunakan akun layanan untuk gateway selain PBIEgwService, ganti bagian jalur ini dengan nama akun layanan.
  • ReportFileCount: Menentukan jumlah file log dari setiap jenis yang akan dipertahankan. Nilai defaultnya adalah 10.
  • ReportFileSizeInBytes: Menentukan ukuran file yang akan dipertahankan. Nilai default adalah 104.857.600.
  • QueryExecutionAggregationTimeInMinutes: Menentukan jumlah menit di mana informasi eksekusi kueri dikumpulkan. Nilai defaultnya adalah 5.
  • SystemCounterAggregationTimeInMinutes: Menentukan jumlah menit di mana penghitung sistem dikumpulkan. Nilai defaultnya adalah 5.

Setelah Anda membuat perubahan pada file konfigurasi, mulai ulang gateway agar nilai konfigurasi ini berlaku. File laporan sekarang sedang dibuat di lokasi yang Anda tentukan untuk ReportFilePath.

Catatan

Dibutuhkan waktu hingga 10 menit ditambah jumlah waktu yang ditetapkan untuk QueryExecutionAggregationTimeInMinutes dalam file konfigurasi hingga file mulai muncul di folder.

Memahami log performa

Saat Anda mengaktifkan fitur ini, empat file log baru dibuat:

  • Laporan Eksekusi Kueri
  • Laporan Mulai Kueri
  • Laporan Agregasi Eksekusi Kueri
  • Laporan Agregasi Penghitung Sistem

Laporan Eksekusi Kueri berisi informasi eksekusi kueri terperinci. Atribut berikut diambil.

Atribut Deskripsi
GatewayObjectId Pengidentifikasi unik untuk gateway.
RequestId Pengidentifikasi unik untuk permintaan gateway. Ini bisa sama untuk beberapa kueri.
DataSource Berisi jenis sumber data dan sumber data.
QueryTrackingId Pengidentifikasi unik untuk kueri. Namun mungkin berulang jika kueri gagal dan dicoba kembali.
QueryExecutionEndTimeUTC Waktu ketika eksekusi kueri selesai.
QueryExecutionDuration (ms) Durasi untuk eksekusi kueri.
QueryType Jenis kueri. Misalnya, kueri yang diteruskan bisa berupa refresh Power BI atau DirectQuery. Atau, itu bisa menjadi kueri dari Power Apps dan Power Automate.
DataProcessingEndTimeUTC Waktu ketika aktivitas pemrosesan data seperti penampungan, pengambilan data, kompresi, dan pemrosesan data selesai.
DataProcessingDuration (ms) Durasi untuk aktivitas pemrosesan data seperti penampungan, pengambilan data, kompresi, dan pemrosesan data.
Keberhasilan Menunjukkan apakah kueri berhasil atau gagal.
ErrorMessage Jika kueri gagal, menunjukkan pesan kesalahan.
SpoolingDiskWritingDuration (ms) Menunjukkan jumlah waktu oleh gateway untuk menulis semua data ke disk
SpoolingDiskReadingDuration (ms) Menunjukkan jumlah waktu oleh gateway untuk membaca semua data ke disk
SpoolingTotalDataSize (byte) Ukuran(Terkompresi) data yang ditulis ke/dibaca dari disk
DataReadingAndSerializationDuration (ms) Menunjukkan jumlah waktu yang dibutuhkan gateway untuk membaca data dari sumber data dan menserialisasikannya ke dalam paket.
DiskRead (byte/detik) Menunjukkan byte yang dibaca oleh gateway per detik. DiskRead(byte/dtk) = SpoolingTotalDataSize / SpoolingDiskReadingDuration
DiskWrite (byte/dtk) Menunjukkan byte yang ditulis oleh gateway per detik. DiskWrite(byte/dtk) = SpoolingTotalDataSize / SpoolingDiskWritingDuration

Laporan Mulai Kueri berisi kueri dan waktu mulai kueri. Atribut berikut diambil.

Atribut Deskripsi
GatewayObjectId Pengidentifikasi unik untuk gateway.
RequestId Pengidentifikasi unik untuk permintaan gateway. Ini bisa sama untuk beberapa kueri.
DataSource Berisi jenis sumber data dan sumber data.
QueryTrackingId Pengidentifikasi unik untuk kueri. Namun mungkin berulang jika kueri gagal dan dicoba kembali.
QueryExecutionStartTimeUTC Waktu saat eksekusi kueri dimulai.
QueryType Jenis kueri. Misalnya, kueri yang diteruskan bisa berupa refresh Power BI atau DirectQuery. Atau, itu bisa menjadi kueri dari Power Apps dan Power Automate.
TeksKueri Selesaikan kueri yang dikodekan dengan base64.
EvaluationContext Berisi artifactId (yaitu, datasetid untuk model semantik, dataflowsId, dll.) bersama dengan id pelacakan tambahan tergantung pada artefak. Perhatikan bahwa bidang ini hanya mengisi beban kerja yang didukung di Fabric, Power Platform, Azure Analysis Services, dan konektor tertentu di Azure Logic Apps. Ini termasuk: Model Semantik, Aliran Data Gen2, dan aliran data Power Platform. Ini juga mencakup beban kerja Azure Logic Apps untuk konektor Mashup Query, HTTP, dan File Azure. Nilai akan berisi ID pelacakan yang berbeda tergantung pada beban kerja yang digunakan. Power BI dan Fabric Dataflows Gen 1 dan Power BI Paginated Reports tidak didukung.

Laporan Agregasi Eksekusi Kueri berisi informasi kueri yang dikumpulkan ke interval waktu oleh GatewayObjectId, DataSource, Success, dan QueryType. Nilai defaultnya adalah 5 menit, tetapi Anda dapat menyesuaikannya. Atribut berikut diambil.

Atribut Deskripsi
GatewayObjectId Pengidentifikasi unik untuk gateway.
AgregasiStartTimeUTC Awal jendela waktu di mana atribut kueri diagregasi.
AggregationEndTimeUTC Akhir jendela waktu di mana atribut kueri diagregasi.
DataSource Berisi jenis sumber data dan sumber data.
Keberhasilan Menunjukkan apakah kueri berhasil atau gagal.
AverageQueryExecutionDuration (ms) Waktu eksekusi kueri rata-rata untuk jendela waktu agregasi.
MaxQueryExecutionDuration (ms) Waktu eksekusi kueri maksimum untuk jendela waktu agregasi.
MinQueryExecutionDuration (ms) Waktu eksekusi kueri minimum untuk jendela waktu agregasi.
QueryType Jenis kueri. Misalnya, kueri yang diteruskan bisa berupa refresh Power BI atau DirectQuery. Atau, itu bisa menjadi kueri dari Power Apps dan Power Automate.
AverageDataProcessingDuration (ms) Waktu rata-rata untuk aktivitas pemrosesan data seperti penampungan, pengambilan data, pemadatan, dan pemrosesan data untuk jendela waktu agregasi.
MaxDataProcessingDuration (ms) Waktu maksimum untuk aktivitas pemrosesan data seperti penampungan, pengambilan data, pemadatan, dan pemrosesan data untuk jendela waktu agregasi.
MinDataProcessingDuration (ms) Waktu minimum untuk aktivitas pemrosesan data seperti penampungan, pengambilan data, kompresi, dan pemrosesan data untuk jendela waktu agregasi.
Hitung Jumlah kueri.

Laporan Agregasi Penghitung Sistem berisi nilai penghitung sistem yang dikumpulkan ke interval waktu. Nilai defaultnya adalah 5 menit, tetapi Anda dapat menyesuaikannya. Atribut berikut diambil.

Atribut Deskripsi
GatewayObjectId Pengidentifikasi unik untuk gateway.
AgregasiStartTimeUTC Mulai jendela waktu untuk penghitung sistem yang dikumpulkan.
AggregationEndTimeUTC Akhir jendela waktu untuk penghitung sistem yang dikumpulkan.
CounterName Penghitung sistem masing-masing berlaku untuk satu server yang menghosting simpul gateway dan meliputi:
SystemCPUPercent: CPU yang digunakan pada server sebagai persentase dari total CPU yang tersedia.
SystemMEMUsedPercent: Memori yang digunakan pada server sebagai persentase dari total memori yang tersedia.
GatewayCPUPercent: Jumlah persentase CPU yang digunakan oleh proses gateway pada setiap inti. Untuk mendapatkan persentase CPU yang digunakan di server, bagi GatewayCPUPercent dengan jumlah inti.
GatewayMEMKb: Jumlah total memori dalam kilobyte yang digunakan oleh proses gateway.
Maks Nilai maksimum untuk penghitung sistem untuk jendela waktu agregasi.
Min Nilai minimum untuk penghitung sistem untuk jendela waktu agregasi.
Tengah Nilai rata-rata untuk penghitung sistem untuk jendela waktu agregasi.

Memvisualisasikan performa gateway

Sekarang, Anda dapat memvisualisasikan data yang ada di file log.

  1. Unduh templat PBI Performa Gateway, dan buka dengan menggunakan Power BI Desktop.

  2. Dalam kotak dialog yang terbuka, centang apakah jalur folder cocok dengan nilai di ReportFilePath.

    Pop-up untuk jalur folder.

  3. Pilih Muat, dan file templat mulai memuat data dari file log Anda. Semua visual diisi dengan menggunakan data dalam laporan.

  4. Secara opsional, simpan file ini sebagai PBIX, dan terbitkan ke layanan Anda untuk refresh otomatis. Untuk mempelajari selengkapnya, buka Menerbitkan model dan laporan semantik dari Power BI Desktop.

Anda juga dapat menyesuaikan file templat ini agar sesuai dengan kebutuhan Anda. Untuk informasi selengkapnya tentang templat Power BI, buka posting blog Microsoft Power BI ini.

Memantau penyimpanan spool

Secara default, penyimpanan penampung untuk gateway terletak di C:\Users\PBIEgwService\AppData\Local\Microsoft\Gateway data lokal\Spooler. Pastikan untuk memantau lokasi ini untuk memastikan ada ruang disk kosong yang memadai. Informasi selengkapnya: Data spooling gateway

Memantau konkurensi anggota gateway

Secara default, batas jumlah kueri yang dapat berjalan secara bersamaan pada simpul gateway adalah 40. Mencapai batas ini sering kali akan menyebabkan kueri masuk diantrekan tertunda untuk berjalan untuk waktu yang lama, yang akan mengakibatkan penurunan performa dan jenis kesalahan waktu habis. Jika Anda menduga anggota gateway mencapai batas ini, harap aktifkan pengelogan tambahan, ekspor log gateway, lihat file Mashup*.log , cari kata kunci "runningCount" dan "pendingCount" dan verifikasi apakah kata kunci "runningCount" sering mendekati 40, atau jika "pendingCount" sering di atas nol. Lihat dokumen ini untuk detail selengkapnya tentang cara merencanakan dan menskalakan gateway Anda.

Kueri berkinerja lambat

Kueri yang berjalan lama mungkin memerlukan modifikasi tambahan pada sumber data Anda atau pengoptimalan lebih lanjut kueri itu sendiri. Ini bisa untuk refresh Power BI atau untuk kueri database langsung, seperti Power BI DirectQuery, Power Apps, atau Azure Logic Apps.

Secara default, gateway melakukan pengelogan dasar. Jika Anda menyelidiki kueri berkinerja lambat, selain menggunakan fitur pemantauan performa, Anda dapat mengaktifkan Pencatatan tambahan untuk sementara waktu untuk mengumpulkan informasi log tambahan, termasuk log mesin mashup, string kueri, dan pelacakan tingkat verbose. Log ini ditulis ke tempat yang sama dengan log gateway normal Anda. Untuk melakukan ini, di aplikasi gateway data lokal pilih Diagnostik Pengelogan> tambahan.

Aktifkan pengelogan tambahan.

Mengaktifkan pengaturan ini kemungkinan akan meningkatkan ukuran log secara signifikan, berdasarkan penggunaan gateway. Kami menyarankan agar setelah Anda selesai meninjau log yang Anda nonaktifkan pengelogan tambahan. Sebaiknya jangan biarkan pengaturan ini diaktifkan selama penggunaan gateway normal.

Mengoptimalkan performa dengan streaming data

Secara default, gateway data lokal menyimpan data sebelum mengembalikannya ke model semantik, berpotensi menyebabkan performa yang lebih lambat selama operasi pemuatan dan refresh data. Perilaku default dapat diganti.

  1. Dalam file C:\Program Files\On-Premises data gateway\Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.dll.config, atur pengaturan StreamBeforeRequestCompletes ke True, lalu simpan.

    <setting name="StreamBeforeRequestCompletes" serializeAs="String">
       <value>True</value>
    </setting>
    
  2. Di Gateway> data lokalService Pengaturan, mulai ulang gateway.

Catatan

Mengaktifkan StreamBeforeRequestCompletes dapat menyebabkan masalah keandalan kueri saat menggunakan sumber data lambat atau dengan koneksi jaringan yang tidak stabil/terbatas.

Optimalkan performa dengan mengecualikan folder tertentu dari pemindaian antivirus

Untuk menghindari potensi dampak performa, folder tertentu dapat dikecualikan dari pemindaian antivirus saat Anda menggunakan perangkat lunak antivirus tingkat file di server tempat gateway data lokal diinstal. Jika folder ini tidak dikecualikan, Anda mungkin mengamati dampak performa dan perilaku tak terduga lainnya karena folder ini menerima sejumlah besar operasi tulis dan, pada inti, alur data gateway data lokal.

Folder yang mungkin harus dikecualikan dari pemindaian antivirus di server gateway data lokal

Catatan

Drive tempat penampung berikut mewakili huruf drive tempat gateway data lokal diinstal. Biasanya, huruf driver adalah C. Pemegang tempat berikut ServiceAccount mewakili akun layanan yang menjalankan gateway data lokal. Akun defaultnya adalah PBIEgwService.

  • Direktori pengelogan: Drive:\Windows\ServiceProfiles\ ServiceAccount \AppData\Local\Microsoft\Gateway data lokal
  • Direktori penyimpanan penampung: Drive:\Windows\ServiceProfiles\ ServiceAccount \AppData\Local\Microsoft\Gateway data lokal\Spooler

Langkah berikutnya