MVCC1 17. MVCC MVCC 는 MultiVersion Concurrency Control의 약자로 DBMS에서 Lock을 사용하지 않고, 데이터의 읽기 일관성을 보장해주는 내부 기법이다. DB는 Lock을 기본으로 하여 데이터 파일에 작성된 데이터의 일관성을 보장하는 것을 기본으로 하지만, 이것은 쓰기가 발생하는 경우에는 대기에 빠지게 하기 때문에, 쓰기가 많이 발생하는 서버에서의 동시성을 크게 떨어뜨린다. 이러한 문제를 해결하기 위해 David P. Reed 는 특정 논문을 통해 새로운 아이디어를 제안했는데, 그것이 바로 MVCC의 기본이 된다. 즉, 객체의 변경사항을 모두 버젼을 나누어 저장하고, 데이터 객체는 이 버젼을 모두 연속체로서 정의하여 관리하게 하여 락을 사용하지 않고 일관된 읽기를 보장해 주는 아이디어를 .. 2019. 5. 24. 이전 1 다음