Redis 자료구조와 시간복잡도전체 키 조회keys * 모든 키를 조회하기에 시간복잡도가 O(N)이다. (N은 키의 갯수)Redis는 싱글 스레드 기반으로 동작하기에 keys *를 사용하면 해당 명령어 수행으로 인해 다른 명령어 처리가 늦어질 수 있다. Redis 모든 DB 키 삭제FLUSHALLFLUSHALL ASYNCASYNC 키워드는 키 삭제를 비동기로 실행되도록 한다.FLUSHALL의 경우 동기적으로 실행되며 메모리에 key-value 삭제하는 처리가 모두 완료될때까지 다른 명령어는 block 된다.반면에 FLUSHALL ASYNC의 경우 참조관계만 끊어 놓고 실제 메모리에서 삭제는 백그라운드 스레드가 제거하는 처리를 진행하게 된다.(키를 저장하는 해시테이블에서 키 참조를 제거 후 백그라운드가 실..

Redis란Redis의 가장 큰 특징은 빠른 성능이다. 데이터를 메모리에 저장하고, 해시 기반 키 관리 방식을 통해 대부분의 연산을 시간복잡도 O(1)로 처리할 수 있어 매우 빠른 응답 속도를 제공한다. 또한 Redis는 싱글 스레드 기반으로 동작하기 때문에, 동시성 문제에 비교적 자유롭고 구현이 단순하다는 장점이 있다. 사용자 명령어 처리는 싱글 스레드로 수행되지만, I/O 처리는 I/O Multiplexing 기법과 백그라운드 스레드를 통해 처리되어 성능을 더욱 향상시킨다. Redis는 메모리 기반 DB이지만, 데이터의 영속성(persistence)을 보장하기 위해 디스크에 데이터를 저장하는 두 가지 방식인 RDB(Redis Database)와 AOF(Append Only File)를 지원한다.RDB..