{key:value, key:value ...}
형태로 구성됨SET
하면, 특정 요소를 수정/삭제할 때 전체 데이터를 변경해야 함HSET key field value
→ 특정 필드에 값 저장/수정HINCRBY key field increment
→ 특정 필드 값 증가/감소HGET key field
→ 특정 필드 값 조회HGETALL key
→ 모든 필드 및 값 조회HDEL key field
→ 특정 필드 삭제HSET member:info:1 name choi email choi@gmail.com age 20
HGET member:info:1 name # 결과: choi
HGETALL member:info:1
➡ 결과:
1) "name"
2) "choi"
3) "email"
4) "choi@gmail.com"
5) "age"
6) "20"
HSET member:info:1 name park
HINCRBY member:info:1 age 3 # age 필드 값 +3 증가
HINCRBY member:info:1 age -3 # age 필드 값 -3 감소
SET
하면 값을 수정할 때 전체 데이터를 변경해야 함HSET stocks:product:1 name phone stock 100 price 1250
➡ 즉, 변경이 빈번하지 않은 경우 JSON을 사용해도 되지만, 자주 변경되는 데이터라면 Hash를 사용하는 것이 최적화에 유리함
❌ 완전히 Hash만 사용하면 비효율적인 경우도 있음!
➡ 결론:
Redis Hash는 특정 필드를 빠르게 수정/삭제할 수 있는 장점이 있어 유저 프로필 정보, 상품 재고 관리, 빈번한 데이터 변경이 필요한 서비스에서 효과적으로 활용 가능함!