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.
Indexeigenschaft: ablaufen AfterSeconds
Unterstützte Indextypen
| Indextyp | 3.6 | 4,0 | 5.0 | 8.0 | Elastischer Cluster |
|---|---|---|---|---|---|
| einzelnes Feld | Ja | Ja | Ja | Ja | Ja |
| mehrere Schlüssel | Ja | Ja | Ja | Ja | Ja |
Verwenden Sie die AfterSeconds Ablaufoption, um einen TTL-Index (Time to Live) zu erstellen. TTL-Indizes ermöglichen es Ihnen, Dokumente auf der Grundlage ihres Alters zu löschen, basierend auf der Timeout-Bedingung für jedes Dokument. Wenn ein Dokument das angegebene TTL-Alter erreicht, wird es aus der Sammlung gelöscht.
Bewährte Methoden für TTL-Löschungen finden Sie unter. TTL- und Zeitreihen-Workloads
Beispiele
Die folgenden Beispiele zeigen, wie TTL-Indizes für das folgende Beispieldokument erstellt werden:
{ "productId": "PROD133726", "sku": "SKU24224", "name": "Basic Printer", "manufacturer": "The Manufacturer", "tags": [ "printer", "basic", "electronics", "business" ], "barcodes": [ "542364671", "886330670", "437445606" ], "reviews": [ { "review_date": ISODate('2024-01-19T21:37:10.585Z'), "rating": 4, "comment": "Good product" }, { "review_date": ISODate('2024-03-15T14:22:33.120Z'), "rating": 5, "comment": "Excellent printer" }, { "review_date": ISODate('2024-06-08T09:45:18.890Z'), "rating": 3, "comment": "Average quality" } ], "material": "Polycarbonate", "color": "Space Gray", "supplier": { "supplierId": "SUP4", "location": { "type": "Point", "coordinates": [ -71.0589, 42.3601 ] } }, "productEmbedding": [ -0.019320633663838058, 0.019672111388113596 ], "lastUpdated": ISODate('2025-10-20T21:37:10.585Z') }
einzelnes Feld
Erstellen Sie einen TTL-Index auf LastUpdated, um Dokumente zu löschen, die seit 90 Tagen nicht aktualisiert wurden:
db.collection.createIndex( { "lastUpdated": 1 }, { "name": "lastUpdated_ttl", "expireAfterSeconds": 7776000 } )
mehrere Schlüssel
Erstellen Sie einen TTL-Index auf reviews.review_date, um Dokumente zu löschen, für die im letzten Jahr keine Bewertungen eingegangen sind:
db.collection.createIndex( { "reviews.review_date": 1 }, { "name": "reviews_review_date_ttl", "expireAfterSeconds": 31536000 } )
Beachten Sie, dass, wenn sich der TTL-Index in einem Array-Feld befindet, alle Elemente im Array überprüft werden. Wenn ein Zeitstempel im Array die Timeout-Bedingung erfüllt, wird das Dokument gelöscht.