Cinco tipos de datos comunes en Redis y sus notas de operación relacionadas
1 clave Redis (clave)
(1) Claves * Ver todas las claves en la biblioteca actual
(2) existe [clave] Determine si la clave existe, devuelve 1 existe, devuelve 0 no existe
(3) escriba [clave] Verifique de qué tipo es la clave
(4)del [clave] elimina los datos clave especificados
(5) Desvincular [clave] Seleccione la eliminación sin bloqueo según el valor: solo las claves se eliminan de los metadatos del espacio de claves, y la eliminación real se realizará de forma asíncrona en la operación posterior
(6) caducar [clave] [tiempo]: establezca el tiempo de caducidad de la clave dada, en segundos
(7) ttl [tecla] Comprueba cuántos segundos quedan para que caduque, -1 significa que nunca caducará, -2 significa que ha caducado
2 cuerdas
El tipo String de Redis es el tipo de datos más básico. Un valor de cadena puede ser de hasta 512 M. Al mismo tiempo, String es binario seguro y puede contener cualquier dato, como imágenes jpg u objetos serializados.
funcionar:
(1) establecer [clave] [valor]: establecer kv como establecer el nombre k1
(2) obtener [clave]: obtener el valor correspondiente a la clave
(3) agregar [clave] [valor]: agregue valor al valor correspondiente a la clave y devuelva la longitud al mismo tiempo, si la clave no existe, cree una nueva
(4) strlen [tecla]: Obtener la longitud
(5) setnx [clave] [valor]: solo cuando la clave no existe, se establece el valor de la clave
key1 existe, por lo que no se puede configurar correctamente
key2 no existe, se configuró correctamente
(6) incr [tecla]: aumenta el valor digital almacenado en la tecla en 1, y solo puede operar en números
Cuando la clave no existe, cree una nueva y establezca el valor en 1
(7) decr [tecla]: Disminuye el valor digital almacenado en la tecla en 1
Si la clave no existe, cree una nueva y establezca el valor en -1
(8) incrby [tecla] [tamaño de paso]: aumente el valor digital almacenado en la tecla, personalice el tamaño de paso, si el tamaño de paso es 20, el valor aumentará en 20
(9) decrby [tecla] [tamaño de paso]: Disminuya el valor digital almacenado en la tecla, personalice el tamaño de paso, si el tamaño de paso es 20, el valor se reducirá en 20
3 listaLista
La lista es un tipo de datos con una sola clave y múltiples valores, ordenados según el orden de inserción. Se puede agregar un elemento al principio o al final de la lista. La capa subyacente es una lista doblemente enlazada.
funcionar:
(1) lpush/rpush [tecla] [valor1] [valor2]...: Inserta uno o más valores desde la izquierda/derecha
(2) Irange [tecla] [start] [stop]: Obtenga elementos de acuerdo con la tabla debajo del índice (de izquierda a derecha).Si la entrada start y stop son 0 y -1 respectivamente, significa tomar todos los valores
(3) lpop/rpop [tecla]: muestra un valor desde la izquierda/derecha, cuando aparecen todos los valores, la clave se elimina automáticamente
(4) rpoplpush [key1] [key2]: extrae un valor de la derecha de la lista key1 e insértalo a la izquierda de la lista key2
(5) lindex [clave] [índice]: Obtenga el elemento especificado de acuerdo con la tabla debajo del índice (de izquierda a derecha)
(6) linsert [clave] antes de [valor] [nuevo valor]: Insertar [nuevo valor] antes de [valor]
(7) lrem [clave] [n] [valor]: eliminar n valores de la izquierda
(8) lset [clave] [índice] [valor]: Reemplace el valor de la clave de lista subíndice como índice con valor
Conjunto de 4 colecciones Redis
El conjunto en Redis también es similar a la función de la lista, pero no se permiten elementos duplicados en el conjunto. De hecho, el tipo de cadena no necesita un conjunto, y la capa subyacente es una tabla hash. La complejidad de agregar , borrar y buscar es O(1)
funcionar:
(1) sadd [clave] [valor1] [valor2]: agregue uno o más elementos a la clave, deduplicados automáticamente
(2) smembers [clave]: Ver todos los valores de la colección
(3) sismember [clave] [valor]: determina si la clave establecida contiene un valor dado, devuelve 1 si es así y devuelve 0 si no
(4) scard [clave]: devuelve el número de elementos del conjunto
(5) srem [clave] [valor1] [valor2]: eliminar un elemento de la colección
(6) spop [tecla]: extrae aleatoriamente un valor de la colección
(7) srandmember [clave] [n]: toma aleatoriamente n valores del conjunto y no elimina estos valores del conjunto
(8) mover [fuente] [destino] [valor]: mover un valor de la colección a otra colección
(9) sinter [key1] [key2]: devuelve la intersección de dos conjuntos
(10) sunion [key1] [key2]: devuelve la unión de dos conjuntos
(11) sdiff [key1] [key2]: Devuelve el conjunto de diferencias de dos conjuntos (en key1, sin incluir key2)
5 Hachís Redis Hachís
Hash en Redis es una tabla de mapeo de campo y valor de tipo cadena, que es adecuada para almacenar objetos, similar a Map<String, Object> en Java. Cuando la longitud del valor del campo subyacente es corta y el número es pequeño, se usará ziplist (lista comprimida), de lo contrario use hashtable (tabla hash)
funcionar:
(1) hset [clave] [campo] [valor]: asignar valor a la clave de campo en el conjunto de claves
(2) hget [clave] [campo]: obtenga el valor de la colección key1 archivada
(3) hmset [key1] [field1] [value1] [field2] [value2]: establecer valores hash en lotes (la nueva versión hset también puede implementar esta función)
(4) hexists [key1] [field]: compruebe si el campo de campo dado existe en la clave de la tabla hash
(5) hkeys [clave]: enumera todos los campos del conjunto hash
(6) hvals [clave]: enumera todos los valores del conjunto hash
(7) hincrby [clave] [campo] [incremento]: agrega un incremento al valor del campo campo en la clave de la tabla hash
(8) hsetnx [clave] [campo] [valor]: establezca el valor del campo campo en la clave de la tabla hash en valor, y la operación puede tener éxito solo si el campo campo no existe
6 Redis ordenó la colección Zset
Zset también es una colección sin elementos repetidos. La diferencia con el conjunto es que cada miembro de Zset está asociado con una puntuación, y los miembros del conjunto se ordenan de menor a mayor según la puntuación, y la puntuación se puede repetir.
Su capa inferior utiliza dos estructuras de datos:
(1) La tabla hash se utiliza para asociar valor y puntuación para garantizar la singularidad de los elementos.
(2) Saltar tabla, la función es ordenar el valor, y obtener la lista de elementos según el valor de la puntuación.Operación
:
(1) zadd [clave] [puntuación1] [valor1] [puntuación2] [valor2]: agregue uno o más elementos miembro y sus valores a la clave
(2) zrange [tecla] [inicio] [final] [WITHSCORES]: Devuelve los elementos entre inicio y final en la siguiente tabla. Si traes CON PARTICIPACIONES, puedes devolver el puntaje juntos. Si inicio y final son 0 y -1 respectivamente, devuelve todos los elementos
(3) zrangebyscore [key] [min] [max] [withscores] [limit offset count]: Devuelve todos los miembros cuyo valor de puntaje está entre el mínimo y el máximo (intervalo cerrado), ordenados por puntaje de menor a mayor, el límite de conteo de desplazamiento es paginación
(4) zrevrangebyscore [key] [max] [min] [withscores] [limit offset count]: Devuelve todos los miembros cuyo valor de puntuación está entre el mínimo y el máximo (intervalo cerrado), dispuestos en orden descendente de puntuación
(5) zincrby [clave] [incremento] [valor]: añade un incremento a la puntuación del elemento
(6) zrem [clave] [valor]: Eliminar el elemento con el valor especificado
(7) zcount [clave] [min] [max]: el número de elementos en el intervalo estadístico (intervalo cerrado)
(8) zrank [clave] [valor]: Devuelve el rango del valor especificado en la colección, comenzando desde 0