2016-04-04 12 views
1

Ich habe zwei Gruppen von Servern auf verschiedenen Kontinenten, die zu einem rethinkdb-Cluster gehören. Die Primärdatei gehört zu einer Gruppe, so dass jede Abfrage, die von der anderen Gruppe generiert wird, viel Zeit in Anspruch nimmt, um unter den Standardkonsistenzmodi Lesen und Schreiben ausgeführt zu werden.Mehrere Primärknoten in einem rethinkdb-Cluster

Ich frage mich, ob es überhaupt möglich ist, separate Cluster für jede der Sites zu erstellen und zwischen den Clustern zu replizieren? (Ich habe einen Blick auf Rethink DB Cross Cluster Replication, aber es scheint nicht so eine Lösung.)

Wenn nicht, gibt es eine Möglichkeit, ich konnte zwei Primärarten in einem Cluster, eine für jeden der Standorte, ohne Konsistenz zu brechen Garantien?

Antwort

2

Sie können zwei Primärknoten in einem Cluster haben, indem Sie entweder zwei Tabellen haben, eine für jede Gruppe von Servern, oder indem Sie eine einzelne Tabelle aufteilen. Mit Server-Tags (https://www.rethinkdb.com/docs/sharding-and-replication/) können Sie steuern, auf welchem ​​Server der primäre Server eingerichtet wird.

+0

Gibt es trotzdem die Primärfarben für verschiedene Shards von verschiedenen Server-Sets? –

+0

Sie können 'table.config() schreiben. Update ({shards: [{primary_replica: 'foo', replikate: ['foo', 'bar']}, {primary_replica: 'bar', replikate: ['foo' , 'bar']}]}) '. – mlucy

+0

Ich erhalte einen Fehler: e: Erwarteter Typ NUMBER aber ARRAY gefunden –