作者:Syn良子 出处:http://www.cnblogs.com/cssdongl 转载请注明出处
找时间总结整理了下数据从Kafka到Hdfs的一些pipeline,如下
1> Kafka -> Flume –> Hadoop Hdfs
常用方案,基于配置,需要注意hdfs小文件性能等问题.
GitHub地址:
2> Kafka -> Kafka Hadoop Loader ->Hadoop Hdfs
Kafka Hadoop Loader通过为kafka Topic下每个分区建立对应的split来创建task实现增量的加载数据流到hdfs,上次消费的partition offset是通过zookeeper来记录的.简单易用.
GitHub地址:
3> Kafka -> KaBoom -> Hadoop Hdfs
KaBoom是一个借助Krackle(开源的kafka客户端,能极大的减少对象的创建,提高应用程序的性能)来消费kafka的Topic分区数据随后写如hdfs,利用Curator和Zookeeper来实现分布式服务,能够灵活的根据topic来写入不同的hdfs目录.
GitHub地址:
4> Kafka -> Kafka-connect-hdfs -> Hadoop Hdfs
Confluent的Kafka Connect旨在通过标准化如何将数据移入和移出Kafka来简化构建大规模实时数据管道的过程。可以使用Kafka Connect读取或写入外部系统,管理数据流并扩展系统,而无需编写新代码.
GitHub地址:
5> Kafka -> Gobblin -> Hadoop Hdfs
Gobblin是LinkedIn开源的一个数据摄取组件.它支持多种数据源的摄取,通过并发的多任务进行数据抽取,转换,清洗,最终加载到目标数据源.支持单机和Hadoop MR二种方式,而且开箱即用,并支持很好的扩展和二次开发.
GitHub地址:
参考资料: