Redo 로그에 대해 의문을 가져본 적이 있나요? Write ahead logging 기법에 의해 트랜잭션이 commit 하기 전에 Redo log에 디스크 IO 파일 쓰기 작업을 하고 데이터 변경 사항은 일정 기간 버퍼 메모리에 머무르다가 주기적으로 디스크에 Flush 되는데요 Redo log도 결국 디스크 IO인데 즉시 데이터 파일에 쓰고 커밋하면 되는데 왜 굳이 Redo log에 쓰는걸까요?
복구해야해서요
애초에 데이터파일에 즉시 쓰면 데이터 손실이 없죠 - dc App
근데 랜덤쓰기는 느려서 순차쓰기하려고 하는게 아닐까싶기도 합니다
@IIT 정확합니다! - dc App
@IIT 지식 하나 적립 완료
에초에 오라클에선 해당 기법을 그래서 Fast Commit이라고 하죠. 순차쓰기가 데이터를 쓸때는 성능이 압도적이기 때문에 LSM 트리를 유사하게 구현한 느낌
appending