Verwenden von DynamoDB Time to Live (TTL) - Amazon DynamoDB

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 DynamoDB Time to Live (TTL)

Wenn Sie TTL verwenden, wird die meiste harte Arbeit hinter den Kulissen von DynamoDB in Ihrem Namen erledigt. Sie sollten jedoch einige Überlegungen beachten, um eine reibungslose Implementierung zu gewährleisten.

Formatieren des TTL-Attributs eines Elements

Wenn Sie TTL für eine Tabelle aktivieren, müssen Sie bei DynamoDB einen bestimmten Attributnamen angeben, nach dem der Service sucht, wenn bestimmt wird, ob der Ablauf eines Elements veranlasst werden soll. Darüber hinaus wird durch weitere Anforderungen sichergestellt, dass die Hintergrund-TTL-Prozesse den Wert des TTL-Attributs verwenden. Wenn für ein Element das Veranlassen des Ablaufs über TTL zulässig sein soll:

  • Das Element muss das Attribut enthalten, das bei der Aktivierung von TTL für die Tabelle angegeben wurde. Wenn Sie für eine Tabelle beispielsweise den Attributnamen expdate als TTL-Attribut angeben, für ein Element aber kein Attribut mit diesem Namen vorhanden ist, ignorieren die TTL-Prozesse das Element.

  • Der Wert des TTL-Attributs muss vom Datentyp Number sein. Wenn Sie für eine Tabelle beispielsweise den Attributnamen expdate als TTL-Attribut angeben, das Attribut für ein Element jedoch vom Datentyp String ist, ignorieren die TTL-Prozesse das Element.

  • Der Wert des TTL-Attributs muss ein Zeitstempel im Unix-Zeitformat in Sekunden sein. Wenn Sie ein anderes Format verwenden, ignorieren die TTL-Prozesse das Element. Wenn Sie beispielsweise den Wert des Attributs auf 1645119622 festlegen, also Donnerstag, 17. Februar 2022, um 17:40:22 Uhr (GMT), läuft das Element nach diesem Zeitpunkt ab. Ein visuelles Webformular zum Testen von Werten und zum Anzeigen von Codebeispielen für verschiedene Sprachen für das Epochzeitformat finden Sie unter Epoch Converter.

  • Der TTL-Attributwert muss ein Datums-Zeitstempel mit einem Ablaufdatum von nicht mehr als fünf Jahren in der Vergangenheit sein. Wenn Sie beispielsweise als Wert des Attributs 1171734022 festlegen, entspricht dies dem 17. Februar 2007 um 17:40:22 Uhr (GMT) und älter als fünf Jahre. Das Ergebnis ist, dass die TTL-Prozesse dieses Element nicht ablaufen.

Nutzungshinweise

Wenn Sie TTL verwenden, beachten Sie Folgendes:

  • Beim Aktivieren, Deaktivieren oder Ändern von TTL-Einstellungen für eine Tabelle kann es ungefähr eine Stunde dauern, bis die Einstellungen weitergegeben werden und weitere TTL-bezogene Aktionen ausgeführt werden können.

  • Sie können TTL nicht neu konfigurieren, um nach einem anderen Attribut zu suchen. Sie müssen TTL deaktivieren und dann TTL mit dem neuen Attribut wieder aktivieren.

  • Wenn SieAWS CloudFormationWenn Sie eine DynamoDB -Tabelle erstellen, können Sie TTL aktivieren. Weitere Informationen finden Sie im AWS CloudFormation-Benutzerhandbuch.

  • Sie könnenAWS Identity and Access Management(IAM) -Richtlinien verwenden, um nicht autorisierte Änderungen an dem TTL-Attribut für ein Element oder die Konfiguration von TTL zu verhindern. Wenn Sie nur Zugriff auf bestimmte Aktionen in Ihren vorhandenen IAM-Richtlinien erlauben, stellen Sie sicher, dass Ihre Richtlinien aktualisiert werden, um dynamodb:UpdateTimeToLive für Rollen zu erlauben, die TTL in Tabellen aktivieren oder deaktivieren müssen. Weitere Informationen finden Sie unter Verwenden von identitätsbasierten Richtlinien (IAM-Richtlinien) für Amazon DynamoDB.

  • Überlegen Sie, ob Sie eine Nachbearbeitung gelöschter Elemente über Amazon DynamoDB Streams durchführen müssen, z. B. die Archivierung von Elementen in einem Amazon S3 Data Lake. Die Datenstromdatensätze von TTL-Löschvorgängen werden als Systemlöschvorgänge und als normale Löschvorgänge markiert. Sie können mithilfe einerAWS LambdaFunktion. Weitere Informationen zu den Ergänzungen zu den Streams-Datensätzen finden Sie unterAmazon DynamoDB Streams und Time to Live.

  • Wenn die Datenwiederherstellung ein Anliegen ist, empfehlen wir Ihnen Ihre Tabellen zu sichern.

Fehlerbehebung für TTL

Wenn DynamoDB TTL nicht funktioniert, überprüfen Sie Folgendes:

  • Vergewissern Sie sich, dass Sie TTL für die Tabelle aktiviert haben und als Name des Attributs, das für TTL ausgewählt wurde, der Name festgelegt ist, den Ihr Code in Elemente schreibt. Sie können diese Informationen auf der Registerkarte Übersicht einer Tabelle in der DynamoDB-Konsole bestätigen.

  • Sehen Sie sich die Amazon CloudWatch Metriken auf der-MetrikenKlicken Sie auf der DynamoDB Konsole, um sicherzustellen, dass TTL Elemente Ihren Erwartungen gemäß löscht.

  • Vergewissern Sie sich, dass der TTL-Attributwert ordnungsgemäß formatiert ist. Weitere Informationen finden Sie unter Formatieren des TTL-Attributs eines Elements.