Was sind die wichtigsten Komponenten von Apache Kafka?
What are the main components of Apache Kafka?
Apache Kafka is a distributed system that is composed of several components. The main components of Apache Kafka are:
- Topics: A topic is a category or feed name to which producers can send messages and read by consumers. It’s append-only and immutable. Consumers can use an offset to track read messages.
- Brokers: A Kafka cluster is composed of one or more brokers that manage the storage of messages in topics and serve as intermediaries between producers and consumers.
- Producers: Applications that produce data and publish it to one or more topics in a Kafka cluster. They control how events are assigned to partitions within a topic.
- Consumers: Applications that subscribe to one or more topics and consume published messages. The only metadata retained on a per-consumer basis is the offset or position of that consumer in a topic. This offset is controlled by the consumer.
- Partitions: Kafka uses partitions to split a topic's messages across multiple brokers for scalability and performance. Events with the same event key, such as the same customer identifier or vehicle ID, are written to the same partition, and Kafka guarantees that any consumer of a given topic partition will always read that partition’s events in exactly the same order as they were written.
- Replication: Multiple brokers always have a copy of the data to guarantee high availability and fault tolerance. This replication is performed at the topic partition level.
Apache Kafka ist ein verteiltes System, das sich aus mehreren Komponenten zusammensetzt. Die Hauptkomponenten von Apache Kafka sind:
- Topics: Ein Topic ist eine Kategorie oder ein Feed-Name, an den Produzenten Nachrichten senden und von Konsumenten gelesen werden können. Es kann nur angehängt werden und ist unveränderlich. Verbraucher können einen Offset verwenden, um gelesene Nachrichten zu verfolgen.
- Makler: Ein Kafka-Cluster besteht aus einem oder mehreren Brokern, die die Speicherung von Nachrichten in Topics verwalten und als Vermittler zwischen Produzenten und Konsumenten dienen.
- Erzeuger: Anwendungen, die Daten produzieren und sie in einem oder mehreren Topics eines Kafka-Clusters veröffentlichen. Sie kontrollieren, wie Ereignisse den Partitionen innerhalb eines Topics zugewiesen werden.
- Konsumenten: Anwendungen, die sich bei einem oder mehreren Topics anmelden und die veröffentlichten Nachrichten konsumieren. Die einzigen Metadaten, die pro Konsument gespeichert werden, sind der Offset oder die Position des Konsumenten in einem Topic. Dieser Versatz wird vom Verbraucher kontrolliert.
- Partitionen: Kafka verwendet Partitionen, um die Nachrichten eines Topics aus Gründen der Skalierbarkeit und Leistung auf mehrere Broker aufzuteilen. Ereignisse mit demselben Ereignisschlüssel, wie z. B. dieselbe Kunden- oder Fahrzeugkennung, werden in dieselbe Partition geschrieben, und Kafka garantiert, dass jeder Verbraucher einer bestimmten Topic-Partition die Ereignisse dieser Partition immer in genau der gleichen Reihenfolge liest, in der sie geschrieben wurden.
- Replikation: Mehrere Broker haben immer eine Kopie der Daten, um hohe Verfügbarkeit und Fehlertoleranz zu gewährleisten. Diese Replikation erfolgt auf der Ebene der Topic-Partition.
general_qa
de