Redis에서 스냅샷 사용 방법

Redis에서 스냅샷 사용 방법

2022-06-04 last update

5 minutes reading Redis
Redis에서 스냅샷은 시스템 메모리에서 시스템 디스크와 같은 영구적인 위치에 데이터를 영구적으로 저장하는 과정과 방법을 말한다.
Redis는 메모리의 데이터 저장소이지만, 시스템 디스크의 데이터를 저장하고 복구하는 여러 가지 방법을 제공합니다.
본고는 Redis 데이터베이스에서 지속성을 어떻게 사용하는지 토론하고자 한다.주의해야 할 것은 Redis가 제공하는 백업 방법이 어떻게 실현되는지 깊이 있게 연구하지 않는다는 것이다.문서를 고려하여 더 많은 정보를 파악하고 어떤 것이 당신의 용례에 가장 적합한지 발견하십시오.

소개


Redis는 데이터 저장소의 지속성을 위해 다양한 방법을 제공합니다.주요 두 가지 방법은 다음과 같습니다.
  • RDB
  • AOF
  • 상술한 모든 방법을 어떻게 사용하는지 배워봅시다.

    RDB란 무엇입니까?


    RDB나 Redis 데이터베이스 파일은 Redis 데이터를 스냅할 수 있는 데이터 구조입니다.Redis는 정기적으로 데이터 세트의 스냅샷을 촬영하고 RDB를 사용하여 파일에 저장합니다.
    RDB를 사용하여 지속성을 유지하는 데는 여러 가지 장점과 단점이 있습니다.여기에는 다음이 포함됩니다.

    RDB의 장점.

  • RDB를 사용하는 것은 매우 치밀하기 때문에 더 많은 데이터를 저장할 수 있다.따라서 데이터 집합을 압축해야 할 때 좋은 선택입니다.
  • RDB를 사용하면 복구 작업을 쉽게 수행할 수 있습니다.
  • RDB는 AOF 등 다른 방법에 비해 대형 데이터 세트를 로드할 때 속도가 빠릅니다.
  • RDB의 단점

  • 이 방법은 긴급 백업에 적합하지 않습니다.
  • CPU와 같은 시스템 리소스를 더 많이 사용하는 경향이 있습니다.
  • AOF란 무엇입니까?


    Append Only File의 AOF는 Redis 클러스터에서 받은 작업 로그를 기록하는 지속적인 방법입니다.그런 다음 Redis 서버가 시작되면 이 로그 파일을 사용하여 전체 데이터 세트를 다시 생성할 수 있습니다.
    RDB와 유사하게 이런 방법을 사용하는 것도 여러 가지 장점과 단점이 있다.

    AOF의 이점

  • 긴급 백업의 경우 RDB에 더 적합합니다.AOF가 너무 커지면 로그 백업을 백그라운드에서 계속 수행합니다.
  • AOF 방법은 새로 실행된 작업만 추가하기 때문에 데이터 손상 가능성이 가장 적다.
  • AOF 파일은 서버에서 실행되는 작업을 순서대로 기록하기 때문에 쉽게 이해하고 내보낼 수 있습니다.
  • AOF의 단점

  • RDB 파일과 달리 데이터 세트가 같으면 AOF 백업의 크기가 커집니다.
  • fsync 정책에 따라 AOF 백업이 RDB보다 느릴 수 있습니다.
  • 스냅샷은 어떻게 작동합니까?


    Redis에서 스냅샷을 촬영하면 메모리의 모든 데이터를 바이너리 파일로 내보냅니다.일반적으로 스냅샷 파일의 이름은dump입니다.rdb.RDB 파일에는 구성 및 구조를 포함한 메모리의 모든 데이터 세트가 들어 있습니다.따라서 장애가 발생했을 때 RDB를 사용하여 데이터를 복구하는 것이 매우 쉽습니다.
    엔진 덮개 아래:
  • Redis 상위 프로세스는 RDB 파일의 스냅샷을 처리하기 위해 하위 프로세스를 파생합니다.
  • 하위 프로세스는 모든 데이터 세트를 가져와 RBD 파일에 기록합니다.
  • RDB 프로세스가 간격으로 실행되도록 구성되면 이전 RBD 파일은 새 파일의 내용으로 덮어씁니다.
  • Redis에서 스냅샷을 실행하는 방법


    Redis의 다른 내용과 마찬가지로 최신 데이터 세트에서 스냅샷을 실행하는 것은 매우 간단합니다.
    SAVE 명령을 사용하여 덤프를 생성합니다.rdb 파일.
    192.168.100.78:6379> SAVE
    OK
    참고 SAVE 명령을 실행하면 작업이 완료될 때까지 다른 모든 클라이언트가 차단됩니다.따라서 생산 중이나 광범위한 데이터 집합에서 운행하는 것을 권장하지 않는다.
    또 다른 SAVE 명령은 BGSAVE입니다.백업은 하위 프로세스를 사용하여 백업됩니다.BGSAVE 명령을 사용하면 다른 클라이언트를 막을 수 없습니다.
    192.168.100.78:6379> BGSAVE
    Background saving started

    AOF는 어떻게 사용합니까?


    AOF 명령을 사용하려면 BGREWRITEAOF 명령을 다음과 같이 사용합니다.
    192.168.100.78:6379> BGREWRITEAOF
    Background append only file rewriting started

    결론


    본고는 재부팅이나 고장을 방지하기 위해 Redis에서 다양한 지속적인 방법을 사용하여 데이터 집합을 백업하는 방법을 소개한다.
    읽어주셔서 감사합니다!