Spark大数据分析与实战:Spark Streaming编程初级实践Spark Streaming编程初级实践

Spark Streaming编程初级实践

一、安装Hadoop和Spark

具体的安装过程在我以前的博客里面有,大家可以通过以下链接进入操作:

[
Hadoop的安装:https://blog.csdn.net/weixin_47580081/article/details/108647420

](https://blog.csdn.net/weixin_47580081/article/details/108647420?spm=1001.2014.3001.5501)
[
Scala及Spark的安装:https://blog.csdn.net/weixin_47580081/article/details/114250894

](https://blog.csdn.net/weixin_47580081/article/details/114250894?spm=1001.2014.3001.5501)

** 提示:如果IDEA未构建Spark项目,可以转接到以下的博客: **

**[
IDEA使用Maven构建Spark项目:https://blog.csdn.net/weixin_47580081/article/details/115435536

](https://blog.csdn.net/weixin_47580081/article/details/115435536) **

二、启动Hadoop与Spark

查看3个节点的进程

master ![在这里插入图片描述](https://img-
blog.csdnimg.cn/20210323203905727.png?x-oss-
process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NzU4MDA4MQ==,size_16,color_FFFFFF,t_70)
slave1
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210323203919361.png?x-oss-
process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NzU4MDA4MQ==,size_16,color_FFFFFF,t_70)
slave2
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210323204008134.png?x-oss-
process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NzU4MDA4MQ==,size_16,color_FFFFFF,t_70)

三、使用 Avro 数据源测试 Flume

Avro 可以发送一个给定的文件给 Flume,Avro 源使用 AVRO RPC 机制。请对
Flume的相关配置文件进行设置,从而可以实现如下功能:在一个终端中新建一个文件helloworld.txt(里面包含一行文本“Hello
World”),在另外一个终端中启动 Flume 以后,可以把 helloworld.txt 中的文本内容显示出来。

1、创建agent文件

    cd /usr/flume/apache-flume-1.7.0-bin/conf
    vim avro.conf

添加内容如下:

    # Name the components on this agent
    a1.sources = r1
    a1.sinks = k1
    a1.channels = c1
    
    # Describe/configure the source
    a1.sources.r1.type = avro
    a1.sources.r1.channels = c1
    a1.sources.r1.bind = 0.0.0.0
    a1.sources.r1.port = 4141
    
    # Describe the sink
    a1.sinks.k1.type = logger
    
    # Use a channel which buffers events in memory
    a1.channels.c1.type = memory
    a1.channels.c1.capacity = 1000
    a1.channels.c1.transactionCapacity = 100
    
    # Bind the source and sink to the channel
    a1.sources.r1.channels = c1
    a1.sinks.k1.channel = c1

![在这里插入图片描述](https://img-blog.csdnimg.cn/20210423145149746.png?x-oss-
process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NzU4MDA4MQ==,size_16,color_FFFFFF,t_70)

2、启动 flume agent (即打开日志控制台):

    cd /usr/flume/apache-flume-1.7.0-bin/
    ./bin/flume-ng agent agent -c conf/ -f ./conf/avro.conf -n a1 -Dflume.root.logger=INFO,console

![在这里插入图片描述](https://img-blog.csdnimg.cn/2021042314521998.png?x-oss-
process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NzU4MDA4MQ==,size_16,color_FFFFFF,t_70)

3、新建一个终端,新建一个文件helloworld.txt(里面包含一行文本“Hello World!”)

    cd /usr/flume/apache-flume-1.7.0-bin/
    vim helloworld.txt

![在这里插入图片描述](https://img-blog.csdnimg.cn/20210423145236797.png?x-oss-
process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NzU4MDA4MQ==,size_16,color_FFFFFF,t_70)

4、在另外一个终端中启动 Flume 以后,使用avro-client发送文件

    cd /usr/flume/apache-flume-1.7.0-bin/
    ./bin/flume-ng avro-client -H localhost -p 4141 -F ./helloworld.txt

![在这里插入图片描述](https://img-blog.csdnimg.cn/20210423145312774.png?x-oss-
process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NzU4MDA4MQ==,size_16,color_FFFFFF,t_70)

5、观看第一个终端显示 helloworld.txt 文本中的内容

![在这里插入图片描述](https://img-blog.csdnimg.cn/20210423145322292.png?x-oss-
process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NzU4MDA4MQ==,size_16,color_FFFFFF,t_70)

四、使用 netcat 数据源测试 Flume

请对Flume的相关配置文件进行设置,从而可以实现如下功能:在一个Linux终端(这里称为“Flume终端”)中,启动Flume,在另一个终端(这里称为“Telnet终端”)中,输入命令“telnet
localhost 44444”,然后,在Telnet终端中输入任何字符,让这些字符可以顺利地在Flume终端中显示出来。

1、创建agent文件

    cd /usr/flume/apache-flume-1.7.0-bin/conf/
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值