前提:已安装并成功配置spark(单节点),已安装配置完成netcat(博客:https://blog.csdn.net/qq_36940806/article/details/102290470)
1.cmd 进入命令行窗口,执行 spark-shell
2.cmd打开另一个命令行窗口 输入 nc -l -p 7777 监听7777端口
3.第一个命令行窗口下执行下列scala代码实现流式筛选,打印出7777端口实时输入的包含“error”的行
import org.apache.spark.SparkConf
import org.apache.spark.SparkContext
import org.apache.spark.streaming.StreamingContext
import org.apache.spark.streaming.StreamingContext._
import org.apache.spark.streaming.dstream.DStream
import org.apache.spark.streaming.Duration
import org.apache.spark.streaming.Seconds
var ssc = new StreamingContext(sc,Seconds(1))
val lines = ssc.socketTextStream("localhost",7777)
val errorLines = lines.filter(_.contains("error"))
errorLines.print()
ssc.start()
ssc.awaitTermination()
4.在第二个命令行窗口输入下列内容并回车
first word warning
second the word error
third word normal
在第一个窗口中可以看到包含error的行被输出