LinkedIn Camus踩坑记录
首先,介绍下Camus吧。
由LinkedIn公司开发的消息队列同步框架,提供将Kafka(一种消息队列框架)的数据装载到Hadoop分布式文件系统(HDFS)的功能。
英文版原文出处:英文版出处
简单来说camus其实底层还是执行的mapreduce,一个将kafka数据拉取hdfs的工具。这个工具相对来说比较小众,但是好处就是使用简单,学习成本低,相对来说跑的是mapreduce还是比较稳定安全的,美团等大厂也有在使用该工具,并对其进行二次开发使用。
同时介绍几个与Camus类似的组件,可参考类似组件这篇文章。
基础使用篇的话我后面补上,先说下我的踩坑记录吧,毕竟排查加解决花费了整整一天的时间,还是值得记录下来的.
背景介绍:当时由于某些原因,需要处理历史数据并入到hive表,历史数据时间跨度三年,数据量3T左右,我这边处理的流程是filebeat->kafka->sparkstreaming->kafka这样一个流程,最后通过camus去拉取kafka对应topic的数据到hdfs(hdfs文件以天为单位进行分区以方便load到hive表中)。从kafka拉取下来的文件到hdfs大致是这样的: