Apcah-Flume(水槽)的非官方介绍

Flume(水槽)的概述

  • Apach Flume是一个分布式的、可靠的、可用的系统,用于有效的收集、聚合和将大量的日志数据从许多不同的源移动到一个集中的数据存储
  • Apach Flume的使用不仅仅局限于日志数据的聚合。由于数据源是可定制的,Flume可以用于传输大量事件数据,包括但不限于网络流量数据、社交媒体生成的数据、电子邮件消息和几乎所有可能的数据源
  • 它具有鲁棒性和容错性,具有可调的可靠性机制多种故障转移和恢复机制。它使用了一个简单的、可扩展的数据模型,允许在线分析应用程序

Flume(水槽)的优点

  • Flume可以高效收集web server的log到HDFS Hbase
  • 高效获取数据到hadoop
  • 导入大量数据
  • Flume支持大量的source和destination类型
  • Flume支持多级条约,source和destination的扇入和扇出
  • Flume可以水平伸缩

Flume架构

在这里插入图片描述

  • 高可用架构

在这里插入图片描述
在这里插入图片描述

Flume(水槽)架构组成说明

  • 描述
    在数据生成器运行的节点上启动单独的flume agent。来收集数据,数据收集器收集数据,推送到HDFS,Hbase

  • Flume Event(事件)
    事件是flume的传输单元,主要是byte[],可以含一些header信息在source和destination之间

  • Flume Agent(代理)
    每个Agent是独立的java进程,从客户端(其它agent)接收数据然后转发到下一个destination(sink)
    Agent包含三个组件:

    • 1.Source(源) --> 生成数据的地方
      从事件生成器接收数据,以event事件的形式传给一个或多个channel
    • 2.Channel(通道)
      从source中接受flume event,作为临时存放地,缓存到buffer中,直接sink将其消费掉,是source和sink之间的桥梁
      Chinnel是事务的,可以和多个source或sink协同
    • 3.Sink(沉槽)
      存放数据到HDFS,从channel中消费event,并分发给destination,sink的Destination也可以是另一个agent或者HDFS,Hbase

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值