NewSQL vs NoSQL: 마이클 스톤브레이커의 관점

Source

  • Evernote/IFTTT Feedly/거대한 변화, NewSQL vs NoSQL.md

Summary

MIT의 마이클 스톤브레이커 교수는 전통적인 관계형 DB 아키텍처(행 중심, 디스크 기반, 버퍼풀/락 기반)가 OLTP 및 DW 시장에서 설 자리를 잃었다고 진단한다. 그는 전통 아키텍처의 90% 오버헤드가 버퍼풀 관리 및 멀티쓰레딩 제어에 소모된다고 지적하며, 이를 해결하기 위해 인메모리 저장, 버퍼풀 제거, MVCC/타임스탬프 오더링 등을 도입한 ‘NewSQL’을 주창한다. 또한 NoSQL(특히 Hadoop)은 배치 처리 중심의 구조로 인해 대부분의 트랜잭션(예: Facebook의 95%)에서 불필요한 오버헤드를 발생시킨다고 비판하며, 궁극적으로 SQL의 일관성과 성능을 갖춘 NewSQL 아키텍처로 수렴할 것이라고 예측한다.

Key Points

  • 전통적 관계형 DB 아키텍처(Oracle, DB2 등)는 행 기반 저장, 디스크 I/O, 버퍼풀, 레코드 락을 사용하며, 실제 데이터 처리보다 오버헤드 관리에 CPU 사이클의 90%를 소모한다.
  • NewSQL은 인메모리 저장(디스크 I/O 및 버퍼풀 제거), MVCC 또는 타임스탬프 오더링(멀티쓰레딩 오버헤드 제거)을 통해 아키텍처를 재구성하여 성능을 혁신적으로 개선한다.
  • NoSQL 및 Hadoop은 ‘embarrassingly parallel’이 아닌 일반적인 트랜잭션 처리에서 불필요한 오버헤드를 유발하며, 궁극적으로 SQL의 일관성을 갖춘 NewSQL 아키텍처로 회귀할 것이다(NotYetSQL).
  • 데이터베이스 시장은 열 중심 DB(DW), 인메모리 DB(OLTP), 그리고 새로운 패러다임(NoSQL/Graph 등)으로 분화되고 있으며, 교육 및 기술 선택 시 이러한 변화 지형을 고려해야 한다.