Vamos discutir como usar bitmaps em redis usando este tutorial.
Redis Bitmaps
Antes de mergulhar nos comandos reais e armazenar bitmaps, poucas coisas para observar.
Um bitmap não é um tipo de dados nativo em redis. Na realidade, eles são um conjunto de operações orientadas para bits construídas no tipo de string.
As operações de bit são categorizadas em dois grupos principais:
Um exemplo de uma operação de um único bit está definindo um pouco de 1 a 0 ou recuperando o valor de um pouco.
Uma operação de bit em grupo pode envolver um processo como obter o número de bits dentro de um intervalo específico.
Redis Crie bitmap
Para criar uma chave segurando um bitmap em redis, usamos o comando setbit. O comando leva o nome da chave, o valor do deslocamento e o bit real como argumentos.
A sintaxe é como mostrado:
127.0.0.1: 6379> Bit de deslocamento da chave do setbit
Se a chave especificada não existir, o Redis criará um novo que pode manter um pouco em um deslocamento especificado.
O valor de deslocamento deve ser maior ou igual a 0, mas menor que 2^32. Isso ocorre porque os bitmaps são limitados a 512 MB.
Recapitulação: um pouco representa a unidade mais básica de informação e possui dois valores possíveis. Em termos simples, um pouco é usado para descrever informações lógicas com estado, como sim/não, 1/0, +/-, etc.
Exemplos são mostrados abaixo.
127.0.0.1: 6379 [10]> Setbit Bitkey 2 1
(Inteiro) 0
127.0.0.1: 6379 [10]> Setbit Bitkey 2 0
(Inteiro) 1
Redis Count Número de bits definidos
Para determinar o número de bits definidos em redis, use o comando bitcount. Veja o exemplo.
127.0.0.1: 6379 [10]> Setbit Bitkey 3 1
127.0.0.1: 6379 [10]> Setbit Bitkey 4 1
127.0.0.1: 6379 [10]> Setbit Bitkey 5 1
127.0.0.1: 6379 [10]> Setbit Bitkey 6 1
127.0.0.1: 6379 [10]> Setbit Bitkey 7 1
Para obter o número de bits definidos, execute:
127.0.0.1: 6379 [10]> BitCount Bitkey
(Inteiro) 5
Isso deve retornar o número de bits definidos como um número inteiro.
NOTA: Um bit definido se refere a qualquer parte cujo valor é definido como 1.
Redis Bitwise Operations
Podemos executar operações bitwise usando o comando bitop. Por exemplo, para alcançar um pouco e operação, podemos fazer:
127.0.0.1: 6379 [10]> Setbit BitKey2 3 1
(Inteiro) 0
No exemplo acima, criamos um novo bitmap e o chamamos de bitkey2.
Em seguida, podemos executar o bit e operação como mostrado:
127.0.0.1: 6379 [10]> BITOP e BITKEY2
(Inteiro) 1
Para obter as chaves, execute:
127.0.0.1: 6379 [10]> Get Bitkey2
"\ x10"
Redis recuperar o valor do bit
Para armazenar o valor de bits em um deslocamento específico, use o comando getBit seguido pelo deslocamento do destino.
Um exemplo é como mostrado:
127.0.0.1: 6379 [10]> getbit bitkey 3
(Inteiro) 1
Se o bit no deslocamento especificado não estiver definido, o comando retornará 0 como mostrado:
127.0.0.1: 6379 [10]> getbit bitkey 200
(Inteiro) 0
Conclusão
Neste artigo, cobrimos os fundamentos dos bitmaps e como usá -los em redis. Verifique os documentos para saber mais.
Obrigado pela leitura!!