美文网首页
flume简介

flume简介

作者: nummycode | 来源:发表于2017-04-28 17:11 被阅读293次

参考 Flume架构以及应用介绍

一.简介

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

image.png

二.主要功能

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也可以将数据输出到多个目的地中。

相关文章

  • Flume入门

    Flume简介     Flume is a distributed, reliable, and availab...

  • Flume 学习之路(一)Flume 概述和基本架构

    作者:studytime原文:https://www.studytime.xin/ Flume 简介 Flume ...

  • java大数据之flume

    一、Flume简介 1.1 Flume的位置 1.2 Flume是什么 (1)Flume提供一种分布式的,可靠地,...

  • flume(一)、flume简介

    转载自csdn-blog 1. flume的背景 flume是由cloudera软件公司产出的可分布式日志收集系统...

  • 【Flume简介】

    1 介绍 flume是实时日志采集系统, 使用场景:监控目录的日志信息,控制台输入信息,端口信息,http发送的信...

  • Flume简介

    1、概述  Flume是一个分布式、可靠、高可用的海量日志采集、聚合和传输的系统。 Flume可以采集...

  • flume简介

    参考 Flume架构以及应用介绍 一.简介 Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量...

  • Flume 简介

    配置文件写法

  • Flume读取Tomcat日志文件传输到Kafka

    一、Flume简介 二、Flume架构 Flume架构主要有三个组件:Source、Channel和Sink。 W...

  • Flume实践

    Flume简介 flume 作为 cloudera 开发的实时日志收集系统,受到了业界的认可与广泛应用。Flume...

网友评论

      本文标题:flume简介

      本文链接:https://www.haomeiwen.com/subject/obcazttx.html