Consultas da faixa Redis

Consultas da faixa Redis
Redis possui vários tipos de dados para armazenar e gerenciar vários tipos de dados em seus aplicativos. Este tutorial fornece comandos de intervalo fundamental para recuperar valores de um tipo específico dentro de um intervalo.

Lembre -se de que este tutorial não é uma introdução aos tipos de dados Redis. Verifique nosso tutorial sobre o assunto para saber mais.

Testamos os comandos e exemplos na versão mais recente do Redis. Recomendamos replicar um ambiente semelhante para obter a máxima compatibilidade. Por exemplo, comandos como GetRange podem não funcionar no Redis versão 2.0 e inferior.

Comando getRange

O primeiro comando da faixa que veremos é o comando getRange. O comando pega uma chave com um valor de string e retorna uma substring do valor, conforme determinado pelos índices de início e final.

A sintaxe do comando é como mostrado:

GetRange Key Start End

Comece criando uma chave e valor simples em um banco de dados Redis, como mostrado no comando abaixo:

127.0.0.1: 6379> Defina o mystring "Hello, World From Redis!"

Em seguida, para obter uma substring a partir do índice 3 ao índice 10, podemos fazer:

127.0.0.1: 6379> GetRange MyString 3 10
"Lo, worl"

Observe que o índice da string no índice 0 avançar. Os caracteres de espaço em branco também são incluídos como caracteres válidos.

Você também pode intervalo negativo para obter os últimos elementos na string. Por exemplo, para obter os três últimos índices, podemos fazer.

127.0.0.1: 6379> GetRange MyString -3 -1
"é!"

A sintaxe acima recebe os três últimos caracteres no valor da string.

Comando lRange.

Você frequentemente se depara com este comando ao trabalhar com listas em Redis. O comando lRange retorna um número especificado de elementos em uma lista Redis.

Ele leva a chave da lista e um valor de partida e parada. Da mesma forma, a indexação de elementos em uma lista Redis começa no índice 0.

Comece criando uma lista simples, como mostrado no comando de exemplo abaixo:

Bancos de dados LPUSH MONGODB MYSQL POSTGRESQL REDIS FIRESTORE CAURACHDB FAUNADB DocumentDB
(Inteiro) 8

O comando acima cria uma lista Redis chamada bancos de dados e adiciona os valores especificados a ele.

Você pode usar o comando lRange para obter elementos dentro de um intervalo específico. Por exemplo, para obter elementos do índice 0 a 5, podemos fazer.

127.0.0.1: 6379> Bancos de dados LRange 0 5 5
1) "DocumentDB"
2) "Faunadb"
3) "Candroachdb"
4) "Firestore"
5) "Redis"
6) "PostGresql"

Você notará que os elementos começam com o último elemento inserido no primeiro. A lista é simplesmente uma coleção de itens classificados pela ordem de inserção.

Você também pode usar um índice negativo para obter o último elemento de uma lista.

127.0.0.1: 6379> Banco de dados LRange -5 -1
1) "Firestore"
2) "Redis"
3) "PostGresql"
4) "MySQL"
5) "MongoDB"

O comando retorna os elementos da cauda da lista.

Se você buscar um intervalo onde não houver elementos disponíveis, o comando retornará uma lista vazia como:

127.0.0.1: 6379> Bancos de dados LRange 10 20
(Lista vazia ou conjunto)

Comando zRange

O próximo comando de intervalo que você precisa estar familiarizado é o comando Zrange. Usando o comando Zrange, você pode buscar itens dentro de um intervalo específico de um conjunto classificado.

O comando leva a tecla de conjunto classificada, um valor de índice de partida e parada. Ele retorna todos os elementos dentro do intervalo especificado classificado pela pontuação do mais baixo ao mais alto.

A sintaxe do comando pode ser expressa como:

ZRange Key Start Stop

Para ver como o comando Zrange funciona, comece criando uma lista classificada usando comandos como mostrado:

127.0.0.1: 6379> Zadd Languages ​​1 ferrugem 2 python 3 go 5 c 4 c ++ 6 javascript 10 java
(Inteiro) 7

O comando acima adiciona os valores e suas pontuações correspondentes ao conjunto classificado "idiomas".

Para buscar itens no conjunto dentro de uma faixa de pontuação específica, use o comando Zrange como mostrado:

127.0.0.1: 6379> Linguagens de ZRange 1 5
1) "Python"
2) "vá"
3) "C ++"
4) "C"
5) "JavaScript"

O comando retorna todos os elementos dentro desse intervalo classificados pelo valor da pontuação.

Para mostrar os elementos e seu valor de pontuação correspondente, use a opção Withscores como:

127.0.0.1: 6379> Línguas ZRange 0 5 com Escores
1) "ferrugem"
2) "1"
3) "Python"
4) "2"
5) "Vá"
6) "3"
---TRUNCADO---

O comando deve retornar o elemento e sua pontuação.

ZrevRange

O comando ZrevRange funciona de maneira semelhante ao comando Zrange. No entanto, ele retorna os valores em ordem inversa, eu.e., A faixa de pontuação começa do mais alto ao mais baixo.

Exemplo

127.0.0.1: 6379> Linguagens de ZrevRange 0 5
1) "Java"
2) "JavaScript"
3) "C"
4) "C ++"
5) "Vá"
6) "Python"

Neste exemplo, os resultados começam da pontuação mais alta para o menor valor. Você pode ativar as pontuações usando a opção Withscores.

127.0.0.1: 6379> Línguas zrevRange 0 5 Withscores
1) "Java"
2) "10"
3) "JavaScript"
4) "6"
5) "C"
6) "5"
7) "C ++"
8) "4"
9) "Vá"
10) "3"
11) "Python"
12) "2"

Observe como as pontuações estão em ordem inversa em comparação com a saída do comando Zrange.

Conclusão

Este guia oferece um passo a passo de alguns dos comandos de faixa fundamental em Redis. Lembre -se de que existem outros comandos de intervalo, como ltrim, xrange e mais. Considere a documentação para comandos não discutidos neste guia.