Redis Zrank

Redis Zrank
Redis classificados conjuntos podem conter uma coleção de strings onde cada um é chamado de membro do conjunto. Cada membro está associado a um valor de classificação e pontuação. Rank é o índice de um membro específico no conjunto classificado armazenado em uma determinada chave. O valor da pontuação é usado para ordenar os membros do conjunto do valor de pontuação mais baixo ao maior. Portanto, um membro com o menor valor de pontuação será atribuído a um índice de 0. Essas propriedades permitem que conjuntos classificados realizem muito mais tarefas com alto desempenho.

Vários comandos estão disponíveis para operar em conjuntos classificados. Às vezes, você precisa conhecer o índice ou a classificação de um membro no conjunto Redis classificado. O Zrank é o comando ideal para usar, que será discutido na seção a seguir.

O comando zrank

Agora, você tem uma idéia de como o valor do índice foi atribuído a cada membro em um conjunto classificado. O comando Zrank obtém a classificação de um membro especificado com complexidade de tempo linear. A seguir, a sintaxe do comando Zrank:

Zrank classed_set_key Membro

STORD_SET_KEY: A chave do conjunto classificado ao qual o membro pertence.

membro: O nome do membro que você precisa para obter a classificação.

Este comando retorna a classificação ou índice do membro especificado como um valor inteiro se o membro existir no conjunto classificado. Sempre que o membro especificado ou a tecla de conjunto classificada não existe, o comando Zrank retorna um valor de string nada.

Caso 01: Obtenha a posição da tabela de líderes do jogo de um jogador

Vamos supor que tenhamos uma tabela de líderes de jogo on -line implementada usando o conjunto Redis classificado. Agora, exibiremos a classificação de cada jogador quando eles efetuarem login no perfil de usuário.

Primeiro, vamos criar uma tabela de classificação fictícia, OnlineGameLeaderboard, e adicione jogadores usando o comando Zadd.

Zadd OnlineGameLeaderboard 3000 "Jack" 1200 "Mary" 1000 "Rikaz" 5000 "Noel"

Em seguida, chamaremos o comando Zrange para verificar se os membros foram adicionados corretamente.

ZRANGE ONLINEGAMELEADERBOARD 0 10 Withscores

Saída:

Como esperado, os membros foram classificados em ordem crescente por seus valores de pontuação. Digamos que precisamos obter as fileiras de cada um desses membros. O Zrank pode ser usado como o seguinte:

Zrank OnlineGameLeaderboard Rikaz
Zrank OnlineGameLeaderboard Mary
Zrank OnlineGameLeaderboard Jack
Zrank OnlineGameLeaderboard Noel

Saída:

Como esperado, a classificação retornou para cada membro, onde o membro "Rikaz" tem a classificação mais baixa de 0. Além disso, o membro "Noel" obteve a classificação mais alta de 3.

Vamos verificar como o comando se comporta se você especificar um membro inexistente no seguinte comando:

Zrank OnlineGameLeaderboard Martin

O membro que especificamos não está no conjunto classificado. Por isso, retornou a corda nada.

Em seguida, verificaremos o seguinte comando para a chave inexistente:

ZRANK NÃO EXISTENCIONCIONAÇÃO MARTIN

O valor de retorno é novamente nulo.

O comando Zrank não suporta vários membros como argumentos. Portanto, se você fornecer vários membros, ele lançará um erro. O comando Zrank é recomendado para usar quando você precisar obter o valor do índice de um membro do conjunto classificado.

Em resumo, os conjuntos classificados Redis podem conter valores de string chamados membros. Cada um desses membros está associado a duas propriedades: pontuação e classificação. Conforme discutido, a classificação é baseada em 0 e incrementada por um por membro. Geralmente, os membros do conjunto Redis classificados são ordenados por suas pontuações em ordem crescente. Portanto, o membro com a pontuação mais baixa será atribuída ao 0º índice.

Conclusão

Este artigo discutiu como o comando Zrank permite obter esse valor de índice para um determinado membro no conjunto classificado armazenado em uma determinada chave. É importante observar que o comando Zrank opera com complexidade do tempo linear.