Konfigurieren von Lesereplikaten
Unternehmen können schreibgeschützte Replikate ihrer Datenbanken verwenden, um die Leistung global zu skalieren. Replikate sind nützlich, wenn eine Organisation Kunden global verteilt hat und Benutzer in ihren Millionen von Benutzern haben, die versuchen, auf ihre Daten zuzugreifen. Sobald sie eingerichtet sind, können sie auch regionale Notfallwiederherstellung behandeln.
Ihr Unternehmen ist zu einem international renommierten Verkäufer von Fahrrädern gewachsen. Der CIO hat Ihre Abteilung gebeten, die Reaktionsfähigkeit Ihres Online-Shops für seine Benutzer weltweit zu verbessern. Sie wissen, dass eine schnelle und einfache Möglichkeit zur Verbesserung der Leistung schreibgeschützte Replikate Ihrer Datenbanken an jedem geografischen Standort ist.
In dieser Lektion sehen Sie, wie einfach es ist, schreibgeschützte Replikate von Daten zu erstellen und zu verwalten, die in einer Azure-Datenbank für MySQL/PostgreSQL gespeichert sind.
Verwenden der Lesereplikation
Sie verwenden die Lesereplikation, um Daten aus einer Instanz der Azure-Datenbank für MySQL/PostgreSQL (als Master bezeichnet) auf bis zu fünf Replikate zu kopieren. Verwenden Sie die Replikation, um die Last auf Server für leseintensive Workloads zu verteilen. Die Replikation ist nur unidirektionale Und jedes Replikat ist schreibgeschützt. Die Replikation funktioniert asynchron, sodass zwischen dem Zeitpunkt, zu dem sich die Daten im Master ändern, und dem Punkt, an dem sie in den einzelnen Replikaten angezeigt wird, eine Verzögerung besteht.
Replikate können sich in verschiedenen Regionen vom Master-Shape unterscheiden. Sie verwenden Replikate, um Daten in der Nähe der Clients zu platzieren, die sie benötigen, um die Abfragelatenz zu verringern. Die regionsübergreifende Replikation bietet Ihnen auch einen Mechanismus für die Behandlung regionaler Notfallwiederherstellung.
Hinweis
Die regionsübergreifende Replikation ist in der Stufe "Standardleistung" nicht verfügbar.
Jedes Replikat ist eine Instanz der Azure-Datenbank für MySQL/PostgreSQL in ihrer eigenen, jedoch schreibgeschützt konfiguriert. Wenn die Verbindung mit dem Masterserver verloren geht oder der Masterserver gelöscht wird, wird jedes Replikat zu einem unabhängigen Lese-/Schreibzugriffsserver. In diesem Fall werden Replikate nicht mehr miteinander synchronisiert, sodass die darin enthaltenen Daten möglicherweise voneinander abweichen.
Hinweis
Wenn Sie Azure-Datenbank für MySQL verwenden, sind lesereplikate nur in den Preisstufen "Allgemeinzweck" und "Speicheroptimiert" verfügbar. Darüber hinaus sind Lesereplikate in Azure Database für flexible Server von PostgreSQL nicht verfügbar.
Erstellen von Replikaten
Die einfachste Möglichkeit zum Hinzufügen von Replikaten zu einem Server ist die Replikationsseite für den Server im Azure-Portal. Wählen Sie auf dieser Seite +Replikat hinzufügen.
Sie werden aufgefordert, einen Namen und einen Speicherort für den Server einzuweisen. Abgesehen davon werden die anderen Details für das Replikat, einschließlich des Preisniveaus, auf die gleiche festgelegt wie diejenigen, die vom Master verwendet werden. Wenn das Replikat erstellt wurde, können Sie alle Einstellungen für diesen Server ändern, einschließlich der Anpassung des Preisniveaus. Stellen Sie jedoch sicher, dass jedes Replikat über ausreichende Ressourcen verfügt, um die Arbeitsauslastung zu verarbeiten, die dem Empfangen und Speichern der replizierten Daten zugeordnet ist.
Hinweis
Wenn Sie die Preisstufen "Allgemein" oder "Arbeitsspeicheroptimiert" verwenden, müssen Sie auch die Replikationsunterstützung aktivieren. Wählen Sie dazu auf der Seite " Replikation " die Option "Replikationsunterstützung aktivieren" aus. Der Server wird neu gestartet, bevor Sie fortfahren können.
Wenn Sie ein Replikat hinzugefügt haben, wird es auf der Replikationsseite angezeigt. Je nach Größe des Master-Shapes und der Datenmenge in den Datenbanken kann die Bereitstellung und Synchronisierung jedes Replikats eine erhebliche Zeit in Anspruch nehmen.
Sie konfigurieren ein Replikat neu und ändern die Größe, indem Sie es auf der Seite " Replikation " auswählen.
Wenn Sie die Azure CLI verwenden möchten, erstellen Sie Replikate mit dem Befehl az mysql/postgres server replica create
:
az postgres server replica create \
--name northwindreplica3 \
--resource-group northwindrg \
--source-server northwind101
Entfernung eines Replikats
Um ein Replikat zu entfernen, wählen Sie das Replikat auf der Replikationsseite aus, und wählen Sie "Replikation beenden" aus. Der Replikatserver wird vom Master getrennt und stattdessen in einen Lese-/Schreibserver konvertiert. Das Replikat wird nicht gelöscht, und Sie werden weiterhin für die ressourcen belastet, die es verbraucht. Wenn Sie das Replikat löschen müssen, verwenden Sie stattdessen den Befehl "Replikat löschen ".
Die Azure CLI stellt den az mysql/postgres server replica stop
Befehl bereit, um die Replikation anzuhalten und ein Replikat in einen Lese-/Schreibzugriffsserver zu konvertieren. Anschließend verwenden Sie den Befehl az mysql/postgres server delete
, um das Replikat zu löschen und dessen Ressourcen freizugeben.