カフカ建築

ツイート

カフカが何であるかわからない場合は、カフカとは何かを参照してください。.

Kafka Architecture

Kafkaは、レコード、トピック、コンシューマー、プロデューサー、ブローカー、ログ、パーティション、クラスターで構成されています。 レコードには、キー(オプション)、値、およびタイムスタンプを含めることができます。 カフカの記録は不変です。 カフカの話題は記録の流れです("/orders", "/user-signups"). トピックはフィード名と考えることができます。 トピックには、ディスク上のトピックのストレージであるログがあります。 トピックログは、パーティションとセグメントに分割されます。 Kafka Producer APIは、データレコードのストリームを生成するために使用されます。 Kafka Consumer APIは、Kafkaからのレコードのストリームを消費するために使用されます。 ブローカーとは、Kafkaクラスター内で実行されるKafkaサーバーのことです。 カフカ-ブローカーはクラスターを形成する。 Kafkaクラスターは、多くのサーバー上の多くのKafkaブローカーで構成されています。 ブローカーは、時には論理システムの多くを参照するか、全体としてカフカとして。

Cloudurableは、KAFKAトレーニング、Kafkaコンサルティング、KAFKAサポートを提供し、AWSでKafkaクラスターを設定するのに役立ちます。

カフカ建築: トピック、生産者と消費者

カフカ建築-トピック、生産者と消費者の図

KafkaはZooKeeperを使用してクラスターを管理します。 ZooKeeperは、ブローカー/クラスタートポロジを調整するために使用されます。 ZooKeeperは、設定情報の一貫性のあるファイルシステムです。 ZooKeeperは、ブローカーのトピックのパーティションのリーダーのためのリーダーシップ選挙に使用されます。

カフカ建築: コアカフカ

カフカ建築-コアカフカ図

KafkaはZooKeeperを必要とします

KafkaはZookeeperを使用してKafkaブローカーとトピックパーティションのペアのリーダーシップ選挙を行います。 KafkaはZookeeperを使用して、クラスターを形成するKafkaブローカーのサービス検出を管理します。 Zookeeperはトポロジの変更をKafkaに送信するため、クラスタ内の各ノードは、新しいブローカーが参加したとき、ブローカーが死亡したとき、トピックが削除されたとき、ト Zookeeperは、Kafkaクラスター設定の同期ビューを提供します。

カフカ生産者、消費者、トピックの詳細

カフカ生産者はトピックに書き込みます。 カフカの消費者はトピックから読みます。 トピックは、ディスク上のデータ構造であるログに関連付けられています。 Kafkaは、プロデューサーからのレコードをトピックログの最後に追加します。 トピックログは、複数のkafkaクラスターノードに分散できる複数のファイルに分散される多くのパーティションで構成されます。 消費者はカフカのトピックから自分のケイデンスで読み、トピックログで自分がどこにいるか(オフセット)を選ぶことができます。 各消費者グループは、読書を中断した場所からオフセットを追跡します。 Kafkaは、水平スケーラビリティを備えた高性能のために、クラスター内の異なるノードにトピックログパーティションを配布します。 パーティションを拡散すると、データをすばやく書き込むことができます。 トピックログパーティションは、トピックログへの読み取りと書き込みをシャードするKafkaの方法です。 また、パーティションは、消費者グループ内の複数の消費者が同時に作業するために必要です。 Kafkaはパーティションを多くのノードにレプリケートしてフェイルオーバーを提供します。

Kafka Architecture:Topic Partition,Consumer group,Offset and Producers

Kafka Architecture: トピック分割、消費者グループ、オフセットと生産者の図

Kafka Scale and Speed

kafka scale and Speed

kafka scale and Speed

kafka scale and Speed

最初にKafkaは高速ですが、kafkaはファイルシステムに順番に書き込みますが、これは高速です。 最新の高速ドライブでは、Kafkaは1秒に最大700MB以上のデータを簡単に書き込むことができます。 Kafkaは、トピックログをパーティションにシャーディングすることにより、書き込みと読み取りをスケールします。 Recall topicsログは複数のパーティションに分割でき、複数の異なるサーバーに保存でき、それらのサーバーは複数のディスクを使用できます。複数のプロデューサは、同じトピックの異なるパーティションに書き込むことができます。 複数のコンシューマー-グループの複数のコンシューマーは、異なるパーティションから効率的に読み取ることができます。

Kafka Brokers

Kafkaクラスターは複数のKafka Brokersで構成されています。 各Kafkaブローカーには一意のID(番号)があります。カフカ-ブローカには、トピック-ログ-パーティションが含まれています。 1つのブローカーに接続すると、クライアントがKafkaクラスター全体にブートストラップされます。フェールオーバーの場合は、少なくとも三つから五つのブローカーで開始します。 Kafkaクラスターは、必要に応じて10、100、または1,000個のブローカーをクラスターに含めることができます。

Kafkaクラスター、フェールオーバー、Isr

kafkaはフェールオーバーをサポートするためのレプリケーションをサポートしています。 KafkaはZooKeepertoを使用してkafkaブローカーをクラスターに形成し、Kafkaクラスター内の各ノードはKafkaブローカーと呼ばれることを思い出してください。トピックパーティションは、フェールオーバーのために複数のノード間でレプリケートできます。 トピック1(2、または3)より大きい複製因子を有するべきである。 たとえば、AWSで実行している場合は、単一のavailabilityzoneの停止を回避できるようにする必要があります。1つのKafka Brokerがダウンした場合、ISR(同期中レプリカ)であるKafka Brokerはデータを提供できます。

KafkaフェイルオーバーとKafkaディザスタリカバリ

kafkaはフェイルオーバーにレプリケーションを使用します。 Kafkaトピックログパーティションの複製ラックまたはAWSアベイラビリティーゾーン(AZ)の障害を許容します。 単一のAZ障害を存続させるには、少なくとも3のreplicationfactorが必要です。 災害復旧には、kafka coreに同梱されているKafkaユーティリティであるMirror Makerを使用する必要があります。 Mirror Makerreplicates kafkaクラスターを別のデータセンターまたはAWSリージョンに複製します。彼らは、ミラーメーカーがミラーリングを行うことを、レプリケーションと混同しないよ

Kafkaクラスター自体をどのように設定する必要があるかについては、厳密かつ迅速なルールはありません。たとえば、クラスタ全体を単一のAZにセットアップして、より高いスループットを得るために拡張ネットワークおよび配置グループを使用し、次にミラーメーカーを使用して、ホットスタンバイと同じリージョン内の別のAZにクラスタをミラー化することができます。

Kafka Architecture:Kafka Zookeeper Coordination

Kafka Architecture-Kafka Zookeeper Coordinationダイアグラム

Kafka Topics Architecture

Kafka Architectureの続きを読んでみてください。 次の記事では、KafkaのトピックArchitectureについて説明しますフェールオーバーと並列処理にパーティションを使用する方法について説明します。

  • カフカとは何ですか?
  • Kafka Architecture
  • Kafka Topic Architecture
  • Kafka Consumer Architecture
  • Kafka Producer Architecture
  • Kafka Architecture and low level design
  • Kafka And Schema Registry
  • Kafka and Avro
  • Kafka Ecosystem
  • Kafka Vs.Jms
  • Kafka Vs Kinesis
  • Kafkaチュートリアル: コマンドラインからのKafkaの使用
  • Kafkaチュートリアル:Kafkaブローカフェイルオーバーとコンシューマーフェイルオーバー
  • Kafkaチュートリアル:JavaでKafkaプロデューサの例を書く
  • Kafkaチュートリアル:JavaでKafkaコンシューマの例を書く
  • Kafkaアーキテクチャー:ログ圧縮
  • Kafkaアーキテクチャー:ログ圧縮
  • カフカ建築:低レベルのpdfスライド

クラウドについて

この記事を楽しんでいただければ幸いです。 フィードバックを提供してください。Cloudurableは、KAFKAトレーニング、Kafkaコンサルティング、KAFKAサポートを提供し、AWSでKafkaクラスターを設定するのに役立ちます。

新しいゴランコースをチェックしてください。 私達は教官ledである現地の行くLangの訓練を提供します。

コメントを残す

メールアドレスが公開されることはありません。