차이점, 장점과 단점은 영구 저장 RDB와 AOF를 레디 스

1 소개

최근 프로젝트는 여러 비즈니스 프로세스 간의 데이터 공유를 용이하게하기 위해, 캐시로 레디 스를 사용합니다. 레디 스 데이터가 메모리에 저장되기 때문에 레디 스를 다시 시작한 후, 구성되지 않은 경우 지속성, 전체의 데이터가 손실됩니다, 그래서 레디 스 디스크에서 다시 시작할 때 지속성 기능 레디 스를 열 필요가 디스크에 데이터를 저장합니다 데이터를 복원 할 수 있습니다. 레디 스 지속성이 또 다른 영속 AOF는, 하나는 지속적인 RDB (REIDS 원리는 RDB 영구 디스크를 덤프하기 위해 인 메모리 데이터베이스 레코드 타이밍이다)이며, 두 가지 방법을 제공 (원칙 REIDS입니다 작업 로그) 파일을 작성하는 또 다른 방법. 그래서 두 가지가 무슨 상관 인데요 지속성, 방법을 선택하도록 변경? 대부분의 온라인 프리젠 테이션은 어떤 시나리오에 따라 여기에 두 가지 사이에 차이가 없다는 것을, 사용하는 방법을 구성하는 방법 두 가지 방법이 있습니다 읽어 보시기 바랍니다.

2 개의 차이

RDB 지속성은 데이터 세트의 지정된 시간 간격으로 메모리 스냅 샷이 디스크에 기록 내에서, 실제 작업이 자식 프로세스, 임시 파일에 기록되는 데이터의 첫 번째 세트 전에 파일을 교체 한 후 성공적으로 작성하고, 포크 것을 의미 진 압축 저장.

AOF마다, 쓰기, 삭제 서버에서 처리 로그 레코드의 형태로 지속 쿼리 작업이 기록되지, 기록 된 텍스트, 당신은 자세한 작동 기록을 확인하기 위해 파일을 열 수 있습니다.

3, 모두 장점과 단점

RDB가 존재 장점은 무엇입니까?

1) 이런 식으로하면, 다음 전체 레디 스 데이터베이스 파일 백업을위한 완벽한 하나의 파일을 포함합니다. 예를 들어, 매 시간마다에게 데이터의 지난 24 시간 동안 보관하려는 수도 있지만, 또한 매일 데이터를 지난 30 일에 한 번 보관. 시스템이 격변 실패하면이 백업 전략을, 우리는 아주 쉽게 복구 할 수 있습니다.

2) 재해 복구 목적을 위해, RDB는 아주 좋은 선택이 될 것입니다. 우리는 아주 쉽게 별도의 파일로 압축하고 다음 다른 저장 매체로 전송 할 수 있기 때문에.

3) 성능은 극대화된다. 공정 레디 스의 서비스를 위해, 지속성의 시작 부분에, 그것을 할 수있는 유일한 필요가 아이에서 포크입니다 후 자녀하여 이러한 지속적인 작업의 완료 후, 당신은 크게 서비스의 IO 작업의 과정을 피할 수 있도록.

데이터 세트가 크면 4) AOF기구에 비해 높은 것 RDB 효율을 시작한다.

RDB 어떤 약점이 존재 하는가?

1) 즉, 최대 데이터 손실을 방지하기 위해, 데이터의 고 가용성을 보장 할 경우, RDB는 좋은 선택이 될하지 않을 것입니다. 지속성의 타이밍 전에 시스템 중단 현상 일단 디스크에 데이터를 쓸 시간이 없었었기 때문에 손실됩니다.

2) 포크 통해 RDB 데이터 세트가 크면 때, 전체 서버는 수백 밀리 초 또는 심지어 1 초 서빙 중지 될 수 있도록, 데이터 지속성 작업을 지원하기 위해 자식 프로세스입니다.

AOF 장점, 어떻게합니까?

1).이 메커니즘은 더 높은 데이터 보안, 즉, 데이터 지속성을 초래할 수있다. 레디 스 동기화가 매초마다 변경 및 동기화가 동기화되지 않는다는 동기화 전략 (3)을 제공한다. 사실, 비동기 동기화의 차이는 시스템 다운 타임 현상 번, 다음 초 이내에 수정 된 데이터가 손실 될 것입니다, 효율이 매우 높은 초당 완료됩니다. 그리고 모든 우리가 때마다 데이터 변경 내용이 즉시 디스크에 기록됩니다 발생 동기화 지속성로 간주 될 수있다, 동기화를 수정합니다. 이 방법으로 효율이 가장 낮은 것으로 예측할 수있다. 비 동기, 말할 필요도에 관해서는, 나는 우리가 이해를 해결할 수 있다고 생각합니다.

2). 메커니즘이 로그 파일의 내용을 방해하지 않고 쓰기 과정에서 중단 현상이 이미 존재하는 경우에도 사용되는 로그 파일 추가 모드로 쓰기 때문에. 우리는이 작업을 쓸 경우, 절반 만 데이터가 다음 시작 레디 스 전에, 걱정하지 마십시오, 시스템 충돌 등장이다, 우리가 할 수있는 우리에 의해 데이터 일관성의 문제 해결에 도움 레디 스를 체크 - AOF 도구를.

로그가 너무 큰 경우 3), 레디 스 자동으로 재 작성 메커니즘을 활성화 할 수 있습니다. 레디 스가 레디 스도이 기간 동안 실행되는 어떤 명령에 변경된 기록하는 새 파일을 작성하면서, 이전 디스크 파일에 기록됩니다 수정 된 데이터를 유지합니다 모드를 추가하는 것이다. 따라서, 전환 할 때 수행되는 재 작성 데이터 보안이 더 보장 될 수있다.

모든 변경 사항을 기록하기위한 명확한 이해 로그 파일을 포함하는 4). AOF 포맷. 사실, 우리는 파일을 통해 재건 데이터를 완료 할 수 있습니다.

AOF의 단점 무엇입니까?

1) 데이터 세트의 동일한 수를 들어 AOF RDB는 문서 파일보다 일반적으로 크다. RDB 속도 대용량 데이터를 복구 AOF의 회복 속도보다 빠르게 설정한다.

2). 동기화 정책에 따라 운영 효율에 AOF는 RDB보다 느린 경향이있다. 즉, 초 당 동기 전략의 효율이 비교적 높고, 동기화 효율 및 효율 등 RDB 정책을 비활성화.

모두 선택 기준이 시스템을 볼 때, 시간을 절약 수동으로 실행할 수, 높은 성능에 대한 대가로 백업을 사용하지 않는, 자주 쓰기 작업을 기꺼이 높은 캐시 일관성 (AOF)에 대한 대가로 약간의 성능을 희생하다 백업 (RDB)를 않습니다. 이 훨씬 더 RDB 일부 결국 일관성을 의미합니다. 그러나 프로덕션 환경은 실제로 두 개 조합이 사용됩니다.

4, 일반적인 구성

RDB 지속성 구성

레디 스 스냅 샷 파일을 dump.rdb 설정 데이터를 덤프합니다. 또한, 우리는 또한 주파수 레디 스 서버 구성 파일 덤프 스냅 샷에 의해 수정 될 수 6379.conf 파일을 연 후, 우리는 다음과 같은 구성 정보를 볼 수 있습니다 검색 저장 :

적어도 하나의 키가 변경되는 경우, 900 초 (15 분) 후 덤프 메모리 스냅 샷을 900 1 #을 저장합니다.

변경 키 (10), 덤프 메모리 스냅 샷이 이상하면 300 초 (5 분) 후 300 10 #을 저장합니다.

60 초 (1 분) 후 60 10000 #을 저장 적어도 10,000 주요 변경 사항, 덤프 메모리 스냅 샷 경우.

AOF 지속성 구성

동기 레디 스 프로파일 세 종류의 본 실시 예에서, 그들은 :

파일이 AOF에 기록 될 때 appendfsync는 항상 #마다 데이터 수정이 발생합니다.

appendfsync 초당 한 번 everysec # 동기화, 전략은 AOF의 기본 전략이다.

더 # 결코 동기화를 appendfsync 없습니다. 효율적인하지만 데이터가 유지되지 않습니다.

5. 참조

http://blog.csdn.net/jackpk/article/details/30073097

http://www.jb51.net/article/65264.htm

추천

출처www.cnblogs.com/bigox/p/11574642.html