Redis의 key를 삭제할 때는 주로 DEL 커맨드를 사용한다.
DEL key [key ...]
Redis 1.0.0 부터 사용되던 커맨드이고 SET과 더불어 Redis 예제에서 자주 사용되는 예제이기 때문에
Redis를 사용한 서버 애플리케이션 개발 시 DEL 커맨드가 자주 사용된다.
DEL 커맨드 외에도 Redis는 4.0.0 버전부터 UNLINK 라는 커맨드가 있는데 DEL과 동일하게 특정 key를 삭제하는 기능을 수행한다.
UNLINK 커맨드의 차이점은
- 여러 key를 삭제할 때 DEL 커맨드의 경우 O(N) (n은 삭제할 key의 수) 의 시간 복잡도를 갖는데에 반해,
UNLINK 커맨드는 삭제할 key의 수에 상관없이 O(1)의 시간 복잡도를 갖는다. - UNLINK 라는 이름처럼 실제로 key를 바로 삭제하진 않으며, 해당 key를 keyspace에서 제거(unlink)할 뿐이다.
실제 메모리 상의 삭제는 다른 쓰레드에서 비동기로 이뤄진다.
애초에 Redis가 key-value store 이기 때문에 삭제할 key의 사이즈가 작고 몇 건 안된다면 DEL 커맨드를 사용하여도 상관없겠지만,
많은 양의 key를 bulk로 삭제해야한다면 UNLINK 커맨드 사용을 고려할 수 있겠다.
'DB > Redis' 카테고리의 다른 글
Docker 로컬 Redis cluster 개발 환경 구성 (0) | 2024.11.08 |
---|---|
Redis를 활용한 다양한 시스템 설계 (5) | 2022.10.02 |
Sorted Set vs Top-K for Real-time Ranking System (0) | 2022.05.23 |
댓글