2016-05-27 4 views
1

私が知っているように、嵐はカフカの話題のために全発注者を保証するものではありませんが、多くの文書では、嵐が消費を保証し/パーティションレベルで注文を維持するメッセージを処理しています。storm-kafka - kafkaパーティションレベルの順序を維持している嵐のトポロジのアプリケーションまたはgitのリンク?

カフカのトピックのメッセージを消費/処理するサンプルのストームトポロジを探しています。カフカパーティションレベルでのメッセージの順序を維持しています。パーティションレベルの注文保証のみ。

サンプルアプリケーションが分かっている場合は、お知らせください。どうもありがとう!!

答えて

0

ここでApache Stormの例を見ましたか? https://github.com/apache/storm/tree/master/external/storm-kafka

標準的な例を検討し、必要に応じて調整することをおすすめします。また、KafkaSpuoutのスキーマを定義する際に、タプルの一部としてキーを出力し、後でFieldG ルーピングを使用することもできます。

+0

お返事ありがとうございます@YaRiK フィールドのグループ化が正しく行われています。しかし、なぜボルトが混乱した順序で蓄積するレコードを処理しているのかわかりません... !! ストームボルトは実際に受信したのと同じ順序でレコードを処理しませんか? – Raja

+0

トライデントカフカのスパウトは私を助けますか? – Raja

+0

タスクごとにボルト/スポットが1つしかない場合にのみ、受け取った順に処理する必要があります。この場合、「シングルスレッド」アプリケーションとして動作します。私がシーケンスを実行するために知っている唯一の他のオプションは、FieldGroupingです。最初に、すべての並列処理のヒントを1に設定して、トポロジが必要な方法で動作することを証明してください。次にカフカをチェックして、シーケンスが必要なメッセージが同じパーティションにあることを確認します。プロデューサコードで一貫性のあるキーを使用したり、Partitioner – YaRiK

関連する問題