• flume架构初接触


    flume优点

    1.存储数据到任何中央数据库

    2.进入数据速率大于写出速率,可以起到缓存作用,保证流的平稳

    3.提供文本式路由

    4.支持事务

    5.可靠、容错、可伸缩、可定制、可管理

     

    put的缺点

    1.put命令一次只能put一个文件,不能满足文件告诉被生成的场景,需要实时传输数据

    2.put命令操作文件时是固定的,不能是持续累加的

    3.需要传递流动数据到hdfs,延迟很低

      

    flume架构:水槽

    1.  flume event

      header + payload(byte array)

    2.  flume agent

      是独立的守护进程,从client(source)接收数据,转发给sink或者agent

    3.  flume三个组件

    [source]

      从数据生成器几首数据,以flume event形式传递给一个或多个channel

    [channel]

      临时存放source传递过来的event数据,缓存到sink消费为止,是source和sink之间的桥梁

    [sink]

           存储数据到hdfs/hbase,从channel提取数据(event),分发到目的地,sink的目的地可以是另个agent,也可以是中央存储

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

    [interceptor]

             拦截器,在source和channel监控数据

    [channel选择器]

      在多通道情况下,采用哪个通道来传递数据,有两种类型通道选择器

      Default channel selectors:

        通道中复制每个事件

      Multiplexing channel selectors:

        通过判断event的heard信息,决定通道来发送数据

    [sink processor]

      沉槽处理器,从sink组中选择一个特定的sink进行调用,可以为sink创建容灾路径或者在多个sink之间实现负载军坑

    [collector]

      在agent后方运行

    [multi-hop]

      多级跳转,从sink到agent

    [fan-out]

       从一个source到多个channel

    [fan-in]

      从多个source到一个channel

     

    错误处理

      涉及两个事务,sender端和receiver端

      sender端只有在接收到receiver的提交信号才提交事务

  • 相关阅读:
    苏宁11.11:系统拆分的一些经验谈
    双11超级工程—阿里巴巴数据库技术架构演进
    阿里的Json解析包FastJson使用
    JSONObject、JSONArray、Map、JavaBean的相互转换
    method.invoke(...)反射点
    Spring中的CharacterEncodingFilter
    数组去重Demo引出的思考
    HDU 5095--Linearization of the kernel functions in SVM【模拟】
    GUI编程及文件对话框的使用
    Android中的指纹识别
  • 原文地址:https://www.cnblogs.com/chinda/p/6101583.html
Copyright © 2020-2023  润新知