Gambaran umum Bahasa Kueri Kusto (KQL)
Berlaku untuk: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor
Kusto Query Language (KQL) adalah alat canggih untuk menjelajahi data Anda dan menemukan pola, mengidentifikasi anomali dan outlier, membuat pemodelan statistik, dan banyak lagi. KQL adalah bahasa sederhana namun kuat untuk mengkueri data terstruktur, semi terstruktur, dan tidak terstruktur. Bahasa ini ekspresif, mudah dibaca dan dipahami niat kueri, dan dioptimalkan untuk pengalaman penulisan. Bahasa Kueri Kusto optimal untuk mengkueri telemetri, metrik, dan log dengan dukungan mendalam untuk pencarian dan penguraian teks, operator dan fungsi rangkaian waktu, analitik dan agregasi, geospasial, pencarian kesamaan vektor, dan banyak konstruksi bahasa lainnya yang menyediakan bahasa yang paling optimal untuk analisis data. Kueri menggunakan entitas skema yang diatur dalam hierarki yang mirip dengan SQL: database, tabel, dan kolom.
Artikel ini memberikan penjelasan tentang bahasa kueri dan menawarkan latihan praktis untuk membuat Anda mulai menulis kueri. Untuk mengakses lingkungan kueri, gunakanantarmuka pengguna web Azure Data Explorer
Artikel ini memberikan penjelasan tentang bahasa kueri dan menawarkan latihan praktis untuk membuat Anda mulai menulis kueri. Untuk mengakses lingkungan kueri, gunakan set kueri KQL . Untuk mempelajari cara menggunakan KQL, lihat Tutorial : Pelajari operator umum.
Apa itu kueri Kusto?
Kueri Kusto adalah permintaan baca-saja untuk memproses data dan mengembalikan hasil. Permintaan dinyatakan dalam teks biasa, menggunakan model aliran data yang mudah dibaca, ditulis, dan diotomatiskan. Kueri Kusto dibuat dari satu atau beberapa pernyataan kueri.
Apa itu pernyataan kueri?
Ada tiga jenis pernyataan kueri pengguna:
Semua pernyataan kueri dipisahkan oleh ;
(titik koma), dan hanya memengaruhi kueri yang ada.
Jenis pernyataan kueri yang paling umum adalah ekspresi tabular pernyataan, yang berarti input dan outputnya terdiri dari tabel atau himpunan data tabular. Pernyataan tabular berisi nol atau lebih operator , yang masing-masing dimulai dengan input tabular dan mengembalikan output tabular. Operator diurutkan oleh |
(pipa). Aliran data, atau disalurkan, dari satu operator ke operator berikutnya. Data difilter atau dimanipulasi pada setiap langkah lalu disalurkan ke langkah berikut.
Ini seperti corong, di mana Anda memulai dengan seluruh tabel data. Setiap kali data melewati operator lain, data difilter, disusun ulang, atau dirangkum. Karena perpipaan informasi dari satu operator ke operator lain berurutan, urutan operator kueri penting, dan dapat memengaruhi hasil dan performa. Di akhir corong, Anda dibiarkan dengan output halus.
Mari kita lihat contoh kueri.
Menjalankan kueri
StormEvents
| where StartTime between (datetime(2007-11-01) .. datetime(2007-12-01))
| where State == "FLORIDA"
| count
Hitung |
---|
28 |
Nota
KQL peka huruf besar/kecil untuk semuanya – nama tabel, nama kolom tabel, operator, fungsi, dan sebagainya.
Kata kunci dapat digunakan sebagai pengidentifikasi dengan mengapitnya dalam tanda kurung siku dan tanda kutip (['
dan ']
atau ["
dan "]
). Misalnya, ['where']
. Untuk informasi selengkapnya, lihat aturan penamaan pengidentifikasi
Kueri ini memiliki pernyataan ekspresi tabular tunggal. Pernyataan dimulai dengan referensi ke tabel yang disebut StormEvents dan berisi beberapa operator, where
dan count
, masing-masing dipisahkan oleh pipa. Baris data untuk tabel sumber difilter berdasarkan nilai kolom
Untuk mencoba beberapa kueri Kusto lainnya, lihat Tutorial : Menulis kueri Kusto.
Perintah manajemen
Berbeda dengan kueri Kusto, perintah Management adalah permintaan kepada Kusto untuk memproses atau memodifikasi data atau metadata. Misalnya, perintah manajemen berikut membuat tabel Kusto baru dengan dua kolom, Level
dan Text
:
.create table Logs (Level:string, Text:string)
Perintah manajemen memiliki sintaksisnya sendiri, yang bukan bagian dari sintaks Bahasa Kueri Kusto, meskipun keduanya berbagi banyak konsep. Secara khusus, perintah manajemen dibedakan dari kueri dengan memiliki karakter pertama dalam teks perintah menjadi karakter titik (.
) (yang tidak dapat memulai kueri).
Perbedaan ini mencegah banyak jenis serangan keamanan, hanya karena mencegah penyematan perintah manajemen di dalam kueri.
Tidak semua perintah manajemen mengubah data atau metadata. Kelas besar perintah yang dimulai dengan .show
, digunakan untuk menampilkan metadata atau data. Misalnya, perintah .show tables
mengembalikan daftar semua tabel dalam database saat ini.
Untuk informasi selengkapnya tentang perintah manajemen, lihat gambaran umum perintah manajemen .
KQL di layanan lain
KQL digunakan oleh banyak layanan Microsoft lainnya. Untuk informasi spesifik tentang penggunaan KQL di lingkungan ini, lihat tautan berikut:
- Kueri log di Azure Monitor
- Memahami bahasa kueri Azure Resource Graph
- Secara proaktif berburu ancaman dengan perburuan tingkat lanjut di Pertahanan Microsoft 365
- kueri CMPivot
Konten terkait
- Tutorial : Pelajari operator umum
- Tutorial : Menggunakan fungsi agregasi
- referensi cepat
KQL - contekan Bahasa Kueri SQL ke Kusto
- praktik terbaik kueri