sqoop
炼气散人
等儿子高考后,或许会回来
展开
-
sqoop 使用指定条件导入数据
在测试sqoop语句的时候,一定要限制记录数量,否则就像我刚才,等了1个多小时,才看到测试结果。sqoop-import --options-file media_options.txt --table my_table --where "ID = 2" --target-dir /user/jenkins/bigdata/import/20140607 -m 1 --fields-ter原创 2014-06-07 17:37:47 · 8323 阅读 · 0 评论 -
sqoop 导入数据到HDFS注意事项
今天碰到不少问题,记录一下。分割符的方向问题首先sqoop的参数要小心, 从数据库导出数据,写到HDFS的文件中的时候,字段分割符号和行分割符号必须要用--fields-terminated-by而不能是--input-fields-terminated-by--input前缀的使用于读文件的分割符号,便于解析文件,所以用于从HDFS文件导出到某个数据库的场景。两个方向不一样。参数必须用单引号括起原创 2014-06-07 17:34:53 · 9457 阅读 · 1 评论 -
sqoop导入时删除string类型字段的特殊字符
如果你指定了\n为sqoop导入的换行符,mysql的某个string字段的值如果包含了\n, 则会导致sqoop导入多出一行记录。有一个选项--hive-drop-import-delimsDrops \n, \r, and \01 from string fields when importing to Hive.这样\n \r 和\01都被自动删除,不会捣乱了。原创 2014-06-08 19:11:19 · 6267 阅读 · 0 评论 -
sqoop 从mysql导入hive的字段名称问题
hive中有些关键字限制,因此有些字段名称在mysql中可用,但是到了hive就不行。比如order必须改成order1, 下面列出了我们发现的一些不能在hive中使用的字段名称order => order1sort => sort1reduce => reduce1cast => cast1directory => directory1原创 2014-07-19 08:22:50 · 5585 阅读 · 0 评论 -
sqoop导入数据时间日期类型错误
一个问题困扰了很久,用sqoop import从mysql数据库导入到HDFS中的时候一直报错,最后才发现是一个时间日期类型的非法值导致。hive只支持timestamp类型,而mysql中的日期类型是datetime, 当datetime的值为0000-00-00 00:00:00的时候,sqoop import无法将其转换成hive, 然后报错。解决方法是在hive中使用string字段类型。原创 2014-07-14 20:31:54 · 9520 阅读 · 0 评论