flume优点

1.存储数据到任何中央数据库

2.进入数据速率大于写出速率,可以起到缓存作用,保证流的平稳

3.提供文本式路由

4.支持事务

5.可靠、容错、可伸缩、可定制、可管理

put的缺点

1.put命令一次只能put一个文件,不能满足文件告诉被生成的场景,需要实时传输数据

2.put命令操作文件时是固定的,不能是持续累加的

3.需要传递流动数据到hdfs,延迟很低

flume架构:水槽

1.  flume event

  header + payload(byte array)

2.  flume agent

  是独立的守护进程,从client(source)接收数据,转发给sink或者agent

3.  flume三个组件

[source]

  从数据生成器几首数据,以flume event形式传递给一个或多个channel

[channel]

  临时存放source传递过来的event数据,缓存到sink消费为止,是source和sink之间的桥梁

[sink]

存储数据到hdfs/hbase,从channel提取数据(event),分发到目的地,sink的目的地可以是另个agent,也可以是中央存储

  注意:一个agent可以有多个source,sink和channel

[interceptor]

拦截器,在source和channel监控数据

[channel选择器]

  在多通道情况下,采用哪个通道来传递数据,有两种类型通道选择器

  Default channel selectors:

    通道中复制每个事件

  Multiplexing channel selectors:

    通过判断event的heard信息,决定通道来发送数据

[sink processor]

  沉槽处理器,从sink组中选择一个特定的sink进行调用,可以为sink创建容灾路径或者在多个sink之间实现负载军坑

[collector]

  在agent后方运行

[multi-hop]

  多级跳转,从sink到agent

[fan-out]

   从一个source到多个channel

[fan-in]

  从多个source到一个channel

错误处理

  涉及两个事务,sender端和receiver端

  sender端只有在接收到receiver的提交信号才提交事务

flume架构初接触的更多相关文章

  1. 初接触BurpLoader工具

    初接触burp工具 菜鸟一枚,现在在接触一段时间测试,我在测试功能性的时候,想着网站被黑案例那么多,我是不是也应该弄弄安全性测试了,所以就有了下边的第一次接触BurpLoader工具来测试手机的app ...

  2. 软工实践练习-Git初接触

    第一次听到Git,有点不知所云,听了实践课老师的讲解,才明白了Git作为最先进的分布式版本控制系统的重要性. 至于Git的安装和使用仍旧是自己摸索着去完成了,当然在这过程中也是遇到了很多的问题. 接下 ...

  3. vi初接触

    vi初接触 它有三种模式: 一 一般模式 二 编辑模式 三 命令行模式 介绍几种比较常用的吧 -- 退出:q 写入:w 强制:! (以上可叠加) 显示行号:set nu 取消:set nonu 跳转到 ...

  4. ExtJS初接触 —— 了解 Ext Core

    ExtJS初接触 —— 了解 Ext Core Ext Core是一款和jQuery媲美的轻型JS库,基于MIT许可.对于Dom的操作,我个人还是比较喜欢用jQuery.当然如果项目中用的是ExtJS ...

  5. ExtJS初接触 - 在项目中使用ExtJS

    ExtJS初接触 - 在项目中使用ExtJS 今天ExtJS官网发布了ExtJS最新正式版4.2.1.Ext JS 4.2.1 正式版 下载 ExtJS为开发者在开发富客户的B/S应用中提供丰富的UI ...

  6. Java之路——Java初接触

    本文大纲 1.Java是什么 2.Java历史 3.Java技术范围 3.1 Java SE平台技术范围 3.2 Java EE技术范围 3.3 Java 体系技术范围 4.总结 1.Java是什么 ...

  7. 海量日志采集系统flume架构与原理

    1.Flume概念 flume是分布式日志收集系统,将各个服务器的数据收集起来并发送到指定地方. Flume是Cloudera提供的一个高可用.高可靠.分布式的海量日志采集.聚合和传输的系统.Flum ...

  8. Flume架构以及应用介绍[转]

    在具体介绍本文内容之前,先给大家看一下Hadoop业务的整体开发流程: 从Hadoop的业务开发流程图中可以看出,在大数据的业务处理过程中,对于数据的采集是十分重要的一步,也是不可避免的一步,从而引出 ...

  9. Flume架构以及应用介绍

    在具体介绍本文内容之前,先给大家看一下Hadoop业务的整体开发流程:  从Hadoop的业务开发流程图中可以看出,在大数据的业务处理过程中,对于数据的采集是十分重要的一步,也是不可避免的一步,从而引 ...

随机推荐

  1. 基于.Net Framework 4.0 Web API开发(4):ASP.NET Web APIs 基于令牌TOKEN验证的实现

    概述:  ASP.NET Web API 的好用使用过的都知道,没有复杂的配置文件,一个简单的ApiController加上需要的Action就能工作.但是在使用API的时候总会遇到跨域请求的问题, ...

  2. mysql之TIMESTAMP(时间戳)用法详解

    一.TIMESTAMP的变体 TIMESTAMP时间戳在创建的时候可以有多重不同的特性,如: 1.在创建新记录和修改现有记录的时候都对这个数据列刷新: ? 1 TIMESTAMP DEFAULT CU ...

  3. MySQL Workbench 修改快捷键

    在安装根目录查到\data\main_menu.xml这个文件 例如,修改执行sql语句的快捷键为F5 <value type="object" struct-name=&q ...

  4. jquery取消超链接

  5. 基于TCP和多线程实现无线鼠标键盘-InputMethodManager

    为了实现无线键盘的功能,使用了InputMethodManager弹出软键盘. // 弹出软键盘 public void pop_keyboard(){ imm = (InputMethodManag ...

  6. Maximum length of a table name in MySQL

    http://dev.mysql.com/doc/refman/5.7/en/identifiers.html The following table describes the maximum le ...

  7. PHP程序员7小时学会Kotlin 第二小时

    Kotlin中,一切皆对象:PHP则并非一切皆对象,甚至不需要对象的存在即可完成系统功能开发,我们现在可以接触到的旧的系统都可以说明这一点. 基本数据类型 数值型 类型 位长 双精度浮点型Double ...

  8. Oracle 表分组 group by和模糊查询like

    分组group by写法 select 字段名 from 表名 group by 字段名 查询这个字段名里的种类分组后可以加聚合函数select 字段名,聚合函数 from 表名 group by 字 ...

  9. sql 2000 关于用户权限以及sp3问题的排查

    今天在服务器上布置项目的时候tomcat启动报错,说是没有读取数据库的权限,于是开始查看自己的代码,结果发现代码中的数据库配置是正确的,于是开始找数据库本身的问题,当查看权限的时候本人新开的账户没有读 ...

  10. GJM :Sql 各种语句 以及函数 [转载]

    版权声明:本文原创发表于 [请点击连接前往] ,未经作者同意必须保留此段声明!如有侵权请联系我删帖处理! 1.更改数据库的名称 2.表中有数据的情况下再添加列.删除列 3.在SQLServer 中各种 ...