https://d2fault.github.io/2019/01/24/20190124-install-redis-and-set-master-slave-relationship/
/etc/redis -> 6379.conf 등
/lib/redis/redis-stable/utils
/var/log -> 로그
https://sup2is.github.io/2020/07/22/redis-cluster.html
https://waspro.tistory.com/696
공통점: 둘다 hash table 사용
차이
메모리에 있는 데이터 전체를 바이너리 파일로 디스크에 저장. 스냅샷으로
저장 시점은 redis.conf의 save 파라미터로 설정한다. ex. save 900: 900초 동안 1번 이상 key 변경 발생 시 저장
BGSAVE/SAVE: BGSAVE경우 child process가 background에서 실행되어 운영중에 가능
장점: 파일 용량이 aof비해 작고, 데이터 복구 빠르다
단점: dump.rdb 생성 전에 에러나면 복구 불가능하다
입력/수정/삭제 명령 시 명령어 형태로 저장
단점: 지금까지 수행한 wrtie작업 다시 수행해야 한다, 로그 파일이 크다
child process를 fork하면 같은 메모리 공간을 공유하게 된다. 그런데 부모 프로세스가 데이터를 write 등 하면같은 메모리 공간을 공유할 수 없게 되서 부모 프로세스는 해당 페이지를 복사한 다음 수정한다.
rdb -> BGSAVE
aof -> rewrite