Create Bloom Filter Index (Delta Lake on Azure Databricks)Create Bloom Filter Index (Delta Lake on Azure Databricks)

CREATE BLOOMFILTER INDEX
ON [TABLE] table_name
[FOR COLUMNS(columnName1 [OPTIONS(..)], columnName2, ...)]
[OPTIONS(..)]

Erstellen eines aufblühenden Filter Indexes für neue oder umgeschriebene Daten Es werden keine blühenden Filter für vorhandene Daten erstellt.Create a Bloom filter index for new or rewritten data; it does not create Bloom filters for existing data. Der Befehl schlägt fehl, wenn weder der Tabellenname noch eine der Spalten vorhanden ist.The command fails if either the table name or one of the columns does not exist. Wenn für eine Spalte das Filtern von Blüten aktiviert ist, werden vorhandene Optionen für den blühenden Filter durch die neuen Optionen ersetzt.If Bloom filtering is enabled for a column, existing Bloom filter options are replaced by the new options.

Obwohl es nicht möglich ist, einen aufblühenden Filter Index für bereits geschriebene Daten zu erstellen, aktualisiert der Optimierungs Befehl die blühenden Filter für Daten, die neu organisiert werden.While it is not possible to build a Bloom filter index for data that is already written, the OPTIMIZE command updates Bloom filters for data that is reorganized. Aus diesem Grund können Sie einen Blüten Filter auffüllen, indem Sie OPTIMIZE für eine Tabelle ausführen:Therefore, you can backfill a Bloom filter by running OPTIMIZE on a table:

  • Wenn Sie die Tabelle zuvor nicht optimiert haben.If you have not previously optimized the table.
  • Mit einer anderen Dateigröße, die erfordert, dass die Datendateien neu geschrieben werden.With a different file size, requiring that the data files be re-written.
  • Mit einem ZORDER (oder einem anderen ZORDER , sofern bereits vorhanden), das erfordert, dass die Datendateien neu geschrieben werden.With a ZORDER (or a different ZORDER, if one is already present), requiring that the data files be re-written.

Sie können den Blüten Filter optimieren, indem Sie Optionen auf Spaltenebene oder auf Tabellenebene definieren:You can tune the Bloom filter by defining options at the column level or at the table level:

  • fpp: Falsche positive Wahrscheinlichkeit.fpp: False positive probability. Die gewünschte falsch Positive Rate pro geschriebener Blüte Filter.The desired false positive rate per written Bloom filter. Dies wirkt sich auf die Anzahl der Bits aus, die erforderlich sind, um ein einzelnes Element in den Blüten Filter einzufügen, und wirkt sich darauf aus.This influences the number of bits needed to put a single item in the Bloom filter and influences the size of the Bloom filter. Der Wert muss größer als 0 (null) und kleiner oder gleich 1 sein.The value must be larger than 0 and smaller than or equal to 1. Der Standardwert ist 0,1. Dies erfordert 5 Bits pro Element.The default value is 0.1 which requires 5 bits per item.
  • numItems: Anzahl der unterschiedlichen Elemente, die die Datei enthalten kann.numItems: Number of distinct items the file can contain. Diese Einstellung ist für die Qualität der Filterung wichtig, da Sie sich auf die Gesamtzahl der im blühenden Filter verwendeten Bits auswirkt (Anzahl der Elemente * Anzahl der Bits pro Element).This setting is important for the quality of filtering as it influences the total number of bits used in the Bloom filter (number of items * number of bits per item). Wenn diese Einstellung falsch ist, wird der Filter für die Blüte entweder sehr dünn aufgefüllt, verschwendet Speicherplatz und verlangsamt Abfragen, die diese Datei herunterladen müssen, oder Sie ist zu hoch und weniger genau (höhere f/s).If this setting is incorrect, the Bloom filter is either very sparsely populated, wasting disk space and slowing queries that must download this file, or it is too full and is less accurate (higher FPP). Der Wert muss größer als 0 (null) sein.The value must be larger than 0. Der Standardwert ist 1 Million Elemente.The default is 1 million items.
  • maxExpectedFpp: Der erwartete FPP-Schwellenwert, für den ein Blüten Filter nicht auf den Datenträger geschrieben wird.maxExpectedFpp: The expected FPP threshold for which a Bloom filter is not written to disk. Die maximal erwartete falsch positive Wahrscheinlichkeit, mit der ein Blüten Filter geschrieben wird.The maximum expected false positive probability at which a Bloom filter is written. Wenn der erwartete "f"-Wert größer als dieser Schwellenwert ist, ist die Selektivität des blühenden Filters zu niedrig. die Zeit und die Ressourcen, die für die Verwendung des aufblüterfilters benötigt werden, wiegen Ihren nutzen.If the expected FPP is larger than this threshold, the Bloom filter’s selectivity is too low; the time and resources it takes to use the Bloom filter outweighs its usefulness. Der Wert muss zwischen 0 und 1 liegen.The value must be between 0 and 1. Der Standardwert ist 1,0 (deaktiviert).The default is 1.0 (disabled).

Diese Optionen spielen eine Rolle nur beim Schreiben der Daten.These options play a role only when writing the data. Sie können diese Eigenschaften auf verschiedenen hierarchischen Ebenen konfigurieren: Schreibvorgang, Tabellenebene und Spaltenebene.You can configure these properties at various hierarchical levels: write operation, table level, and column level. Die Spaltenebene hat Vorrang vor der Tabellen-und Vorgangs Ebene, und die Tabellenebene hat Vorrang vor der Vorgangs Ebene.The column level takes precedence over the table and operation levels, and the table level takes precedence over the operation level.

Weitere Informationen finden Sie unter- Filter IndizesSee Bloom filter indexes.