私はScalaを使ってApache Flinkを使い始めました。誰かが私が持っている現在のデータストリームから遅れたストリーム(kイベントまたはk単位の時間差がある)を作成する方法を教えてもらえますか?Apache Flink:遅れたDatastreamを作成する
基本的には、データストリームに自動回帰モデル(ストリームのリニア回帰とタイムラグのあるバージョン)を実装したいと考えています。したがって、以下の擬似コードに類似した方法が必要です。
val ds : DataStream = ...
val laggedDS : DataStream = ds.map(lag _)
def lag(ds : DataStream, k : Time) : DataStream = {
}
すべてのイベントが1秒間隔で間隔があり、2秒遅れがある場合は、サンプル入力と出力がこのようになると思います。
入力:1、2、3、4、5、6、7 ...
出力:私はあなたのことを考えるとNA、NA、1、2、3、4、5 ...
質問を延長し、遅延ストリームの意味を説明できますか?ありがとうございます –
@FabianHueske、私は遅れたdatastreamと思う、彼はいつもより遅くdatasteamの要素を得ることを意味します。例えば、1分の遅れは、ストリームに到着したときよりも1分遅れて要素を放出する。 –
質問は「kイベントに遅れている」と言っていますが、「x分遅れていません」。 1つの解釈は、k個のイベントのFIFO待ち行列に新しいイベントを追加し、新しいイベントが到着したときに待ち行列ヘッド要素を転送する。所望のセマンティクスを明確に定義しなければ、その質問に答えることはできません。 –