Redis SCHEDA

Redis Scheda



“I set Redis sono raccolte non ordinate di stringhe che non contengono duplicati. Questi sono molto simili a Java HashSet, Python Set, ecc. Soprattutto, le operazioni fondamentali come l'aggiunta, la rimozione e il controllo dell'esistenza di un membro sono altamente efficienti perché operano in una complessità temporale O(1).

Membri di un insieme

Come accennato, i set Redis contengono elementi stringa univoci. Gli elementi già esistenti non saranno accettati dai set Redis e verranno ignorati. Inoltre, un singolo set può contenere fino a 4 miliardi di stringhe uniche.









La natura del set Redis di contenere membri unici è utile in diversi casi d'uso del mondo reale.



  • Capacità di eseguire operazioni su insiemi standard come Unione, Intersezione e Differenza.
  • Monitoraggio dei visitatori unici di un sito web
  • Rappresenta le relazioni tra entità del mondo reale

Il comando SCARD

Il comando SCARD, abbreviazione di Set Cardinality, restituisce il numero di membri in un set memorizzato in una data chiave. Funziona in una complessità temporale O(1), il che significa che il tempo impiegato dal comando SCARD per essere eseguito non si basa sul numero di membri nel set dato. Ci vuole sempre un tempo costante.





Il comando SCARD ha una sintassi molto semplice, come mostrato di seguito.

SCARD set_chiave

imposta_chiave: La chiave dell'insieme Redis



Questo comando restituisce un valore intero che è il numero di membri nel set.

Caso d'uso: conta i visitatori unici di un sito web

Supponiamo che un'azienda di pizza 'YummyPizza' gestisca un sito web chiamato yummypizza.com dove le persone possono ordinare la pizza online. Per tenere traccia delle vendite e della base clienti, mantengono un database Redis per memorizzare tutti i visitatori unici del sito Web ogni mese.

Ogni volta che un utente visita il sito Web YummyPizza, l'ID utente deve essere aggiunto al database Redis. Inoltre, lo stesso utente non dovrebbe essere aggiunto anche al database. Pertanto, la struttura dati ideale è il set Redis, in cui i set memorizzano solo membri univoci.

Supponiamo che cinque utenti abbiano visitato il sito Web e questi membri vengano aggiunti al database Redis, come mostrato di seguito.

SADD YummyPizzaVisitatori:Ottobre John Mary Raza Stoinis Prince

Come previsto, è stato restituito il numero intero 5, il che significa che i cinque membri vengono aggiunti all'insieme memorizzato nella chiave ' YummyPizzaVisitatori:Ottobre. '

Alla fine della giornata, gli amministratori dell'azienda devono controllare il numero totale di visitatori unici del sito web. Quindi, la cardinalità dell'insieme deve essere calcolata. Fortunatamente, il comando SCARD discusso in precedenza torna utile in questo tipo di scenario.

Eseguiamo il comando SCARD sul set memorizzato alla chiave “ YummyPizzaVisitatori:Ottobre. '

scard YummyPizzaVisitatori:ottobre

L'output è 5, il che significa che nel set specificato sono presenti cinque membri univoci. Questo comando viene eseguito troppo velocemente. Non importa cinque membri o 50000 membri; il tempo di esecuzione sarà costante.

Si supponga che la chiave impostata specificata non esista nel database Redis. Quindi, l'output sarà 0, come mostrato nell'esempio seguente. In questo caso, specificheremo una chiave che non è nel database.

scard NonExistingKey

Conclusione

Per riassumere, il set Redis è un candidato ideale per l'archiviazione di stringhe univoche. Come discusso, la cosa più importante del set Redis è che la maggior parte delle operazioni set associate richiede un tempo costante per essere eseguita. Il comando SCARD è uno dei comandi set più utilizzati per calcolare il numero totale di membri del set per un dato set memorizzato in una chiave specificata. Indipendentemente dal numero di membri dell'insieme disponibili, questo comando impiega un tempo costante per fornire l'output. Come mostrato nell'ultimo esempio, se la chiave set non esiste, l'output sarà 0.