簡體   English   中英

如何使用flume從mysql讀取數據?

[英]How to use flume to read data from mysql?

如何使用flume從mysql連續讀取加載到hbase?

我熟悉sqoop但我需要從mysql源繼續這樣做。 是否需要有自定義源來執行此操作?

有很多方法可以做到這一點,但我會編寫一個腳本,從MySQL獲取數據並為每個生成Avro事件。

然后,您可以使用內置Avro源接收此數據,並將其發送到HDFS接收器。

Sqoop適用於從RDBMS到HDFS / Hive / HBase的批量導入。 如果它只是一次導入,它非常好,它做了它在紙上的承諾。 但是,當您想要實時增量更新時,問題就出現了。 Sqoop支持兩種類型的增量更新:

附加,這個允許您重新運行sqoop作業,並且每個新作業從最后一個舊作業結束的地方開始。 例如。 第一個sqoop作業只導入行0-100,然后下一個作業將從101開始 - 基於--last-value = 100。 但即使0-100已更新,追加模式也不會再覆蓋它們。

最后修改過,這個更糟糕的是恕我直言,它要求源表有一個時間戳字段,表示該行何時上次更新。 然后根據時間戳,它執行增量更新導入。 如果源表沒有這樣的東西,那么這個沒用。

我會說,如果您確實掌握了源數據庫,可以使用Sqoop進行最后修改模式。

暫無
暫無

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

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