首页 > 技术文章 > DStreams输入 从kafka消费数据 直连

JBLi 2019-08-16 16:24 原文

 

基本数据源

文件数据源

自定义数据源

本地文件读不出来
 

 

Hdfs 读取实例: 提前需要在 HDFS 上建好目录。data

输入下面的命令
1  ./spark-shell --master spark://linux04:7077


2   import org.apache.spark.streaming._


3  val ssc=new StreamingContext(sc,Seconds(1))


4  ssc.textFileStream("hdfs://192.168.137.4:9000/data").flatMap(_.split(" ")).map((_,1)).reduceByKey(_+_).print()

 

5  hdfs dfs -put c.txt /data


6   ssc.start()

如下图:

 

RDD队列读取数据


 

自定义数据源
企业中如果没有合适的抓取数据的手段,可以通过继承 Receiver,并实现 onStart、onStop 方法来自定义数据源采集。
注:启动nc 的时候只启动服务端

 

 

 

SparkStreaming 连接 kafka作为数据源 Reciver和直连方式

 kafka版本的区别

 

 

http://spark.apache.org/docs/2.2.0/streaming-kafka-0-10-integration.html

 

 数据从kafka中读出来

 

 

spark读取flume
要引入flume jar包

 

 

 

***********

集群中

1.创建配置文件

在fluem的conf下面 创建 添加内容

 

2.删除flume中其中一个jar删除

再将下面的jar上传到 flume的lib中

输入命令启动:[root@linux05 bin]# ./flume-ng agent -c conf -f ../conf/tail_spark.conf -n a1

输入数据查看结果? 看1.的图

 

推荐阅读