# 한개 조회
set <key> <value>
get <key> <value>
# 여러개 조회
mset <key> <value> <key> <value> ...
mget <key> <key> <key> ...
# 왼쪽에 삽입
lpush <key> <value>
# 오른쪽에 삽입
rpush <key> <value>
# 삭제
lpop <key>
rpop <key>
sadd <key> <item>
# 존재 여부를 체크, 있으면 1 없으면 0 반환
sismember <key> <item>
# 삭제
srem <key> <value>
# key의 모든 item 조회
smembers <key>
# item이 이미 존재하면 해당 score로 변경함
zadd <key> <score> <item>
zrange <key> <start index> <end index>
# 모든 item 조회
zrange <key> 0 -1
# 내림차순 정렬하여 조회
zrevrange <key> <start index> <end index>
# 초과 미만 값 조회
zrangebyscore <key> <start score> <end score>
# 이상 이하 값 조회
zrangebyscore <key> (<start score> (<end score>
# score >= 70 값 조회
zrangebyscore <key> (70 +inf
# 한개 값 삽입 및 삭제
hset <key> <subkey> <value>
hget <key> <subkey>
# 여러 값 삽입 및 삭제
hmset <key> <subkey> <value> <subkey> <value> ...
hnget <key> <subkey> <subkey> <subkey> ...
# 모든 subkey와 value 가져오기, Collection에 너무 많은 key가 있으면 장애의 원인이 됨
hgetall <key>
# 모든 value값만 가져오기
hvlas <key>
Multi / Exec
보통 라이브러리들이 명령을 보내고 응답을 기다림, 이 기다리는 time gap이 생기게 됨.. Redis pipline 동기적으로 보내는 경우, 응답을 기다리지 않고 명령을 미리 보내도록 함