2016-11-15 9 views
0

こんにちは誰も構造化ストリーミングのための新しいAPIをsparkを使用してflumeストリームを読む方法を教えてください。Flumeでストラクチャードストリーミング

例:スパーク2.1のよう

val lines = spark.readStream.format("socket").option("host", "localhost").option("port", 9999).load()

答えて

0
val flumeStream = FlumeUtils.createStream(streamingContext, [chosen machine's hostname], [chosen port]) for push based approach and 
val flumeStream = FlumeUtils.createPollingStream(streamingContext, [sink machine hostname], [sink port]) for pull-based approach 
1

、スパークは、ファイル、カフカとソケットのソースをサポートしています。 Socket SOURCEはデバッグと開発を目的としており、プロダクション化するべきではありません。これにより、FileとKafkaソースが残ります。

したがって、唯一のオプションは です。a)FLumeからデータを取り出し、S3ファイルにダンプします。 SparkはS3ファイルからデータを取得できます。ファイルソースの仕組みは、フォルダを監視することです。新しいファイルが表示されたら、それをマイクロバッチとして読み込みます。 b)カフカインスタンスにイベントを流します。

関連する問題