Apache Kafka
データを永続的で再生可能なログとして保存する分散イベントストリーミングプラットフォームで、従来の1対1のキューイングではなく高スループットなリアルタイムパイプライン向けに構築されています。
概要
Apache Kafka は、継続的なイベントストリームを大規模に発行・保存・処理するための分散イベントストリーミングプラットフォームです。従来のメッセージブローカーとは異なり、Kafka は設定可能な保持期間の間、イベントを追記専用の順序付きログに保持するため、複数の独立したコンシューマーが同じメッセージを奪い合うことなく、それぞれ自分のペースで同じイベントストリームを読み――そして読み直す――ことができます。
このログベースのモデルにより、Kafka はイベントソーシング、リアルタイム分析パイプライン、そして共有可能で再生可能な唯一の情報源を中心に多数のプロデューサーとコンシューマーを接続する用途に適しており、パイプライン内でデータを直接処理するための Kafka Streams や ksqlDB も利用できます。Kafka は分散クラスタとして稼働するよう設計されており、非常に高い書き込み・読み取りスループットを維持できるよう構築されています。
Kafka は、永続性とリプレイを必要とするイベント駆動アーキテクチャやリアルタイムデータパイプラインを構築するチームに向いており、カタログ内の RabbitMQ を置き換えるのではなく補完する関係にあります。RabbitMQ のキューとルーティングのモデルは、従来型のバックグラウンドジョブやタスクキューのワークロードによりよく適しています。
- カテゴリ
- バックエンド
- 言語
- Java, Scala
- ライセンス
- Apache-2.0
関連プロジェクト
Apache RocketMQ
Apache-2.0非常に高いスループットで金融グレードのトランザクション信頼性を実現するために構築された、分散型メッセージング・ストリーミングプラットフォームです。
- バックエンド
Pulsar
Apache-2.0従来のキューイングとイベントストリーミングを統合し、マルチテナンシーを標準搭載した、分散型メッセージング・ストリーミングプラットフォームです。
- バックエンド
RabbitMQ
MPL-2.0AMQP、MQTT、STOMP に対応し、信頼性の高いキューとルーティング、Pub/Sub メッセージングでサービスを疎結合にする、成熟した広く導入されているメッセージブローカーです。
- バックエンド
Strimzi
Apache-2.0Apache Kafka クラスタの運用を自動化する Kubernetes Operator で、デプロイ、設定、ライフサイクル管理を扱います。
- バックエンド
誤りを見つけましたか? GitHub で修正を提案する