Bagikan melalui


Pengelogan kueri

Penting

Fitur ini masih dalam mode pratinjau. Ketentuan Penggunaan Tambahan untuk Pratinjau Microsoft Azure mencakup lebih banyak persyaratan hukum yang berlaku untuk fitur Azure yang dalam versi beta, dalam pratinjau, atau belum dirilis ke ketersediaan umum. Untuk informasi tentang pratinjau khusus ini, lihat Azure HDInsight pada informasi pratinjau AKS. Untuk pertanyaan atau saran fitur, kirimkan permintaan di AskHDInsight dengan detail dan ikuti kami untuk pembaruan lebih lanjut di Komunitas Azure HDInsight.

Trino mendukung pendengar peristiwa kustom yang dapat digunakan untuk mendengarkan peristiwa siklus hidup Kueri. Anda dapat menulis pendengar peristiwa Anda sendiri atau menggunakan plugin bawaan yang disediakan oleh HDInsight di AKS yang mencatat peristiwa ke Azure Blob Storage.

Anda dapat mengaktifkan pembuatan log kueri bawaan dengan dua cara:

  • Anda dapat mengaktifkan pengelogan kueri bawaan selama pembuatan kluster Trino dengan mengaktifkan katalog hive.

  • Anda dapat mengaktifkan pengelogan kueri bawaan di kluster Anda menggunakan templat ARM.

Artikel ini membahas penambahan pengelogan kueri ke kluster Anda menggunakan templat ARM.

Prasyarat

Mengaktifkan pengelogan kueri

Untuk mengaktifkan plugin pengelogan kueri bawaan di kluster Trino Anda, tambahkan/perbarui clusterProfile.trinoProfile.userTelemetrySpec bagian dengan properti berikut di templat ARM kluster Anda.

Properti Deskripsi
path Jalur yang sepenuhnya memenuhi syarat ke direktori yang digunakan sebagai akar untuk mengambil log kueri yang berbeda.
hivecatalogName Katalog ini digunakan untuk memasang tabel eksternal pada file yang ditulis dalam akun penyimpanan. Katalog ini harus ditambahkan di kluster Anda, Tambahkan katalog hive.
hivecatalogSchema Plugin pengelogan kueri menggunakan skema ini untuk memasang tabel eksternal untuk log, plugin membuat skema ini jika belum ada. Nilai default - trinologs
partitionRetentionInDays Plugin pengelogan kueri memangkas partisi dalam tabel log, yang lebih lama dari konfigurasi yang ditentukan. Nilai default - 365

Contoh berikut menunjukkan bagaimana pengelogan kueri diaktifkan dalam kluster Trino. Tambahkan contoh json ini di bawah [*].properties.clusterProfile dalam templat ARM.

       "trinoProfile": { 
          "userTelemetrySpec": { 
          "storage": { 
              "path": "https://querylogstorageaccount.blob.core.windows.net/logs/trinoquerylogs", 
              "hivecatalogName": "hive", 
              "hivecatalogSchema": "trinologs", 
              "partitionRetentionInDays": 365 
          } 
          }
      }   

Sebarkan templat ARM yang diperbarui untuk mencerminkan perubahan di kluster Anda. Pelajari cara menyebarkan templat ARM.

Catatan

  • Plugin menggunakan identitas terkelola yang ditetapkan pengguna (MSI) yang terkait dengan kluster untuk mengautentikasi terhadap penyimpanan, harap tambahkan Contributor dan Storage Blob Data Owner akses ke MSI untuk memastikan plugin dapat menulis log ke akun penyimpanan.
    Nama MSI yang ditetapkan pengguna tercantum dalam msiResourceId properti di sumber daya kluster JSON. Pelajari cara menetapkan peran.

  • PartitionRetentionInDays hanya menghapus partisi metadata dari tabel yang dipasang, partisi tersebut tidak menghapus data. Silakan bersihkan data sesuai kebutuhan Anda jika tidak diperlukan lagi.

Pengelolaan metadata

Jika pengguna menentukan nama katalog dalam hiveCatalogName properti, plugin memasang file log yang ditulis di akun penyimpanan sebagai tabel dan tampilan eksternal, yang dapat dikueri melalui Trino.

Plugin membuat tiga tabel dan tiga tampilan, yang dapat digunakan untuk mengkueri peristiwa siklus hidup (QueryCompletedEvent, QueryCreatedEvent, dan SplitCompletedEVent). Tabel & tampilan ini dibuat di bawah katalog dan skema yang disediakan sebagai input pengguna.

Nama tabel:

  • querycompleted: Berisi QueryCompleted peristiwa yang dipecat oleh Trino.
  • querycreated: Berisi QueryCreatedEvents yang dipecat oleh Trino.
  • splitcompleted: Berisi SplitCompletedEvents yang dipecat oleh Trino.

Nama tampilan:

  • vquerycompleted
  • vquerycreated
  • vsplitcompleted

Catatan

Pengguna didorong untuk menggunakan tampilan saat mereka kebal terhadap perubahan skema yang mendasar dan akun untuk tabel yang dijelaskan.

Pengarsipan tabel

Plugin mendukung pengarsipan (N-1)tabel ke-th dalam skenario di mana pengguna memutuskan untuk mengubah path atau lokasi eksternal log. Jika itu terjadi, plugin mengganti nama tabel yang menunjuk ke jalur lama sebagai <table_name>_archived, tampilan yang dibuat akan menyatukan hasil tabel saat ini dan yang diarsipkan dalam skenario ini.

Membuat plugin kustom Anda

Anda juga dapat menulis plugin pendengar peristiwa kustom, mengikuti petunjuk tentang dokumen, Menyebarkan plugin kustom dengan mengikuti langkah-langkah penyebaran plugin.