Redis의 총 키 수를 계산하는 방법

Redis의 총 키 수를 계산하는 방법

2022-06-04 last update

6 minutes reading Redis
Redis는 성능과 유연성을 높이기 위해 구축된 무료 소스 메모리 키 값 데이터베이스입니다.이것은 크로스 플랫폼으로 유닉스/클래스 유닉스 시스템과 Windows에서 실행할 수 있다.
이 강좌에서는 Redis 데이터베이스의 모든 키를 보고 계산하기 위해 다양한 명령과 기술을 사용하는 방법을 설명합니다.
예제 명령과 삽화는 Debian 11 서버와 Redis 서버 6.0 버전에서 테스트되었습니다.이 설명서와 같이 공식 Redis CLI 유틸리티를 사용하여 유사한 출력을 얻을 것을 권장합니다.만약 데비안 시스템에 Redis를 설치하지 않았다면, 저희 redis on debian installation guide 에 따라 시작하고 여기로 돌아갈 수 있습니다.

DBSIZE 명령을 사용하여 키 수를 가져옵니다.


Redis 데이터베이스에서 키 총수를 가져오는 첫 번째 명령은 DBSIZE 명령입니다.
이 간단한 명령은 선택한 데이터베이스의 키 총수를 정수로 되돌려야 합니다.
먼저 rediscli에 들어가서 redis와 상호작용을 시작합니다.
$ redis-cli
DBSIZE 명령의 구문은 다음과 같습니다.
127.0.0.1:6379> DBSIZE
(integer) <>
예를 들어 인덱스 10곳의 데이터베이스에서 키 총수를 얻으려면 먼저 현재 데이터베이스를 인덱스 10으로 설정할 수 있습니다. 아래와 같습니다.
127.0.0.1:6379> SELECT 10
OK
다음 명령을 사용하여 데이터베이스의 키 총수를 가져올 수 있습니다.
127.0.0.1:6379[10]> DBSIZE
(integer) 202
위의 예시 명령은 데이터베이스에 있는 인덱스 10곳에 203개의 키가 있음을 보여 줍니다.

패턴 일치를 사용하여 키 프레임 수 가져오기


Redis 데이터베이스에서 키 총수를 가져오는 또 다른 방법은 keys 명령을 사용하고 특정 모드를 따라가는 것입니다.
Redis는 모든 키를 검색하고 일치하는 항목을 검색하며 제공된 패턴에 따라 CLI에 인쇄합니다.
특정 필수 모드와 일치하지 않는 모든 키를 표시하려면 별표를 사용하여 모든 키를 일치시킵니다.(*)
명령의 구문은 다음과 같습니다.
127.0.0.1:6379> KEYS *
예를 들어 이 데이터베이스로 전환하여 인덱스 10곳의 데이터베이스에 있는 모든 키를 보기 시작합니다.
127.0.0.1:6379[10]> SELECT 10
OK
127.0.0.1:6379[10]> KEYS *
(Output Truncated)
이 명령은 지정된 데이터베이스의 모든 키를 인쇄합니다.
참고: KEYS 명령에는 주요 단점이 있습니다.광범위한 데이터베이스에서 실행될 때, 그것은 성능이 매우 느릴 수 있다.Redis가 패턴을 찾기 위해 데이터베이스의 모든 키를 검색하기 때문입니다.생산 환경에서 이런 상황을 피하다.

Info 명령을 사용하여 Redis 키 정보를 가져옵니다.


Redis 데이터베이스에서 키에 대한 정보를 볼 수 있고 키 명령을 사용하는 단점을 피할 수 있는 방법이 있습니다.
Redis가 제공하는 INFO 명령은 Redis 클러스터와 저장된 키에 대한 자세한 정보와 인간이 읽을 수 있는 정보를 얻을 수 있는 가장 좋은 도구 중 하나입니다.
서버, 메모리, 통계 정보, CPU, 클러스터, 키 공간, 모듈 등 Redis에서 특정 부분을 지정할 수 있습니다.
자세한 내용은 Redisofficial documentation를 참조하십시오.
우리의 예시에서 우리는 데이터베이스 키에 대한 정보를 포함하는 키 스페이스 부분에만 흥미를 느낀다.
이 명령을 사용하려면 다음 예와 같이 명령 뒤에 있는 절을 사용하십시오.
127.0.0.1:6379> info keyspace
# Keyspace
db0:keys=60,expires=0,avg_ttl=0
위의 예는 지정된 데이터베이스에 있는 키 공간 정보를 되돌려줍니다.
이 명령이 인쇄하는 정보는 키 총수, 기한이 지난 키 총수, 데이터 저장소에 저장된 키의 평균 생존 시간을 포함한다.
예를 들어 다음 출력은 만료된 키가 있는 데이터베이스에 정확한 명령을 보여 줍니다.
127.0.0.1:6379> info keyspace
# Keyspace
db0:keys=59,expires=1,avg_ttl=98929
위에 기한이 지난 데이터베이스에 대한 관건적인 정보가 표시되어 있다.

닫는 중


이 안내서는 Redis 데이터베이스에서 키 총수를 가져오는 여러 가지 방법을 보여 줍니다.
읽어주셔서 감사합니다!