簡體   English   中英

如何將Kafka主題加載到HDFS?

[英]how to load a Kafka topic to HDFS?

我正在使用hortonworks沙箱。
創建主題

./kafka-topics.sh --create --zookeeper 10.25.3.207:2181 --replication-factor 1 --partitions 1 --topic lognew  

拖尾apache訪問日志目錄

tail -f  /var/log/httpd/access_log |./kafka-console-producer.sh --broker-list 10.25.3.207:6667 --topic lognew  

在另一個終端(kafka bin)啟動消費者

./kafka-console-consumer.sh --zookeeper 10.25.3.207:2181 --topic lognew --from-beginning  

apache訪問日志將發送到kafka主題“ lognew ”。

我需要將它們存儲到HDFS。
有關如何執行此操作的任何想法或建議。

提前致謝。
Deepthy

我們使用camus

Camus是LinkedIn開發的一個簡單的MapReduce工作,用於將數據從Kafka加載到HDFS中。 它能夠將數據從Kafka逐步復制到HDFS中,這樣MapReduce作業的每次運行都會在前一次運行停止的地方進行。 在LinkedIn,Camus習慣於每天從Kafka向HDFS加載數十億條消息。

但看起來它已經被gobblin取代了

Gobblin是一種通用數據提取框架,用於從各種數據源(例如數據庫,其他API,FTP / SFTP服務器,文件管理器等)中提取,轉換和加載大量數據到Hadoop上。 Gobblin處理所有數據提取ETL所需的常見例程任務,包括作業/任務調度,任務分區,錯誤處理,狀態管理,數據質量檢查,數據發布等.Gobblin在同一執行框架中從不同數據源提取數據,並在一個地方管理不同來源的元數據。 這與其他功能相結合,如自動可擴展性,容錯性,數據質量保證,可擴展性以及處理數據模型演變的能力,使Gobblin成為一個易於使用,自助服務,高效的數據提取框架。

您還有其他幾個選項:

  • 使用Apache Flume從Kafka讀取消息並將其寫入HDFS。 有幾個例子說明如何設置它,但Cloudera的一篇文章很好地介紹了這個主題。 他們甚至將解決方案命名為Flafka;)
  • 使用Kafka HDFS Connector ,設置起來非常簡單。 但是,它需要Confluent Kafka(仍然是開源的)。

我們測試得非常成功。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM