资讯专栏INFORMATION COLUMN

flume架构解析

Anchorer / 413人阅读

摘要:今天从设计角度来解析的架构组成及其特点。实际上处理的就是。负责消费从上游节点获取的,并将其放到中,目前支持等数据流。从取数据并将其放入下游节点。节点中的和被包含在一个事务中。接收上游的,若其中一个接收异常,则所有的都丢弃,这将导致数据重发。

Flume是Apache开发的一款多平台、分布式、高可用的数据收集聚合系统。今天从设计角度来解析Flume的架构组成及其特点。

首先谈一下数据流(data flow)。Flume本质上是对数据流的处理,其定义数据处理的最小单元是event,一个event由包含数据的有效负载(payload)和一组可选属性组成。Flume实际上处理的就是events flow。

Flume在数据收集和聚合上有很大的灵活性,这得益于其整个系统可以由单个或者多个节点(agent)拼接而成。每个节点负责从上游数据源向下游数据接收方分发event。每个节点既可以作为数据源也可以作为数据接收方。

在节点的内部,agent由source、channel和sink组成。source负责消费从上游节点获取的events,并将其放到channel中,目前Flume支持Avro、Thrift、Syslog、Netcat等数据流。channel分为两种类型,一种是memory channel,它适合高吞吐量场景,但节点挂掉后数据可能会丢失。另一种是file channel,也就是channel里的数据会同步到硬盘里,节点意外挂掉后数据可恢复,但处理时间会稍长一些,Flume默认使用file channel。sink从channel取数据并将其放入下游节点。

下图是从多个web server数据源收集数据,并统一聚合到一个节点,然后将数据导入到hdfs中。

https://flume.apache.org/_images/UserGuide_image02.png

Flume节点还支持更复杂的多源、多数据沉积池的组合,如下图:

https://flume.apache.org/_images/UserGuide_image01.png

Flume采用事务来保证数据传输的可靠性。每个event只有当被确认传递到下游节点或者数据沉积池之后才把该event从channel中删除。节点中的sources和sinks被包含在一个事务中。source接收上游的events,若其中一个event接收异常,则所有的events都丢弃,这将导致数据重发。同理,sink在将events导入到下游数据沉积池时,任何一个event发送异常,则所有的events都将重新发送。

具体如何使用配置请参考:
https://flume.apache.org/Flum...

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/65243.html

相关文章

  • flume架构解析

    摘要:今天从设计角度来解析的架构组成及其特点。实际上处理的就是。负责消费从上游节点获取的,并将其放到中,目前支持等数据流。从取数据并将其放入下游节点。节点中的和被包含在一个事务中。接收上游的,若其中一个接收异常,则所有的都丢弃,这将导致数据重发。 Flume是Apache开发的一款多平台、分布式、高可用的数据收集聚合系统。今天从设计角度来解析Flume的架构组成及其特点。 首先谈一下数据流(...

    yeyan1996 评论0 收藏0
  • flume架构解析

    摘要:今天从设计角度来解析的架构组成及其特点。实际上处理的就是。负责消费从上游节点获取的,并将其放到中,目前支持等数据流。从取数据并将其放入下游节点。节点中的和被包含在一个事务中。接收上游的,若其中一个接收异常,则所有的都丢弃,这将导致数据重发。 Flume是Apache开发的一款多平台、分布式、高可用的数据收集聚合系统。今天从设计角度来解析Flume的架构组成及其特点。 首先谈一下数据流(...

    avwu 评论0 收藏0
  • 大数据系列之Flume(一)

    摘要:一个由,,三部分组成,可接受外部数据源或另一个的,可向另一个的或外部存储系统传递数据如。 Flume是什么 Flume是一个分布式的高可靠,可扩展的数据采集框架,在大数据工程中我们常常需要日志进行分析获取商业价值而Flume就是采集多个不同的数据源,交给数据处理程序同一执行。 Flume的架构 基础架构 showImg(https://segmentfault.com/img/bV2S...

    enrecul101 评论0 收藏0
  • 从0到千万级并发服务架构演化

    摘要:包括服务的自动化部署,以及链路监控等并未细说提及。结语诚然,整个服务架构可以轻松应对千万级并发。期望,整个服务架构能伴随公司继续成长壮大。 背景介绍 回顾 ShareSDK,顾名思义,分享的SDK组件,公司基于互联网,早期主要以ShareSDK起家。今日思来,很幸运,能陪着ShareSDK一起成长。 showImg(https://segmentfault.com/img/bV0Wo5...

    starsfun 评论0 收藏0
  • 2018年第20周-Flume概念(简单例子)

    摘要:两个发布版本和。用于暂存接受过来的事件,直到被消费。使用事务方法保证事件传递的可靠性。一个简单的例子以下是单节点的配置信息这配置可以让用户通过工具连接端口,发送文本,然后在和日志中输出。配置文件可以定一个多个,启动进程时可以指定启动。 Flume 1.8.0 简介 概要 Flume是一个分布式,可靠性和可用性的系统,此系统用于收集、聚合和移动大量数据日志数据,从各种各样的数据源将数据移...

    Nekron 评论0 收藏0

发表评论

0条评论

Anchorer

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<