2017-07-21 13 views
0

アイデアがあります。私たちは考えてみたいと思っています。定期的な間隔でcassandraの複製を停止する

1つのデータセンターを主要なカスドンドラとして使用したいと考えています。 2 Datacenterは、バックアップクラスタとしてcassandraクラスタを使用するセカンダリおよび3番目のデータセンターです。

Datacenter 1と2は通常通り複製します。データセンター3は30分遅れるはずです。私たちは、データセンター3の複製をシャットダウンすることによって、強制的にそれを強制します。基本的に30分ごとにnodetoolでゴシップを開始/停止します。

これはしばらく時間がかかる(たとえば、スキーマを変更した場合、DC3をオフにして更新し、何か問題が起きた場合はDC1とDC2を空のデータでDC3からブートストラップする)それは定期的に?

あなたはどう思いますか?間もなく複製が壊れていますか?

答えて

2

あなたは何をしたいですか?

まず、このDC3を実行すると、常に30分遅れることはありません。実際、DC3は30分間何も更新しておらず、ほとんど一貫性のない状態にフェッチします。

ヒントへのすべての書き込みは失われないか、本当に頻繁に修復する必要があるかどうかを確認する必要があります。思いついたハンドオフはデフォルトあたり3時間、スロットルもあります。それは、いくつかの状況で失敗する可能性があります。高い書き込み負荷時間。 (http://docs.datastax.com/en/cassandra/3.0/cassandra/configuration/configCassandra_yaml.html#configCassandra_yaml__max_hint_window_in_ms

デスタリカバリの安全点はありますか?

DC3で30分間隔でcronでスナップショットを作成できます。高速、追加スペース(ハードリンク)が不要で、簡単に回復できます。 201707-1200のようなタイムスタンプでそれらをタグ付けすると、適切なものを簡単に見つけることができます。また、古いものを掃除することもできます。

http://docs.datastax.com/en/cassandra/3.0/cassandra/tools/toolsSnapShot.html

http://docs.datastax.com/en/cassandra/3.0/cassandra/operations/opsBackupSnapshotRestore.html

+0

おかげで、それは悪いアイデアかもしれないと思いました。ちょっと入力したかっただけです。 – Unomagan

関連する問題