Funktionsweise der point-in-time Wiederherstellung in Amazon Keyspaces - Amazon Keyspaces (für Apache Cassandra)

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Funktionsweise der point-in-time Wiederherstellung in Amazon Keyspaces

Dieser Abschnitt bietet einen Überblick über die Funktionsweise der Amazon Keyspaces- point-in-time Wiederherstellung (PITR). Weitere Informationen zu Preisen finden Sie unter Amazon Keyspaces (für Apache Cassandra) – Preise.

Aktivieren der point-in-time Wiederherstellung (PITR)

Sie können PITR über die Konsole oder programmgesteuert aktivieren.

Aktivieren von PITR mit der Konsole

PITR-Einstellungen für neue Tabellen können unter der Option Benutzerdefinierte Einstellungen verwaltet werden. PITR ist standardmäßig für neue Tabellen aktiviert, die über die Konsole erstellt wurden.

Führen Sie die folgenden Schritte aus, um PITR für eine vorhandene Tabelle zu aktivieren.

  1. Melden Sie sich bei der an AWS Management Consoleund öffnen Sie die Amazon Keyspaces-Konsole unter https://console.aws.amazon.com/keyspaces/home.

  2. Wählen Sie im Navigationsbereich Tabellen und dann die Tabelle aus, die Sie bearbeiten möchten.

  3. Wählen Sie auf der Registerkarte Backups die Option Bearbeiten aus.

  4. Wählen Sie im Abschnitt point-in-time Wiederherstellungseinstellungen bearbeiten die Option P-oint-in-time Wiederherstellung aktivieren aus.

Sie können PITR für eine Tabelle jederzeit mit den folgenden Schritten deaktivieren.

  1. Melden Sie sich bei der an AWS Management Consoleund öffnen Sie die Amazon Keyspaces-Konsole unter https://console.aws.amazon.com/keyspaces/home.

  2. Wählen Sie im Navigationsbereich Tabellen und dann die Tabelle aus, die Sie bearbeiten möchten.

  3. Wählen Sie auf der Registerkarte Backups die Option Bearbeiten aus.

  4. Deaktivieren Sie im Abschnitt point-in-time Wiederherstellungseinstellungen bearbeiten das Kontrollkästchen Point-in-time -Wiederherstellung aktivieren.

Wichtig

Wenn Sie PITR deaktivieren, wird Ihr Backup-Verlauf sofort gelöscht, auch wenn Sie PITR innerhalb von 35 Tagen erneut für die Tabelle aktivieren.

Informationen zum Wiederherstellen einer Tabelle mithilfe der Konsole finden Sie unter Wiederherstellen einer Tabelle auf einen bestimmten Zeitpunkt (Konsole).

Aktivieren von PITR mithilfe der AWS CLI

Sie können PITR-Einstellungen für Tabellen mithilfe der UpdateTable-API verwalten.

Wenn Sie eine neue Tabelle mit erstellenAWS CLI, müssen Sie PITR explizit aktivieren, wenn Sie die neue Tabelle erstellen.

Um PITR beim Erstellen einer neuen Tabelle zu aktivieren, können Sie den folgenden AWS CLI Befehl als Beispiel verwenden. Der Befehl wurde zur besseren Lesbarkeit in separate Zeilen unterteilt.

aws keyspaces create-table --keyspace-name 'myKeyspace' --table-name 'myTable' --schema-definition 'allColumns=[{name=id,type=int},{name=name,type=text},{name=date,type=timestamp}],partitionKeys=[{name=id}]' --point-in-time-recovery 'status=ENABLED'
Anmerkung

Wenn kein point-in-time Wiederherstellungswert angegeben ist, point-in-time ist die Wiederherstellung standardmäßig deaktiviert.

Um die point-in-time Wiederherstellungseinstellung für eine Tabelle zu bestätigen, können Sie den folgenden AWS CLI Befehl verwenden.

aws keyspaces get-table --keyspace-name 'myKeyspace' --table-name 'myTable'

Führen Sie den folgenden Befehl ausAWS CLI, um PITR für eine vorhandene Tabelle mit der zu aktivieren.

aws keyspaces update-table --keyspace-name 'myKeyspace' --table-name 'myTable' --point-in-time-recovery 'status=ENABLED'

Führen Sie den folgenden AWS CLI Befehl aus, um PITR für eine vorhandene Tabelle zu deaktivieren.

aws keyspaces update-table --keyspace-name 'myKeyspace' --table-name 'myTable' --point-in-time-recovery 'status=DISABLED'
Wichtig

Wenn Sie PITR deaktivieren, wird Ihr Backup-Verlauf sofort gelöscht, auch wenn Sie PITR innerhalb von 35 Tagen erneut für die Tabelle aktivieren.

Aktivieren von PITR mit CQL

Sie können PITR-Einstellungen für Tabellen mithilfe der point_in_time_recovery benutzerdefinierten Eigenschaft verwalten.

Wenn Sie eine neue Tabelle mit CQL erstellen, müssen Sie PITR explizit aktivieren, wenn Sie die neue Tabelle erstellen.

Um PITR beim Erstellen einer neuen Tabelle zu aktivieren, können Sie den folgenden CQL-Befehl als Beispiel verwenden.

CREATE TABLE "my_keyspace1"."my_table1"( "id" int, "name" ascii, "date" timestamp, PRIMARY KEY("id")) WITH CUSTOM_PROPERTIES = { 'capacity_mode':{'throughput_mode':'PAY_PER_REQUEST'}, 'point_in_time_recovery':{'status':'enabled'} }
Anmerkung

Wenn keine benutzerdefinierte Eigenschaft für die point-in-time Wiederherstellung angegeben ist, point-in-time ist die Wiederherstellung standardmäßig deaktiviert.

Um PITR für eine vorhandene Tabelle mit CQL zu aktivieren, führen Sie den folgenden CQL-Befehl aus.

ALTER TABLE mykeyspace.mytable WITH custom_properties = {'point_in_time_recovery': {'status': 'enabled'}}

Um PITR für eine vorhandene Tabelle zu deaktivieren, führen Sie den folgenden CQL-Befehl aus.

ALTER TABLE mykeyspace.mytable WITH custom_properties = {'point_in_time_recovery': {'status': 'disabled'}}
Wichtig

Wenn Sie PITR deaktivieren, wird Ihr Backup-Verlauf sofort gelöscht, auch wenn Sie PITR innerhalb von 35 Tagen erneut für die Tabelle aktivieren.

Weitere Informationen in der CQL-Sprachreferenz finden Sie unter CREATE TABLE und ALTER TABLE. Informationen zum Wiederherstellen einer Tabelle mit CQL finden Sie unter Wiederherstellen einer Tabelle auf einen bestimmten Zeitpunkt mit CQL.

Erforderliche Berechtigungen zum Wiederherstellen einer Tabelle

Um eine Tabelle erfolgreich wiederherzustellen, benötigt der IAM-Benutzer oder die IAM-Rolle die folgenden Mindestberechtigungen:

  • cassandra:Restore – Die Wiederherstellungsaktion ist erforderlich, damit die Zieltabelle wiederhergestellt werden kann.

  • cassandra:Select – Die Select-Aktion ist erforderlich, um aus der Quelltabelle zu lesen.

  • cassandra:TagResource – Die Tag-Aktion ist optional und nur erforderlich, wenn der Wiederherstellungsvorgang Tags hinzufügt.

Im Folgenden finden Sie ein Beispiel für eine Richtlinie, die einem Benutzer die mindestens erforderlichen Berechtigungen zum Wiederherstellen von Tabellen im Keyspace gewährtmykeyspace.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "cassandra:Restore", "cassandra:Select" ], "Resource":[ "arn:aws:cassandra:us-east-1:111122223333:/keyspace/mykeyspace/*", "arn:aws:cassandra:us-east-1:111122223333:/keyspace/system*" ] } ] }

Je nach anderen ausgewählten Funktionen sind möglicherweise zusätzliche Berechtigungen zum Wiederherstellen einer Tabelle erforderlich. Wenn die Quelltabelle beispielsweise im Ruhezustand mit einem vom Kunden verwalteten Schlüssel verschlüsselt ist, muss Amazon Keyspaces über Berechtigungen für den Zugriff auf den vom Kunden verwalteten Schlüssel der Quelltabelle verfügen, um die Tabelle erfolgreich wiederherzustellen. Weitere Informationen finden Sie unter PITR-Wiederherstellung verschlüsselter Tabellen.

Wenn Sie IAM-Richtlinien mit Bedingungsschlüsseln verwenden, um eingehenden Datenverkehr auf bestimmte Quellen zu beschränken, müssen Sie sicherstellen, dass Amazon Keyspaces über die Berechtigung verfügt, einen Wiederherstellungsvorgang im Namen Ihres Auftraggebers durchzuführen. Sie müssen Ihrer IAM-Richtlinie einen -aws:ViaAWSServiceBedingungsschlüssel hinzufügen, wenn Ihre Richtlinie eingehenden Datenverkehr auf eine der folgenden Optionen beschränkt:

  • VPC-Endpunkte mit aws:SourceVpce

  • IP-Bereiche mit aws:SourceIp

  • VPCs mit aws:SourceVpc

Der -aws:ViaAWSServiceBedingungsschlüssel erlaubt den Zugriff, wenn ein AWS Service eine Anforderung unter Verwendung der Anmeldeinformationen des Auftraggebers stellt. Weitere Informationen finden Sie unter IAM-JSON-Richtlinienelemente: Bedingungsschlüssel im IAM-Benutzerhandbuch.

Im Folgenden finden Sie ein Beispiel für eine Richtlinie, die den Quelldatenverkehr auf eine bestimmte IP-Adresse beschränkt und es Amazon Keyspaces ermöglicht, eine Tabelle im Namen des Auftraggebers wiederherzustellen.

{ "Version":"2012-10-17", "Statement":[ { "Sid":"CassandraAccessForCustomIp", "Effect":"Allow", "Action":"cassandra:*", "Resource":"*", "Condition":{ "Bool":{ "aws:ViaAWSService":"false" }, "ForAnyValue:IpAddress":{ "aws:SourceIp":[ "123.45.167.89" ] } } }, { "Sid":"CassandraAccessForAwsService", "Effect":"Allow", "Action":"cassandra:*", "Resource":"*", "Condition":{ "Bool":{ "aws:ViaAWSService":"true" } } } ] }

Eine Beispielrichtlinie, die den aws:ViaAWSService globalen Bedingungsschlüssel verwendet, finden Sie unter VPC-Endpunktrichtlinien und Amazon point-in-time Keyspaces-Wiederherstellung (PITR).

Zeitfenster für kontinuierliche PITR-Backups

Amazon Keyspaces PITR verwendet zwei Zeitstempel, um den Zeitraum beizubehalten, für den wiederherstellbare Backups für eine Tabelle verfügbar sind.

  • Früheste wiederherstellbare Zeit – Kennzeichnet den Zeitpunkt der frühesten wiederherstellbaren Sicherung. Die früheste wiederherstellbare Sicherung wird bis zu 35 Tage oder als PITR aktiviert wurde, je nachdem, welcher Zeitpunkt neuer ist, fortgesetzt. Das maximale Backup-Fenster von 35 Tagen kann nicht geändert werden.

  • Aktuelle Zeit – Der Zeitstempel für die letzte wiederherstellbare Sicherung ist die aktuelle Zeit. Wenn während einer Wiederherstellung kein Zeitstempel angegeben wird, wird die aktuelle Uhrzeit verwendet.

Wenn PITR aktiviert ist, können Sie zu einem beliebigen Zeitpunkt zwischen EarliestRestorableDateTime und wiederherstellenCurrentTime. Sie können Tabellendaten nur zu einem Zeitpunkt wiederherstellen, zu dem PITR aktiviert wurde.

Wenn Sie PITR deaktivieren und später wieder aktivieren, setzen Sie die Startzeit für die erste verfügbare Sicherung auf zurück, als PITR wieder aktiviert wurde. Das bedeutet, dass das Deaktivieren von PITR Ihren Backup-Verlauf löscht.

Anmerkung

Data Definition Language (DDL)-Operationen für Tabellen, z. B. Schemaänderungen, werden asynchron ausgeführt. Sie können abgeschlossene Operationen nur in Ihren wiederhergestellten Tabellendaten sehen, aber möglicherweise werden zusätzliche Aktionen in Ihrer Quelltabelle angezeigt, wenn sie zum Zeitpunkt der Wiederherstellung ausgeführt wurden. Eine Liste der DDL-Anweisungen finden Sie unter DDL-Anweisungen (Datendefinitionssprache) in Amazon Keyspaces.

Eine Tabelle muss nicht aktiv sein, um wiederhergestellt werden zu können. Sie können gelöschte Tabellen auch wiederherstellen, wenn PITR für die gelöschte Tabelle aktiviert war und das Löschen innerhalb des Backup-Fensters (oder innerhalb der letzten 35 Tage) erfolgt ist.

Anmerkung

Wenn eine neue Tabelle mit demselben qualifizierten Namen (z. B. mykeyspace.mytable) wie eine zuvor gelöschte Tabelle erstellt wird, kann die gelöschte Tabelle nicht mehr wiederhergestellt werden. Wenn Sie versuchen, dies über die Konsole zu tun, wird eine Warnung angezeigt.

PITR-Wiederherstellungseinstellungen

Wenn Sie eine Tabelle mit PITR wiederherstellen, stellt Amazon Keyspaces das Schema und die Daten Ihrer Quelltabelle basierend auf dem ausgewählten Zeitstempel (day:hour:minute:second) in einer neuen Tabelle wieder her. PITR überschreibt keine vorhandenen Tabellen.

Zusätzlich zum Schema und den Daten der Tabelle stellt PITR die custom_properties aus der Quelltabelle wieder her. Im Gegensatz zu den Daten der Tabelle, die auf der Grundlage des ausgewählten Zeitstempels zwischen der frühesten Wiederherstellungszeit und der aktuellen Zeit wiederhergestellt werden, werden benutzerdefinierte Eigenschaften immer auf der Grundlage der Tabelleneinstellungen zum aktuellen Zeitpunkt wiederhergestellt.

Die Einstellungen der wiederhergestellten Tabelle stimmen mit den Einstellungen der Quelltabelle mit dem Zeitstempel überein, zu dem die Wiederherstellung initiiert wurde. Wenn Sie diese Einstellungen während der Wiederherstellung überschreiben möchten, können Sie dies mit tunWITH custom_properties. Zu den benutzerdefinierten Eigenschaften gehören die folgenden Einstellungen.

  • Lese-/Schreibkapazitätsmodus

  • Kapazitätseinstellungen für bereitgestellten Durchsatz

  • PITR-Einstellungen

Wenn sich die Tabelle im Modus bereitgestellter Kapazität mit aktiviertem Auto Scaling befindet, stellt der Wiederherstellungsvorgang auch die Auto Scaling-Einstellungen der Tabelle wieder her. Sie können sie mit dem autoscaling_settings Parameter in CQL oder autoScalingSpecification mit der CLI überschreiben. Weitere Informationen zu den Auto-Scaling-Einstellungen finden Sie unter Automatische Verwaltung der Durchsatzkapazität mit Amazon Keyspaces Auto Scaling.

Wenn Sie eine vollständige Tabellenwiederherstellung durchführen, stammen alle Tabelleneinstellungen für die wiederhergestellte Tabelle aus den aktuellen Einstellungen der Quelltabelle zum Zeitpunkt der Wiederherstellung.

Beispiel: Angenommen, der bereitgestellte Durchsatz einer Tabelle wurde jüngst auf 50 Lese- und 50 Schreibkapazitätseinheiten verringert. Anschließend stellen Sie den Status der Tabelle vor drei Wochen wieder her. Zu diesem Zeitpunkt wurde der bereitgestellte Durchsatz auf 100 Lesekapazitätseinheiten und 100 Schreibkapazitätseinheiten festgelegt. In diesem Fall stellt Amazon Keyspaces Ihre Tabellendaten zu diesem Zeitpunkt wieder her, verwendet jedoch die aktuellen bereitgestellten Durchsatzeinstellungen (50 Lesekapazitätseinheiten und 50 Schreibkapazitätseinheiten).

Die folgenden Einstellungen werden nicht wiederhergestellt, und Sie müssen sie manuell für die neue Tabelle konfigurieren.

  • AWS Identity and Access Management (IAM)-Richtlinien

  • Amazon- CloudWatch Metriken und Alarme

  • Tags ( kann der CQL-RESTOREAnweisung mit hinzugefügt werdenWITH TAGS)

PITR-Wiederherstellung verschlüsselter Tabellen

Wenn Sie eine Tabelle mit PITR wiederherstellen, stellt Amazon Keyspaces die Verschlüsselungseinstellungen Ihrer Quelltabelle wieder her. Wenn die Tabelle mit einem AWS-eigener Schlüssel (Standard) verschlüsselt wurde, wird die Tabelle automatisch mit derselben Einstellung wiederhergestellt. Wenn die Tabelle, die Sie wiederherstellen möchten, mit einem vom Kunden verwalteten Schlüssel verschlüsselt wurde, muss derselbe vom Kunden verwaltete Schlüssel für Amazon Keyspaces zugänglich sein, um die Tabellendaten wiederherzustellen.

Sie können die Verschlüsselungseinstellungen der Tabelle zum Zeitpunkt der Wiederherstellung ändern. Um von einem zu einem kundenverwalteten Schlüssel AWS-eigener Schlüssel zu wechseln, müssen Sie zum Zeitpunkt der Wiederherstellung einen gültigen und zugänglichen kundenverwalteten Schlüssel angeben.

Wenn Sie von einem vom Kunden verwalteten Schlüssel zu einem wechseln möchtenAWS-eigener Schlüssel, vergewissern Sie sich, dass Amazon Keyspaces Zugriff auf den vom Kunden verwalteten Schlüssel der Quelltabelle hat, um die Tabelle mit einem wiederherzustellenAWS-eigener Schlüssel. Weitere Informationen zu den Einstellungen für die Verschlüsselung im Ruhezustand für Tabellen finden Sie unter Verschlüsselung ruhender Daten: Funktionsweise in Amazon Keyspaces.

Anmerkung

Wenn die Tabelle gelöscht wurde, weil Amazon Keyspaces den Zugriff auf Ihren vom Kunden verwalteten Schlüssel verloren hat, müssen Sie sicherstellen, dass der vom Kunden verwaltete Schlüssel für Amazon Keyspaces zugänglich ist, bevor Sie versuchen, die Tabelle wiederherzustellen. Eine Tabelle, die mit einem vom Kunden verwalteten Schlüssel verschlüsselt wurde, kann nicht wiederhergestellt werden, wenn Amazon Keyspaces keinen Zugriff auf diesen Schlüssel hat. Weitere Informationen finden Sie unter Fehlerbehebung beim Schlüsselzugriff im -AWS Key Management ServiceEntwicklerhandbuch.

PITR-Wiederherstellung von multiregionalen Tabellen

Sie können eine multiregionale Tabelle mit PITR wiederherstellen. Damit der Wiederherstellungsvorgang erfolgreich ist, müssen sowohl die Quell- als auch die Zieltabelle in denselben repliziert werdenAWS-Regionen.

Amazon Keyspaces stellt die Einstellungen der Quelltabelle in jeder der replizierten Regionen wieder her, die Teil des Keyspace sind. Sie können die Einstellungen auch während des Wiederherstellungsvorgangs überschreiben. Weitere Informationen zu Einstellungen, die während der Wiederherstellung geändert werden können, finden Sie unter PITR-Wiederherstellungseinstellungen.

Weitere Informationen zur Multi-Region-Replikation finden Sie unter So funktioniert die regionsübergreifende Replikation in Amazon Keyspaces.

Tabellenwiederherstellungszeit mit PITR

Die Zeit, die Sie für die Wiederherstellung einer Tabelle benötigen, basiert auf mehreren Faktoren und ist nicht immer direkt mit der Größe der Tabelle korreliert.

Im Folgenden finden Sie einige Überlegungen zu Wiederherstellungszeiten.

  • Die Sicherung wird in einer neuen Tabelle wiederhergestellt. Die Ausführung aller mit der Erstellung einer neuen Tabelle verbundenen Aktionen sowie die Initiierung des Wiederherstellungsprozesses kann bis zu 20 Minuten dauern, theoretisch selbst bei einer leeren Tabelle.

  • Die Wiederherstellungszeiten für große Tabellen mit gut verteilten Datenmodellen können mehrere Stunden oder länger betragen.

  • Wenn Ihre Quelltabelle Daten enthält, die erheblich verzerrt sind, kann sich die Wiederherstellungszeit verlängern. Wenn der Primärschlüssel Ihrer Tabelle beispielsweise den Monat des Jahres als Partitionsschlüssel verwendet und alle Ihre Daten aus dem Monat Dezember stammen, haben Sie verzerrte Daten.

Eine bewährte Methode bei der Planung der Notfallwiederherstellung besteht darin, die durchschnittlichen Wiederherstellungszeiten regelmäßig zu dokumentieren und festzulegen, wie sich diese Zeiten auf Ihr gesamtes Recovery-Zeitziel auswirken.

Amazon Keyspaces PITR und Integration in -AWSServices

Die folgenden PITR-Operationen werden mit protokolliertAWS CloudTrail, um eine kontinuierliche Überwachung und Prüfung zu ermöglichen.

  • Erstellen Sie eine neue Tabelle mit aktiviertem oder deaktiviertem PITR.

  • Aktivieren oder deaktivieren Sie PITR für eine vorhandene Tabelle.

  • Stellen Sie eine aktive oder eine gelöschte Tabelle wieder her.

Weitere Informationen finden Sie unter Protokollieren von Amazon Keyspaces-API-Aufrufen mit AWS CloudTrail.

Sie können die folgenden PITR-Aktionen mit ausführenAWS CloudFormation.

  • Erstellen Sie eine neue Tabelle mit aktiviertem oder deaktiviertem PITR.

  • Aktivieren oder deaktivieren Sie PITR für eine vorhandene Tabelle.

Weitere Informationen finden Sie in der Cassandra-Ressourcentypreferenz im AWS CloudFormation -Benutzerhandbuch.