zoukankan      html  css  js  c++  java
  • Flume-事务与传输流程

    一、Flume 事务

    流程图

    Put 事务流程

    doPut:将批数据先写入临时缓冲区 putList

    doCommit:检查 channel 内存队列是否足够合并

    doRollback:channel 内存队列空间不足,回滚数据

    Take 事务流程

    doTake:将数据取到临时缓冲区 takeList,并将数据发送到 HDFS

    doCommit:如果数据全部发送成功,则清除临时缓冲区 takeList

    doRollback:数据发送过程中如果出现异常,rollback 将临时缓冲区 takeList 中的数据归还给 channel 内存队列

    二、Flume 传输流程

    流程图

    重要组件:

    4)Channel Selector

    Channel Selector 的作用就是选出 Event 将要被发往哪个 Channel。共有两种类型,分别是 Replicating Channel Selector (default)(复制)和 Multiplexing Channel Selector(多路复用)。

    Replicating Selector 会将 source 过来的每一个 Event 发往所有的 Channel,Multiplexing 会根据相应的原则,将不同的 Event 发往不同的 Channel。

    7)Sink Processor

    Sink Processor 共有三种类型,分别是 Default Sink ProcessorLoad Balancing Sink ProcessorFailover Sink Processor

    Default Sink Processor 对应的是单个的 Sink,Load Balancing Sink Processor 和 Failover Sink Processor 对应的是 Sink Group。

    Load Balancing Sink Processor 可以实现负载均衡的功能,Failover Sink Processor 可以实现故障转移的功能。

  • 相关阅读:
    oracle数据库使用PL/sql导入excel数据
    http协议详解之响应报文 3
    http详解之post 2
    http协议详解1
    tomcat配置https协议
    linux服务端导入oracle数据库.sql脚本
    fiddler查看http压缩格式传输的报文
    SurfaceView绘制录音波形图
    android 蓝牙SPP协议通信
    好用的Android屏幕适配
  • 原文地址:https://www.cnblogs.com/jhxxb/p/11574494.html
Copyright © 2011-2022 走看看