처음에는 MySQL의 디스크 쓰기 작업에 대해서 정리하다가 O_DIRECT 옵션을 보고 이런 생각이 들었다.zero copy랑 비슷한 얘기 아닌가? 둘 다 불필요한 복사를 줄여서 성능을 개선하는건데. 궁금해져서 그 차이가 궁금해져서 좀 더 파고들어봤다. 본 내용은 MySQL 8.0을 기준으로 작성했다. MySQL의 디스크 쓰기(Flush)DB 튜닝시 귀에 피나도록 'disk IO를 최소화해야해'라는 말을 들었을 것이다. Full table scan이 아니라 Index range scan을 그렇게 강조하고 buffer_pool에 가능한 많은 데이터를 둘려는 이유이다. 여기서 말하는 디스크 접근, 즉 메모리에 적재된 데이터를 디스크에 영속적으로 기록하는 행위를 Flush라고 한다. 문제는 그 피나던 말처..