Rai*_*nod 5 mysql hadoop hdfs sqoop
我有这样的文件:
1^%~binod^*~1^%~ritesh^*~1^%~shisir^*~1^%~budhdha^*~1^%~romika^*~1^%~rubeena^*~
Run Code Online (Sandbox Code Playgroud)其中--input-fields-terminated-by'^%〜' - 输入行 - 终止 - 由'^*〜'.
我试图通过命令导出:
sqoop export --connect jdbc:mysql://localhost/sqoop --username root -P --table makalu --export-dir sqoop/makalu --input-fields-terminated-by '^%~' --input-lines-terminated-by '^*~'
Run Code Online (Sandbox Code Playgroud)但它写了一行:
id|name 1|%~binod
在MySQL中.
参数--input-fields-termminate-by和--input-lines-termminate-by接受单个字符
当您在终端中执行导出命令时,您可以看到以下警告
02/03 18:55:21 WARN sqoop.SqoopOptions: Character argument ^%~ has multiple characters; only the first will be used.
15/02/03 18:55:21 WARN sqoop.SqoopOptions: Character argument ^*~ has multiple characters; only the first will be used.
Run Code Online (Sandbox Code Playgroud)
我观察到的一件事是,如果行终止而不是 \n 或新行,那么在导出时它只会将一条记录插入数据库。我尝试了与字段和行终止的组合,但仅在行终止于 \n 的情况下将数据导出到 RDBMS 表中
甚至尝试使用--input-lines-termminate-by和--lines-termminate-by参数,但没有运气。
我已经测试过了
Cloudera CDH-5.0.0-1
Sqoop version: 1.4.4-cdh5.0.0
Run Code Online (Sandbox Code Playgroud)
我唯一能找到的就是这个。
| 归档时间: |
|
| 查看次数: |
2959 次 |
| 最近记录: |