Começando a usar os filtros Bloom - Amazon ElastiCache

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Começando a usar os filtros Bloom

ElastiCache suporta a estrutura de dados do filtro Bloom, que fornece uma estrutura de dados probabilística eficiente em termos de espaço para verificar se um elemento é membro de um conjunto. Ao usar filtros Bloom, falsos positivos são possíveis — um filtro pode indicar incorretamente que um elemento existe, mesmo que esse elemento não tenha sido adicionado ao conjunto. No entanto, o uso de filtros Bloom evitará falsos negativos — indicações incorretas de que um elemento não existe, mesmo que esse elemento tenha sido adicionado ao conjunto.

Você pode definir a porcentagem de possíveis falsos positivos como uma taxa preferencial para sua carga de trabalho, ajustando a taxa de fp. Você também pode configurar a capacidade (o número de itens que um filtro Bloom pode conter), propriedades escaláveis e não escaláveis e muito mais.

Depois de criar um cluster com uma versão de mecanismo compatível, o tipo de dados Bloom e os comandos associados ficam automaticamente disponíveis. O tipo de bloom dados é compatível com a API com a sintaxe do comando Bloom filter das bibliotecas de cliente oficiais da Valkeyvalkey-py, incluindovalkey-java, e. valkey-go Você pode migrar facilmente os aplicativos Valkey e Redis OSS existentes baseados em Bloom para o. ElastiCache Para obter uma lista completa de comandos, consulteComandos do filtro Bloom.

As métricas relacionadas ao BloomBloomFilterBasedCmds,BloomFilterBasedCmdsLatency, e BloomFilterBasedCmdsECPUs são incorporadas CloudWatch para monitorar o uso desse tipo de dados. Para obter mais informações, consulte Métricas para o Valkey e Redis OSS.

nota
  • Para usar os filtros Bloom, você deve estar executando o ElastiCache Valkey 8.1 e versões posteriores.

  • O tipo de dados bloom não é compatível com RDB com outras ofertas de bloom que não sejam baseadas em Valkey.

Visão geral do tipo de dados dos filtros Bloom

Os filtros Bloom são uma estrutura de dados probabilística eficiente em termos de espaço que permite adicionar elementos e verificar se existem elementos. Falsos positivos são possíveis quando um filtro indica incorretamente que um elemento existe, mesmo que ele não tenha sido adicionado. No entanto, os Bloom Filters garantem que falsos negativos (indicando incorretamente que um elemento não existe, mesmo que tenha sido adicionado) não ocorram.

A principal fonte de documentação dos filtros bloom pode ser encontrada na página de documentação do valkey.io. Ele contém as seguintes informações:

Limite de tamanho de flor

O consumo de memória por um único objeto de filtro Bloom é limitado a 128 MB. Você pode verificar a quantidade de memória consumida por um filtro Bloom usando o BF.INFO <key> SIZE comando.

Bloom ACLs

Semelhante às categorias existentes por tipo de dados (@string, @hash etc.), uma nova categoria @bloom foi adicionada para simplificar o gerenciamento do acesso aos comandos e dados do Bloom. Nenhum outro comando OSS existente do Valkey ou do Redis é membro da categoria @bloom.

Há três categorias de ACL existentes que foram atualizadas para incluir os novos comandos Bloom: @read, @write e @fast. A tabela a seguir indica o mapeamento dos comandos Bloom para as categorias apropriadas.

Comando Bloom @read @write @fast @bloom

BF.ADD

y

y

y

BF.CARD

y

y

y

BF.EXISTE

y

y

y

BF.INFO

y

y

y

BF.INSERT

y

y

y

BF.MADD

y

y

y

BF.M EXISTE

y

y

y

BF.RESERVE

y

y

y

Métricas relacionadas ao filtro Bloom

As seguintes CloudWatch métricas relacionadas às estruturas de dados do Bloom são fornecidas:

Métricas CW Unidade Sem servidor/projetado por você mesmo Descrição

BloomFilterBasedCmds

Contagem

Ambos

O número total de comandos do filtro Bloom, incluindo comandos de leitura e gravação.

BloomFilterBasedCmdsLatency

Microssegundos

Autogerenciado

Latência de todos os comandos do filtro Bloom, incluindo comandos de leitura e gravação.

BloomFilterBasedCmdsECPUs

Contagem

Sem servidor

ECPUs consumido por todos os comandos do filtro Bloom, incluindo comandos de leitura e gravação.

Comandos do filtro Bloom

Os comandos do Bloom Filter estão documentados no site Valkey.io. Cada página de comando fornece uma visão geral abrangente dos comandos bloom, incluindo sua sintaxe, comportamento, valores de retorno e possíveis condições de erro.

Nome Descrição
BF.ADD

Adiciona um único item a um filtro bloom. Se o filtro ainda não existir, ele será criado.

BF.CARD

Retorna a cardinalidade de um filtro de floração.

BF.EXISTE

Determina se o filtro de floração contém o item especificado.

BF.INFO

Retorna informações de uso e propriedades de um filtro de floração específico.

BF.INSERT

Cria um filtro de floração com 0 ou mais itens ou adiciona itens a um filtro de floração existente.

B.MADD

Adiciona um ou mais itens a um filtro de flores.

BF.M EXISTE

Determina se o filtro bloom contém 1 ou mais itens.

BF.RESERVE

Cria um filtro de floração vazio com as propriedades especificadas.

nota

O BF.LOAD não é suportado pelo. ElastiCache É relevante apenas para o uso do AOF, que ElastiCache não oferece suporte.