Bloom-filterindex
Kommentar
När du använder Photon-aktiverad beräkning och Databricks Runtime 12.2 eller senare överträffar förutsägande I/O bloom-filter för läsprestanda. Se Vad är förutsägande I/O?.
I Databricks Runtime 13.3 och senare rekommenderar Databricks att du använder klustring för Delta-tabelllayout. Se Använda flytande klustring för Delta-tabeller.
Databricks rekommenderar bara att du använder Bloom-filter när du använder beräkning som inte stöder dessa funktioner.
Ett Bloom-filterindex är en utrymmeseffektiv datastruktur som gör att data hoppar över valda kolumner, särskilt för fält som innehåller godtycklig text.
Så här fungerar Bloom-filterindex
Azure Databricks Bloom-filterindex består av ett data som hoppar över index för varje datafil. Bloom-filterindexet kan användas för att fastställa att ett kolumnvärde definitivt inte finns i filen eller att det förmodligen finns i filen. Innan du läser en fil kontrollerar Azure Databricks indexfilen och filen är skrivskyddad om indexet anger att filen kan matcha ett datafilter.
Bloom-filter stöder kolumner med följande indatatyper: byte
, short
, int
, long
, float
, double
, date
, och timestamp
string
. Null-värden läggs inte till i Bloom-filtret, så alla null-relaterade filter kräver att du läser datafilen. Azure Databricks stöder följande datakällafilter: and
, or
, in
, equals
och equalsnullsafe
. Bloom-filter stöds inte i kapslade kolumner.
Konfiguration och referens
Använd följande syntax för att aktivera ett Bloom-filter:
CREATE BLOOMFILTER INDEX
ON TABLE table_name
FOR COLUMNS(column_name OPTIONS (fpp=0.1, numItems=5000))
Syntaxinformation finns i SKAPA BLOOM FILTER INDEX och DROP BLOOM FILTER INDEX.
Om du vill inaktivera Bloom-filteråtgärder ställer du in konfigurationen på sessionsnivå spark.databricks.io.skipping.bloomFilter.enabled
till false
.
Visa listan över Bloom-filterindex
Om du vill visa listan över index kör du:
spark.table("<table-with-indexes>").schema.foreach(field => println(s"${field.name}: metadata=${field.metadata}"))
Till exempel:
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för