Introdução
Neste laboratório, você explorará as operações fundamentais de um Redis Sorted Set. Começará conectando-se ao servidor Redis e usando o comando ZADD para adicionar elementos com pontuações associadas a um Sorted Set. Isso inclui adicionar novos elementos, atualizar as pontuações de elementos existentes e entender a saída do comando.
Em seguida, você aprenderá como obter uma faixa de elementos do Sorted Set por seu índice usando o comando ZRANGE, obter a classificação de um elemento com ZRANK, incrementar a pontuação de um elemento usando ZINCRBY e, finalmente, remover elementos do Sorted Set com ZREM.
Adicionar Elementos com Pontuações usando ZADD
Nesta etapa, você aprenderá como adicionar elementos com pontuações a um Redis Sorted Set usando o comando ZADD. Sorted Sets são uma estrutura de dados que armazena elementos associados a uma pontuação. Os elementos são ordenados por suas pontuações, permitindo que você os recupere de maneira ordenada.
Primeiro, vamos conectar ao servidor Redis. Abra um terminal na VM do LabEx. Você já deve estar no diretório ~/project. Agora, conecte-se ao servidor Redis usando o comando redis-cli:
redis-cli
Você deve ver o prompt do Redis: 127.0.0.1:6379>.
Agora, vamos adicionar alguns elementos com pontuações a um Sorted Set chamado my_zset. O comando ZADD tem a seguinte sintaxe:
ZADD key score member [score member ...]
Onde:
keyé o nome do Sorted Set.scoreé a pontuação associada ao elemento.memberé o elemento a ser adicionado.
Vamos adicionar três elementos a my_zset: "apple" com uma pontuação de 1, "banana" com uma pontuação de 2 e "cherry" com uma pontuação de 3.
ZADD my_zset 1 apple 2 banana 3 cherry
Você deve ver a seguinte saída:
(integer) 3
Isso indica que três elementos foram adicionados ao Sorted Set.
É importante sair do Redis CLI após esta etapa para garantir que os comandos sejam registrados corretamente. Para sair, digite:
exit
Adicionar Mais Elementos e Atualizar Pontuação com ZADD
Nesta etapa, continuaremos adicionando elementos ao Sorted Set my_zset e atualizaremos a pontuação de um elemento existente.
Primeiro, conecte-se ao servidor Redis novamente:
redis-cli
Agora, vamos adicionar outro elemento, "date" com uma pontuação de 2.5:
ZADD my_zset 2.5 date
Você deve ver a seguinte saída:
(integer) 1
Isso indica que um elemento foi adicionado ao Sorted Set.
Você também pode atualizar a pontuação de um elemento existente usando ZADD. Vamos atualizar a pontuação de "apple" para 1.5:
ZADD my_zset 1.5 apple
Você deve ver a seguinte saída:
(integer) 0
Isso indica que nenhum novo elemento foi adicionado (porque "apple" já existia), mas a pontuação de "apple" foi atualizada.
Lembre-se de sair do Redis CLI:
exit
Obter Intervalo por Índice com ZRANGE
Agora que preenchemos nosso Sorted Set my_zset, vamos aprender como recuperar elementos dentro de um intervalo específico usando o comando ZRANGE.
Conecte-se ao servidor Redis:
redis-cli
O comando ZRANGE recupera elementos de um Sorted Set dentro de um intervalo de índices especificado. A sintaxe é a seguinte:
ZRANGE key start stop [WITHSCORES]
Onde:
keyé o nome do Sorted Set.starté o índice inicial (inclusivo).stopé o índice final (inclusivo).WITHSCORES(opcional) inclui as pontuações dos elementos na saída.
Para recuperar os três primeiros elementos (índice 0 a 2) de my_zset, use o seguinte comando:
ZRANGE my_zset 0 2
Você deve ver a seguinte saída, representando os elementos ordenados por suas pontuações:
1) "apple"
2) "banana"
3) "date"
Para recuperar os elementos junto com suas pontuações, use a opção WITHSCORES:
ZRANGE my_zset 0 2 WITHSCORES
Você deve ver a seguinte saída:
1) "apple"
2) "1.5"
3) "banana"
4) "2"
5) "date"
6) "2.5"
Saia do Redis CLI:
exit
Obter a Posição do Elemento com ZRANK
Nesta etapa, você aprenderá como determinar a classificação de um elemento dentro de um Sorted Set usando o comando ZRANK. A classificação representa a posição do elemento na ordem classificada (começando de 0 para a pontuação mais baixa).
Conecte-se ao servidor Redis:
redis-cli
O comando ZRANK tem a seguinte sintaxe:
ZRANK key member
Onde:
keyé o nome do Sorted Set.memberé o elemento para o qual você deseja encontrar a classificação.
Para encontrar a classificação de "banana" em my_zset, use o seguinte comando:
ZRANK my_zset banana
Você deve ver a seguinte saída:
(integer) 1
Isso indica que "banana" está na classificação 1 no Sorted Set.
Saia do Redis CLI:
exit
Incrementar Pontuação com ZINCRBY e Remover Elementos com ZREM
Nesta etapa final, você aprenderá como incrementar a pontuação de um elemento usando ZINCRBY e remover elementos usando ZREM.
Conecte-se ao servidor Redis:
redis-cli
O comando ZINCRBY incrementa a pontuação de um membro em um sorted set. A sintaxe é:
ZINCRBY key increment member
Onde:
keyé o nome do Sorted Set.incrementé o valor para incrementar a pontuação.memberé o elemento cuja pontuação você deseja incrementar.
Vamos incrementar a pontuação de "banana" em 0.5:
ZINCRBY my_zset 0.5 banana
Você deve ver a seguinte saída:
"2.5"
Isso indica que a nova pontuação de "banana" é 2.5.
O comando ZREM remove um membro de um sorted set. A sintaxe é:
ZREM key member [member ...]
Onde:
keyé o nome do Sorted Set.memberé o elemento que você deseja remover.
Vamos remover "banana" de my_zset:
ZREM my_zset banana
Você deve ver a seguinte saída:
(integer) 1
Isso indica que um elemento foi removido.
Saia do Redis CLI:
exit
Resumo
Neste laboratório, você aprendeu como usar operações fundamentais de Redis Sorted Set. Você usou ZADD para adicionar elementos com pontuações, ZRANGE para buscar intervalos de elementos, ZRANK para obter a classificação de um elemento, ZINCRBY para incrementar pontuações e ZREM para remover elementos. Agora você tem uma base sólida para gerenciar sorted sets de forma eficaz no Redis.


