suyeonme

[Redis] Redis의 command 정리 본문

프로그래밍👩🏻‍💻/Database

[Redis] Redis의 command 정리

suyeonme 2022. 8. 28. 15:54

Redis란?


Redis란 Remote Dictionary Server, REDIS의 약자로, In-memory 기반의 데이터베이스이다. key-value 쌍으로 데이터를 저장하는 NoSQL 데이터베이스이며 메모리에 데이터를 저장하기 때문에 빠른 속도를 보장한다.

 

Redis는 메모리에 데이터를 저장하기 때문에 휘발성 데이터베이스이다. 따라서 주로 빠른 응답을 위해 RDBMS에 있는 데이터를 캐시하는 용도로 사용한다. 리스트형 데이터의 입력/삭제가 RDBMS에 비해 10배정도 빠르다.

Redis의 데이터 타입

  • String
  • Lists
  • Sets (유니크한 값만 취급하는 배열)
  • Sorted sets
  • Hashs (중첩이 허용되지 않는)

Redis의 command


redis-cli에서 나가고 싶은 경우, quit을 입력한다.

커맨드 설명 예시
redis-cli Redis command line interface   
KEYS * 모든 key를 출력한다.  
flushall 모든 데이터를 클리어한다.  
     
SET [key] [value] key-value쌍으로 String 타입의 데이터를 저장한다. SET name "Suyeon Kang"
GET [key] String 타입의 데이터를 조회한다. GET name
DELETE [key] String 타입의 데이터를 삭제한다. DELETE name
EXISTS [key] key가 존재하는지 확인한다. 존재한다면 1 그렇지 않으면 0을 반환한다. EXISTS name
     
TTL [key] 데이터의 expiration time을 확인한다. 소멸되었다면 -2, 설정되어있지 않다면 -1, 그렇지 않은 경우 expiration time을 반환한다. TTL name
EXPIRE [key] [time] 데이터의 expiration time을 설정한다. EXPIRE name 10
SETEX [key] [time] [value] 데이터를 저장함과 동시에 expiration time을 설정한다. SETEX name 10 "Suyeon Kang"
     
LPUSH [key] [value] List의 맨 앞에 데이터를 추가한다. LPUSH names "Suyeon Kang" "Crystal Kang"
RPUSH [key] [value] List의 맨 뒤에 데이터를  추가한다. RPUSH names "Suyeon Kang"
LPOP [key] List의 맨 앞 데이터를 제거한다. LPOP names
RPOP [key] List의 맨 뒤 데이터를 제거한다. RPOP names
LRANGE [start] [stop] List의 특정 인덱스의 값을 조회한다. LRANGE 0 -1
     
SADD [key] [value] Set에 값을 추가한다. SADD hobbies "swimming"
SREM [key] [value] Set에서 값을 제거한다. SREM hobbies "swimming"
SMEMBERS [key] Set에서 값을 조회한다. SMEMBERS hobbies
     
HSET [key] [field] [value] Hash에 key-value쌍의 값을 추가한다. HSET person name "Suyeon Kang"
HGET [key] [field] Hash에서 field 값을 조회한다. HGET person name
HGETALL [key] Hash의 모든 key와 value를 조회한다. HGETALL person
HDEL [key] [field] Hash에서 field를 제거한다. HDEL person name
HEXISTS [key] [field] Hash에 field가 존재하는지 확인한다. 존재한다면 1, 그렇지 않으면 0을 반환한다. HEXISTS person name

 

Comments