2016-05-30 4 views

答えて

5

現在、Spark Streamingにはステートフルストリーム用の2つの実装があります。 1つは古いPairRDDFunctions.updateStateByKey(スパーク< = 1.5.0)で、CoGroupedRDDを使用して各キーの状態を保存します。 PairRDDFunctions.mapWithState(Spark> = 1.6.0)と呼ばれる新しいバージョンはOpenHashMapBasedStateMap[K, V]を使用して内部状態を保存します。これらの両方は、これらのステートフル・ストリームの両方は、永続フォールトトレランスのためのメカニズムとしてcheckpointingを使用インメモリ実装

あります。チェックポイントの場所は、HDFSまたはAmazonのS3です。ここで、データは、ユーザーがDStream.checkpointを使用して定義した間隔ごとに保持されるか、デフォルト(バッチ間隔*定数)になります。ステートフルストリームを使用する場合は、チェックポイントディレクトリを指定する必要があります。

+0

チェックポイントのディレクトリがHDFSまたはS3にある必要がありますか。私が地元の住所を書いた場合、労働者は自分の分を救っているのでしょうか、それとも運転手に送るのでしょうか? – Vale

0

状態は、ストリーミングコンテキストの開始時に指定されたチェックポイントディレクトリに格納されます。チェックポインティングとフォールトトレランスの詳細については、documentationを参照してください。

関連する問題