Redis Bit -maps

Redis Bit -maps
Un mapa de bits es simplemente una variedad de bits. Por lo tanto, se conoce comúnmente como una matriz o vector de bits. Es una de las estructuras de datos que hace que Redis sea bastante flexible y extensa fuera de la caja. Si necesita almacenar un mapa de información booleana en un espacio compacto, BitMaps será su opción predeterminada.

Discutamos cómo usar mapas de bits en Redis usando este tutorial.

Redis Bit -maps

Antes de sumergirse en los comandos reales y almacenar mapas de bits, pocas cosas a tener en cuenta.

Un mapa de bits no es un tipo de datos nativo en Redis. En realidad, son un conjunto de operaciones orientadas a bits construidas en el tipo de cadena.

Las operaciones de bit se clasifican en dos grupos principales:

  1. Operaciones de un solo bit a tiempo constante.
  2. Operaciones de bit de grupo.

Un ejemplo de una operación de un solo bit es establecer un bit de 1 a 0 o recuperar el valor de un bit.

Una operación de bit de grupo puede involucrar un proceso como obtener el número de bits dentro de un rango específico.

Redis crea mapa de bits

Para crear una clave que mantenga un mapa de bits en Redis, usamos el comando setbit. El comando toma el nombre de la clave, el valor de desplazamiento y el bit real como argumentos.

La sintaxis es como se muestra:

127.0.0.1: 6379> bit de compensación de teclas setbit

Si la clave especificada no existe, Redis creará una nueva que puede mantener un poco en un desplazamiento especificado.

El valor de desplazamiento debe ser mayor o igual a 0 pero menos de 2^32. Esto se debe a que los mapas de bits están limitados a 512 MB.

Resumen: un bit representa la unidad de información más básica y posee dos valores posibles. En términos simples, se usa un poco para describir información lógica con estado como sí/no, 1/0, +/-, etc.

Los ejemplos se muestran a continuación.

127.0.0.1: 6379 [10]> setbit bitkey 2 1
(entero) 0
127.0.0.1: 6379 [10]> setbit bitkey 2 0
(entero) 1

Redis Count Número de bits establecidos

Para determinar el número de bits establecidos en Redis, use el comando bitcount. Tomar el ejemplo.

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 obtener el número de bits establecidos, ejecute:
127.0.0.1: 6379 [10]> Bitcount bitkey
(entero) 5

Esto debería devolver el número de bits establecidos como entero.

Nota: un bit establecido se refiere a cualquier bit cuyo valor se establece en 1.

Redis operaciones bit a bit

Podemos realizar operaciones bit a bit utilizando el comando bitop. Por ejemplo, para lograr un bitwise y una operación, podemos hacer:

127.0.0.1: 6379 [10]> setbit bitkey2 3 1
(entero) 0

En el ejemplo anterior, creamos un nuevo mapa de bits y lo llamamos bitkey2.

Luego podemos realizar el bit a bit y la operación como se muestra:

127.0.0.1: 6379 [10]> bitop y bitkey bitkey2
(entero) 1

Para obtener las llaves, ejecute:

127.0.0.1: 6379 [10]> Obtén bitkey2
"\ x10"

Valor de bit de recuperación de redis

Para que el valor de bit se almacene en un desplazamiento específico, use el comando getBit seguido de la compensación de destino.

Un ejemplo es como se muestra:

127.0.0.1: 6379 [10]> GetBit Bitkey 3
(entero) 1

Si el bit en el desplazamiento especificado no está configurado, el comando devuelve 0 como se muestra:

127.0.0.1: 6379 [10]> Getbit Bitkey 200
(entero) 0

Conclusión

En este artículo, cubrimos los fundamentos de los mapas de bits y cómo usarlos en Redis. Consulte los documentos para obtener más información.

Gracias por leer!!