2016-11-15 54 views
0

嗨,有谁能告诉我如何使用Spark全新的API来读取流式流结构化流式传输。带有流水线的结构化流式传输

实施例:

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

火花2.1的,火花仅支持文件,卡夫卡和Socket源。 Socket SOurce用于调试和开发,不应该进行生产化。这留下了File和Kafka的来源。

因此,您拥有的唯一选项是 a)从FLume获取数据并将它们转储到S3文件中。 Spark可以从S3文件中获取数据。文件源的工作方式是它监视一个文件夹,当出现一个新文件时,它将其加载为一个microbatch b)将您的事件汇集到一个Kafka实例中