Skip to main content
QUICK REVIEW

[論文レビュー] Continuous Partial Quorums for Consistency-Latency Tuning in Distributed NoSQL Storage Systems

Marlon McKenzie, Hua Fan|arXiv (Cornell University)|Jul 11, 2015
Cloud Computing and Resource Management参考文献 21被引用数 3
ひとこと要約

本稿では、調整可能な確率を用いて2つの整合性レベル(例:read-one とマジョリティ)を確率的に選択することで、NoSQLシステムにおける細粒度な整合性-遅延調整を可能にする Continuous Partial Quorums (CPQ) を提案する。Apache Cassandra 上での評価において、CPQ は同様の整合性を達成するが、大幅に低い遅延で動作し、固定の整合性レベルや遅延ベースの手法を上回る性能を示した。

ABSTRACT

NoSQL storage systems are used extensively by web applications and provide an attractive alternative to conventional databases when the need for scalability outweighs the need for transactions. Several of these systems provide quorum-based replication and present the application developer with a choice of multiple client-side "consistency levels" that determine the number of replicas accessed by reads and writes, which in turn affects both latency and the consistency observed by the client application. Since using a fixed combination of read and write consistency levels for a given application provides only a limited number of discrete options, we investigate techniques that allow more fine-grained tuning of the consistency-latency trade-off, as may be required to support consistency-based service level agreements (SLAs). We propose a novel technique called \emph{continuous partial quorums} (CPQ) that assigns the consistency level on a per-operation basis by choosing randomly between two options, such as eventual and strong consistency, with a tunable probability. We evaluate our technique experimentally using Apache Cassandra and demonstrate that it outperforms an alternative tuning technique that delays operations artificially.

研究の動機と目的

  • NoSQL システムにおける離散的整合性レベルの制限を解消し、整合性と遅延の間の固定された少数のトレードオフしか提供しないという問題に対処すること。
  • サービスレベル契約(SLA)に応じて、整合性と遅延を操作可能な連続的かつ個々の操作単位での調整を可能にすること。
  • CPQ を人工遅延(AD)と比較して評価し、同様の技術的アプローチであるが、遅延を伴う整合性向上手法との差異を明らかにすること。
  • CPQ が実世界の NoSQL デプロイメントにおいて、人工遅延と比較して優れた整合性-遅延トレードオフを実現できることを示すこと。
  • 分散ストレージシステムにおける確率的整合性と遅延保証をサポートするミドルウェアフレームワークの基盤を構築すること。

提案手法

  • CPQ は、調整可能な確率 p ∈ [0,1] を用いて、各操作に対して2つの離散的整合性レベル(例:read-one とマジョリティクorum)を動的に選択することで、整合性-遅延トレードオフを連続的に制御する。
  • この手法は、下位のストレージシステムを変更せずに、完全にクライアント側で動作する。確率的選択により、整合性と遅延のバランスを取る。
  • 各読み取りまたは書き込み操作において、確率 p で一つの整合性レベル、確率 1−p でもう一つの整合性レベルをランダムに選択することで、整合性-遅延スペクトル全体にわたる滑らかな調整が可能になる。
  • 実験的評価は、Amazon EC2 にデプロイされた Apache Cassandra を用い、Yahoo Cloud Serving Benchmark (YCSB) によりワークロードを生成して行った。
  • CPQ の性能は、操作の前後または中間で遅延を注入することで最新データの読み取り確率を高める人工遅延(AD)と比較された。
  • 整合性は「陳腐な読み取りの割合」で測定され、遅延は 95 パーセンタイル応答時間として測定され、SLA 制約下でのトレードオフを直接比較可能となった。

実験結果

リサーチクエスチョン

  • RQ1クォーラムレプリケートされた NoSQL システムにおいて、既存の離散的整合性レベルのみを用いて、連続的かつ個々の操作単位での整合性-遅延トレードオフを達成できるか?
  • RQ2CPQ は、遅延と陳腐さの観点から、人工遅延と比較してどのように性能を発揮するか?
  • RQ3CPQ は、実世界のデプロイメントにおいて、人工遅延と同等の整合性を維持しながら、著しく遅延を低減できるか?
  • RQ4CPQ は、特定の遅延と陳腐さ要件を満たすサービスレベル契約(SLA)をサポートする上で、固定整合性レベル(例:read-one、マジョリティ)を上回る性能を示せるか?
  • RQ5CPQ の手法は、複数のクライアント側整合性レベルをサポートする他の NoSQL システムにも一般化可能か?

主な発見

  • CPQ は、陳腐な読み取りの割合という整合性指標において、人工遅延と同等の水準の整合性を達成するが、複数の実験的シナリオで数倍低い遅延を実現した。
  • この手法により、2つの離散的整合性レベルのみを用いても、固定された離散的組み合わせの制限を超えた連続的調整が可能になった。
  • 一部のケースでは、CPQ は人工遅延と同等の整合性保証を維持しながら、遅延を数倍まで低減した。
  • 実験結果から、すべての読み取り操作のキリティカルパスに人工遅延を注入することは遅延に顕著に悪影響を及ぼすことが確認され、従来の非公式な主張を裏付けた。
  • CPQ は、SLA 制約下での最適なトレードオフを達成する上で、固定整合性レベルおよび人工遅延を上回る性能を示した。特に遅延に敏感なワークロードにおいて顕著であった。
  • この手法は、複数のクライアント側整合性レベルをサポートする任意の NoSQL システムに適用可能であり、広範な実用的応用可能性を示唆している。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。