Redis

Redis-cli 명령어 정리(List, Hash)

쿠카이든 2022. 8. 18. 16:02
728x90
Hash 구조체
  • 하나의 Class 인스턴스 를 저장하기에 적당한 Redis 구조체
  • Redis-cli에서 hmset, hget으로 저장, 조회가 가능하다.
 Person 클래스
class Person {

    int id;
    string name;
    string pw;
    int uniqueNumber;
    
}

 

 다음과 같이 person 인스턴스를 redis 에 저장하기 위해 hset(hmset) 을 이용한다
Person person = 
    new Person { "id" = 1234, name = "tom", pw = "abcd5678", uniqueNumber = 56000 };

 

127.0.0.1:6379> hmset user id 1234 name tom pw abcd5678 uniqueNumber 56000;

OK

127.0.0.1:6379> hget user

(error) ERR wrong number of arguments for 'hget' command

127.0.0.1:6379> hmget user id
1) "1234"

127.0.0.1:6379> hgetall user
1) "id"
2) "1234"
3) "name"
4) "tom"
5) "pw"
6) "abcd5678"
7) "uniqueNumber"
8) "56000;"

http://redis.io/commands/hset

http://redis.io/commands/hmset

 

List 구조체

* lpush : 리스트에 맨 처음(head)에 추가

127.0.0.1:6379> lpush mylist "{\"Age\":20,\"Name\":\"Mary\"}"

(integer) 1

127.0.0.1:6379> lpush mylist "{\"Age\":10,\"Name\":\"Tom\"}"(integer) 2

127.0.0.1:6379> lpush mylist "{\"Age\":30,\"Name\":\"Nancy\"}"

(integer) 3

http://redis.io/commands/lpush

 

* lrange : 특정 인덱스 범위의 요소(element)들을 확인. 인덱스는 0 부터 시작하고, -1 은 마지막 인덱스를 가리킨다.

ex) 

"lrange list-key 0 10" 을 하면, 데이터 갯수가 20 개라면 11개가 출력된다. 10 개만 있다면 "0 10" 을 해도 10 개가 출력되고, "0 15" 와 같이 해도 10개만 출력된다.

"lrange list-key 0 -1" 은 처음부터 마지막까지 출력한다.

127.0.0.1:6379> lrange mylist 0 -1

1) "{\"Age\":30,\"Name\":\"Nancy\"}"

2) "{\"Age\":10,\"Name\":\"Tom\"}"

3) "{\"Age\":20,\"Name\":\"Mary\"}"

http://redis.io/commands/lrange

 

* lpop : 리스트의 맨 처음(head) 에 해당하는 요소(element) 를 삭제하고 반환(return).

127.0.0.1:6379> lpop mylist

"{\"Age\":30,\"Name\":\"Nancy\"}"

127.0.0.1:6379> lrange mylist 0 -1

1) "{\"Age\":10,\"Name\":\"Tom\"}"

2) "{\"Age\":20,\"Name\":\"Mary\"}"

http://redis.io/commands/lpop

 

참고 :http://redistogo.com/documentation/introduction_to_redis

출처: https://firstboos.tistory.com/entry/redis-간단-명령어-정리 [散策 의 정리공간:티스토리]

728x90

'Redis' 카테고리의 다른 글

Spring Data Redis로 Redis와 연동하기  (0) 2022.02.15