Skip to main content
QUICK REVIEW

[논문 리뷰] MDCC: Multi-Data Center Consistency

Tim Kraska, Gene Pang|arXiv (Cornell University)|2012. 03. 27.
Scientific Computing and Data Management인용 수 4
한 줄 요약

MDCC는 다중 데이터 센터 일致성에 대해 마스터가 없는 최적화된 커밋 프로토콜을 제안하며, 일반적인 경우에 단일 라운드트립 메시지 지연으로 강력한 일관성을 달성한다. 이는 일반화된 페아소스와 큐럼 기반 조정을 활용한 것으로, TPC-W 벤치마크에서 다섯 개의 지리적으로 분산된 데이터 센터를 통해 2PC 대비 50% 감소된 지연(234 ms)과 이중 처리량을 달성한다. 데이터 센터 장애 발생 시에도 일관성을 유지한다.

ABSTRACT

Replicating data across multiple data centers not only allows moving the data closer to the user and, thus, reduces latency for applications, but also increases the availability in the event of a data center failure. Therefore, it is not surprising that companies like Google, Yahoo, and Netflix already replicate user data across geographically different regions. However, replication across data centers is expensive. Inter-data center network delays are in the hundreds of milliseconds and vary significantly. Synchronous wide-area replication is therefore considered to be unfeasible with strong consistency and current solutions either settle for asynchronous replication which implies the risk of losing data in the event of failures, restrict consistency to small partitions, or give up consistency entirely. With MDCC (Multi-Data Center Consistency), we describe the first optimistic commit protocol, that does not require a master or partitioning, and is strongly consistent at a cost similar to eventually consistent protocols. MDCC can commit transactions in a single round-trip across data centers in the normal operational case. We further propose a new programming model which empowers the application developer to handle longer and unpredictable latencies caused by inter-data center communication. Our evaluation using the TPC-W benchmark with MDCC deployed across 5 geographically diverse data centers shows that MDCC is able to achieve throughput and latency similar to eventually consistent quorum protocols and that MDCC is able to sustain a data center outage without a significant impact on response times while guaranteeing strong consistency.

연구 동기 및 목표

  • 광역, 다중 데이터 센터 데이터베이스에서 높고 변동성이 큰 데이터 센터 간 지연을 고려할 때 강력한 일관성을 달성하는 데 도전하는 것.
  • 중앙 코ordinating 노드나 마스터 노드에 의존하지 않도록 하여 고장에 대한 내성을 향상시키는 것.
  • 강력한 일관성을 보장하면서도, 일시적 일관성 시스템의 성능 비용과 유사한 커밋 프로토콜을 설계하는 것.
  • 예측할 수 없는 지연 급증 상황에서도 사용자 경험을 떨어뜨리지 않도록 프로그래밍 모델을 제공하는 것.
  • 분산형 마스터 없는 환경에서 충돌 탐지 및 값 제약 조건을 포함한 원자적, 다중 키 트랜잭션을 지원하는 것.

제안 방법

  • MDCC는 일반화된 페아소스를 기반으로 하여 일반적인 경우에 단일 라운드트립 커밋을 가능하게 하는 최적화된 커밋 프로토콜을 사용한다.
  • 모든 커밋이 데이터 센터의 대부분 복제본에서 승인되어야 하므로 큐럼 기반 커밋을 보장한다.
  • 추가적인 라운드트립을 방지하기 위해 후속 트랜잭션에 커밋 상태 알림을 함께 실어 효율성을 높인다.
  • 쓰기-쓰기 충돌을 탐지하고 손실 업데이트를 방지하기 위해 구분 기반 메커니즘을 사용한다.
  • 큐럼 읽기와 왤기로 일관성을 강제함으로써 교환 가능한 업데이트와 값 제약 조건을 지원한다.
  • 응용 프로그램에 트랜잭션 상태를 알리는 콜백을 포함한 SLO 인식 프로그래밍 모델을 도입하여, 고지연 조건에서도 성능을 유지한다.

실험 결과

연구 질문

  • RQ1마스터가 없는 최적화된 커밋 프로토콜이 광역, 다중 데이터 센터 환경에서 단일 네트워크 라운드트립으로 강력한 일관성을 달성할 수 있는가?
  • RQ2큐럼 기반, 마스터 없는 커밋 프로토콜에 다중 키 트랜잭션의 충돌 탐지 및 해결을 효율적으로 통합할 수 있는가?
  • RQ3예측할 수 없는 데이터 센터 간 지연 급증 상황에서도 사용자 피드백을 즉각적으로 제공할 수 있는 프로그래밍 모델을 설계할 수 있는가?
  • RQ4충돌 가능성에 따라 빠른 페아소스 모드와 클래식 페아소스 모드를 동적으로 선택함으로써 성능을 얼마나 최적화할 수 있는가?
  • RQ5마스터 없는 아키텍처에서 데이터 센터 장애 발생 시에도 강력한 일관성과 가용성을 유지하면서 낮은 지연 성능을 손상시키지 않을 수 있는가?

주요 결과

  • MDCC는 다섯 개의 아마존 데이터 센터를 통해 TPC-W 벤치마크에서 2PC 대비 트랜잭션당 지연을 50% 감소시켜 234 ms로 줄였다.
  • MDCC의 트랜잭션 처리량은 2PC의 두 배이며, 일시적 일관성 시스템과 유사한 높은 성능을 달성했다.
  • MDCC는 데이터 센터 장애 발생 시에도 강력한 일관성과 가용성을 유지하며, 응답 시간에 미미한 영향을 미쳤다.
  • 일반적인 경우에 단일 라운드트립 커밋을 달성하여 기존 이중단계 커밋 대비 지연을 크게 감소시켰다.
  • SLO 인식 프로그래밍 모델을 통해 고지연 메시지로 인해 트랜잭션이 보류되어도 응용 프로그램이 사용자에게 즉각적인 피드백을 제공할 수 있었다.
  • MDCC는 완전히 분산된 마스터 없는 아키텍처에서 원자적, 다중 키 트랜잭션을 성공적으로 지원하며 충돌 탐지 및 값 제약 조건을 구현했다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.