zoukankan      html  css  js  c++  java
  • Kafka与Flume之集成比较

    Kafka与Flume之集成比较

    一、Kafka与Flume比较

    在企业中必须要清楚流式数据采集框架flume和kafka的定位是什么:
    flume:cloudera公司研发:
      适合多个生产者;
      适合下游数据消费者不多的情况;
      适合数据安全性要求不高的操作;
      适合与Hadoop生态圈对接的操作。
    kafka:linkedin公司研发:
      适合数据下游消费众多的情况;
      适合数据安全性要求较高的操作,支持replication。
    因此我们常用的一种模型是:
      线上数据 --> flume --> kafka --> flume(根据情景增删该流程) --> HDFS

    二、Flume与kafka集成

    1)配置flume(flume-kafka.conf)

    # define
    a1.sources = r1
    a1.sinks = k1
    a1.channels = c1
    
    # source
    a1.sources.r1.type = exec
    a1.sources.r1.command = tail -F -c +0 /home/bigdata/datas/flume.log
    a1.sources.r1.shell = /bin/bash -c
    
    # sink
    a1.sinks.k1.type = org.apache.flume.sink.kafka.KafkaSink
    a1.sinks.k1.kafka.bootstrap.servers = hadoop1:9092,hadoop2:9092,hadoop104:9092
    a1.sinks.k1.kafka.topic = first
    a1.sinks.k1.kafka.flumeBatchSize = 20
    a1.sinks.k1.kafka.producer.acks = 1
    a1.sinks.k1.kafka.producer.linger.ms = 1
    
    # channel
    a1.channels.c1.type = memory
    a1.channels.c1.capacity = 1000
    a1.channels.c1.transactionCapacity = 100
    
    # bind
    a1.sources.r1.channels = c1
    a1.sinks.k1.channel = c1

    2) 启动kafkaIDEA消费者
    3) 进入flume根目录下,启动flume

    $ bin/flume-ng agent -c conf/ -n a1 -f jobs/flume-kafka.conf

    4) 向 /home/bigdata/datas/flume.log里追加数据,查看kafka消费者消费情况

    $ echo hello > /home/bigdata/datas/flume.log
    做自己的太阳,成为别人的光!
  • 相关阅读:
    详解Go变量类型的内存布局
    saltstack手册(含官方pdf)
    Linux之《荒岛余生》(三)内存篇
    linux之网络
    Linux之IO
    【WPF】提高InkAnalyer手写汉字识别的准确率
    mssql 小技巧
    WCF Data Service
    jQuery基础之选择器
    Window程序的安装与部署
  • 原文地址:https://www.cnblogs.com/botaoli/p/15505388.html
Copyright © 2011-2022 走看看