Flume学习04 — Sink
Flume提供了大量的Sink,下面主要介绍HDFS Sink、Avro Sink、Thrift Sink、Kafka Sink、HBase Sink。类型说明
HDFS Sink数据写入HDFS。
Logger Sink数据写入日志文件。
Avro Sink数据被转换成Avro Event,然后发送到配置的RPC端口上。
Thrift Sink数据被转换成Thrift Event,然后发送到配置的RPC端口上。
IRC Sink数据在IRC上进行回放。
File Roll Sink存储数据到本地文件系统。
Null Sink丢弃掉所有数据。
HBase Sink数据写入HBase数据库。
Morphline Solr Sink数据发送到Solr搜索服务器(集群)。
ElasticSearch Sink数据发送到Elastic Search搜索服务器(集群)。
Kite Dataset Sink写数据到Kite Dataset,试验性质的。
Custom Sink自定义Sink。
Hive Sink数据写入Hive。
Kafka Sink把数据写入Kafka Topic中。
HDFS Sink
HDFS Sink直接把Event数据写入Hadoop Distributed File System(HDFS)。HDFS Sink支持输出文本文件(text file)和序列文件(sequence file),同时还可以对数据进行压缩。数据文件可以根据固定时间间隔、文件大小或者Event数据数量创建。HDFS Sink需要Hadoop支持。
配置项默认值说明
channels与Source连接的通道名称。
typehdfs
Hdfs.pathHDFS路径
HDFS Sink参考配置
a1.channels = c1
a1.sinks = k1
a1.sinks.k1.type = hdfs
a1.sinks.k1.channel = c1
a1.sinks.k1.hdfs.path = /flume/events/%y-%m-%d/%H%M/%S
a1.sinks.k1.hdfs.filePrefix = eventsa1.sinks.k1.hdfs.round = true
a1.sinks.k1.hdfs.roundValue = 10
a1.sinks.k1.hdfs.roundUnit = minute
Kafka Sink
Kafka Sink是Flume内置的Sink,只要稍微做配置,就可以把Event直接输出到Kafka Topic中,目前Flume支持Kafka 0.8.x系列。
配置项默认值说明
typeorg.apache.flume.sink.kafka.KafkaSink
brokerListKafka Sink连接的Broker列表
topicdefault-flume-topicKafak发布Event的Topic
Kafka Sink参考配置
a1.sinks.k1.type = org.apache.flume.sink.kafka.KafkaSink
a1.sinks.k1.topic = mytopic
a1.sinks.k1.brokerList = localhost:9092
a1.sinks.k1.requiredAcks = 1
a1.sinks.k1.batchSize = 20
a1.sinks.k1.channel = c1
Avro Sink
把数据转成Avro Event格式,并发送到指定Avro端口,Event数据会批量发送,每次发送的数量可以在batch-size中设置。
配置项默认值说明
channelsink接收数据的channel
typesink类型,必须为avro
hostname服务器地址
port监听端口
Avro Sink参考配置
a1.channels = c1
a1.sinks = k1
a1.sinks.k1.type = avro
a1.sinks.k1.channel = c1
a1.sinks.k1.hostname = 10.10.10.10
a1.sinks.k1.port = 4545
Thrift Sink
Thrift Sink和Avro Sink类似,把数据转成Thrift Event格式,并发送到指定Thrift端口,Event数据会批量发送,每次发送的数量可以在batch-size中设置。Thrift Sink支持安全模式,可以在配置文件中设置。
配置项默认值说明
channelsink接收数据的channel
typesink类型,必须为thrift
hostname服务器地址
port监听端口
Thrift Sink参考配置
a1.channels = c1
a1.sinks = k1
a1.sinks.k1.type = thrift
a1.sinks.k1.channel = c1
a1.sinks.k1.hostname = 10.10.10.10
a1.sinks.k1.port = 4545
HBase Sink
HBase Sink分为同步(HBaseSink)和异步(AsyncHBaseSink)。
页:
[1]