2

1 つのマスターと 2 つのスレーブを持つ neo4j ha クラスターがあります。neo4j データをオフラインで定期的に再生成し、それをマスターにプッシュし、クラスターを再起動して、新しいデータをスレーブに同期させます。さて、これらの手順でそれを行います。

  1. 「data/coordinator/version-2」ディレクトリをすべて削除し、すべての neo4j インスタンスで「bin/neo4j-coordinator stop」を実行して、同期を停止します。
  2. マスター インスタンスを停止し、その 'data/graph.db/*' を削除し、オフラインで生成された新しいデータをマスターにコピーします。
  3. すべての neo4j インスタンスで「bin/neo4j-coordinator start」を実行して、同期を再開します。
  4. 新しいデータでマスター インスタンスを起動します。しかし奇妙なことに、スレーブ インスタンスは次の手順を実行するまで新しいデータを同期しません。
  5. slave1 を停止し、「data/graph.db/*」を削除して再起動します。
  6. slave2 を停止し、「data/graph.db/*」を削除して再起動します。

neo4j の同期メカニズムがよくわかりません。これを行うためのより良い方法があるかどうか、または手順を改善するにはどうすればよいか知りたいです。ありがとう。

4

1 に答える 1

1

データのオフライン コピーが既にあり、3 つのインスタンスすべてを同時に停止する余裕がある場合は、マスターだけでなく、最初にオフライン データを 3 つのインスタンスすべてにコピーします。その後、コーディネーターと DB を開始すると、それらがすべて同期されていることがわかります。また、コーディネーター データを削除する前に、まずサービスを停止します。

于 2013-03-06T17:40:14.730 に答える