Come utilizzare Redis HSET

Come utilizzare Redis HSET
Un hash in Redis è un tipo di dati utilizzato per archiviare una mappatura tra una chiave e un valore. Gli hash Redis sono adatti per contenere oggetti dati complessi in quanto possono contenere più coppie di valore chiave con poco spazio.

L'uso di esempio di un hash Redis è quello di archiviare informazioni su un post. Un hash può essere utilizzato per archiviare informazioni come Post_id, Author_name, Publish_Data, categoria e altro ancora.

Gli hash sono uno dei tipi di dati fondamentali e se sei nuovo a Redis o un professionista esperto, sapere come lavorare con gli hash può essere molto utile.

L'essenza di questo tutorial è di fornirti le conoscenze fondamentali per lavorare con gli hash in Redis.

In questa guida, abbiamo utilizzato l'ultima versione del server Redis in esecuzione su un sistema Debian 11. Sebbene non sia necessario replicare questo ambiente, ti consigliamo di utilizzare la CLI nativa Redis. L'uso della CLI Redis ti assicurerà di ottenere output simili a questa guida.

Come creare un hash

La prima cosa che impareremo è come creare un hash in Redis.

Apri Redis CLI e usa il comando HSET per creare un hash. Il comando prende il nome della chiave hash, il campo e il valore come argomenti.

Prendi l'esempio mostrato di seguito:

127.0.0.1: 6379> Titolo HSET Post "Titolo Hello World."
(intero) 1

Il comando sopra crea un hash con la chiave del post e un campo di titolo e il suo valore corrispondente.

Il comando restituisce un numero intero 1 se l'hash viene creato correttamente.

È bene assicurarsi di fornire tutti gli argomenti nel comando HSET per evitare errori. Ad esempio, il seguente comando restituisce un errore mentre manca un argomento dal comando:

127.0.0.1: 6379> hset post post_id

(Errore) Numero errato Di argomenti per 'hset' comando

Nota: se si esegue il comando HSET in cui esiste già un hash, Redis sovrascriverà il contenuto del vecchio hash con quello nuovo.

Ad esempio, dai un'occhiata al comando qui sotto:

127.0.0.1: 6379> Titolo di HSET Post "Titolo sovrascritto."
(intero) 0

In questo caso, il comando HSET restituisce un numero intero 0 se il valore specificato viene aggiornato correttamente.

Per creare più campi e i loro valori corrispondenti in un singolo comando, utilizzare il comando HMSET.

Per esempio:

127.0.0.1: 6379> HMSET POST POST_ID 1 Titolo "Hello World Title."Author_name" LinuxHint "pubblica_date" 02/02/2022 "Catagpgry" Linux "
OK

Il comando restituisce la stringa "ok" se l'hash viene creato correttamente.

Come recuperare informazioni da un hash

Discutiamo i vari comandi che puoi utilizzare per recuperare informazioni da un hash Redis.

Per ottenere il valore associato a un campo specifico, utilizzare il comando HGET. Il comando prende il nome del campo come argomento.

Per esempio:

127.0.0.1: 6379> Titolo post post hget
"Hello World Title."

Il comando ripristinerà il valore associato della chiave specificata.

Per ottenere tutte le chiavi in ​​un hash, usa il comando hgetall. Questo comando prende la chiave hash come argomento.

Considera l'esempio mostrato di seguito:

127.0.0.1: 6379> Hgetall Post
1) "Titolo"
2) "Hello World Title."
3) "post_id"
4) "1"
5) "Author_name"
6) "Linuxhint"
7) "pubblica_date"
8) "02/02/2022"
9) "Categogry"
10) "Linux"

Come mostrato nell'output di esempio sopra, il comando hgetall restituisce i campi e i valori associati.

Se si desidera recuperare i valori da più campi contemporaneamente, è possibile utilizzare il comando hmget. Il comando prende la chiave e i campi che si desidera recuperare come argomenti.

Dai un'occhiata all'esempio mostrato di seguito:

127.0.0.1: 6379> HMGET POST_ID TITOLO AUTOR_NAME
1) "1"
2) "Hello World Title."
3) "Linuxhint"

L'esempio sopra specifica la chiave e più campi e il comando restituisce i valori corrispondenti.

Assicurarsi che esista il campo specificato; Altrimenti, Redis restituirà un valore nullo.

Supponiamo che tu voglia solo visualizzare i campi in un hash specifico ma non i loro valori corrispondenti? Per questo, puoi usare il comando hkeys:

127.0.0.1: 6379> Hkeys Post
1) "Titolo"
2) "post_id"
3) "Author_name"
4) "pubblica_date"
5) "Categogry"

Nell'esempio sopra, il comando hkey prende la chiave come argomento e restituisce tutti i campi nell'hash.

Allo stesso modo, è possibile utilizzare il comando HVALS per recuperare i valori nell'hash.

127.0.0.1: 6379> HVALS POST
1) "Hello World Title."
2) "1"
3) "Linuxhint"
4) "02/02/2022"
5) "Linux"

Il comando restituirà solo i valori e non i loro campi.

Per ottenere un valore intero del numero totale di campi nell'hash, utilizzare il comando hval.

127.0.0.1: 6379> Hlen Post
(intero) 5

Il comando di esempio sopra mostra che l'hash contiene cinque campi.

Eliminazione delle chiavi in ​​un hash

Per rimuovere un campo da un hash specifico, è possibile utilizzare il comando HDEL. Il comando prende campi singoli o multipli come argomenti.

Esempio:

127.0.0.1: 6379> Titolo Post_ID HDEL
(intero) 2

Il comando restituisce un valore intero che indica il numero di campi rimossi dall'hash.

Se il campo non esiste, il comando lo ignora e rimuove solo quelli esistenti.

Per verificare se esiste un campo nell'hash, usa il comando esista.

127.0.0.1: 6379> esista post autore_
(intero) 1

Il comando restituisce intero 1 se la chiave esiste e 0 in caso contrario.

Conclusione

Il tutorial copre comandi ed esempi da utilizzare durante la creazione e la lavorazione con gli hash in Redis. Ci sono altri comandi oltre lo scopo di questo tutorial. Controlla la documentazione per saperne di più.

Grazie per aver letto!