Utilizzando gli elenchi in Redis

Utilizzando gli elenchi in Redis
Un elenco in Redis si riferisce a una raccolta di valori di stringa che sono ordinati per inserire l'ordine. In Redis, un elenco può contenere fino a 4 miliardi di elementi. Redis usa il concetto di testa e coda per gestire un elenco, come copriremo in questa guida.

Utilizzando questa guida, imparerai come lavorare con gli elenchi di Redis, compresa la creazione, l'inserimento e l'eliminazione dei valori.

In questa guida, abbiamo testato tutti i comandi sull'ultima versione di Redis. Ti consigliamo di fare lo stesso e usare la CLI nativa Redis. In questo modo garantirà la massima compatibilità e consentirà di vedere output simili a quelli in questa guida.

Nozioni di base: creazione di un elenco in Redis

La creazione di un elenco in Redis è un po 'più che creare una coppia di tasti e valore semplice. È bene notare che una chiave può contenere un solo elenco.

Come accennato, Redis usa il concetto di testa e coda o sinistra e destra per gestire un elenco.

Esistono due modi in cui puoi aggiungere elementi a un elenco:

  1. Lpush
  2. Rpush

I comandi Lpush aggiungono il nuovo elemento specificato alla testa dell'elenco (o a sinistra). Il comando rpush, d'altra parte, aggiungerà il nuovo elemento dell'elenco alla coda (o a destra) dell'elenco specificato.

Utilizzi due comandi principali per creare un nuovo elenco o aggiungere elementi a un elenco esistente.

Facciamo alcuni esempi.

Per creare un semplice elenco chiamato database, possiamo usare il comando:

127.0.0.1: 6379> Database Lpush MongoDB
(intero) 1

Nota: è anche possibile utilizzare RPUSH per eseguire la stessa operazione.

Entrambi i comandi Lpush e Rpush restituiranno un valore intero che indica il numero di elementi nell'elenco.

Prendi i seguenti esempi per aggiungere più elementi all'elenco.

127.0.0.1: 6379> Database Lpush MongoDB
127.0.0.1: 6379> database lpush redis
127.0.0.1: 6379> Database RPUSH PostgreSQL
127.0.0.1: 6379> database rpush mysql
127.0.0.1: 6379> Database Lpush Cockroachdb
(intero) 5

È possibile aggiungere più elementi a un elenco in un singolo comando. Ad esempio, possiamo sostituire i comandi sopra per uno come:

127.0.0.1: 6379> Database Lpush MongoDB Redis PostgreSQL Mysql Cockroachdb
(intero) 5

Lo stesso caso si applica al comando rpush.

Redis fornisce anche i comandi LPUSHX e RPUSHX. Sono usati in modo simile ai comandi LPUSH e RPUSH; Tuttavia, non possono creare un elenco. La chiave deve esistere prima di inserire elementi con comandi LPUSHX e RPUSHX.

127.0.0.1: 6379> Database RPUSHX FireStore
127.0.0.1: 6379> database LPUSHX MariaDB

Aggiorna un elemento dell'elenco

Per modificare un valore di un elemento in un elenco di Redis, utilizzare il comando LSET. Il comando prende l'elenco, l'indice del vecchio elemento da aggiornare e il nuovo valore.

Ad esempio, per modificare il valore dell'elemento all'indice 0, possiamo fare:

127.0.0.1: 6379> Database LSET 0 SQLite
OK

Il comando restituisce la stringa "OK" se il comando esegue correttamente.

Prendi elementi da un elenco

Per recuperare gli elementi da un elenco, utilizzare il comando LRANGE. Il comando prende un indice di avvio e arresto e restituisce i valori all'interno dell'intervallo specificato.

Per esempio:

127.0.0.1: 6379> database LRANGE 0 5
1) "SQLite"
2) "Cockroachdb"
3) "Mysql"
4) "PostgreSQL"
5) "Redis"
6) "MongoDB"

Puoi usare un intervallo negativo. Ad esempio, -1 rappresenta l'ultimo elemento nell'elenco e -4 rappresenta il quarto all'ultimo elemento.

Esempio:

127.0.0.1: 6379> database LRANGE -4 -1
1) "PostgreSQL"
2) "Redis"
3) "MongoDB"
4) "Firestore

Se si desidera ottenere un singolo elemento nell'elenco, utilizzare il comando Lindex seguito dall'indice di destinazione dell'elemento per ottenere.

Per esempio:

127.0.0.1: 6379> Database Lindex 2
"Mysql"

Tieni presente che l'indicizzazione inizia a 0.

Se vuoi conoscere il numero di elementi in un elenco, usa il comando LLEN.

127.0.0.1: 6379> database LLEN
(intero) 7

Il comando restituisce un numero intero che rappresenta il numero di elementi nell'elenco.

Eliminazione di elementi da un elenco

Se si desidera rimuovere un elemento da un elenco, utilizzare il comando LREM. Il comando prende il conteggio e un valore per rimuovere.

Il comando rimuoverà il primo occorrenza corrispondente a uno schema specifico per impostazione predefinita.

127.0.0.1: 6379> database Lrem 1 mysql

È inoltre possibile utilizzare i comandi LPOP e RPOP per rimuovere gli elementi da un elenco. I comandi rimuovono rispettivamente gli elementi più a sinistra e a destra nell'elenco.

127.0.0.1: 6379> database LPOP
"SQLite"
127.0.0.1: 6379> database RPOP
"Firestore"

Entrambi i comandi rimuovono e restituiscono il valore dell'elemento rimosso.

Chiusura

Usando questa guida, hai imparato a lavorare con List in Redis. Puoi controllare la documentazione per saperne di più sui comandi dell'elenco e su come funzionano.

Grazie per aver letto 🙂