Glossar   /   Nachrichtenverarbeitung

Partitionierung

Partitionierung verteilt Daten oder Nachrichten auf mehrere getrennte Bereiche, die parallel bearbeitet werden können.

Auch bekannt als: Partitioning

Was bedeutet Partitionierung?

Ein Schlüssel bestimmt beispielsweise, welcher Teilstrom die Ereignisse eines bestimmten Auftrags erhält. Damit können verschiedene Aufträge gleichzeitig verarbeitet werden, während zusammengehörige Ereignisse in einem Bereich bleiben.

Die Wahl des Schlüssels beeinflusst Last und Reihenfolge. Wenn sehr viele Vorgänge in nur einem Bereich landen, entsteht dort ein Engpass. Eine Reihenfolge pro Partition ist keine globale Reihenfolge aller Nachrichten.

So sieht das in der Praxis aus

Beispiel: Alle Ereignisse desselben Auftrags landen in derselben Partition und werden dort geordnet verarbeitet.

Häufige Fragen

Wie wählt man einen passenden Partitionsschlüssel?

Nach den Anforderungen an Zusammengehörigkeit, Reihenfolge und Lastverteilung. Beispielsweise können alle Ereignisse eines Auftrags denselben Schlüssel erhalten.

Warum ist eine Partition deutlich stärker ausgelastet?

Möglicherweise kommen bestimmte Schlüssel besonders häufig vor. Eine ungleichmäßige Verteilung kann die Leistung begrenzen, obwohl andere Bereiche noch Kapazität haben.

Erhöht eine größere Partitionszahl immer die Geschwindigkeit?

Nein. Sie kann mehr parallele Arbeit ermöglichen, bringt aber Verwaltungsaufwand mit sich. Auch Empfänger, Zielsysteme und notwendige Reihenfolgen begrenzen den Nutzen.

Das könnte Sie auch interessieren

Passend zum Thema

API-Entwicklung Agentur Nachrichtenbasierte Zusammenarbeit und Datenflüsse zwischen Anwendungen planen.

Quellen und weiterführende Informationen

Apache Kafka: Design and Message Delivery Semantics
← Zurück zu allen Glossarbegriffen

Ereignisse und Reaktionen abstimmen

Mehrere Anwendungen sollen auf einen Vorgang reagieren? Klären Sie Nachrichteninhalt, Zuständigkeiten und den Umgang mit verspäteten oder mehrfachen Meldungen.

Kontakt aufnehmen