분산 시스템의 시계, 인과관계 및 순서 정하기 가이드
역량 개발 · ByteByteGo 블로그 · 2026.07.24
분산 시스템에서는 여러 독립적인 기계들이 작업을 나누어 수행하기 때문에, 단일 컴퓨터와 달리 모든 이벤트의 순서를 결정할 공통된 기준 시계가 없다는 점이 큰 문제입니다. 각 기계의 하드웨어 클록은 서로 일치하지 않는 Clock Drift 현상이 발생하며, NTP를 사용하더라도 이를 완벽히 해결할 수는 없습니다. 이로 인해 데이터 업데이트 순서가 뒤바뀌거나 로그 추적이 어려워지는 등의 문제가 발생할 수 있습니다. 본 글에서는 Logical Clocks, Vector Clocks, Hybrid Logical Clocks와 같은 개념과 Google Spanner가 대규모 환경에서 순서를 어떻게 관리하는지에 대해 자세히 설명해 드립니다.