Indeks filter bloom
Catatan
Saat menggunakan komputasi dengan dukungan Photon dan Databricks Runtime 12.2 atau lebih tinggi, I/O prediktif mengungguli filter mekar untuk performa baca. Lihat Apa itu I/O prediktif?.
Di Databricks Runtime 13.3 ke atas, Databricks merekomendasikan penggunaan pengklusteran untuk tata letak tabel Delta. Lihat Gunakan pengklusteran cair untuk tabel Delta.
Databricks hanya merekomendasikan penggunaan filter Bloom saat menggunakan komputasi yang tidak mendukung fitur-fitur ini.
Indeks filter Bloom adalah struktur data hemat ruang yang memungkinkan data melompat pada kolom yang dipilih, terutama untuk bidang yang berisi teks arbitrer.
Cara kerja indeks filter Bloom
Indeks filter Azure Databricks Bloom terdiri dari indeks lompati data untuk setiap file data. Indeks filter Bloom dapat digunakan untuk menentukan bahwa nilai kolom secara definitif tidak ada dalam file, atau mungkin ada dalam file. Sebelum membaca file Azure Databricks memeriksa file indeks, dan file hanya dibaca jika indeks menunjukkan bahwa file mungkin cocok dengan filter data.
Filter Bloom mendukung kolom dengan jenis data input berikut: byte
, , short
, int
long
, float
, double
, date
, , timestamp
, dan string
. Null tidak ditambahkan ke filter Bloom, sehingga filter terkait null memerlukan pembacaan file data. Azure Databricks mendukung filter sumber data berikut: and
, or
, in
, equals
dan equalsnullsafe
. Filter bloom tidak didukung pada kolom berlapis.
Konfigurasi dan referensi
Gunakan sintaks berikut untuk mengaktifkan filter Bloom:
CREATE BLOOMFILTER INDEX
ON TABLE table_name
FOR COLUMNS(column_name OPTIONS (fpp=0.1, numItems=5000))
Untuk detail sintaks, lihat MEMBUAT INDEKS FILTER BLOOM dan MENJATUHKAN INDEKS FILTER BLOOM.
Untuk menonaktifkan operasi filter Bloom, atur konfigurasi tingkat spark.databricks.io.skipping.bloomFilter.enabled
sesi ke false
.
Menampilkan daftar indeks filter Bloom
Untuk menampilkan daftar indeks, jalankan:
spark.table("<table-with-indexes>").schema.foreach(field => println(s"${field.name}: metadata=${field.metadata}"))
Contohnya:
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk