一.简介

Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力。

image.png

系统要求

java运行时环境java 1.7或更高版本

内存:源、信道或接收器使用的配置的足够内存

磁盘空间-用于信道或接收器配置的足够磁盘空间

目录权限-代理使用的目录的读/写权限

二.主要功能

1.日志收集
Flume最早是Cloudera提供的日志收集系统,目前是Apache下的一个孵化项目,Flume支持在日志系统中定制各类数据发送方,用于收集数据。

2.数据处理
Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力 Flume提供了从console(控制台)、RPC(Thrift-RPC)、text(文件)、tail(UNIX tail)、syslog(syslog日志系统,支持TCP和UDP等2种模式),exec(命令执行)等数据源上收集数据的能力。

工作原理

flume的核心是把数据从数据源(source)收集过来,在将收集到的数据送到指定的目的地(sink)。

为了保证输送的过程一定成功,在送到目的地(sink)之前,会先缓存数据(channel),待数据真正到达目的地(sink)后,flume在删除自己缓存的数据。

在整个数据的传输的过程中,流动的是event,即事务保证是在event级别进行的。

那么什么是event呢?

event将传输的数据进行封装,是flume传输数据的基本单位。如果是文本文件,通常是一行记录,event也是事务的基本单位。event从source,流向channel,再到sink,本身为一个字节数组,并可携带headers(头信息)信息。event代表着一个数据的最小完整单元,从外部数据源来,向外部的目的地去。

image.png

三.Flume架构

Flume使用agent来收集日志,agent包括三个组成部分:

  • source:收集数据
  • channel:存储数据
  • sink :输出数据
    Flume使用source接收日志,然后缓存到channel中,最后通过sink将数据输出到目的地。只有在sink将channel中的数据成功发送出去之后,channel才会将临时数据进行删除,这种机制保证了数据传输的可靠性与安全性。

Flume支持agent串联操作,也就是说可以将上一个agent的sink输出到作为下一个agent的source的输入。

source还支持接受多个输入,sink也可以将数据输出到多个目的地中。

1.Apache Flume 简介相关推荐

  1. Apache Flume 简介

    转自:http://blog.163.com/guaiguai_family/blog/static/20078414520138100562883/ Flume 是 Cloudera 公司开源出来的 ...

  2. Flume简介及Flume部署、原理和使用介绍

    Flume简介及Flume部署.原理和使用介绍 Flume概述 ​ Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集.聚合和传输的系统.Flume基于流式架构,灵活简单. ...

  3. Apache Mahout 简介

    Apache Mahout 简介 通过可伸缩.商业友好的机器学习来构建智能应用程序 当研究院和企业能获取足够的专项研究预算之后,能从数据和用户输入中学习的智能应用程序将变得更加常见.人们对机器学习技巧 ...

  4. 使用Apache Flume抓取数据(1)

    使用Apache Flume抓取数据,怎么来抓取呢?不过,在了解这个问题之前,我们必须明确ApacheFlume是什么? 一.什么是Apache Flume Apache Flume是用于数据采集的高 ...

  5. apache flume_Flume:使用Apache Flume收集客户产品搜索点击数据

    apache flume 这篇文章涵盖了使用Apache flume收集客户产品搜索点击并使用hadoop和elasticsearch接收器存储信息. 数据可能包含不同的产品搜索事件,例如基于不同方面 ...

  6. Flume:使用Apache Flume收集客户产品搜索点击数据

    这篇文章涵盖了使用Apache flume收集客户产品搜索点击并使用hadoop和elasticsearch接收器存储信息. 数据可能包含不同的产品搜索事件,例如基于不同方面的过滤,排序信息,分页信息 ...

  7. flume简介(大数据技术)

    1 .背景 flume是由cloudera软件公司产出的可分布式日志收集系统,后与2009年被捐赠了apache软件基金会,为hadoop相关组件之一.尤其近几年随着flume的不断被完善以及升级版本 ...

  8. Flume-ng运行出错: Caused by: java.net.BindException: 地址已在使用org.apache.flume.lifecycle.LifecycleSupervis

    Flume下杀死collector再恢复出现错误 2019-08-29 15:57:52,578 (lifecycleSupervisor-1-5) [ERROR - org.apache.flume ...

  9. Apache Ant 简介和配置

    Apache Ant 简介 Apache Ant是目前事实上的Java应用的标准build脚本工具.使它大受欢迎的一个主要愿意是它的和灵活,允许程序员创建自己的Task来对Ant进行扩展. 本文主要内 ...

最新文章

  1. 实例讲解《Microsoft AJAX Library》(2):DomEvent类
  2. Acwing第 35 场周赛【完结】
  3. 学习笔记之-Activiti7工作流引擎,概述,环境搭建,类关系图,使用Activiti BPMN visualizer,流程变量,组任务 网关,Activiti整合Spring SpringBoot
  4. 服务容错、限流、资源隔离、熔断、监控…3天,撸完了!
  5. Java EE 8 MVC:全局异常处理
  6. echarts地图的基本使用配置
  7. 【php-laravel框架】第三节:利用composer安装laravel-admin开源管理系统
  8. CentOS7--IP配置与网络问题排查
  9. TensorFlow 实战(一)—— 交叉熵(cross entropy)的定义
  10. matlab转变图像位深,[转载]matlab 图像处理命令 (转)
  11. python后端教程_Python学习教程(技术干货):关于前后端分离开发入门
  12. 《思维训练500题》
  13. 什么是软件测试中的探索性测试(完整指南)(三)
  14. Windows Server 2003 报错:”NTDETECT 失败“ 和 “文件或目录损坏且无法读取,请运行chkdsk工具”
  15. 2023年全国最新二级建造师精选真题及答案2
  16. JAVA实现短信接口的调用
  17. Python爬虫---影评的爬取
  18. (Fabric 学习六)Fabric2.0 私有数据 使用marbles官方示例
  19. PCIe扫盲——PCI总线基本概念
  20. 【笔记】设计心理学 [美] 唐纳德·A·诺曼

热门文章

  1. 微信分享链接优化 title icon 描述
  2. Win10系统如何将eclipse背景色改成豆沙绿
  3. java.sql.SQLException: The server time zone value '???ú±ê×??±??' is unrecognized or represents 解决方法
  4. java计算机毕业设计宠物店管理系统设计与实现源码+mysql数据库+系统+lw文档+部署
  5. scrapy框架爬取网站图片
  6. 不降价的促销利器--让渡营销
  7. 抖音外卖服务商如何申请
  8. BUUWeb刷题记录
  9. Unirech:为什么不能访问阿里云国际版云服务器ecs实例上的网站
  10. Zynq实现分布式Fir滤波器