2017-10-30 16 views
1

n00b質問のビット。
Messaging and Events用にApache Igniteを使用する場合は、まだKafkaを使用する必要がありますか?
カフカが私にIgniteを与えるのは、基本的に何か(もしあれば)?
あらかじめありがとうApache IgniteとApache Kafkaの比較

答えて

2

Kafkaは、スケーラビリティ、ディスクベース、パブリッシュサブスクライブ指向であり、flinkやSparkなどのほとんどのimportantsストリーム処理フレームワークとのネイティブで信頼性の高い統合を備えています。

しかし、Igniteは、マイクロサービス、スパーク・ジョブなどの高速アプリケーションを作成するための補完として使用するメモリ・グリッドです。他のソフトウェアの中では、キャッシュ、索引付け、sql-on-memory、key-valueまたはdistributedデータベース。 Igniteには複数の用途のためのAPIがありますが、Apache Kafkaと競合したくないと思います。

これらは異なっていますが、あなたのケースでは、イベントを公開して複数の消費者によって消費したい場合は、おそらくカフカが適切です。

+0

こんにちは。早速のお返事ありがとうございます。フォローアップのカップル(私の理解のために):1. Ignite 2.1では、カフカ機能と同様の永続的なディスクベースが導入されましたか? 2. IgniteにはSpark相当のMLコンポーネントもありますか? 3. Igniteの分散特性は、少なくとも3つのノードで高い拡張性と信頼性を実現します。私はKafka + Igniteを使用してうれしいですが、実際にIgniteを使用するだけで私の制限がどこに当たったのか疑問に思っています。 – sigmazen

+2

Igniteはメモリとディスクの両方でイベントとデータの一貫性に優れています。しかし、それはカフカのように保証されたメッセージングを提供しません。私は、あなたがメッセージ配送の保証を求めているなら、あなたはIgniteでKafkaを使うべきだということです。 IgniteはすでにKafkaStreamerを使用してKafkaとの統合を提供しています。https://apacheignite-mix.readme.io/docs/kafka-streamer – Dmitriy

+0

追加の洞察力のために@Dmitriyに感謝します。ですから、私のクライアント(つまり、メッセージが冪等であり、再送信できる)を介して保証を処理しているなら、Igniteのみを使用して少し単純化することができます。そうでなければKafkaを含めます。驚くばかり。ありがとうございました – sigmazen

関連する問題