[Redis] Hashes 명령어 설명 및 예제

' ); document.write( '' ); (adsbygoogle = window.adsbygoogle || []).push({}); } else if (window.innerWidth < 768) { document.write( '‘ ); (adsbygoogle = window.adsbygoogle || []).push({}); }

Hashes 관련 명령어 예제

 
HSET 하나의 객체에 여러개의 변수를 담을 수 있는 구조 라고 생각하면 편하겠다.
Man이라는 객체가 있다면
 

 Man.age = 30 Man.name = Jung Man.gender = M Man.job = developer

Man이 keyage, name, gender, job … = filed 와 비슷한 구조라고 보면된다.

 

– HSET, HGET

설명(HSET) : key에 저장된 해시 필드를 설정합니다.설명(HGET: key filed에 저장된 값을 불러온다

시간복잡도 : O(1)

redis-cli > HSET key field value

redis-cli > HGET key field

 redis > HSET man age 30 (integer) 1 redis > HGET man age “30”

– HMSET, HMGET

설명(HMSET) : key에 저장된 해시 필드를 여러개 설정합니다.설명(HMGET: key filed에 저장된 값을 여러개 불러온다

시간복잡도 : O(N)

redis-cli > HMSET key field value [field value …]

redis-cli > HMGET key field [field …]

 redis > HMSET man age 30 name “jung” gender “M” job “developer” “OK” redis > HMGET man age name gender job 1) “30” 2) “jung” 3) “M” 4) “developer”

– HSETNX

설명(HSETNX) : key에 필드가 아직 존재하지 않는 경우에만 저장합니다.

시간복잡도 : O(1)

redis-cli > HSETNX key field value [field value …]

 redis > HSETNX man age 30 (integer) 1 redis > HSETNX man age 30 (integer) 0

– HKEYS, HVALS, HGETALL

설명(HKEYS) : key에 저장된 모든 필드명을 가져온다.설명(HVALS: key에 저장된 모든 값을 가져온다설명(HGETALL: key에 저장된 모든 필드와 값을 가져온다

시간복잡도 : O(N)

redis-cli > HKEYS key

redis-cli > HVALS key

redis-cli > HGETALL key

 redis > HMSET man age 30 name “jung” gender “M” job “developer” “OK” redis > HKEYS man 1) “age” 2) “name” 3) “gender” 4) “job”

 redis > HVALS man 1) “30” 2) “jung” 3) “M” 4) “developer” redis > HGETALL man 1) “age” 2) “30” 3) “name” 4) “jung” 5) “gender” 6) “M” 7) “job” 8) “developer”

– HLEN, HSTRLEN

설명(HLEN) : key에 저장된 필드의 개수를 리턴한다.설명(HSTRLEN: key 필드에 저장된 value의 길이를 리턴한다.

시간복잡도 : O(1)

redis-cli > HLEN key

redis-cli > HSTRLEN key field

 redis > HMSET man age 30 name “jung” gender “M” job “developer” “OK” redis > HLEN man (integer) 4

 redis > HSTRLEN man name (integer) 4 redis > HSTRLEN man job (integer) 9

– HDEL

설명(HDEL) : key에 저장된 필드의 값을 삭제한다.

시간복잡도 : O(N)

redis-cli > HDEL key field [field …]

 redis > HMSET man age 30 name “jung” gender “M” job “developer” “OK” redis > HDEL man age (integer) 1

 redis > HDEL man name (integer) 1 redis > HDEL man address (integer) 0

– HEXISTS

설명(HEXISTS) : key에 저장된 필드의 값의 유무를 판단한다. 있으면 1리턴 없거나 키가 존재하지 않으면 0리턴

시간복잡도 : O(1)

redis-cli > HEXISTS key field

 redis > HMSET man age 30 name “jung” gender “M” job “developer” “OK” redis > HEXISTS man age (integer) 1

 redis > HEXISTS man address (integer) 0

 

 

 

– HINCRBY, HINCRBYFLOAT

설명(HINCRBY) : key에 저장된 필드의 값을 증가 혹은 감소 시킨다.설명(HINCRBYFLOAT) : key에 저장된 필드의 값을 증가 혹은 감소 시킨다.(소수점)

시간복잡도 : O(1)

redis-cli > HINCRBY key field increment

redis-cli > HINCRBYFLOAT key field increment

 redis > HSET man age 30 “OK” redis > HINCRBY man age 4 (integer) 34

 redis > HINCRBY man age -5 (integer) 29 redis > HINCRBYFLOAT man age 3.3 (integer) 32.3

 

다음은 제가 요새 듣고 있는 노래 인데 커버곡을 잘 불러서 퍼왔습니다! 한 번 들어보세요