2016-12-02 1 views
1

나는 Tarantool에 대해이 article을 읽었으며 AOF와 WAL 로그가 같은 방식으로 작동하지 않는다고합니다.Redis AOF와 Tarantool WAL 로그의 차이점

Tarantool : 스냅 샷 외에, 본격적인 WAL (write ahead 로그)이 있습니다. 따라서 각 거래가 끝나면 즉시 데이터 지속성을 확보 할 수 있습니다. Redis : 사실 스냅 샷 만 있습니다. 기술적으로, 재부팅 후 수동 복원을 포함하여 AOF (모든 작업이 기록 된 추가 전용 파일)가 있습니다 ( ). 수동으로 복원해야합니다. 간단히 말하면 Redis를 사용하면 서버 을 수동으로 일시 중단 한 다음 스냅 샷을 만들고 AOF를 보관해야합니다.

누군가 2 전략과 각 방식이 상위 수준에서 어떻게 다른지 더 명확하게 설명 할 수 있습니까?

필자는 항상 Redis AOF가 PostgreSQL에서 구현 된 것과 같은 SQL 데이터베이스 트랜잭션 로그와 동일한 방식으로 작동한다고 가정했지만 잘못된 것일 수 있습니다.

답변

3

AOF는 Redis의 주요 지속성 옵션입니다. 메모리에있는 데이터 집합을 수정하는 쓰기 작업이있을 때마다 해당 작업이 기록됩니다. 다시 시작하는 동안 Redis는 모든 작업을 재생하여 데이터 세트를 재구성합니다. 선택할 수있는 세 가지 fsync 구성 정책 (no, everysec, always)도 있습니다. FWIW, 좋은 수준의 데이터 안전을 원할 경우 일반적으로 AOF + RDB를 사용하는 것이 좋습니다. 이것은 일종의 질문의 범위를 벗어났습니다.

Redis Persistence Demystified

Tarantool의는 "WAL 작가"라는 것을 사용

Main Redis Persistence Docs. 별도의 스레드에서 실행되며 데이터를 조작하는 요청을 "삽입 및 업데이트 요청"합니다. 다시 시작할 때 Tarantool은 WAL 파일을 읽고 각 요청을 재생하여 복구합니다.

Tarantool Persistence Docs

분명 내부의 차이가 있습니다,하지만 높은 수준에서 그들은 매우 유사하다. 이 기사의 지속성 비교는 매우 이상하고 단순히 사실이 아닙니다.

하위 수준 차이에 대한 자세한 내용은 위에 나열된 문서를 참조하십시오.

희망하는 사람