Redis 백업(.rdb) 파일이 ElastiCache 클러스터의 BytesUsedForCache 지표보다 항상 작은 이유는 무엇입니까?

2분 분량
0

Amazon ElastiCache for Redis를 사용하고 있습니다. Redis 백업(.rdb) 파일이 항상 클러스터의 BytesUsedForCache 지표보다 작은 이유는 무엇입니까?

해결 방법

BytesUsedForCache 지표는 모든 용도의 바이트를 포함합니다. 예를 들어 실제 키 크기, 헤더, 메모리 조각화 등이 있습니다. 만료된 키는 Redis가 수동 또는 능동적으로 비동기식으로 제거할 때까지 메모리를 사용합니다. 자세한 내용은 Redis.io 웹 사이트의 Expire key seconds – How Redis expires keys 단원을 참조하세요.

ElastiCache는 fork 및 fork-less 백업 프로세스를 모두 사용합니다. 두 프로세스 모두 디스크에 모든 키를 덤프하여 .rdb 파일을 생성합니다. .rdb 파일은 포인터나 만료된 키를 사용하지 않으며 메모리 조각화, 메타데이터 또는 버퍼를 처리하지 않습니다. 즉, 백업 파일의 크기가 BytesUsedForCache 지표보다 작습니다.

예를 들어 Redis 클러스터에 BytesUsedforCache가 15GiB로 나타날 수 있습니다. 클러스터에 읽기/쓰기 요청이 많은 기간 동안 백업이 시작되었다고 표시될 수도 있습니다. 백업 프로세스가 완료되면 백업 캐시 용량은 15GiB가 아니라 10~12GiB 정도가 될 수 있습니다. 이는 백업에 만료된 키, 포인터 등이 포함되지 않기 때문입니다.

참고:

  • ElastiCache 백업의 캐시 크기는 스냅샷 생성 시점의 Redis used_memory에서 비롯됩니다. 이는 압축되지 않은 캐시 크기의 추정치입니다. 백업 스냅샷을 Amazon Simple Storage Service(S3)로 내보내면 압축된 직렬화 파일 크기를 내보냅니다.
  • 정보 키스페이스 또는 DBSIZE 명령을 사용하여 백업의 데이터 무결성을 확인할 수 있습니다. 원래 클러스터와 RDB에서 복원된 클러스터의 키 수를 비교합니다. 스냅샷 생성과 복구 사이에 키 삽입, 삭제 또는 제거 작업이 발생하지 않았는지 확인합니다. 자세한 내용은 Redis FAQ의 복제본의 키 수가 마스터 인스턴스와 다른 이유는 무엇입니까?를 참조하세요.

관련 정보

ElastiCache for Redis의 백업 및 복원

AWS 공식
AWS 공식업데이트됨 2년 전
댓글 없음