mapWithState().timeout()
関数をイベントとして使用して、他の関数をトリガーしたいと考えています。そうする方法はありますか?mapWithState()。一部の関数をトリガーするtimeout()
statesnapshot()
については、timeout
ログメッセージを検索しましたが、これについて十分な情報が見つかりませんでした。私の問題に対する何らかの答えが始まるだろうか?これについてもっと知る場所はどこですか?
mapWithState().timeout()
関数をイベントとして使用して、他の関数をトリガーしたいと考えています。そうする方法はありますか?mapWithState()。一部の関数をトリガーするtimeout()
statesnapshot()
については、timeout
ログメッセージを検索しましたが、これについて十分な情報が見つかりませんでした。私の問題に対する何らかの答えが始まるだろうか?これについてもっと知る場所はどこですか?
という機能を
mapWithState().timeout()
というイベントとして使用して、他の機能を起動したいと考えています。方法はありますか?
はい、可能です。あなたができることは、タイムアウトが発生したときに呼び出されるアクションを定義することです。 MapWithStateRDD
でタイムアウトが発生したことをどのように知っていますか? State[S].isTimingOut()
メソッドを見ることができます。タイムアウトの期限が切れた後、この方法では、true
が得られるとmapWithState
はvalue
がNone
に設定された状態でStateSpec
方法1つの最後の時間を実行します:
object Foo {
def main(args: Array[String]): Unit = {
val spec = StateSpec.function(updateState _).timeout(Milliseconds(5))
// Use spec to invoke `mapWithState`
}
def updateState(key: Int, value: Option[Int], state: State[Int]): Option[Int] = {
value match {
case Some(number) => Some(number + 1)
case _ if state.isTimingOut() => // Trigger Code Here
}
}
感謝を。私は疑問を抱いていました。「国家」の「タイムアウト」を強制できますか?私。 'isTimingOut()'が1に設定されている変数を設定できますか? – wipman
いいえ、 'StateSpec'を作成するときだけ、タイムアウト*期間を設定することができます。 –