쓰기 한 건이 디스크에 닿기까지

쓰기 한 건이 디스크에 닿기까지 A sequence diagram generated by Archify. insert, w:1 페이지에 새 버전 커밋 로그 레코드 write() j:false면 여기서 응답 100ms마다 fsync j:true: 지금 flush fsync 완료 j:true 응답 dirty 페이지 reconciliation 빈 자리에 새 블록, fsync turtle 교체로 확정 지난 로그 파일 제거 쓰기와 커밋 저널 flush 체크포인트 클라이언트 · insertOne · Sequence participant 클라이언트 insertOne mongod · 요청 스레드 · Sequence participant mongod 요청 스레드 WT 캐시 · B-tree 페이지 · Sequence participant WT 캐시 B-tree 페이지 로그 버퍼 · log slot · Sequence participant 로그 버퍼 log slot flusher · JournalFlusher · Sequence participant flusher JournalFlusher journal/ · WiredTigerLog.* · Sequence participant journal/ WiredTigerLog.* checkpoint · Checkpointer · Sequence participant checkpoint Checkpointer *.wt, turtle · 데이터 파일 · Sequence participant *.wt, turtle 데이터 파일 Legend 내구성이 생기는 지점 응답 백그라운드 작업 요청, 쓰기