2
Spark DStreamの最後のN個のメッセージを蓄積する最適なソリューションを探しています。私はまた、保持するメッセージの数を指定したいと思います。Spark Streaming DStreamを蓄積する最適なソリューション
- updateStateByKey:
Iteration New message Downstream 1 A [A] 2 B [A, B] 3 C [A, B, C] 4 D [B, C, D]
は、これまでのところ、私はDSTREAMに、以下の方法で探しています:
たとえば、以下の流れを考えると、私は最後の3つの要素を保持したいのですが:すべてのメッセージが同じ鍵を持っているので、私はこれを行うことができます。しかし、これが鍵について何か知っている必要があるのか、ちょっと奇妙に見えます。
- mapWithState:ScalaではAPIは、このような単純なこと
- ウィンドウのためあまりにも面倒です。また、それは要素
- の最後の番号をウインドウの代わりのための時間値を必要とする、この仕事をしていないようですアキュムレータ:まだ実際には使用されていませんAccumulators in Spark docs
これを達成する最適なソリューションは何ですか?