--connect "jdbc:mysql://x.x.x.x:3306/easytest" \ --username xxx \ --password xxx \ --table xxx \ --null-string easytest1 \ --hive-table test1 \ --target-dir /tmp/easytest/test1 注:--target-dir目录不能已经存在,否则会报错 --null-string <null-string>如果指定列为字符串类型,使用指定字符串替换值为null的该类列的值 --null-non-string <null-string>如果指定列为非字符串类型,使用指定字符串替换值为 null的该类列的值 使用限制:导入的hive目标表需要提前建好,sqoop的方式是设定了'\N'来表示NULL值,若本身源数据中存了'\N',则不能使用"\N"来代替NULL,需要修改--null-string
. \ --delete-target-dir \ --fields-terminated-by '\t' \ --hive-drop-import-delims \ --null-string '\\ hive-database hive_db_name \ --hive-table hive_table_name \ --fields-terminated-by '\t' \ --hive-overwrite \ --null-string hive_db_name \ --create-hive-table \ --hive-table hive_table_name \ --fields-terminated-by '\t' \ --null-string hive_db_name \ --hive-table hive_table_name \ --hive-drop-import-delims \ --fields-terminated-by '\t' \ --null-string \ --table mysql_table_name \ --target-dir /user/hive/warehouse/hive_db_name.db/hive_table_name \ --null-string
clause> where条件 -z,--compress Enable compression --compression-codec <c> 压缩方式,默认是gzip --null-string <null-string> 字符列null值 --null-non-string <null-string> 非字符列null值 export主要参数 --direct 快速导入 --input-null-string <null-string> 字符类型null处理 --input-null-non-string <null-string> 非字符类型null处理
dwd_icc_clnt_bkinfo --hive-database dsc_dwd --hive-table dwd_icc_clnt_bkinfo --hive-import --hive-overwrite --null-string raw_datas --hive-table a_RMPS_rmps_TM_RULE_20151230 --hive-import -m 1 --hive-delims-replacement \30 --null-string
<where clause> 指定导出时所使用的查询条件 -z,--compress 启用压缩 --compression-codec <c> 指定Hadoop的codec方式(默认gzip) --null-string <null-string> 如果指定列为字符串类型,使用指定字符串替换值为null的该类列的值 --null-non-string <null-string> 如果指定列为非字符串类型,使用指定字符串替换值为
<where clause> 指定导出时所使用的查询条件 -z,--compress 启用压缩 --compression-codec <c> 指定Hadoop的codec方式(默认gzip) --null-string <null-string> 果指定列为字符串类型,使用指定字符串替换值为null的该类列的值 --null-non-string <null-string> 如果指定列为非字符串类型,使用指定字符串替换值为
during import -z,--compress Enable compression --compression-codec <c> Use Hadoop codec (default gzip) --null-string <null-string> The string to be written for a null value for string columns --null-non-string <null-string
last-value 0 --check-column id hive空值处理 sqoop会自动把NULL转换为null处理,但是hive中默认是把\N来表示null,因为预先处理不会生效,我们需要使用 --null-string --null-string '\\N' --null-non-string '\\N' Sqoop导入hive若不加hive-overwirte,会留下hadoop目录,对下次若执行相同任务有影响。
delete-target-dir \ --query "$2 and \$CONDITIONS" \ --num-mappers 1 \ --fields-terminated-by ',' \ --null-string 表示删除已经存在的目录,否则如果目录存在报错 #query表示查询导入的sql语句,num-mappers表示使用的map个数 #fields-terminated-by表示在hdfs上用什么分割字段 #null-string user/root/shop/$1/$JOB_DATE \ --delete-target-dir \ --num-mappers 1 \ --fields-terminated-by ',' \ --null-string root \ --target-dir /user/root/shop/$1/$JOB_DATE \ --num-mappers 1 \ --fields-terminated-by ',' \ --null-string root \ --target-dir /user/root/shop/$1/$JOB_DATE \ --num-mappers 1 \ --fields-terminated-by ',' \ --null-string
db_hive.db/DEST_TABLE_NAME \ --input-fields-terminated-by '\t' \ --input-lines-terminated-by '\n' \ --null-string
18 --compression-codec 指定hadoop压缩编码类,默认为gzip(Use Hadoop codec default gzip) 19 --null-string <null-string> string类型的列如果null,替换为指定字符串 20 --null-non-string <null-string> 非string类型的列如果 对某一列的字段进行更新操作 6 --update-mode <mode> updateonly allowinsert(默认) 7 --input-null-string <null-string > 请参考import该类似参数说明 8 --input-null-non-string <null-string> 请参考import该类似参数说明 9 - name=String 8 --null-non-string <null-str> 在生成Java文件时,可以将不存在或者null的字符串设置为其他值 9 --null-string
people \ --fields-terminated-by ',' \ --target-dir /user/hive/warehouse/cust \ --delete-target-dir \ --null-string
--compress 允许压缩 18 --compression-codec 指定 hadoop 压缩编码类,默认为 gzip(Use Hadoop codec default gzip) 19 --null-string < null-string> string 类型的列如果 null,替换为指定字符串 20 --null-non-string < null-string> 非 string 类型的列如果 null, col-name> 对某一列的字段进行更新操作 6 --update-mode < mode> updateonly,allowinsert(默认) 7 --input-null-string < null-string > 请参考import该类似参数说明 8 --input-null-non-string < null-string> 请参考import该类似参数说明 9 --staging-table < staging-table-name map-column-java id=long, name=String 8 --null-non-string < null-str> 在生成 Java 文件时,可以将不存在或者 null 的字符串设置为其他值 9 --null-string
tablename --table $tablename --columns $columns \ --hive-drop-import-delims --delete-target-dir -m 1 --null-string
导入数据时采用–null-string和–null-non-string。
类型匹配,sql类型对应到hive类型 15.hive空值处理 sqoop会自动把NULL转换为null处理,但是hive中默认是把\N来表示null,因为预先处理不会生效的 我们需要使用 --null-string --null-string '\\N' --null-non-string '\\N' 16.导入数据到hbase 导入的时候加上--hbase-table,它就会把内容导入到hbase当中,默认是用主键作为
You should append parameters --null-string and --null-non-string in case of import job or --input-null-string --null-string '\\N' --null-non-string '\\N' Importing Data Into HBase By specifying --hbase-table, you
类型匹配,sql类型对应到hive类型 hive空值处理 sqoop会自动把NULL转换为null处理,但是hive中默认是把\N来表示null,因为预先处理不会生效的我们需要使用 --null-string --null-string '\\N' --null-non-string '\\N' 在hive中创建一张表 drop table if exists db_1206.h_user ; create
col-name> 对某一列的字段进行更新操作 6 --update-mode <mode> updateonly allowinsert(默认) 7 --input-null-string <null-string > 请参考import该类似参数说明 8 --input-null-non-string <null-string> 请参考import该类似参数说明 9 --staging-table <staging-table-name map-column-java id=long, name=String 8 --null-non-string <null-str> 在生成Java文件时,可以将不存在或者null的字符串设置为其他值 9 --null-string
mysql://hadoop0:3306/hive --username root --password admin --table TBLS --fields-terminated-by '\t' --null-string mysql://hadoop0:3306/hive --username root --password admin --table TBLS --fields-terminated-by '\t' --null-string