2016-08-24 60 views
0

我正試圖在HDFS中導入更新的記錄。之前我在HDFS中有三個部分文件。當我在工具下運行時,它提供了一個錯誤,即需要合併密鑰。用合併密鑰修改的sqoop增量

sqoop import --table employee --username training --password training --connect jdbc:mysql://localhost/loudacre --incremental lastmodified --check-column modified --last-value '2016-08-22 19:02:41'

然而,當我用合併鍵選項我只能看到部分文件與它的所有記錄。

回答

0

這是預計我猜。一般而言,合併工具在使用--incremental lastmodified模式進行增量導入後運行。

合併數據集時,假設每個記錄中都有一個唯一的主鍵值(提及爲--merge-key)。

合併工具將運行mapreduce作業,將所有數據集合併成一個,爲每個--merge-key取最新的可用行。

查看sqoop docs瞭解更多詳情。

+0

有沒有辦法避免this.I的意思只是從數據庫中獲取修改字段和使用lastmodified更新HDFS。 –

+0

@Deepak_Spark_Beginner我沒有明白你的意思。 –