Redis Hlen

Redis Hlen

Redis Hash Fields

Hashes er en populær datatype i Redis-butikker fordi de omfattende kan representere gjenstander i den virkelige verden. Objekter i den virkelige verden inneholder felt som kan tilordnes verdier, som vist i det følgende.

I Redis, hashmap datastruktur bestemmelser navnverdipar. Ett navnverdipar kan identifiseres som et felt i en virkelig enhet. La oss kartlegge ovennevnte ansattes forekomst til en Redis -hasj.

I eksemplet ovenfor fikk vi den øverste redis-nøkkelen "Ansatt: 1”, Hvor vi lagrer hasj. Det er fire hasjfelt som representerer fire attributter til ansattes objekt. Redis Hashes kan lagre mer enn 4 milliarder hasjfelt som er mer enn nok til å representere objektene dine. Det beste er at det fremdeles tar minimal plass i Redis -databaseinstansen. Det er mer effektivt å opprettholde 1000 hasjfelt innen 10 Redis-nøkler på toppnivå for å lagre 10000 nøkkelverdi-data enn å lagre den mengden data i 10000 på toppnivå Redis-nøkler.

Redis hlen -kommando

I noen applikasjoner er det nødvendig å telle antall egenskaper eller felt tilgjengelig for et gitt objekt. Hvis den er lagret i en Redis -hasj, er det en kommando borte fra å hente antall hasjfelt på den spesifiserte tasten. “Hlen”Kommando kan brukes til å telle antall hasjfelt i en gitt hasj.

Syntaks

1
Hlen hash_key

hash_key: Dette er den øverste redis-nøkkelen som hasj har blitt lagret på.

Denne kommandoen returnerer en heltallverdi som er antall hasjfelt som er lagret på en gitt nøkkel. Når hash_key ikke eksisterer, vil denne kommandoen returnere 0. Denne kommandoen har konstant tidskompleksitet O (1), som motiverer deg til å bruke den i høyytelsesapplikasjoner.

Eksempel - Teller antall varer i en handlekurv

La oss anta at vi bruker Redis -databasen for å lagre handlekurvartikler. Tanken er å identifisere hver kunde med en redis -nøkkel. Hver Redis -nøkkel lagrer flere hasjfelt som representerer en handlekurvvare. Monten for handlekurven vil se ut som følgende.

Vi kan bruke HSET -kommandoen til å legge til noen handlekurver for “Kunde: 1”.

1
HSET -kunde: 1 eple 10 øl 5 melk 2

Nå kunden: 1 objekt skal se ut som følgende.

Det er 3 felt lagret på “Kunde: 1” -nøkkel. Vi bruker HLEN -kommandoen for å telle antall felt på “Kunden: 1” -tasten.

1
HLEN -kunde: 1

Produksjon:

Utgangen er 3, som forventet.

La oss slette "øl" -feltet på Kunde: 1 nøkkel. HDEL -kommandoen kan brukes til å slette et felt fra en gitt nøkkel.

1
HDEL -kunde: 1 øl

Nå kan vi sjekke de eksisterende hasjfeltene ved å kjøre Hgetall -kommandoen.

1
Hgetall kunde: 1

Produksjon:

"Øl: 5" -feltet er blitt slettet med hell. La oss telle antall felt igjen ved hjelp av HLEN -kommandoen.

1
HLEN -kunde: 1

Siden vi bare fikk to hasjfelt igjen på nøkkelen “Kunde: 1”, skal utgangen være 2.

Produksjon:

Det anbefales å bruke HLEN -kommandoen når det er krav om å telle antall hasjfelt som er lagret på en gitt tast. Det er en veldig rask og enkel kommando å bruke i dine Redis-baserte applikasjoner.

La oss også sjekke utdataene for ikke-eksistensnøkkelen.

1
HLEN ikke-eksistens

Produksjon:

Utgangen er 0, som forventet.

Konklusjon

Redis kan lagre forskjellige typer datastrukturer for en bestemt nøkkel. Hasjene er en av de mest populære datastrukturene som brukes i Redis -databaser. Hashes kan brukes til å representere og manipulere enkle objekter og data effektivt. Redis støtter flere hasjoperasjoner. HLEN kan brukes til å telle antall hasjfelt som er lagret på en gitt Redis -nøkkel. Vanligvis returnerer det et heltall som er tellingen av hasjfeltene. Hvis Redis -nøkkelen ikke eksisterer, vil den returnere 0. Det er veldig raskt siden vi ikke trenger å utføre en egen leseoperasjon.