Flume

一、概述

官网

http://flume.apache.org/FlumeUserGuide.html#hdfs-sink

Cloudera 公司开发的实时的日志采集-> 捐献给了apache

适用于实时的数据分析 (spark)

同样也可以用于离线的分析 (hive)

Flume is a distributed, reliable, and available service for efficiently collecting, aggregating, and moving large amounts of log data. It has a simple and flexible architecture based on streaming data flows. It is robust and fault tolerant with tunable reliability mechanisms and many failover and recovery mechanisms. It uses a simple extensible data model that allows for online analytic application.

Flume 是一个分布式的,高可用的 是一个 收集 聚集 移动(流式处理) 日志收集系统
Flume 仅仅运行在unix环境下(linux)

Flume 只有一个角色 Agent 该角色下存在:

  • Source 用于采集数据的组件,在source里产生数据流,同时会把数据流传输给Channel
  • Channel 主要是连接source 和sink的组件有点类似于队列
  • Sink 从channel收集数据,将数据写到目标源 可以将目标源设置为HDFS 目录
在flume中传输的最小单元为event, source将数据封装到evnet里 sink拿到event

Event组件

本身就是一个字节数组

Header 头信息 key value

Body 主体: 字节数组 存储数据的详细内容

一个行文本的内容就会被序列化为一个event
Event 的最大字节为2048
超过了大小,会进行切割 存放到下个event
Event的默认编码为UTF-8

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章