Pengoptimalan dan penyimpanan sementara himpunan data

Dasbor AI/BI menyimpan hasil kueri dalam cache untuk meningkatkan waktu pemuatan. Halaman ini menjelaskan cara kerja cache dasbor dan pengoptimalan dataset, kapan dasbor menggunakan hasil yang di-cache, dan kapan dasbor menjalankan ulang kueri pada gudang data SQL.

Kinerja kueri

Anda dapat memeriksa kueri dan kinerjanya dalam riwayat kueri di ruang kerja. Riwayat kueri memperlihatkan kueri SQL yang dilakukan menggunakan gudang SQL. Klik ikon Riwayat.Riwayat Kueri di bilah samping untuk menampilkan riwayat kueri. Lihat Riwayat kueri.

Untuk himpunan data dasbor, Azure Databricks menerapkan pengoptimalan performa tergantung pada ukuran hasil himpunan data. Untuk informasi tentang ambang batas performa himpunan data, lihat Ambang performa himpunan data.

Pengoptimalan himpunan data

Dasbor Anda mengoptimalkan kecepatan dengan melakukan operasi pemfilteran dan agregasi, yang didorong oleh filter atau pengaturan visualisasi, langsung di browser Anda jika memungkinkan. Pengoptimalan performa ini memiliki batas berikut:

Ukuran Himpunan Data Perilaku Pemrosesan
Kecil (≤ 100K baris dan ≤ 100MB) Untuk kecepatan dasbor yang optimal, pemfilteran dan agregasi berjalan di browser Anda setelah himpunan data awal dimuat. Karena operasi ini diproses secara lokal, operasi tersebut menghindari interaksi lebih lanjut dengan gudang data dan tidak muncul dalam riwayat kueri.
Besar (> 100K baris atau > 100MB) Pemfilteran dan agregasi ditangani di server backend alih-alih di browser Anda. Kueri himpunan data awal dibungkus dalam klausa SQL WITH , dan kueri yang dihasilkan muncul dalam riwayat kueri.
Kueri gabungan (himpunan data besar) Untuk kueri visualisasi yang dikirim ke backend, kueri visualisasi terpisah terhadap himpunan data yang sama yang berbagi klausa yang sama GROUP BY dan predikat filter digabungkan ke dalam satu kueri untuk diproses. Dalam hal ini, pengguna mungkin melihat kueri gabungan dalam riwayat kueri yang mengambil hasil untuk beberapa visualisasi atau filter.

Nota

Parameter mengganti nilai langsung ke kueri saat runtime, sehingga operasi ini selalu muncul dalam riwayat kueri.

Nota

Mengunduh tabel yang terpotong akan menjalankan kueri. Saat tabel menampilkan hasil yang terpotong karena set data melebihi 100.000 baris, mengunduh data sebagai CSV akan menjalankan kueri pada gudang SQL. Kueri ini muncul dalam riwayat kueri.

Cache dan kesegaran data

Dasbor mempertahankan cache hasil selama 24 jam untuk mengoptimalkan waktu pemuatan awal, beroperasi dengan upaya semaksimal mungkin. Ini berarti bahwa meskipun sistem selalu mencoba menggunakan hasil kueri historis yang ditautkan ke kredensial dasbor untuk meningkatkan performa, ada beberapa kasus di mana hasil cache tidak dapat dibuat atau dipertahankan. Data yang di-cache tidak memiliki batas memori tertentu atau jumlah kueri tetap.

Untuk meningkatkan waktu muat, dasbor memeriksa cache dasbor terlebih dahulu. Jika tidak ada hasil cache yang tersedia, mereka memeriksa cache hasil kueri generik. Kedua cache ini diinvalidasi dengan cara yang berbeda. Cache hasil kueri tidak pernah mengembalikan data kedaluarsa, karena perubahan pada data yang mendasar membatalkan semua entrinya. Cache dasbor memiliki perilaku pembatalan yang berbeda. Cache dasbor dapat mengembalikan hasil yang berusia hingga 24 jam bahkan ketika data yang mendasar telah berubah, dan perubahan pada data yang mendasar tidak secara otomatis membatalkan atau merefresh cache dasbor.

Untuk menyegarkan cache dasbor secara andal, konfigurasikan jadwal untuk dasbor. Perubahan pada data yang mendasarinya tidak secara otomatis memperbarui cache dasbor, dan memperbarui data sebagai bagian dari tahap pipeline tidak memperbarui cache dasbor. Selain refresh terjadwal, cache dasbor hanya diperbarui saat dasbor menjalankan kueri yang tidak dapat dilayani cache.

Nota

Menampilkan hasil dari cache dasbor tidak akan memulai gudang data SQL. Saat dasbor mengembalikan hasil cache, Azure Databricks membaca dari cache tanpa menjalankan kueri, sehingga gudang SQL yang mendasar tidak perlu berjalan. Warehouse hanya akan mulai berjalan ketika dashboard menjalankan kueri yang tidak dapat disajikan oleh cache.

Untuk dasbor multi-halaman, berikut ini berlaku:

  • Mengedit dasbor draf memuat dan menyimpan semua himpunan data.
  • Ketika penonton membuka dasbor yang diterbitkan, hanya himpunan data yang mendukung halaman aktif yang dijalankan dan disimpan dalam cache.
  • Jika jadwal diatur, semua himpunan data di-refresh sesuai dengan jadwal, dan hasilnya di-cache.

Tabel berikut menjelaskan bagaimana cache bervariasi berdasarkan status dan identitas pengguna dasbor.

Tipe dasbor Jenis caching
Dasbor diterbitkan dengan izin berbagi data. Cache bersama. Semua penonton melihat hasil yang sama.
Dasbor draf atau dasbor yang diterbitkan dengan izin data individual Cache per pengguna. Penonton melihat hasil berdasarkan izin data mereka.

Dasbor secara otomatis menggunakan hasil kueri yang di-cache jika hasilnya diambil kurang dari 24 jam yang lalu, bahkan jika data yang mendasar berubah setelah kueri terakhir. Jika ada hasil kedaluarsa dan parameter diterapkan ke dasbor, kueri akan dieksekusi ulang kecuali parameter yang sama digunakan dalam 24 jam terakhir. Demikian pula, menerapkan filter ke himpunan data yang melebihi 100.000 baris meminta kueri untuk dijalankan kembali kecuali filter yang sama sebelumnya diterapkan dalam 24 jam terakhir.

Fungsi tanda waktu saat ini dan invalidasi cache

Menggunakan current_timestamp() atau fungsi serupa dalam kueri SQL Anda tidak membatalkan cache tingkat dasbor. Namun, fungsi-fungsi ini membatalkan cache hasil kueri, yang memeriksa kueri SQL, dan memicu refresh cache.

Kueri terjadwal

Menambahkan jadwal ke dasbor yang diterbitkan dengan izin data bersama dapat mempercepat proses pemuatan awal secara signifikan untuk semua penampil dasbor.

Untuk setiap pembaruan dasbor terjadwal, hal berikut ini terjadi:

  • Semua logika SQL yang menentukan himpunan data berjalan pada interval waktu yang ditentukan.
  • Hasil mengisi cache hasil kueri dan membantu meningkatkan waktu pemuatan dasbor awal.