Kafka到Hdfs的數據Pipeline整理


作者:Syn良子 出處:http://www.cnblogs.com/cssdongl 轉載請注明出處

找時間總結整理了下數據從Kafka到Hdfs的一些pipeline,如下

1> Kafka -> Flume –> Hadoop Hdfs

常用方案,基於配置,需要注意hdfs小文件性能等問題.

GitHub地址:  https://github.com/apache/flume

2> Kafka -> Kafka Hadoop Loader ->Hadoop Hdfs

Kafka Hadoop Loader通過為kafka Topic下每個分區建立對應的split來創建task實現增量的加載數據流到hdfs,上次消費的partition offset是通過zookeeper來記錄的.簡單易用.

GitHub地址:  https://github.com/michal-harish/kafka-hadoop-loader

3> Kafka -> KaBoom -> Hadoop Hdfs

KaBoom是一個借助Krackle(開源的kafka客戶端,能極大的減少對象的創建,提高應用程序的性能)來消費kafka的Topic分區數據隨后寫如hdfs,利用Curator和Zookeeper來實現分布式服務,能夠靈活的根據topic來寫入不同的hdfs目錄.

GitHub地址:  https://github.com/blackberry/KaBoom

4> Kafka -> Kafka-connect-hdfs -> Hadoop Hdfs

Confluent的Kafka Connect旨在通過標准化如何將數據移入和移出Kafka來簡化構建大規模實時數據管道的過程。可以使用Kafka Connect讀取或寫入外部系統,管理數據流並擴展系統,而無需編寫新代碼.

GitHub地址:  https://github.com/confluentinc/kafka-connect-hdfs

5> Kafka -> Gobblin -> Hadoop Hdfs

Gobblin是LinkedIn開源的一個數據攝取組件.它支持多種數據源的攝取,通過並發的多任務進行數據抽取,轉換,清洗,最終加載到目標數據源.支持單機和Hadoop MR二種方式,而且開箱即用,並支持很好的擴展和二次開發.

GitHub地址:  https://github.com/linkedin/gobblin

參考資料:

https://www.confluent.io/blog/how-to-build-a-scalable-etl-pipeline-with-kafka-connect

http://gobblin.readthedocs.io/en/latest/Getting-Started/

http://gobblin.readthedocs.io/en/latest/case-studies/Kafka-HDFS-Ingestion/

https://github.com/confluentinc/kafka-connect-blog

http://docs.confluent.io/3.1.1/connect/connect-hdfs/docs/index.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM