flume中各类channel分析对比

1. 介绍

本文主要参考flume官方文档

根据官方文档,我们主要讨论以下几类channel

memory channel

jdbc channel

kafka channel

file channel

spillable memory channel

pseudo transaction channel

custom channel

2. memory channel

把event放到内存队列当中。使用这种channel会再agent挂掉的时候导致数据丢失。

优点:速度最快的channel、容易配置

缺点:agent挂了会丢数据

3......

使用flume将kafka数据sink到HBase

1. hbase sink介绍

如果还不了解flume请查看我写的其他flume下的博客。

接下来的内容主要来自flume官方文档的学习。

顺便也强烈推荐flume 1.6 官方API

hbase的sink主要有以下两种。两种方式都提供和HBASE一样的一致性保证,即行级原子性

1.1 HbaseSink

agent的配置时提供两种序列化模式:

SimpleHbaseEventSerializer: 将整个事件body部分当做完整的一列写入hbase

RegexHbaseEventSerializer: 根据正则表达式将event body拆分到......

flume从kafka拉消息持久化到hdfs

1. 介绍

本文假设已经成功配置过flume,能够令数据成功持久化到HDFS。如果还不会的,可以参看我的文章使用flume将avro源的数据写入HDFS

本节接下来将介绍如何从kafka source到hdfs sink的操作

2. flume配置

注意在这个过程当中, flume承担consumer的角色。如果存在多个消费者,注意把他们配置在同一个消费者组中,以免出问题!!

# ------------------- 定义数据流----------------------

# source的名字

agent.sources = kafkaSource

# chann......