「me.prettyprint.hector.api.exceptions.HUnavailableException: : 一貫性レベルを処理するのに十分なレプリカが存在しない可能性があります。」という問題が発生しています。RF=1、読み取り整合性レベル = 1 の場合、6 ノード リング/クラスタのノードの 1 つがダウンしています。私のすべての読み取りは、この例外で失敗しています。何か案が?理想的には、ダウンしているノードでデータを探している読み取りのみが失敗し、他のすべての読み取りは成功するはずですか?
3538 次
2 に答える
4
いくつかの可能性があります:
- 複数のノードを起動する必要がある複数行のクエリ (get_range、get_indexed_slices、multiget、または同等の cql) を実行している
- クラスターのバランスが崩れており、ダウンしているノードがリングの大部分を所有しています。不適切なマルチ DC 構成でも同様の結果が生じる可能性があります
- クラスターは、一部のノードが他のノードを認識しないなど、最初から良好な状態ではありませんでした。クラスター内の各ノードに対して実行したときに nodetool リングが同じ出力を表示することを確認してください
これらのいずれも原因でない場合は、Hector と cqlsh で整合性レベルを正しく指定していることを再確認してください。
于 2012-09-06T01:33:06.117 に答える
3
レプリケーション設定を誤って構成したときに、同様の現象が発生しました。具体的には、レプリケーション戦略で間違ったデータセンターの名前を付けていました。DC が何であるかを再確認します (NetworkTopologyStrategy を使用していると仮定します)。
DC 名がわからない場合は、いずれかのノードのシェルで次を実行します。
$ nodetool -h localhost ring
Address DC Rack Status State Load Owns Token
141784319550391000000000000000000000000
172.26.233.135 Cassandra rack1 Up Normal 25.75 MB 16.67% 0
172.26.233.136 Cassandra rack1 Up Normal 26.03 MB 16.67% 28356863910078200000000000000000000000
172.26.233.137 Cassandra rack1 Up Normal 27.19 MB 16.67% 56713727820156400000000000000000000000
172.26.233.138 Cassandra rack1 Up Normal 26.78 MB 16.67% 85070591730234600000000000000000000000
172.26.233.139 Solr rack1 Up Normal 24.47 MB 16.67% 113427455640313000000000000000000000000
172.26.233.140 Solr rack1 Up Normal 26.66 MB 16.67% 141784319550391000000000000000000000000
Cassandra と Solr の 2 つの DC があることがわかります (これは DSE クラスターです)。
cassandra-cli:
use Keyspace1;
describe;
CLI は戦略オプションを出力します。
Keyspace: Catalog:
Replication Strategy: org.apache.cassandra.locator.NetworkTopologyStrategy
Durable Writes: true
Options: [DC1:3]
...
ミスマッチがあります。Cassandra が DC1 という名前のデータセンターを探しているため、UnavailableException が発生します。クラスター内の実際の DC と一致するようにレプリケーション オプションを更新する必要があります。CLI で、データセンター名を使用してキースペースの戦略オプションを更新します。
update keyspace Keyspace1 with strategy_options = {Cassandra:3,Solr:2};
于 2012-09-06T15:44:31.573 に答える