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