중화사전망 - 자전 검색 - Redis 의 두 가지 지속성 방법의 차이점은 무엇입니까?

Redis 의 두 가지 지속성 방법의 차이점은 무엇입니까?

Redis 는 RDB 지속성 (메모리의 Reid 에 대한 데이터베이스 레코드를 디스크의 RDB 지속성으로 덤프하는 원칙) 과 AOF (Append Only 파일) 지속성 (Reid 에 대한 작업 로그를 파일에 추가 방식으로 기록하는 방식) 의 두 가지 지속성 방법을 제공합니다.

RDB 지속성이란 지정된 시간 간격 동안 메모리에 있는 데이터 세트의 스냅샷을 디스크에 쓰는 것을 말합니다. 실제 운영 프로세스는 fork 의 하위 프로세스입니다. 먼저 데이터 세트가 임시 파일에 기록됩니다. 쓰기가 성공하면 이전 파일이 대체되고 이진 압축으로 저장됩니다. (권장 학습: Redis 비디오 자습서)

AOF 지속성은 서버에서 처리하는 모든 쓰기 및 삭제 작업을 로그로 기록하며, 쿼리 작업은 기록되지 않고 텍스트로 기록하며 파일을 열어 자세한 작업 기록을 볼 수 있습니다.

RDB 주장과 AOF 주장의 차이점;

1, 데이터 저장

Rdb 는 모든 키 값 쌍을 키 공간 (만료된 사전의 데이터 포함) 에 영구적으로 저장하고 바이너리 형식으로 저장합니다. RDB 파일 사양을 준수하면 데이터 유형에 따라 다르게 처리됩니다.

AOF 는 redis 서버가 수행하는 모든 데이터베이스 상태를 기록하는 쓰기 명령을 영구적으로 저장하며 쓰기 전에 aof_buf 버퍼에 저장됩니다.

2. 기간 선택

RDB 지속성 conf 의 저장 옵션을 통해 지속성 동작 (단위 시간 내 수정 횟수) 을 설정합니다.

AOF 지속성은 conf 의 appendfsync 옵션을 통해 지속 동작 (단위 시간 내 수정 횟수) 을 설정합니다.

3. 데이터 복구

Rdb 지속성: 서버는 RDB 파일을 로드하고 스레드를 차단하며 로드가 완료될 때까지 명령을 허용하지 않습니다.

Aof 지속성: 서버는 네트워크 연결이 없는 의사 클라이언트를 만들고 AOF 파일의 모든 명령을 읽고 실행합니다 (redis 서비스는 aof 지속성을 시작하고 서버 시작 시 데이터베이스 상태를 복원하기 위해 aof 파일을 선택합니다).

4. 만료된 키

RDB 지속성은 쓰기 또는 읽기 시 만료된 키를 무시합니다.

Aof 지속성은 만료된 키를 무시하지 않고 키를 연기하거나 정기적으로 삭제할 때 AOF 파일에 삭제 명령을 추가합니다.

5. 파일 크기

RDB 지속성은 저장된 데이터의 양에 따라 달라집니다 (데이터 유형에 따라 데이터 압축 최적화가 다름).

더 많은 명령이 실행됨에 따라 지속성이 증가합니다 (Aof 재작성으로 최적화)

Redis 에 대한 자세한 기술 정보는 redis 입문 칼럼을 방문하십시오!