CouchDB kann Multi-Master-Replikation sehr gut und einfach. Insbesondere auch bei unzuverlässigen Verbindungen ist die Wiederaufnahme kein Thema, oder alternativ das Anstoßen der Replikation on-demand.
Schau ich mir direkt mal an. Da das System so ausgelegt ist, dass zum Implementieren einer neuen DB-Software nur eine Klasse ausgetauscht werden muss, würde sich der Aufwand in Grenzen halten.
Nur kannst du dann natürlich deine MySQL-DB wegwerfen.
Damit kann ich leben. Entscheidend ist, dass die Wartung dauerhaft möglichst einfach ist.
Das kannst du vermutlich aber auch dann, wenn dein Replikationskanal mal abstirbt. Ich erinnere mich, dass MySQL-Replikation nicht ganz so pflegeleicht ist.
Ich kenn das nur vom Lesen, noch nie ne Replikation im Einsatz gehabt.
Definiere "sinnvoll". Auf welcher Skala wird das bewertet? Geschwindigkeit? Konsistenz? Zuverlässigkeit?
1. Zuverlässigkeit
2. Konsistenz
3. Geschwindigkeit
So ist die Gewichtung. Wenn das Grundsystem erstmal steht, kümmere ich mich darum, dass die Bearbeitung von einem Dokument durch mehrere Personen abgefangen wird. Da das in absehbarer Zeit, wie erwähnt, absolut unmöglich ist, eilt das aber nicht.
Doch, das ist es grundsätzlich erstmal. Wer verhindert das? Und wie?
Nein, ist es nicht. Aktuell kann ein Dokument nur beim Hochladen bearbeitet werden. Liegt es erstmal auf dem Server kann es nur gelesen werden. Bearbeiten vorhandener Dokumente ist nur auf einem einzigen Server möglich und da kann nur ich allein dran.
Mir geht es in erster Linie um Geschwindigkeit und einfach Handhabung.
Einfache Handhabung: Nimm nur EINS, nicht zwei verschiedene Kanäle. Wenn der eine kaputt ist, merkt man das und repariert ihn.
Geschwindigkeit: Musst du ausmessen. MySQL-Replikation verschickt alle an den Master gesendeten SQL-Kommandos auch an alle Slaves, damit sie dort erneut ausgeführt werden. Das sollte zwar auf Binärebene geschehen, aber Updates schreiben immer alle aktualisierten Daten des Querys nochmal neu auf das Ziel, egal ob die dort schon mal vorlagen.
Ok, das lass ich mir nochmal durch den Kopf gehen.
Gibt es evtl. noch weitere Möglichkeiten für mein Vorhaben? Eine externe Cloud oder sonstige externe Anbieter fallen aus.
CouchDB. ;)
Wie geschrieben, schau ich mir an, hört sich gut an.
Du hast behauptet, man könne nicht parallel am gleichen Dokument arbeiten. Das bezweifle ich. Entweder hast du recht große Latenzen, um eine angeforderte Sperrung eines Dokuments erstmal von allen Mastern rückbestätigt zu bekommen, oder das System ist nicht zuverlässig dagegen gesichert.
Absolut zuverlässig, wie geschrieben, kann ein Dokument nach dem Hochladen nicht mehr geändert werden. einen besseren Schutz vor paralleler Bearbeitung dürfte es kaum geben ;)