ApacheKafka-基本
Kafkaに深く入り込む前に、トピック、ブローカー、プロデューサー、コンシューマーなどの主要な用語を知っておく必要があります。次の図は主な用語を示し、表は図のコンポーネントを詳細に説明しています。

上の図では、トピックは3つのパーティションに構成されています。パーティション1には2つのオフセット係数0と1があります。パーティション2には4つのオフセット係数0、1、2、および3があります。パーティション3には1つのオフセット係数0があります。レプリカのIDは、レプリカをホストするサーバーのIDと同じです。
トピックのレプリケーション係数が3に設定されている場合、Kafkaは各パーティションの3つの同一のレプリカを作成し、それらをクラスターに配置して、すべての操作で使用できるようにします。クラスター内の負荷を分散するために、各ブローカーはそれらのパーティションの1つ以上を保管します。複数のプロデューサーとコンシューマーは、同時にメッセージを公開および取得できます。
S.No | コンポーネントと説明 |
---|---|
1 | Topics 特定のカテゴリに属するメッセージのストリームは、トピックと呼ばれます。データはトピックに保存されます。 トピックはパーティションに分割されます。Kafkaは、トピックごとに、最小で1つのパーティションを保持します。このような各パーティションには、不変の順序でメッセージが含まれています。パーティションは、同じサイズのセグメントファイルのセットとして実装されます。 |
2 | Partition トピックには多くのパーティションがある可能性があるため、任意の量のデータを処理できます。 |
3 |
Partition offset パーティション化された各メッセージには、 |
4 |
Replicas of partition レプリカは、パーティションの |
5 |
Brokers
|
6 |
Kafka Cluster Kafkaが複数のブローカーを持っていることをKafkaクラスターと呼びます。Kafkaクラスターは、ダウンタイムなしで拡張できます。これらのクラスターは、メッセージデータの永続性とレプリケーションを管理するために使用されます。 |
7 |
Producers プロデューサーは、1つ以上のKafkaトピックへのメッセージの発行者です。プロデューサーはKafkaブローカーにデータを送信します。プロデューサーがブローカーにメッセージを公開するたびに、ブローカーはメッセージを最後のセグメントファイルに追加するだけです。実際には、メッセージはパーティションに追加されます。プロデューサーは、選択したパーティションにメッセージを送信することもできます。 |
8 |
Consumers 消費者はブローカーからデータを読み取ります。コンシューマーは、1つ以上のトピックをサブスクライブし、ブローカーからデータをプルすることによって公開されたメッセージを消費します。 |
9 |
Leader
|
10 |
Follower リーダーの指示に従うノードは、フォロワーと呼ばれます。リーダーが失敗した場合、フォロワーの1人が自動的に新しいリーダーになります。フォロワーは通常のコンシューマーとして機能し、メッセージをプルして、独自のデータストアを更新します。 |