Flume--日志收集

  Flume是一个分布式、高可靠、高可用的日志收集系统。能够有效的收集、聚合、移动大量的日志。把各种类型的数据源采集汇总到各种类型的目的地,flume有一个口号:“我们不生产数据,我们是数据的搬运工。”

  • 那我们怎么去搬运数据呢?让我们想想,那就需要一个入口(采集数据),和一个出口(推送数据),中间再加上一些队列(暂存数据,让数据流动起来),这样一来我们就可以去搬运数据了,自己也可以去实现一个简单的搬运数据的。当然我们已经不需要了,因为大牛已经帮我们实现了就是flume,能采集各种数据(各种source),推动到各种目的地(sink)。下面我们来看看flume的组件结构:
    flume组件

Flume--kafka source启动异常

  • 在flume中配置了一个kafka source的agent。如下:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    # 使用kafka作为一个sources

    # Name the components on this agent
    a1.sources = r1
    a1.sinks = k1
    a1.channels = c1

    # kfka source
    a1.sources.r1.type = org.apache.flume.source.kafka.KafkaSource
    a1.sources.r1.zookeeperConnect = xxo08:2181,xxo09:2181,xxo10:2181##zk集群
    a1.sources.r1.topic = word
    a1.sources.r1.groupId = flume
    a1.sources.r1.kafka.consumer.timeout.ms = 3000

    # Describe the sink
    a1.sinks.k1.type = logger

    # Use a channel which buffers events in memory
    a1.channels.c1.type = memory
    a1.channels.c1.capacity = 1000
    a1.channels.c1.transactionCapacity = 100

    # Bind the source and sink to the channel
    a1.sources.r1.channels = c1
    a1.sinks.k1.channel = c1

游记--晴空万里的阳台山

  周五的时候,好友打来电话,说想出去爆走,正好我也有这个打算,于是让她准备了行程(阳台山),周日出发。周六还下着大雨,查了查天气,周日晴。也刚好是周六的雨造就了周日的晴空万里。——晴空万里的阳台山

行程安排

  - 首次乘坐的地铁:从天通苑6:00出发,乘坐地铁5号线–(惠新西街南口转)–10号线–(海淀黄庄转)–4号大兴线–到达西苑。
  - 从西苑不行4分钟作用到达346公交起始站,到北安河西口下车。

Kafka--Consumer消费者

  Kafka 的 consumer 是以pull的形式获取消息数据的。 producer push消息到kafka cluster ,consumer从集群中pull消息,如下图。该博客主要讲解. Parts在消费者中的分配、以及相关的消费者顺序底层结构元数据信息Kafka数据读取和存储等
   kafka消息生产/消费

Parts在消费者中的分配

  • 首先partition和consumer都会字典排序
  1. 分区Partition从小到大排序:分区顺序是0,1,2,3,4,5,6,7,8,9
  2. 消费者Consumer id按照字典顺序排序:f0b87809-0, f1b87809-0, f1b87809-1

当前网速较慢或者你使用的浏览器不支持博客特定功能,请尝试刷新或换用Chrome、Firefox等现代浏览器