Skip to main content
QUICK REVIEW

[논문 리뷰] NWR: Rethinking Thomas Write Rule for Omittable Write Operations

Sho Nakazono, Hiroyuki Uchiyama|arXiv (Cornell University)|2019. 04. 17.
Distributed systems and fault tolerance참고 문헌 39인용 수 4
한 줄 요약

이 논문은 비가시 쓰기 규칙(Non-visible Write Rule, NWR)을 도입한다. NWR는 추가적인 버전 순서를 검증함으로써 임의의 동시성 제어 프로토콜이 잠금 없이 쓰기 연산을 안전하게 생략할 수 있도록 하는 형식적 프레임워크이다. NWR는 생략 가능성과 타임스탬프 순서를 분리함으로써, Silo, TicToc, MVTO와 같은 프로토콜이 엄격한 순서 일관성과 복구 가능성을 유지하면서도 높은 쓰기 경쟁 환경에서 최대 11배의 성능 향상을 달성할 수 있도록 한다.

ABSTRACT

Concurrency control protocols are the key to scaling current DBMS performances. They efficiently interleave read and write operations in transactions, but occasionally they restrict concurrency by using coordination such as exclusive lockings. Although exclusive lockings ensure the correctness of DBMS, it incurs serious performance penalties on multi-core environments. In particular, existing protocols generally suffer from emerging highly write contended workloads, since they use innumerable lockings for write operations. In this paper, we rethink the Thomas write rule (TWR), which allows the timestamp ordering (T/O) protocol to omit write operations without any lockings. We formalize the notion of omitting and decouple it from the T/O protocol implementation, in order to define a new rule named non-visible write rule (NWR). When the rules of NWR are satisfied, any protocol can in theory generate omittable write operations with preserving the correctness without any lockings. In the experiments, we implement three NWR-extended protocols: Silo+NWR, TicToc+NWR, and MVTO+NWR. Experimental results demonstrate the efficiency and the low-overhead property of the extended protocols. We confirm that NWR-extended protocols achieve more than 11x faster than the originals in the best case of highly write contended YCSB-A and comparable performance with the originals in the other workloads.

연구 동기 및 목표

  • 멀티코어 시스템에서 쓰기 경쟁이 심한 워크로드에서 과도한 잠금으로 인한 성능 저하 문제를 해결하기 위해.
  • 기존의 클래식한 토머스 쓰기 규칙(TWR)의 한계를 넘어, 타임스탬프 순서에 종속되지 않는 '생략 가능한' 쓰기 연산 개념을 형식화하기 위해.
  • 추가적인 버전 순서를 검증함으로써 어떤 동시성 제어 프로토콜이라도 쓰기 연산을 안전하게 생략할 수 있도록 하되, 엄격한 순서 일관성과 복구 가능성을 유지하기 위해.
  • 높은 성능을 달성하면서도 최소한의 오버헤드로 현대 벤치마크에서 검증 가능한 NWR 확장 프로토콜을 설계하고 구현하기 위해.

제안 방법

  • 다중버전 순서 일관성 이론에서 유래한 버전 순서를 사용하여 '생략 가능성'을 형식화하고, 역방향 버전 순서가 존재하는 경우에만 쓰기가 생략 가능하다고 정의한다.
  • 타임스탬프 기반 프로토콜과의 종속성을 제거하기 위해 비가시 쓰기 규칙(NWR)을 도입함으로써, 역방향 버전 순서의 검증에 기반한 생략 가능성의 독립성을 확보한다.
  • Silo, TicToc, MVTO와 같은 기존 프로토콜에 NWR를 적용하기 위해, 오래된 쓰기 연산을 탐지하고 생략하기 위해 추가적인 버전 순서 검증을 도입한다.
  • 다중버전 순서 일관성 그래프(MVSG) 검증의 변형을 사용하여 일관성을 확인하고, 캐시 오버헤드를 줄이기 위해 그래프 구조를 재사용하는 최적화 기법을 적용한다.
  • 블라인드 업데이트를 탐지하는 메커니즘을 구현하고, 쓰기가 비가시적이며 안전하게 생략될 수 있을 때만 NWR를 적용한다.
  • 버전 리스트의 순회를 최적화하기 위해 기존의 데이터 구조를 재사용하고, 특히 MVTO+NWR에서의 중복 작업을 최소화한다.

실험 결과

연구 질문

  • RQ1T/O와 같은 타임스탬프 순서 기반 프로토콜을 초월해, 생략 가능한 쓰기 연산 개념을 일반화할 수 있는가?
  • RQ2엄격한 순서 일관성 또는 복구 가능성을 훼손하지 않으면서 쓰기 연산을 안전하게 생략하기 위해 충족해야 할 형식적 조건은 무엇인가?
  • RQ3특히 고경쟁 워크로드에서, 다중 버전 순서를 효율적으로 검증할 수 있는 프로토콜을 확장할 수 있는가?
  • RQ4NWR 확장 프로토콜의 성능은 다양한 워크로드에서 원본 프로토콜과 비교해 어떻게 되는가?

주요 결과

  • NWR 확장 프로토콜은 매우 높은 쓰기 경쟁 환경을 가진 YCSB-A 벤치마크에서 원본 Silo 대비 11배 이상의 성능 향상을 달성한다.
  • 높은 읽기 및 쓰기 경쟁을 포함하는 TPC-C 벤치마크에서는 NWR 확장 프로토콜이 원본 프로토콜과 유사한 성능을 유지한다.
  • MVTO+NWR 버전은 버전 리스트의 이중 순회로 인해 추가 오버헤드가 발생하지만, 실제로는 역방향 버전 순서 검증의 효율성 덕분에 이로 인한 영향이 상쇄된다.
  • 단일 추가 버전 순서 검증을 통해 효율적이고 정확한 쓰기 생략이 가능하며, 중앙 집중식 트랜잭션 관리나 복잡한 조율 메커니즘을 요구하지 않는다.
  • NWR의 PV-규칙는 취소 시 연결된 부분 그래프만 검증하면 되므로, 다수의 버전 순서를 유지하는 데 드는 계산 비용을 감소시킨다.
  • NWR 프레임워크는 보편적으로 적용 가능하다. 어떤 프로토콜이라도 단일 역방향 버전 순서 검증을 추가함으로써 NWR를 확장할 수 있으며, 다양한 동시성 제어 모델에서 안전한 쓰기 생략을 가능하게 한다.

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

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

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

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