0

Ich habe mehrere Fragen zu Kafka. Wenn jemand mir helfen kann, indem ich auf einen von ihnen antworte, werde ich sehr dankbar sein.Kafka Cluster - Produzent

Vielen Dank im Voraus :)

Q1) Ich weiß, dass Partitionen über Kafka Broker aufgeteilt sind. Aber die Aufteilung basiert auf was? Zum Beispiel, wenn ich 3 Broker und 6 Partitionen habe, wie kann man sicherstellen, dass jeder Broker 2 Partitionen hat? Wie wird diese Spaltung derzeit in Kafka gemacht?

Q2) Wenn ein Hersteller eine neue Nachricht senden, welche ID das Standardformat der Nachricht? Avro-Format? Wie kann ich dieses Standardformat in ein anderes Format ändern, das zum Beispiel besser geeignet ist?

Q3) Ich weiß, dass ich die folgende Konfiguration ändern muss, um die maximale Größe einer Datei (Protokollsegment) innerhalb einer Partition zu konfigurieren: log.segment.bytes (1G standardmäßig). Aber welchen Konfigurationsparameter muss ich ändern, um die maximale Größe eines Verzeichnisses (d. H. Einer Partition) zu erhöhen/verringern?

Q4) Wenn eine Partition betrachtet, als der Anführer tot ist, wird einer der Follower-Partition die Führung übernehmen. Was ist der Schritt, um den neuen Leiter zu wählen? (d. h.) Wie wird die Wahl eines neuen Führers getroffen?

Q5) Was ist der Konfigurationsparameter, mit dem ich die Zeit zwischen 2 persist auf der Festplatte ändern kann? (persist Daten auf Festplatte - sequenzielles Schreiben)

Q6) Wie die Nachricht von der Festplatte gesendet wird Kopf eines Kafka-Brokers zu einem Kafka-Verbraucher? Was ist die Interaktion zwischen Kafka Broker und Zookeeper? Ist es Zookeeper, der die Nachricht an den Verbraucher oder Kafka Broker sendet?

Vielen Dank im Voraus,

+0

Es wäre hilfreich, wenn Sie diese Frage aufteilen könnten, damit sie auf Stackoverflow einzeln beantwortet werden können. –

Antwort

1

Q1: How Partitions are split into Kafka Broker?

Q2 siehe: Broker zum Nachrichtenformat Agnostiker ist - sie Nachrichten, die eine Ebene Bytefeldgruppen behandeln. Daher kann es jedes Nachrichtenformat verarbeiten, das Sie haben möchten. Das Format wird in Ihrem eigenen Code festgelegt - wählen Sie, was Sie wollen, und stellen Sie dem Hersteller/Verbraucher einfach den entsprechenden de/Serializer zur Verfügung.

Q3: Themen und damit Partitionen werden entweder abgeschnitten, nachdem eine konfigurierbare Aufbewahrungszeit verstrichen ist (log.retention.ms) oder wenn sie über log.retention.bytes hinaus wachsen. Darüber hinaus können Themen kompaktiert werden, um ein unendliches Wachstum zu vermeiden. (cf. log.cleanup.policy)

Q4: Für Führer Wahl Apache Zookeeper wird verwendet.

Q5: Verstehen Sie die Frage nicht.

Q6: ZK wird nur zur Pflege von Metadaten verwendet (welche Themen zum Beispiel existieren). ZK ist an keiner tatsächlichen Datenübertragung der Client-Broker-Kommunikation beteiligt. Kafka verwendet ein eigenes Netzwerkprotokoll. Weitere Informationen finden Sie im Kafka Wiki: https://cwiki.apache.org/confluence/display/KAFKA/Index

Verwandte Themen