大数据技术之标题一、Flume 简介1) Flume 提供一个分布式的,可靠的,对大数据量的日志进行高效收集、聚集、移动的服务,Flume 只能在 Unix 环境下运行
2) Flume 基于流式架构,容错性强,也很灵活简单
3) Flume、Kafka 用来实时进行数据收集,Spark、Storm 用来实时处理数据,impala 用来实时查询
二、Flume 角色2
1、Source用于采集数据,Source 是产生数据流的地方,同时 Source 会将产生的数据流传输到Channel,这个有点类似于 JavaIO 部分的 Channel
2、Channel用于桥接 Sources 和 Sinks,类似于一个队列
3、Sink从 Channel 收集数据,将数据写到目标源(可以是下一个 Source,也可以是 HDFS 或者HBase)
4、Event传输单元,Flume 数据传输的基本单元,以事件的形式将数据从源头送至目的地
三、Flume 传输过程source 监控某个文件或数据流,数据源产生新的数据,拿到该数据后,将数据封装在一个Event 中,并 put 到 channel 后 commit 提交,channel 队列先进先出,sink 去 channel 队列中拉取数据,然后写入到 hdfs 或者 HBase 中
四、Flume 部署及使用4
1、文件配置flume-env
sh 涉及修改项:JAVA_HOME=/home/admin/modules/jdkl
0_1214
1、案例一目标:Flume 监控一端 Console,另一端 Console 发送消息,使被监控端实时显示
分步实现:1)创建 FlumeAgent 配置文件 flume-telnet
conf# Namethecomponentsonthisagental