17

CAP 定理を正しく理解していれば、可用性とは、ノードがダウンしてもクラスターが動作し続けることを意味します。

多くの人 ( http://blog.nahurst.com/tag/guide ) が RDBMS を CA としてリストしているのを見てきましたが、RBDMS がどのように利用できるのか理解できません。一貫性を維持します。

これに対する私の唯一の答えは、ほとんどの RDBMS は単一ノードであるため、「障害のない」ノードは存在しないということです。しかし、これは専門的なことであり、真の「可用性」ではなく、高可用性ではありません。

ありがとうございました。

4

3 に答える 3

1

CAP-Availability と node-UP/DOWN の関係を誤解していると思います。可用性とは、受信したすべてのクエリに対する回答を提供することです。ノードがダウンしている場合、ノードはクエリを受信できません。したがって、クラスターの一部または全体を停止すると、CAP-Availability プロパティが保持されます。これは一見すると直感に反するように聞こえるかもしれませんが、ノードをシャットダウンすることで、代わりに CAP の可用性を保持し、代わりに CAP パーティションの耐性を低下させます。私は最近、いくつかの説明を提供する例の回答を投稿しました。

簡単に言えば、ノード N を分離するパーティションが発生します。N が要求を受信した場合、次のいずれかを行うことができます。ii) 古い結果で返信することを避けるために回答しないでください。それにより、リクエストを受け取ったが返信しなかったため、可用性が失われます。

別の方法として、クラスターの残りの部分から切断されたらすぐに N をシャットダウンすることもできます。これにより、C と A を保持しながら P をドロップできます。これは、次の理由によるものです。i) N は要求を受信しません。ii) 受信したすべてのリクエストは、完全に接続された一貫性のあるクラスターに対して実行されるため、すべて一貫した値で応答されます。iii) クラスターはパーティションを許容しないため、パーティション トレラントではありません。代わりに、パーティション分割されたノードをシャットダウンします。

于 2020-10-19T13:30:39.350 に答える
-1

CAP 定理 P では、システムがパーティションを処理する能力です (パーティションは、ネットワーク障害またはその他の理由により、分離されたクラスターです..)。

パーティションを処理する分散ネットワークでは、システムは一貫性または可用性のいずれかを選択する必要があります。

RDBMS の場合、パーティションの可能性はありません (分散されていないと仮定すると、これは通常のケースです)。そのため、それらは常に CA になります。

于 2016-03-11T07:44:15.963 に答える