2017-10-25 4 views
0

各ノードには異なるmemtablesとSSTablesがありますか、またはクラスタ全体に特定の数のこれらのテーブルがありますか?そして、書き込み操作では、まずコミットログに書き込まれ、次にmemtablesとsstablesに書き込まれます。これはノードによって行われますか?そうでない場合は、下記の図のように、書き込み操作におけるノードの役割は何ですか? https://www.google.co.in/url?sa=i&rct=j&q=&esrc=s&source=images&cd=&cad=rja&uact=8&ved=0ahUKEwjEmYGCkovXAhXEMo8KHeLtD48QjRwIBw&url=https%3A%2F%2Fwww.guru99.com%2Fcassandra-architecture.html&psig=AOvVaw0rqVl6BG9vn0TefAPCEb5t&ust=1508999138916139誰かがmemandablesとSSTablesをcassandra、ノード、またはクラスタに保持していますか?

答えて

1

Cassandraでテーブルを作成するたびに、memtableが作成されます。 したがってノードには多くのmemtablesがあるかもしれません。 フラッシュがトリガされると、SStableが作成されます。


操作は、データが挿入されるたびに、それは、それがmemtableに入り、ある
編成ノード自体とコーディネータノードによって実行される他の質問(書き込みパス)について、このhttp://abiasforaction.net/apache-cassandra-memtable-flush/

を見ますにコミットログのが追加されました。ノードがダウンしたときにログが再生されます

この新しい挿入後に再びデータをフラッシュしたとします.SStablesの2セット(世代)が表示されます。これで、あなたのパーティションデータは複数のSStablesに存在します。
SStablesは不変であることに注意してください。後であなたはまた、締固めがどのようにキックするのかを知りたいかもしれません。

https://docs.datastax.com/en/cassandra/3.0/cassandra/operations/opsConfigureCompaction.html

+0

abhishek rajありがとうございました。検索プロセスがどのように行われ、検索プロセスが発生したときにmemtablesから特定のキーが特定されるかについての詳細を明確にしてください。それは列のキーがmemtablesに格納されているようですか? –

+0

あなたは別の質問としてそれを掲示するかもしれません。私はそこに答えるかもしれません。コメントセクションのスペースが不足しています。 –

+0

ええ、あなたが言ったように、私は別の質問としてそれを投稿しました。一度それを見て、いくつかの明快さを与えてください。 –

0

各ノードには、独自のmemtablesとsstablesがあります。もちろん、操作を開始するコーディネーター・ノードが存在する可能性がありますが、データを保持するノードは実際にそれを実行しているノードです。

また、クラスタは連動しているノードの束ですが、すべてを調整する「クラスタ」エンティティはありません。

上記の図では、ノードは1つの赤い点であり、データセンターはノード1-4と5-8であるため、データセンターがあり、それらはすべて同じクラスタの一部です。

クラスタを構成するときに言及する価値のある重要なものがいくつかあります。クラスタ名、パーティション化プログラム、スニッチです。これらはすべてすべてのノードで同じである必要があります。また、クラスタ内では、シードノードを定義しますが、これらはすべてのノードで同じである必要はありませんが、同一であることをお勧めします。

関連する問題