最終更新日時: 06/12/2026
Apache Kafka は、イベントの連続ストリームを収集、処理、保存するために使用される、人気のオープンソース イベント ストリーミング プラットフォームです。Kafka は一般的にメッセージング ミドルウェアとして使用されますが、スケーラビリティと冗長性も備えているため、分散アプリケーションで 1 日あたり 1 件のイベントから 1 秒あたり数十億件のイベントまで処理できます。従来のメッセージング システムとは異なり、Kafka は耐久性のあるストレージ システムでもあり、再現可能に読み取りと再読み取りができる順序付きログにレコードを保存します。そのため、Kafka は、分析やその他のシステムでデータを再構築または具体化するために使用できるトランザクション データベースへの変更を配布する一般的なシステムとなっています。このパターンは、イベント ソーシングと呼ばれることもあります。
そのため、Kafka は、メッセージング ミドルウェアを介してイベント ドリブン アプリケーションが統合される従来のイベントバス パターンと、データ シンジケーション(または「異種マテリアライズ」)アーキテクチャの両方にとって重要です。これは、低レイテンシで費用対効果に優れています。
Google Cloud Managed Service for Apache Kafka を利用して、ストリーミング インフラストラクチャを自動化し、データから AI へのワークフローを加速させましょう。
Kafka はストリーミング データを取得し、起きたことおよびそのタイミングを正確に記録します。このレコードは、追記専用ログと呼ばれます。レコードに追加はできますが、変更はできないため、不変です。そこから、アプリケーションはログにサブスクライブしてデータにアクセスすることや、ログにパブリッシュしてリアルタイムでデータを追加することが可能です。
「Kafka」の中核は低レイテンシのストレージ システムを指すことが多いですが、ストリーミング プラットフォームには他の重要なコンポーネントも含まれています。1 つ目は Kafka Connect です。これは、多くの重要なシステムに水平方向にスケーラブルなコネクタを接続できる統合システムです。これには、変更データ キャプチャ(CDC)コネクタ、クラスタ間レプリケーション(MirrorMaker)、レイクハウス(Apache Iceberg)、レイク(オブジェクト ストレージ上の Avro または Parquet ファイル)、BigQuery などのデータベースなどのダウンストリーム システムにデータを書き込む機能が含まれます。2 つ目は、Kafka プロジェクトには、クラスタとトピックを操作するための管理コマンドライン クライアントや、データの読み取りと書き込みのための高性能クライアント ライブラリなど、強力なクライアントが付属していることです。
従来、データ処理は定期的なバッチジョブによって行われていました。元データはまず保存されてから、任意の時間間隔で処理されていました。たとえば、小売企業は、1 日の終わりまで待ってから販売データを分析する場合があります。バッチ処理の制限の一つに、リアルタイムでないという点があります。組織やデータ サイエンティストは、ビジネス上の意思決定をタイムリーに行い、リアルタイム AI モデルを強化するために、データが生成されると同時にリアルタイムで分析したいと考えています。そこで登場するのがイベント ストリーミングです。イベント ストリーミングは、イベントの作成時に無限のイベント ストリームを継続的に処理するプロセスを指します。これにより、データの時間的価値を捕捉し、利害に関することが起こった場合に常に対応する push ベースのアプリを作成できます。データ サイエンティストにとっては、リアルタイムの特徴量エンジニアリングを実行し、低レイテンシの予測を提供できることを意味します。
多くの組織はデータ サイエンティストが生成するダウンストリームの分析情報に注目していますが、Apache Kafka の主な実務者はデータ エンジニアです。これらのプロフェッショナルは、企業のアプリケーションとデータベースをつなぐ重要な「データパイプ」とインテグレーションを構築する責任を負っています。
データ エンジニアは Kafka を使用して、技術スタック全体で信頼性の高い接続を確立します。これらの統合は、次のようなさまざまな形式で行われます。
一般的な企業では、データ エンジニアはアプリケーション チームと緊密に連携して、ユーザー イベント、ビジネス トランザクション、データベースの更新が Kafka にエクスポートされるようにします。データ シンジケーションと呼ばれるこのプロセスにより、組織内の複数のユーザーやシステムがこれらのイベントを同時に利用できるようになります。
データ エンジニアは、未加工のアプリケーション ログを構造化された高品質の形式に変換するパイプラインのコードを記述します。この変換は、データ サイエンティストにとって不可欠です。データ サイエンティストは通常、未加工の Kafka ストリームを直接操作するのではなく、データレイク、レイクハウス、データ ウェアハウスなどのクエリ可能な環境に保存された「クリーンな」データを必要とするからです。
データ サイエンスと AI のコンテキストでは、Kafka の価値は主にデータアクセスにあります。アプリケーション ログとデータベースの変更に関する包括的なソースとして機能します。Kafka は高速であることで有名ですが、ほとんどのデータ サイエンス ワークフローでは、低レイテンシの配信よりも、データソースの幅広さと信頼性の方がはるかに重要です。
AI システムは、推論時に高品質のトレーニング データとコンテキストに基づいて実行されます。Kafka は、トレーニング データをさまざまなソースシステム(インタラクション ログからデータベースの変更まで)から収集するトレーニングに不可欠な場合が多くあります。多くの組織では、多くのサービスからのイベントを集約するイベントバスとして、またはアプリケーション ログのステージング場所として使用されています。そのため、トレーニング データセットを生成するための自然な単一のデータソースとなります。Kafka はレコードを順序付けられたシーケンスで保存するため、シーケンスで動作する LLM に特に適しています。
Kafka は、多くのオンライン推論タスクに不可欠です。アプリケーションやエージェントが関連性の高い商品のおすすめ、検索結果、プロンプトを提供できるかどうかは、ユーザーの最新のコンテキストがあるかどうかにかかっています。Kafka は低レイテンシでスケーラブルな通信をサポートしているため、推論システムはユーザー コンテキストを最新のイベントで数十ミリ秒以内に更新できます。たとえば、ユーザーが音楽アプリで最新の曲のおすすめを拒否した場合や、金融アプリケーションで株価が変動した場合、おすすめサービスは、この入力を考慮して、より良い提案を即座に生成できます。
オープンソース エコシステム
Kafka のソースコードは自由に利用でき、幅広いコネクタ、モニタリング ツール、プラグインを提供するグローバル コミュニティの恩恵を受けています。
規模とスピード
Kafka は分散プラットフォームであるため、処理は複数のマシンに分散されます。これにより、ミリ秒未満のレイテンシを維持しながら、大量のデータを処理できるようにスケーリングできます。
高可用性
分散型であるため、個々のマシンが故障しても信頼性が維持され、ミッション クリティカルなアプリケーションに適している
オンプレミスの Kafka クラスタのセットアップは非常に難しく、チームはマシンのプロビジョニング、セキュリティの管理、ルーチンパッチの適用を行う必要があります。マネージド サービスでは、プロバイダが基盤となるインフラストラクチャを処理するため、アプリケーションの構築に集中できます。これは、インフラストラクチャの管理ではなく、モデル開発と分析情報に集中したいデータ サイエンス チームにとって特に有益です。
Kafka は、次の 4 つのコア機能でストリーミング イベントを処理します。