chinesisch - vereinfacht   deutsch   Englisch (USA)   französisch   griechisch   holländisch   portugiesisch - iberisch   spanisch  

Home




Usenet Posting #8 - Trigeminal Software, Inc. (German)

Betreff: INFO: Über Replikat-Intelligenz...
(ursprünglich gepostet 13.5.99)
Welches ist gescheiter?

Stellen Sie sich vor, Sie haben 4 Replikate, die in einer Ring-Topologie synchronisieren, d.h. Redmond synchronisiert mit Chicago, dieses mit New York, dieses mit Philadelphia, das wiederum mit Redmond synchronisiert u.s.w. (nicht, dass sich die Replikate selber synchronisierten, natürlich ist gemeint, dass die Leute an diesen Orten die Synchronisierung durchführen). Philadelphia hat nach der Synchronisierung mit New York alle Daten der anderen Replikate, und Philadelphia weiß beim Synchronisieren mit Redmond, dass es die Daten erhalten hat, die Redmond am Beginn des Kreislaufs nach Chicago geschickt hatte. Der Grund dafür ist, dass jedes Replikat darüber auf dem Laufenden ist, welcher "Generation" es in der Replikatgruppe angehört. Deshalb weiß Philadelphia also, dass es die Daten aus Redmond (durch die anderen Replikate) bereits erhalten hat und diese Daten nicht noch einmal gesendet werden müssen. Darum ist das gescheiteste Replikat die "Quelle" der Synchronisierung.

Was würde nun passieren, wenn Sie eines Tages versuchten, die Richtung umzudrehen und Redmond mit Philadelphia zu synchronisieren (nehmen wir an, die Telefone funktionierten nicht, als Philadelphia die Synchronisierung versuchte und die Leute in Redmond möchten sicher stellen, dass die Daten synchronisiert wurden ohne bis morgen zu warten)? Das Replikat in Redmond "weiß" von der letzten Synchronisierung, die Philadelphia mit ihm durchgeführt hat, welcher Generation es angehört, aber es kann nicht wissen, was Philadelphia seither getan hat. Redmond würde daher versuchen, alle Daten, die seit dem letzten Mal angefallen sind, nach Philadelphia zu schicken, da es denkt, das arme Philadelphia hätte seither keinerlei Daten mehr bekommen. Es gibt dabei keine Gefahr für die Integrität der Daten (weil die Jet-Engine die "älteren" Daten in Redmond ignorieren wird, zugunsten der neueren, falls irgendwelche Änderungen durchgeführt wurden, und es wird Datensätze löschen, die sich in der MSysTombstones-Tabelle befinden), aber es kann zu einer wesentlich längeren Telefonverbindung zwischen den beiden Standorten führen.

Das ist ein wichtiger Faktor, den man bei der Replikation stets beachten sollte, und der Grund, warum ich alle meine Synchronisierungs-Funktionen in einer Weise designe, die mich dynamisch entscheiden lässt, welches "gescheiter" ist, damit ich die für eine Synchronisierung nötige Zeit immer minimieren kann, sowohl bei lokaler Synchronisierung als auch bei der mit weit entfernten Partnern.

Home

Probleme mit dieser Seite? Bitte kontaktieren Sie den webmaster@trigeminal.com
mit Ihren Kommentaren, Fragen oder Vorschlägen.