Flume理论

Flume定义

1.Flume是什么?

  • Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统
分布式的海量日志采集、聚合和传输的系统
分布式的海量日志采集、聚合和传输的系统
分布式的海量日志采集、聚合和传输的系统

日志日志日志!!!重要的事情说三遍

2.定义

  • Flume基于流式架构,灵活简单
  • 适用于实时推送事件,尤其是在数据流是持续的且量级很大的情况

Flume组成架构

1.简单架构图

在这里插入图片描述

2.详细架构图

在这里插入图片描述

3.讲解

  • Agent
Agent是一个JVM进程
	以事件的形式将数据从源头送至目的,是Flume数据传输的基本单元
3个部分组成:SourceChannelSink
  • Source
Source负责接收数据到Flume Agent的组件
	Source组件可以处理各种类型、各种格式的日志数据
		日志数据!!!!!
	包括avro、thrift、exec、jms、spooling directory、netcat、sequence generator、syslog、http、legacy
  • Channel
Channel是位于SourceSink之间的缓冲区
	类似于生产者消费者模式,方式写数据过快而读数据过慢
Channel是线程安全的,可以同时处理几个Source的写入操作和几个Sink的读取操作
	1.Memory Channel
		基于内存,关机或重启或程序死亡,机器宕机等情况会导致数据丢失
		在不需要关心数据丢失的情景下适用
	2.File Channel
		基于磁盘,以上情况都不会导致数据丢失,但大量的IO也是系统的瓶颈
  • Sink
Sink不断地轮询Channel中的事件且批量地移除它们,并将这些事件批量写入到存储或索引系统、或者被发送到另一个Flume Agent
Sink是完全事务性的
	在从Channel批量删除数据之前,每个SinkChannel启动一个事务
	批量事件一旦成功写出到存储系统或下一个Flume AgentSink就利用Channel提交事务
	事务一旦被提交,该Channel从自己的内部缓冲区删除事件
Sink组件目的地包括hdfs、logger、avro、thrift、ipc、file、nullHBase、solr、自定义
常用Sink
	1.Logger Sink:记录INFO级别的日志,一般用于调试
	2.File Roll Sink:在本地文件系统中存储事件,每隔指定时长生成文件保存这段事件内收集到的日志信息
	3.Avro Sink:实现多级流,扇出流(1对多)扇入流(多对1)的基础,实现多个flume节点的连接
		若要实现扇出,需要配置多个channel与sink,如果只配置一个channel,会被多个sink互斥消耗掉
		Hadoop创始人Doug Cutting创建的一种语言无关的数据序列化和RPC框架
		RPC(Remote Procedure Call)—远程过程调用,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议
	4.HDFS Sink
  • Event
传输单元,Flume数据传输的基本单元
以事件的形式将数据从源头送至目的地

Agent内部原理

1.图解

在这里插入图片描述

2.Channel选择器有两种类型

  • Replicating Channel Selector(默认):将source发过来的event发往所有Channel
  • Multiplexing Channel Selector:可配置source发过来的event发往哪些Channel

Flume拓扑图

1.Flume Agent连接

在这里插入图片描述

2.单source,多channel、sink

在这里插入图片描述

3. Flume Agent聚合

在这里插入图片描述

4.Flume负载均衡

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值