一:ウォーターマーク
エッセンス:タイムスタンプ
役割:順不同でイベントを処理するための
該当するシーン:ウィンドウ操作時間ベースのイベントを行うには
発生頻度:デフォルトは透かしのデータに送信されますが、setAutoWatermarkInterval透かし間隔発行されたパラメータを調整することができる、いくつかのパフォーマンスの改善があるでしょう。
より複雑な場合、最小値は、例えば、wateramarkをとられる:P1-> 12、P2-> 14、P3-> 8、透かしが最小8を取ります
透かしの位置を取得します:最高のソースが続きます
説明:ソース端が2つの同時実行があると仮定し、wateramark 33はの複雑な、複雑な透かし2は88で、マップ以降に取得した場合、それが複雑になるため、透かし源33は、最も小さいが、透かしを取ることができ、複数ありますノー同時順序間のデータは、wateramarkデータは、おそらく50になることですが、生成された多くの透かしデータは、透かしが最高のソースを得ることが続いているので、重要なデータの損失につながることになる、50未満です。
2:ウィンドウ
2.1種類の概要
ウィンドウは3種類、timewindow、countwindowおよびカスタムウィンドウに分かれています。timewindowはさらに、図に示されていない、ウィンドウやダイアログウィンドウをスライディング、ローリング・ウィンドウに分け、それは一般的にローリング・ウィンドウを使用しています。
2.2ローリング・ウィンドウ
ウィンドウで唯一のイベントは、ウィンドウが重ならないながら人工ウィンドウサイズが、設定されています。
スライディングウィンドウ2.3
人工的なウィンドウサイズが設定され、人為的に設定されているスライド量は、イベントは、ウィンドウ間で重複してもよい複数のウィンドウで存在してもよいです。
2.4セッションウィンドウ
窓なしの開始時刻と終了時刻を固定し、窓はない重複行いません。
III:処理スクランブルされたデータウィンドウのウォーターマークの問題を結合
今回は二つの概念があります。時間がスクランブルとallowedLatestできたときに透かしを生成します。
通过运行结果可以看出:第一条数据进来的时候,生成一个窗口为[15,20),第二条数据进来的时候同样属于第一个窗口,当第三条数据进来的时候,产生的watermark大于第一个窗口的结束时间,所以第一个窗口触发计算,产生结果,当第四条数据进来的时候,由于第一个窗口还没有销毁并且属于第一个窗口,所以可以再次触发窗口运算,第一个窗口的销毁时间为2019-05-30 17:12:22,也就是当watermark的时间大于这个值的时候,再来属于该窗口的数据就属于延迟数据,不能触发运算,之后进来的数据依旧是如此。