java大数据组件Flume
特点:
flume是一个分布式、可靠、和高可用的海量日志采集、聚合和传输的系统。支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(比如文本、HDFS、Hbase等)的能力
Flume的可靠性:
当节点出现故障时,日志能够被传送到其他节点上而不会丢失。
- Flume提供了三种级别的可靠性保障:
- end to end:收到数据agent首先将event写到磁盘上,当数据传送成功后,再删除;如果数据发送失败,可以重新发送。
- Store on failure:这也是scribe采用的策略,当数据接收方crash时,将数据写到本地,待恢复后,继续发送
- Besteffort:数据发送到接收方后,不会进行确认
Flume的可恢复性:
使用FileChannel,事件持久化在本地文件系统里(性能较差)
Flume的一些核心概念:
名称 | 说明 |
---|---|
Agent(代理) | 使用JVM 运行Flume。每台机器运行一个agent,但是可以在一个agent中包含多个sources和sinks。 |
Client(委托) | 生产数据,运行在一个独立的线程。 |
Source(来源) | 从Client收集数据,传递给Channel。 |
Sink(接收器) | 从Channel收集数据,运行在一个独立线程。 |
Channel(通道) | 连接 sources 和 sinks ,类似一个队列。 |
Events(事件) | 可以是日志记录、 avro 对象等。 |
部署类型:
单一流程:Flume以agent为最小的独立运行单位。一个agent就是一个JVM。单agent由Source、Sink和Channel三大组件构成。
多代理流程:可以将多个Agent顺序连接起来,将最初的数据源经过收集,存储到最终的存储系统中。这是最简单的情况,一般情况下,应该控制这种顺序连接的Agent 的数量,因为数据流经的路径变长了,如果不考虑failover的话,出现故障将影响整个Flow上的Agent收集服务。
流的合并:这种情况应用的场景比较多,比如要收集Web网站的用户行为日志, Web网站为了可用性使用的负载集群模式,每个节点都产生用户行为日志,可以为每 个节点都配置一个Agent来单独收集日志数据,然后多个Agent将数据最终汇聚到一个用来存储数据存储系统,如HDFS上。
多路复用流:Flume还支持多级流,什么多级流?来举个例子,当syslog, java, nginx、 tomcat等混合在一起的日志流开始流入一个agent后,可以agent中将混杂的日志流分开,然后给每种日志建立一个自己的传输通道。
负载平衡:将Channel暂存的Event均衡到对应的多个Sink组件上,而每个Sink组件分别连接到一个独立的Agent上 。
Flume抓取日志类型
Avro序列化:Avro可以发送一个给定的文件给Flume
Spool:Spool监测配置的目录下新增的文件,并将文件中的数据读取出来
Exec:EXEC执行一个给定的命令获得源的变化。
Syslogtcp:Syslogtcp监听TCP的端口做为数据源。
JSONHandler:接受json格式数据。
Hadoop sink:配置Hadoop接受数据。
File Roll Sink:配置本地文件接受数据。
java大数据组件Flume相关推荐
- java大数据组件HBase
什么是HBase: 是一个非关系型数据库(稀疏矩阵) 关系型数据库:有固定的列,每一列的数据类型明确 非结构化数据,半结构化数据. 存储的目标数据 数据量大 结构简单 基于key的快速查找能力 可以面 ...
- java大数据组件Kafka
定义: 大吞吐量,内置分区,可以进行数据备份,同时具备数据容错性的消息系统. Kafka可以完成在线或者离线数据消费,所谓离线数据消费实际上就是kafka将消息数据保留在磁盘上. kafka会做数据备 ...
- java大数据组件Zookeeper
zookeeper的作用: Zookeeper是针对大型分布式系统的高可靠的协调系统,如dubbo里面的注册中心.分布式锁等,主要应用于分布式系统中. 分布式应用的优点: 可靠性- 单个或几个系统的故 ...
- 假如大数据组件中的动物都变成神奇宝贝,那会变成什么样?(大数据的组件动漫化)
文章目录 假如大数据组件中的动物都变成神奇宝贝,那会变成什么样? 第一个神奇宝贝 Hadoop 第二个神奇宝贝 Hive 第三个神奇宝贝 Hbase 第四个神奇宝贝的管理员 Zookeeper 第五个 ...
- 一篇文章带你了解大数据生态圈---大数据组件图谱
小编一篇文章带你了解大数据生态圈-大数据组件图谱 转载地址:http://blog.csdn.net/u010039929/article/details/70157376 文章目录 小编一篇文章带你 ...
- Java大数据开发做什么?Java大数据开发成长路线
Java开发是IT行业的经典岗位,行业当中存在普遍的需求,Web开发.Android开发.游戏开发等岗位,基本上Java语言是主力队伍.而进入大数据时代,Java又在大数据方向上有了用武之地.今天我们 ...
- 1.1 大数据简介-hadoop-最全最完整的保姆级的java大数据学习资料
文章目录 1 hadoop-最全最完整的保姆级的java大数据学习资料 1.1 大数据简介 1.1.1 大数据的定义 1.1.2 大数据的特点 1.1.3 大数据的应用场景 1.1.4 大数据的发展趋 ...
- 大数据组件需要额外添加的依赖包汇总(持续更新中)
现在FLINK已经被阿里收购了,所以会有blink的jar包 大数据组件 依赖包来源 具体的依赖包 Hadoop3.1.2 用户添加 javax.ws.rs-api-2.0-m11.jar jerse ...
- hive 取消打印日志信息_Hive及其相关大数据组件
HDFS架构 Hadoop 分布式文件系统(HDFS)是 Hive 存储数据的地方,简单了解HDFS的基本机制和读写工作机制,对于排查HiveSQL 程序是否由于数据存储引发的性能问题有较大的帮助. ...
最新文章
- 网络推广费用之你的文章标题优化“合格”了吗?
- TFS修改工作区映射区
- vs2010 利用DMP文件、pdb文件查找release下的异常行号的方法
- Java第三章 类和对象3.1+3.2
- 同步和异步, 阻塞和非阻塞, Reactor和Proactor
- VMWare vijava –“用户名或密码不正确”异常的奇怪情况
- vb中picturebox透明时看到下面的picturebox中图片
- 鸿蒙移植stm32,韦东山老师要移植鸿蒙的那个STM32MP157具体是什么?
- 中信银行Java笔试题库,手撕面试官
- C++处理有道单词导出单词本
- MySQL5.7数据库-索引优化
- 计算机网络各章节知识点总结
- 数据中心断路器整定值计算(二)
- Python专栏 | ICA应用:如何识别伪影信号?(一)
- jpeg 与 png 图片格式的区别
- LCD1602和12864简单的介绍
- python爬取公众号阅读量_公众号没做起来,那是你菜 | 爬取21个公众号数据后
- 如何选择Python版本2还是3
- 程序员十二星座行为大赏
- 动手实验 CVE-2010-3333 Microsoft RTF栈溢出漏洞
热门文章
- php 上传类 缩略图,php图片文件上传类 (附自动生成缩略图) | 学步园
- Python项目:生成微信好友头像拼接图
- R和RStudio下载安装详细步骤
- python实现编译器链接器_Python入门之Python编译器
- 用rest造句子_rest的用法和短语例句
- 基于linux的智能小车_商汤首款原创机器人SenseRover X自动驾驶小车斩获Red Dot Award...
- 男人必读:女人64个谜团
- 又崩了?苹果发生大规模网络故障:多项服务受影响 目前已恢复
- 不叫K50 Pro+!Redmi K50系列超大杯或有新名称
- 中国电信:1月5G套餐用户数净增826万户