sqoop 数据导入hive
一. sqoop: mysql->hive
sqoop import -m 1 --hive-import --connect "jdbc:mysql://127.0.0.1:3306/TEST?zeroDateTimeBehavior=CONVERT_TO_NULL&useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai" --username sa --password-file /user/root/_sqoop/pwd127.txt --table user --hive-database TEST --hive-table user
这里jdbc url后面跟了一些连接参数,看情况可有可无;
二.sqoop: oracle->hive
# 使用oracle 服务名jdbc url
sqoop import --connect jdbc:oracle:thin:@//127.0.0.1:1521/ORCL --username sa --password 123456 --table TEST.user--hive-import --hive-database test --hive-table user -m 1
# 使用oracle SID jdbs url
sqoop import --connect jdbc:oracle:thin:@127.0.0.1:1521:ORCL --username sa --password 123456 --table TEST.user --hive-import --hive-database test --hive-table user -m 1
三.建立增量任务
1.启动sqoop metastore服务存储job
sqoop metastore
2.创建增量任务
sqoop job [metastore] --create <job_name> -- <import_task> --incremental append --check-column id --last-value <last_id> sqoop job --meta-connect jdbc:hsqldb:hsql://192.168.1.70:16000/sqoop --create sync_test -- \
import -m 1 --hive-import --connect "jdbc:mysql://192.168.1.196:3306/TEST" --username sa --password-file /user/root/_sqoop/pwd127.txt --table user --hive-database TEST --hive-table user \
--incremental append --check-column id --last-value 0
TIPS: 不指定metastore时默认使用本地的hsql,分布式的时候不可用;
--check-cloumn 须要是 not null ,有序字段
--last-value 如果是第一次导入可以是 0,(一开始就使用增量导入)
3.运行任务
sqoop job [metastore] --exec <job_name>
sqoop job --meta-connect jdbc:hsqldb:hsql://192.168.1.70:16000/sqoop --exec sync_test
sqoop job [metastore] --list 可以查看任务列表
四,HUE 任务
1.建立workflow;
2.在workspace 空间中建立sh文件
3.在sh中写入增量任务命令::sqoop job --meta-connect jdbc:hsqldb:hsql://192.168.1.70:16000/sqoop --exec sync_test
4.再编辑workflow 添加shell组件,选择workspace中的sh文件, 测试
5.建立schedule,将workflow添加进来,编辑运行规则;

更多细节可参考:
https://www.cnblogs.com/canyangfeixue/p/4731520.html
.http://archive.cloudera.com/cdh/3/sqoop/SqoopUserGuide.html
sqoop 数据导入hive的更多相关文章
- 使用sqoop把mysql数据导入hive
使用sqoop把mysql数据导入hive export HADOOP_COMMON_HOME=/hadoop export HADOOP_MAPRED_HOME=/hadoop cp /hive ...
- sqoop数据导入到Hdfs 或者hive
用java代码调用shell脚本执行sqoop将hive表中数据导出到mysql http://www.cnblogs.com/xuyou551/p/7999773.html 用sqoop将mysql ...
- 将数据导入hive,将数据从hive导出
一:将数据导入hive(六种方式) 1.从本地导入 load data local inpath 'file_path' into table tbname; 用于一般的场景. 2.从hdfs上导入数 ...
- 042 将数据导入hive,将数据从hive导出
一:将数据导入hive(六种方式) 1.从本地导入 load data local inpath 'file_path' into table tbname; 用于一般的场景. 2.从hdfs上导入数 ...
- python脚本 用sqoop把mysql数据导入hive
转:https://blog.csdn.net/wulantian/article/details/53064123 用python把mysql数据库的数据导入到hive中,该过程主要是通过pytho ...
- sqoop mysql导入hive 数值类型变成null的问题分析
问题描述:mysql通过sqoop导入到hive表中,发现有个别数据类型为int或tinyint的列导入后数据为null.设置各种行分隔符,列分隔符都没有效果. 问题分析:hive中单独将有问题的那几 ...
- [hadoop读书笔记] 第十五章 sqoop1.4.6小实验 - 将mysq数据导入hive
安装hive 1.下载hive-2.1.1(搭配hadoop版本为2.7.3) 2.解压到文件夹下 /wdcloud/app/hive-2.1.1 3.配置环境变量 4.在mysql上创建元数据库hi ...
- sqoop数据导入命令 (sql---hdfs)
mysql------->hdfs sqoop导入数据工作流程: sqoop提交任务到hadoop------>hadoop启动mapreduce------->mapreduce通 ...
- Sqoop 数据导入导出实践
Sqoop是一个用来将hadoop和关系型数据库中的数据相互转移的工具,可以将一个关系型数据库(例如:mysql,oracle,等)中的数据导入到hadoop的HDFS中,也可以将HDFS的数据导入到 ...
随机推荐
- input框金额输入验证
金额输入要求:只能是数字且小数点后保留两位小数 html <input type="text" min="10" id="dc-moneyInp ...
- grep正则表达式(一)
新建一批 txt 文件: [me@linuxbox ~]$ ls /bin > dirlist-bin.txt [me@linuxbox ~]$ ls /usr/bin > dirlist ...
- Appium API文档中文版
传送门 https://testerhome.com/topics/3144
- [CSP-S模拟测试]:异或(树状数组+LCA)
题目传送门(内部题21) 输入格式 第一行一个字符串$str$,表示数据类型.第二行一个正整数$k$,表示集合$K$的大小,保证$k>1$.接下来$k$行每行$k$个数,第$i$行第$j$个数表 ...
- 前端每日实战:19# 视频演示如何用纯 CSS 创作一种有削铁如泥感觉的菜单导航特效
效果预览 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/XqYroe 可交互视频教程 此视频 ...
- python中的单例模式及其实现
单例模式(Singleton Pattern)是一种常用的软件设计模式,该模式的主要目的是确保某一个类只有一个实例存在. 当你希望在整个系统中,某个类只能出现一个实例时,单例对象就能派上用场. 比如, ...
- PyQuery爬取历史天气信息
1.准备工作: 网址:https://lishi.tianqi.com/xian/index.html 爬虫类库:PyQuery,requests 2.网页分析: 红线部分可更改为需要爬取的城市名,如 ...
- php关键字static使用
php中static关键字使用: 情景1:静态变量 使用static关键字定义静态变量 静态变量:只存在于函数作用域内,也就是说,静态变量只存活在栈中.一般的函数内变量在函数结束后会释放,比如局部变量 ...
- mysql的windows客户端链接远程全套案例
我是linux 的服务器,navicat12的客户端, 开始链接的时候需要开服务器上得对外爆漏端口 3306,方法: 添加指定需要开放的端口: firewall-cmd --add-port=/tcp ...
- Microsoft Office Excel
解除合并,并复制原始值到每一个解除合并后的单元格 对齐方式 -> 合并后居中 -> 取消单元格合并 编辑 -> 查找和选择 -> 定位条件 -> 空值 输入=然后按↑选择 ...