栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

sqoop抽数、推数(关系型数据库:oracle; 数仓:impala)

sqoop抽数、推数(关系型数据库:oracle; 数仓:impala)

1.从Oracle抽数到impala

#!/bin/sh

source /etc/profile

source ~/.bash_profile

sqoop import --connect jdbc:mysql://ip:3306/数据库名称

--username 用户名称 --password 密码  --table '表名'     

--columns 'columns1,colums2,colums3'

--target-dir /FINBB/ODS/表名

--delete-target-dir

--fields-terminated-by '01'

--lines-terminated-by 'n'

--null-string '\N'

--null-non-string '\N'

--hive-drop-import-delims

--num-mappers 1

[ $? -eq 0 ] || exit

impala-shell -q 'refresh 库名.表名;'

参数含义注释:

1)--target-dir:导入HDFS的目标路径

2)--null-string:字符串类型如果为null,替换成指定字符串

3)  --null-non-string:非字符串类型如果为null,替换成指定字符串

4)  --delete-target-dir:如果指定目录存在,则先删除掉

5)  --columns:从表中导出指定的一组列的数据

6)--hive-drop-import-delims:导入到hive时删除 n, r, and 1

2.从impala倒数到oracle

#!/bin/bash

source /etc/profile

source ~/.bash_profile

sqoop eval -connect jdbc:oracle:thin:@//ip:1521/数据库名称

-username 用户名   -password  密码  --e  "TRUNCATE TABLE 表名"            

[[   $? -eq 0 ]] || exit

sqoop export  --connect  jdbc:oracle:thin:@//ip:1521/数据库名称       

--username  用户名   --password 密码                           

--table  表名                                                                     

--columns "colum1,colum2,colum3"                               

--fields-terminated-by      '01'                                     

--hcatalog-database            数据库名称       --hcatalog-table     表名       --num-mappers 8

参数含义注释:

1)sqoop  eval:可使用SQL语句对关系数据库进行操作。后面接  –e或者 –query
查询数据实例

2)  --table:要导入到的关系数据库表

3)  --columns:导出的字段

4)  --hcatalog-database:指定database

5)  --hcatalog-table:指定hive表名

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/758545.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号