zoukankan      html  css  js  c++  java
  • Flume_初识

    企业架构

    数据源   webserver RDBMS
    数据的采集 shell、flume、sqoop job
    监控和调度 hue、oozie
    数据清洗及分析 mapreduce、hive
    数据保存 sqoop
    

     概念: 三大功能 collecting(收集),aggregating(聚合),moving(传输)

    Flume是一个分布式的,可靠的,可用的,健壮且高容错性的框架,非常有效率的对大数据量
    的日志数据进行收集,聚集,传输信息的服务,但老版本仅仅运行在Linux环境中
    

     特点: on streaming data flows(基于流式的数据)

    数据流: job 不断获取数据
    任务流:job1 --> job2 --> job3&job4 --> job5
    在线实时收集应用分析,简单表现为:写个source、channel、sink,之后一条命令
    就能操作成功了,实际情况下flume、kafka实时进行数据收集
    spark、storm实时去处理,impala实时去查询

    Flume-ng只有一个角色节点: agent的角色,agent有source、channel、sink组成

    其中
      source 用于采集数据,source是产生数据流的地方,同时Source会将产生的数据流传输到channel
      channel 连接source和sink,有点像队列
      sink 用于从channel收集数据,将数据写到目标源,可以是下一个source也可以是HDFS或是HBASE
      Events(封装数据)
        Event是Flume数据传输的基本单元
        Flume以事件的形式将数据从源头传送到最终的目的地
        Event由可选的header和body构成(类似http协议)
        载有的数据对flume是不透明的
        Header是容纳了key-value字符串对的无序组合,key在集合内是唯一的
        Header可以在上下文路由中使用扩展
    

     Flume安装部署

    下载对应的cdh版本
    解压后进行配置文件
      -> env:修改java_home
      -> 连接Hadoop
        --> 启动flume时会先加载全局HADOOP_HOME变量,再去读取core/hdfs-site.xml
        --> 将hdfs的配置文件放到conf目录
           --> 在agent配置文件中写明hdfs的绝对路径
           --> 既然在HDFS上读写数据,需要hdfs的API,即需要导入Hadoop对应部分jar包
    	    commons-configuration-1.6.jar 
           hadoop-auth-2.5.0-cdh5.3.6.jar 
           hadoop-common-2.5.0-cdh5.3.6.jar 
           hadoop-hdfs-2.5.0-cdh5.3.6.jar
      -> 命令格式
        bin/flume-ng agent -c conf/ -n agentname -f agent_file
        -c flume配置文件目录
        -f properties文件目录        
    

     企业中常用的类型

    -> source
      --> exec
      --> spoolingdir
      --> kafaka source
      --> syslog source
      --> http source
    -> channel
      --> memory channel (不安全)
      --> file channel
      --> kafaka channel
    -> sink
      --> hdfs sink
      --> hbase sink
      --> hive sink
    
  • 相关阅读:
    Linux安装phpMywind
    CentOS7安装virtualbox
    MySQL3534
    DIV盒子介绍
    HTML选择器
    人脸检测
    openblas下载安装编译
    DeepLearning网络设计总结
    Linux命令替换字符串
    Y7000联想拯救者gtx1050Ti安装cuda9.0
  • 原文地址:https://www.cnblogs.com/eRrsr/p/6097286.html
Copyright © 2011-2022 走看看