Verwenden von Datenlebenszyklusrichtlinien mit Amazon OpenSearch Serverless - OpenSearch Amazon-Dienst

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.

Verwenden von Datenlebenszyklusrichtlinien mit Amazon OpenSearch Serverless

Eine Datenlebenszyklus-Richtlinie für eine Amazon OpenSearch Serverless-Zeitreihenerfassung bestimmt die Lebensdauer der Daten in dieser Sammlung. OpenSearch Serverless speichert die Daten für den von Ihnen konfigurierten Zeitraum.

Sie können für jeden Index jeder Zeitreihensammlung in Ihrem AWS-Konto eine separate Datenlebenszyklusrichtlinie konfigurieren. OpenSearch Serverless bewahrt Dokumente mindestens für den Aufbewahrungszeitraum, den Sie in der Richtlinie konfiguriert haben, in Indizes auf. Anschließend werden sie automatisch nach bestem Wissen und Gewissen gelöscht, in der Regel innerhalb von 48 Stunden oder innerhalb von 10% der Aufbewahrungsfrist, je nachdem, welcher Zeitraum länger ist.

Nur Zeitreihenerfassungen unterstützen Richtlinien für den Datenlebenszyklus. Sie werden von Sammlungen mit Such - oder Vektorsuche nicht unterstützt.

Richtlinien für den Datenlebenszyklus

In einer Datenlebenszyklus-Richtlinie geben Sie eine Reihe von Regeln an. Mit der Datenlebenszyklus-Richtlinie können Sie die Aufbewahrungsdauer von Daten verwalten, die Indizes oder Sammlungen zugeordnet sind, die diesen Regeln entsprechen. Diese Regeln definieren den Aufbewahrungszeitraum für Daten in einem Index oder einer Gruppe von Indizes. Jede Regel besteht aus einem Ressourcentyp (index), einem Aufbewahrungszeitraum und einer Liste von Ressourcen (Indizes), für die der Aufbewahrungszeitraum gilt.

Sie definieren den Aufbewahrungszeitraum mit einem der folgenden Formate:

  • "MinIndexRetention": "24h"— OpenSearch Serverless speichert Indexdaten für den angegebenen Zeitraum in Stunden oder Tagen. Sie können für diesen Zeitraum einen Zeitraum von 24h bis 3650d festlegen.

  • "NoMinIndexRetention": true— OpenSearch Serverless speichert Indexdaten auf unbestimmte Zeit.

In der folgenden Beispielrichtlinie legt die erste Regel eine Aufbewahrungsfrist von 15 Tagen für alle Indizes innerhalb der Sammlung fest. marketing Die zweite Regel legt fest, dass für alle Indexnamen, die log in der finance Sammlung mit 1 beginnen, keine Aufbewahrungsfrist festgelegt ist und dass sie auf unbestimmte Zeit aufbewahrt werden.

{ "lifeCyclePolicyDetail": { "type": "retention", "name": "my-policy", "policyVersion": "MTY4ODI0NTM2OTk1N18x", "policy": { "Rules": [ { "ResourceType":"index", "Resource":[ "index/marketing/*" ], "MinIndexRetention": "15d" }, { "ResourceType":"index", "Resource":[ "index/finance/log*" ], "NoMinIndexRetention": true } ] }, "createdDate": 1688245369957, "lastModifiedDate": 1688245369957 } }

In der folgenden Beispiel-Richtlinienregel speichert OpenSearch Serverless die Daten in allen Indizes für alle Sammlungen innerhalb des Kontos auf unbestimmte Zeit.

{ "Rules": [ { "ResourceType": "index", "Resource": [ "index/*/*" ] } ], "NoMinIndexRetention": true }

Erforderliche Berechtigungen

Lifecycle-Richtlinien für OpenSearch Serverless verwenden die folgenden AWS Identity and Access Management (IAM-) Berechtigungen. Sie können IAM-Bedingungen angeben, um Benutzer auf Datenlebenszyklus-Richtlinien zu beschränken, die bestimmten Sammlungen und Indizes zugeordnet sind.

  • aoss:CreateLifecyclePolicy— Erstellen Sie eine Datenlebenszyklus-Richtlinie.

  • aoss:ListLifecyclePolicies— Listet alle Datenlebenszyklus-Richtlinien im aktuellen Konto auf.

  • aoss:BatchGetLifecyclePolicy— Zeigen Sie eine Datenlebenszyklus-Richtlinie an, die einem Konto- oder Richtliniennamen zugeordnet ist.

  • aoss:BatchGetEffectiveLifecyclePolicy— Eine Datenlebenszyklus-Richtlinie für eine bestimmte Ressource anzeigen (indexist die einzige unterstützte Ressource).

  • aoss:UpdateLifecyclePolicy— Ändern Sie eine bestimmte Datenlebenszyklus-Richtlinie und ändern Sie deren Aufbewahrungseinstellung oder Ressource.

  • aoss:DeleteLifecyclePolicy— Löscht eine Datenlebenszyklus-Richtlinie.

Die folgende identitätsbasierte Zugriffsrichtlinie ermöglicht es einem Benutzer, alle Datenlebenszyklusrichtlinien einzusehen und Richtlinien anhand des Ressourcenmusters zu aktualisieren: collection/application-logs

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "aoss:UpdateLifecyclePolicy" ], "Resource": "*", "Condition": { "StringEquals": { "aoss:collection": "application-logs" } } }, { "Effect": "Allow", "Action": [ "aoss:ListLifecyclePolicies", "aoss:BatchGetLifecyclePolicy" ], "Resource": "*" } ] }

Vorrang der Richtlinie

Es kann Situationen geben, in denen sich die Richtlinienregeln für den Datenlebenszyklus innerhalb oder zwischen Richtlinien überschneiden. In diesem Fall überschreibt eine Regel mit einem spezifischeren Ressourcennamen oder einem spezifischeren Muster für einen Index eine Regel mit einem allgemeineren Ressourcennamen oder Muster für alle Indizes, die beiden Regeln gemeinsam sind.

In der folgenden Richtlinie gelten beispielsweise zwei Regeln für einen Index. index/sales/logstash In diesem Fall hat die zweite Regel Vorrang, da sie index/sales/log* am längsten entsprichtindex/sales/logstash. Daher legt OpenSearch Serverless keine Aufbewahrungsfrist für den Index fest.

{ "Rules":[ { "ResourceType":"index", "Resource":[ "index/sales/*", ], "MinIndexRetention": "15d" }, { "ResourceType":"index", "Resource":[ "index/sales/log*", ], "NoMinIndexRetention": true } ] }

Richtliniensyntax

Geben Sie eine oder mehrere Regeln an. Diese Regeln definieren die Datenlebenszykluseinstellungen für Ihre OpenSearch Serverless-Indizes.

Jede Regel enthält die folgenden Elemente. Sie können NoMinIndexRetention in jeder Regel entweder MinIndexRetention oder angeben, aber nicht beides.

Element Beschreibung
Ressourcentyp Der Ressourcentyp, für den die Regel gilt. Die einzige unterstützte Option für Datenlebenszyklus-Richtlinien istindex.
Resource Eine Liste von Ressourcennamen und/oder Mustern. Muster bestehen aus einem Präfix und einem Platzhalter (*), sodass die zugehörigen Berechtigungen auf mehrere Ressourcen angewendet werden können. Zum Beispiel index/<collection-name|pattern>/<index-name|pattern>.
MinIndexRetention Der Mindestzeitraum, in Tagen (d) oder Stunden (h), für die Aufbewahrung des Dokuments im Index. Die Untergrenze ist 24h und die Obergrenze ist3650d.
NoMinIndexRetention Wenntrue, OpenSearch Serverless speichert Dokumente auf unbestimmte Zeit.

Im Folgenden sind einige Beispiele aufgeführt:

{ "Rules": [ { "ResourceType": "index", "Resource": [ "index/autoparts-inventory/*" ], "MinIndexRetention": "20d" }, { "ResourceType": "index", "Resource": [ "index/auto*/gear" ], "MinIndexRetention": "24h" }, { "ResourceType": "index", "Resource": [ "index/autoparts-inventory/tires" ], "NoMinIndexRetention": true } ] }

Richtlinien für den Datenlebenszyklus erstellen () AWS CLI

Verwenden Sie den CreateLifecyclePolicyBefehl, um mithilfe der OpenSearch serverlosen API-Operationen eine Datenlebenszyklus-Richtlinie zu erstellen. Dieser Befehl akzeptiert sowohl Inline-Richtlinien als auch JSON-Dateien. Inline-Richtlinien müssen als JSON-Zeichenfolge mit Escape-Zeichen codiert werden.

Die folgende Anfrage erstellt eine Datenlebenszyklus-Richtlinie:

aws opensearchserverless create-lifecycle-policy \ --name my-policy \ --type retention \ --policy "{\"Rules\":[{\"ResourceType\":\"index\",\"Resource\":[\"index/autoparts-inventory/*\"],\"MinIndexRetention\": \"81d\"},{\"ResourceType\":\"index\",\"Resource\":[\"index/sales/orders*\"],\"NoMinIndexRetention\":true}]}"

Verwenden Sie das Format --policy file://my-policy.json die Richtlinie in einer JSON-Datei bereitzustellen

Datenlebenszyklus-Richtlinien anzeigen

Bevor Sie eine Sammlung erstellen, sollten Sie sich eine Vorschau der vorhandenen Datenlebenszyklus-Richtlinien in Ihrem Konto ansehen, um zu sehen, welche über ein Ressourcenmuster verfügen, das dem Namen Ihrer Sammlung entspricht. In der folgenden ListLifecyclePoliciesAnfrage werden alle Datenlebenszyklus-Richtlinien in Ihrem Konto aufgeführt:

aws opensearchserverless list-lifecycle-policies --type retention

Die Anfrage gibt Informationen zu allen konfigurierten Datenlebenszyklus-Richtlinien zurück. Um die in der einen bestimmten Richtlinie definierten Musterregeln einzusehen, suchen Sie die Richtlinieninformationen im Inhalt des lifecyclePolicySummaries Elements in der Antwort. Notieren Sie sich das name Ende type dieser Richtlinie und verwenden Sie diese Eigenschaften in einer BatchGetLifecyclePolicyAnfrage, um eine Antwort mit den folgenden Richtliniendetails zu erhalten:

{ "lifecyclePolicySummaries": [ { "type": "retention", "name": "my-policy", "policyVersion": "MTY2MzY5MTY1MDA3Ml8x", "createdDate": 1663691650072, "lastModifiedDate": 1663691650072 } ] }

Um die Ergebnisse auf Richtlinien zu beschränken, die bestimmte Sammlungen oder Indizes enthalten, können Sie Ressourcenfilter einbeziehen:

aws opensearchserverless list-lifecycle-policies --type retention --resources "index/autoparts-inventory/*"

Verwenden Sie den BatchGetLifecyclePolicyBefehl, um detaillierte Informationen zu einer bestimmten Richtlinie anzuzeigen.

Aktualisierung der Richtlinien für den Datenlebenszyklus

Wenn Sie eine Datenlebenszyklus-Richtlinie ändern, wirkt sich dies auf alle zugehörigen Sammlungen aus. Um eine Datenlebenszyklus-Richtlinie in der OpenSearch Serverless-Konsole zu aktualisieren, erweitern Sie Datenlebenszyklus-Richtlinien, wählen Sie die zu ändernde Richtlinie aus und klicken Sie auf Bearbeiten. Nehmen Sie Ihre Änderungen vor und wählen Sie Save (Speichern).

Verwenden Sie den Befehl, um eine Datenlebenszyklus-Richtlinie mithilfe der OpenSearch Serverless API zu aktualisieren. UpdateLifecyclePolicy Sie müssen eine Richtlinienversion in die Anfrage aufnehmen. Sie können die Richtlinienversion mithilfe der ListLifecyclePolicies- oder BatchGetLifecyclePolicy-Befehle abrufen. Durch die Angabe der neuesten Richtlinienversion wird sichergestellt, dass Sie nicht versehentlich eine von einem anderen Benutzer vorgenommene Änderung überschreiben.

Die folgende Anfrage aktualisiert eine Datenlebenszyklus-Richtlinie mit einem neuen JSON-Richtliniendokument:

aws opensearchserverless update-lifecycle-policy \ --name my-policy \ --type retention \ --policy-version MTY2MzY5MTY1MDA3Ml8x \ --policy file://my-new-policy.json

Zwischen der Aktualisierung der Richtlinie und der Durchsetzung der neuen Aufbewahrungsfristen kann es zu einer Verzögerung von einigen Minuten kommen.

Löschen von Datenlebenszyklus-Richtlinien

Wenn Sie eine Datenlebenszyklus-Richtlinie löschen, gilt sie nicht mehr für passende Indizes. Um eine Richtlinie in der OpenSearch Serverless-Konsole zu löschen, wählen Sie die Richtlinie aus und klicken Sie auf Löschen.

Sie können auch den DeleteLifecyclePolicyfolgenden Befehl verwenden:

aws opensearchserverless delete-lifecycle-policy --name my-policy --type retention