問題タブ [flink-cep]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Apache Flink によるステートフルな複雑なイベント処理
同じ識別子を持つ 2 つのイベントに基づいて、定義された時間枠内に 2 つのイベントが発生したかどうかを検出したいと考えています。たとえば、DoorEvent
次のようになります。
以下の例の私のDoorEvent
Java クラスは、同じ構造を持っています。
ID 1 のドアが開いてから 5 分以内に閉じることを検出したいと考えています。この目的のために、Apache flink CEP ライブラリを使用しようとしています。着信ストリームには、たとえば 20 のドアからのすべての開閉メッセージが含まれています。
ステップでドア 1 が閉じているドアであり、他のドアではないことがわかるdoor_open
ように、ドア 1 の状態を開いている状態として保存するにはどうすればよいですか?door_close
java - Flink ウィンドウと折り畳み機能を使用すると、要素が欠落していますか?
ウィンドウとフォールド関数を使用して要素を集約しようとすると、一部の要素が集約されません。Kafka からの要素を消費(value:0, value:1, value:2, value:3)
し、それらを奇数および偶数の値として集計します。
出力は次のとおりです。
10 ~ 13 の数字が欠落しており、これはランダムな数字のセットで発生します。以下のコードで何が欠けているか、またすべての要素を確実に処理するにはどうすればよいか、誰かが提案できますか?