Partilhar via


CREATE BLOOM FILTER INDEX

Aplica-se a:Marque Sim Databricks SQL Marque Sim Databricks Runtime

Cria um índice de filtro Bloom para dados novos ou reescritos; ele não cria filtros Bloom para dados existentes. O comando falhará se o nome do table ou um dos columns não existir. Se um columnativar a filtragem Bloom, as opções de filtro Bloom existentes serão substituídas pelas novas opções.

Sintaxe

CREATE BLOOMFILTER INDEX
ON [TABLE] table_name
FOR COLUMNS( { columnName1 [ options ] } [, ...] )
[ options ]

options
  OPTIONS ( { key1 [ = ] val1 } [, ...] )

Parameters

  • table_name

    Identifica um Delta tableexistente. O nome não deve incluir uma especificação temporal ou uma especificação de opções.

Embora não seja possível criar um índice de filtro Bloom para dados já gravados, o comando OPTIMIZE atualiza os filtros Bloom para dados que são reorganizados. Portanto, você pode preencher um filtro Bloom executando OPTIMIZE em um table:

  • Se você não tiver otimizado anteriormente o table.
  • Com um tamanho de arquivo diferente, exigindo que os arquivos de dados sejam reescritos.
  • Com um ZORDER (ou um diferente ZORDER, se já estiver presente), exigindo que os arquivos de dados sejam reescritos.

Você pode ajustar o filtro Bloom definindo opções no nível column ou no nível table:

  • fpp: Probabilidade de falso positivo. A taxa desejada de falsos positivos por filtro Bloom escrito. Isso influencia o número de bits necessários para colocar um único item no filtro Bloom e influencia o tamanho do filtro Bloom. O valor deve ser maior que 0 e menor ou igual a 1. O valor padrão é 0.1, que requer 5 bits por item.
  • numItems: Número de itens distintos que o arquivo pode conter. Essa configuração é importante para a qualidade da filtragem, pois influencia o número total de bits usados no filtro Bloom (número de itens - número de bits por item). Se essa configuração estiver incorreta, o filtro Bloom será muito escassamente preenchido, desperdiçando espaço em disco e retardando as consultas que devem baixar esse arquivo, ou está muito cheio e é menos preciso (FPP mais alto). O valor deve ser maior que 0. O padrão é 1 milhão de itens.
  • maxExpectedFpp: A probabilidade máxima esperada de falso positivo na qual um filtro Bloom é gravado no disco. Se o FPP esperado for maior do que esse limite, a seletividade do filtro Bloom será muito baixa; o tempo e os recursos necessários para utilizar o filtro Bloom superam a sua utilidade. O valor deve estar entre 0 e 1. O padrão é 1.0 (desativado).

Essas opções desempenham um papel somente ao gravar os dados. Você pode configurar essas propriedades em vários níveis hierárquicos: operação de gravação, nível table e nível column. O nível column tem precedência sobre os níveis table e operação, e o nível table tem precedência sobre o nível de operação.

Consulte Índices de filtro Bloom.