我正面临着一个奇怪的问题。我发现大多数地方在使用lastmodified时会将旧文件和新文件合并以删除重复文件。在我的情况下,它并没有发生。
我用过:
sqoop import --connect "jdbc:mysql://<hostname>:3306/<dbname>" --username root -password password --table LoginRoles --hive-import --create-hive-table --hive-table LoginRoles --hive-delims-replacement " "
创建了表格,并在/user/hive/warehouse
位置正确加载了数据。
LoginRoleId LoginRole CreatedDate ModifiedDate
1 admin1 2013-09-30 14:21:28 2013-09-30 16:03:39
2 admin2 2013-09-30 14:36:23 2013-09-30 15:53:19
3 admin3 2013-09-30 14:39:13 2013-09-30 14:39:13
4 admin5 2013-09-30 14:40:55 2013-09-30 14:40:55
'2013-09-30
17:03:44'
update loginroles set ModifiedDate=now(),loginrole="admin4" where LoginRoleID=4;
Sqoop job -exec mymodified
sqoop job --create mymodified -- import --connect "jdbc:mysql://<hostname>:3306/<dbname>" --username root -password password --table LoginRoles --hive-import --hive-table LoginRoles --hive-delims-replacement " " --check-column ModifiedDate --incremental lastmodified --last-value '2013-09-30 16:03:39'
我在hive中看到总共5行,如下所示。
1 admin1 2013-09-30 14:21:28.0 2013-09-30 16:03:39.0
4 admin4 2013-09-30 14:40:55.0 2013-09-30 17:03:44.0
2 admin2 2013-09-30 14:36:23.0 2013-09-30 15:53:19.0
3 admin3 2013-09-30 14:39:13.0 2013-09-30 14:39:13.0
4 admin5 2013-09-30 14:40:55.0 2013-09-30 14:40:55.0
我确信我遗漏了一些重要且微妙的东西。
使用的sqoop的版本详细信息
Sqoop 1.4.3-cdh4.3.0
git commit id 7a52f9aa97cba43aae8b700f7e93f97dcdb0b21a
Compiled by jenkins on Mon May 27 20:33:21 PDT 2013
答案 0 :(得分:0)
这种方法在这个时间点不起作用。我已经发布在cloudera谷歌组,现在这不会工作。我将不得不使用变通方法来创建暂存文件夹并清理它们。以下链接帮助我解决了这个问题。
http://himanshubaweja.com/post/7529434265/analytics-reached-mysql-limit-lets-hive