使用Sqoop将Oracle数据导入Hive

使用Sqoop将Oracle数据导入Hive的核心指令是,这段是我经常用的,有些地方做了处理

sqoop import 
--connect jdbc:oracle:thin:eas/eas@192.168.100.199:1521:eas   
--table TMP_NEEDCLEAN_PROVIDER2 
--hive-import --hive-database xxx 
--hive-table RPT_PROVIDER_NEEDCLEAN2   
--hive-overwrite 
--delete-target-dir 
--hive-drop-import-delims 
--null-string '' --null-non-string ''
 -m1 

1.–hive-database xxx 是指定hive库

2.–hive-overwrite 是覆盖表,因为hive的表,不支持原子级别的操作,一般都是全表覆盖的方式导入,看需要

  1. –hive-drop-import-delims是关于导入的标记的,删除记号是\0x01行分割是用 (\n\r)

4.关于–null-string和–null-non-string,

–null-string的含义是 string类型的字段,当Value是NULL,替换成指定的字符,该例子中为” <-数据库那种空值

–null-non-string的含义是非string类型的字段,当Value是NULL,替换成指定字符,该例子中为”<-数据库那种空值

如果用mysql,可以用

sqoop import 
--connect jdbc:mysql://localhost:3306/sqoop 
--username root 
--password root 
--table student 
--null-string '@@@' 
--null-non-string '###'

你可能感兴趣的:(大数据)