Bei SQL Remote werden Nachrichten immer in beide Richtungen gesendet. Die konsolidierte Datenbank sendet Nachrichten, die Publikationsaktualisierungen enthalten, an entfernte Datenbanken. Entfernte Datenbanken wiederum senden aktualisierte Daten und Empfangsbestätigungen an die konsolidierte Datenbank.
Wenn Benutzer der entfernten Datenbanken Daten ändern, werden ihre Änderungen an die konsolidierte Datenbank repliziert. Wenn diese Änderungen in der konsolidierten Datenbank angewendet werden, werden sie ein Teil der Publikation der konsolidierten Datenbank und in die Aktualisierungen aufgenommen, die an alle entfernten Datenbanken (außer an jene, von der die Aktualisierung stammte) gesendet werden. Auf diese Weise erfolgt die Replikation von der entfernten Datenbank zur entfernten Datenbank über die konsolidierte Datenbank.
Beispiel: Wenn Daten in einer Publikation einer konsolidierten Datenbank aktualisiert werden, sendet das Replikationssystem sie an die entfernten Datenbanken. Auch wenn die Daten in der entfernten Datenbank nie aktualisiert werden, werden Bestätigungsnachrichten an die konsolidierte Datenbank zurückgesendet, damit der Status der Replikation verfolgt werden kann.
Bei jeder konsolidierten und entfernten Datenbank, die an der Replikation teilnimmt, gibt es einen Nachrichtenagenten und ein Transaktionslog, das die Replikation verwaltet. Alle festgeschriebenen Änderungen werden aufgezeichnet und im Transaktionslog gespeichert.
Regelmäßig durchsucht der SQL Remote-Nachrichtenagent in der konsolidierten Datenbank das Transaktionslog und verpackt alle festgeschriebenen Transaktionen, die für die einzelnen Publikationen (Datenabschnitte) durchgeführt wurden, in Nachrichten. Der SQL Remote-Nachrichtenagent der konsolidierten Datenbank sendet anschließend die relevanten Änderungen an die entfernten Benutzer, die diese Publikationen subskribieren. Der SQL Remote-Nachrichtenagent sendet die Änderungen unter Verwendung eines Messagingsystems. SQL Remote unterstützt SMTP-E-Mailsysteme, FTP und FILE.
Der SQL Remote-Nachrichtenagent in der entfernten Datenbank akzeptiert die Nachrichten, die von der konsolidierten Datenbank gesendet wurden, und sendet eine Bestätigung an die konsolidierte Datenbank, dass die Nachrichten empfangen wurden. Anschließend wendet der SQL Remote-Nachrichtenagent die Transaktionen in der entfernten Datenbank an.
Ein entfernter Benutzer kann jederzeit den SQL Remote-Nachrichtenagenten ausführen, um die in der entfernten Datenbank durchgeführten Transaktionen in Nachrichten zu verpacken und sie an die konsolidierte Datenbank zurückzusenden.
Der SQL Remote-Nachrichtenagent am konsolidierten Standort verarbeitet die Nachrichten von der entfernten Datenbank und wendet die Transaktionen in der konsolidierten Datenbank an.
![]() |
Kommentieren Sie diese Seite in DocCommentXchange.
|
Copyright © 2010, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.0 |