So werden Protokollsegmente für ein Amazon MSK-Thema in den mehrstufigen Speicher kopiert - Amazon Managed Streaming für Apache Kafka

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.

So werden Protokollsegmente für ein Amazon MSK-Thema in den mehrstufigen Speicher kopiert

Wenn Sie gestaffelte Speicherung für ein neues oder vorhandenes Thema aktivieren, kopiert Apache Kafka geschlossene Protokollsegmente vom Primärspeicher in den gestaffelten Speicher.

  • Apache Kafka kopiert nur geschlossene Protokollsegmente. Es kopiert alle Nachrichten innerhalb des Protokollsegments in einen gestaffelten Speicher.

  • Aktive Segmente kommen nicht für gestaffelte Speicherung in Frage. Die Größe des Protokollsegments (segment.bytes) oder die Segment-Rollzeit (segment.ms) steuern die Geschwindigkeit, mit der Segmente geschlossen werden, und die Geschwindigkeit, mit der Apache Kafka sie anschließend in den gestaffelten Speicher kopiert.

Die Aufbewahrungseinstellungen für ein Thema mit aktivierter gestaffelter Speicherung unterscheiden sich von den Einstellungen für ein Thema ohne aktivierte gestaffelte Speicherung. Die folgenden Regeln steuern die Aufbewahrung von Nachrichten in Themen, für die gestaffelte Speicherung aktiviert ist:

  • Sie definieren die Aufbewahrung in Apache Kafka mit zwei Einstellungen: log.retention.ms (Zeit) und log.retention.bytes (Größe). Diese Einstellungen bestimmen die Gesamtdauer und Größe der Daten, die Apache Kafka im Cluster aufbewahrt. Unabhängig davon, ob Sie den gestaffelten Speichermodus aktivieren oder nicht, legen Sie diese Konfigurationen auf Cluster-Ebene fest. Sie können die Einstellungen auf Themenebene mit Themenkonfigurationen überschreiben.

  • Wenn Sie die gestaffelte Speicherung aktivieren, können Sie zusätzlich angeben, wie lange die primäre Hochleistungs-Speicherebene Daten speichert. Wenn für ein Thema beispielsweise die Einstellung für die gesamte Aufbewahrung (log.retention.ms) von 7 Tagen und die lokale Aufbewahrung (local.retention.ms) für 12 Stunden festgelegt ist, speichert der primäre Speicher des Clusters Daten nur für die ersten 12 Stunden. Bei der kostengünstigen Speicherstufe werden die Daten für die gesamten 7 Tage aufbewahrt.

  • Die üblichen Aufbewahrungseinstellungen gelten für das gesamte Protokoll. Dazu gehören auch die gestaffelten und die primären Komponenten.

  • Die Einstellungen local.retention.ms oder local.retention.bytes steuern die Aufbewahrung von Nachrichten im Primärspeicher. Apache Kafka kopiert geschlossene Protokollsegmente in den mehrstufigen Speicher, sobald sie geschlossen werden (basierend auf segment.bytes oder segment.ms), unabhängig von den lokalen Aufbewahrungseinstellungen. Nachdem Segmente in den mehrstufigen Speicher kopiert wurden, verbleiben sie im Primärspeicher, bis die Schwellenwerte local.retention.ms oder local.retention.bytes erreicht sind. Zu diesem Zeitpunkt werden die Daten aus dem Primärspeicher gelöscht, sind aber weiterhin im mehrstufigen Speicher verfügbar. Auf diese Weise können Sie aktuelle Daten auf einem Hochleistungs-Primärspeicher speichern, um schnell darauf zugreifen zu können, während ältere Daten über den kostengünstigen mehrstufigen Speicher bereitgestellt werden.

  • Wenn Apache Kafka eine Nachricht in einem Protokollsegment in einen gestaffelten Speicher kopiert, entfernt es die Nachricht auf der Grundlage der Einstellungen retention.ms oder retention.bytes aus dem Cluster.

Beispiel für ein mehrstufiges Speicherszenario von Amazon MSK

Dieses Szenario veranschaulicht, wie sich ein vorhandenes Thema, das Nachrichten im Primärspeicher enthält, verhält, wenn gestaffelte Speicherung aktiviert ist. Sie aktivieren die gestaffelte Speicherung zu diesem Thema, indem Sie remote.storage.enable auf true setzen. In diesem Beispiel ist retention.ms auf 5 Tage und local.retention.ms auf 2 Tage festgelegt. Im Folgenden ist die Reihenfolge der Ereignisse dargestellt, wenn ein Segment abläuft.

Zeitpunkt T0 - Bevor Sie die gestaffelte Speicherung aktivieren.

Bevor Sie die gestaffelte Speicherung für dieses Thema aktivieren, gibt es zwei Protokollsegmente. Eines der Segmente ist für eine bestehende Themenpartition 0 aktiv.

Zeitpunkt T0 - Bevor Sie die gestaffelte Speicherung aktivieren.
Zeitpunkt T1 (< 2 Tage) - gestaffelte Speicherung aktiviert. Segment 0 wurde in den gestaffelten Speicher kopiert.

Nachdem Sie Tiered Storage für dieses Thema aktiviert haben, kopiert Apache Kafka das geschlossene Protokollsegment 0 in den mehrstufigen Speicher, sobald es geschlossen wird. Das Segment wird auf der Grundlage der Einstellungen von segment.bytes oder segment.ms geschlossen, nicht auf der Grundlage der Aufbewahrungseinstellungen. Apache Kafka behält auch eine Kopie im Primärspeicher. Das aktive Segment 1 kann noch nicht in den mehrstufigen Speicher kopiert werden, da es immer noch aktiv ist und nicht geschlossen wurde. In dieser Zeitleiste wendet Amazon MSK noch keine der Aufbewahrungseinstellungen für Nachrichten in Segment 0 und Segment 1 an. (local.retention). bytes/ms, retention.ms/bytes)

Zeitpunkt T1 (< 2 Tage) - gestaffelte Speicherung aktiviert. Segment 0 wurde in den gestaffelten Speicher kopiert.
Zeitpunkt T2 – Die lokale Aufbewahrung ist wirksam.

Nach 2 Tagen ist der lokale Aufbewahrungsschwellenwert für Segment 0 erreicht. Dies wird durch die Einstellung von local.retention.ms auf 2 Tage festgelegt. Segment 0 wurde jetzt aus dem Primärspeicher gelöscht, ist aber weiterhin im mehrstufigen Speicher verfügbar. Beachten Sie, dass Segment 0 bereits zum Zeitpunkt T1, als es geschlossen wurde, in den mehrstufigen Speicher kopiert wurde, und nicht zum Zeitpunkt T2, als die lokale Aufbewahrung abgelaufen war. Das aktive Segment 1 kann noch nicht gelöscht oder in den mehrstufigen Speicher kopiert werden, da es immer noch aktiv ist.

Zeitpunkt T2 - Die lokale Aufbewahrung ist wirksam.
Zeitpunkt T3 - Die gesamte Aufbewahrung ist wirksam.

Nach 5 Tagen werden die Aufbewahrungseinstellungen wirksam, und Kafka löscht das Protokollsegment 0 und die zugehörigen Nachrichten aus dem gestaffelten Speicher. Segment 1 ist noch nicht ablauffähig und kann auch nicht in den gestaffelten Speicher kopiert werden, da es noch aktiv ist. Segment 1 ist noch nicht geschlossen und kommt daher nicht für Segment-Rolling in Frage.

Zeitpunkt T3 - Die gesamte Aufbewahrung ist wirksam.