2017-04-14 5 views
2

cassandraのドキュメントから、私は、cassandraが2つの書き込み間の競合を解決するためにクエリのタイムスタンプを使用することを知りました。したがって、クラスタのすべてのノードのクロックを同期させる必要があります。私のユースケースでは、クラスタに書き込むクライアントは1つだけであり、複数のクライアントはクラスタから読み込みます。だから、クライアントサイドのタイムスタンプジェネレータ(私はバージョン> 3のデフォルトと思われる)を使用すると、まだクラスタノードのクロックを互いに同期させる必要がありますか?1人のクライアントだけがクラスタに書き込む場合は、cassandraのクロック同期が必要ですか?

答えて

4

保存されるデータに関連する書き込みタイムスタンプのコンテキストでは、クライアントのタイムスタンプと単一のクライアントを使用している場合、クロックの同期は必要ありません。

しかし、私はカサンドラクラスターで少なくとも時計を同期させようとはしていません。クロック・スキューがカサンドラの他の部分に影響を与える場合があります。たとえば、CASSANDRA-11991は、軽量トランザクションに使用されるノードクロックにクロックスキューが影響する場合を示しています。その特定の問題は対処されていますが、同期をとるのは良い考えです。

2

それが依存:

  1. 挿入using timestamp [millis]と - 主キー列でクライアントによって生成されたタイムスタンプ情報と罰金
  2. 挿入 - 細かい
  3. 正規の挿入を主キーにあるクライアント設定時間なし - かもしれません時計を同期させておくと良いアイデア
関連する問題