私の NoSQL または NewSQL/NeoSQL データベース サーバーへの露出は非常に限られており、理論的なものにすぎません。私は従来の RDBMS (MySQL、Postgres など) とディレクトリ サーバー (OpenLDAP) をレプリケーションの有無にかかわらず使用してきました。
私のアプリケーション スタックは JBoss に基づいており、VoltDB でデータの耐久性と高可用性を実証できる最小限のデモ (アプリケーションを使用) をセットアップする任務を負っています。パフォーマンス テストは目的ではありません。
VoltDB プランニング ガイドを読んでいますが、必要なサーバー (または VoltDB インスタンス) の数に関して、「+1」または「x2」の間で混乱しています。特に次の 2 つのステートメントを考えると:-
K-Safe クラスターのハードウェアのサイズを決定する最も簡単な方法は、予測されるスループットと容量に基づいてデータベースの初期インスタンスのサイズを決定し、サーバーの数に必要なレプリカの数を掛けることです (つまり、K-Safety値プラス 1)。
経験則
K-Safety を使用する場合は、クラスター ノードの数をデータベースのコピー数の整数倍 (つまり、K+1) として構成します。
質問:
- ここで、容量/スループットの要件を考慮して、1 台のサーバーが必要だとしましょう。耐久性と高可用性を実現するには、2 台、3 台、または 4 台のサーバーが必要ですか?
- OTOH、たった1台のサーバーを使用して、VoltDBのすべての重要な機能を放棄する必要がありますか?
- VoltDB の完全なディスク永続性とスナップショットの間に関係 (または競合) はありますか? たとえば、ディスク永続性の可用性により、スナップショットの必要性がなくなりますか?