Sqoop学习笔记_Sqoop的基本使用二(sqoop的import与export)
Sqoop抽取从mysql抽取到hive
sqoop抽取到mysql一样有两种方式一种是用command line的方式,一种是用sqoop opt文件调用的方式。(由于两种sqoop一已经记录了,现在主要是利用opt的方式)
一、从hive到mysql,如果hive对应表如果没有分区字段的话配置如下(参数要根据实际情况更改)
fileName:test-hive.opt
import
--connect
"jdbc:mysql://master:3306/test"
--username
root
--password
123456
--table
"rpt_sale_daily"
--columns
"dateid,huodong,pv,uv"
--where
"dateid='2015-08-28'"
--hive-import
--hive-overwrite
--hive-table
test_sale_daily
--hive-drop-import-delims
-m
1
调用文件fileName:sqoop.sh
hadoop fs -rmr sqoop/rpt_sale_daily(先调用hadoop fs命令删除sqoop存在的中间文件表)
sqoop options-file ./test.opt(执行opt文件)
最后在linux执行命令行 sh ./sqoop.sh
如果hive表存在分区的话需要在opt配置文件加多一些配置项
import
--connect
"jdbc:mysql://master:3306/test"
--username
root
--password
123456
--table
"rpt_sale_daily"
--columns
"dateid,huodong,pv,uv"
--where
"dateid='2015-08-28'"
--hive-import
--hive-overwrite
--hive-table
test_sale_pt
--hive-drop-import-delims
--hive-partition-key
ds
--hive-partition-value
"2015-08-28"
-m
1
初次之外基本与上面相同。
记得报目录存在错误的话要先手动删除之前生成的sqoop存在的中间目录
hadoop fs -rmr {home}/{关系db表名}
/user/root/{关系db表名}
还有很多相关的sqoop hive to sql 的配置信息具体查看
http://archive.cloudera.com/cdh5/cdh/5/sqoop-1.4.4-cdh5.1.0/SqoopUserGuide.html
note:写配置文件记得格式要严格不能多空格什么。opt方式不能传递参数是缺点,如果想克服这一缺点可能需要自己对program进行封装。
从HDFS到mysql
export
--connect
"jdbc:mysql://master:3306/test"
--username
root
--password
123456
-m
1
--table
"daily_hour_visit_result"
--columns
"dateid,pv,uv"
--export-dir
/user/hive/warehouse/rpt2.db/daily_hour_visit_result/ds=2015-08-28
--input-fields-terminated-by
\t
Sqoop学习笔记_Sqoop的基本使用二(sqoop的import与export)的更多相关文章
- Sqoop学习笔记_Sqoop的基本使用一
Sqoop 关系DB与Hive/HDFS/HBase导入导出的Mapreduce框架. http://archive.cloudera.com/cdh5/cdh/5/sqoop-1.4.4-cdh ...
- Qlik Sense学习笔记之Mashup开发(二)
date: 2019-01-26 11:28:07 updated: 2019-01-26 11:28:07 Qlik Sense学习笔记之Mashup开发(二) 1.Mobile SPA UI Fr ...
- Deep Learning(深度学习)学习笔记整理系列之(二)
Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...
- 多线程编程学习笔记——async和await(二)
接上文 多线程编程学习笔记——async和await(一) 三. 对连续的异步任务使用await操作符 本示例学习如何阅读有多个await方法方法时,程序的实际流程是怎么样的,理解await的异步 ...
- Javascript学习笔记三——操作DOM(二)
Javascript学习笔记 在我的上一个博客讲了对于DOM的基本操作内容,这篇继续巩固一下对于DOM的更新,插入和删除的操作. 对于HTML解析的DOM树来说,我们肯定会时不时对其进行一些更改,在原 ...
- 【大数据】Sqoop学习笔记
第1章 Sqoop简介 Sqoop是一款开源的工具,主要用于在Hadoop(Hive)与传统的数据库(mysql.postgresql...)间进行数据的传递,可以将一个关系型数据库(例如 : MyS ...
- 学习笔记-CCS-MSP430F5529[快速入门篇二]
由于2021的全国电赛延期了,从今天开始打算好好整理一下使用CCS编程的经验,本篇笔记会好好整理一下我备赛期间用CCS写的程序,包括外部中断,定时器部分的定时中断,定时器输入捕获,PWM波输出,UAR ...
- js学习笔记之:数组(二)
今天来学习一下数组的遍历.删除等知识点: 1 数组的遍历 数组元素的遍历可以使用for循环,采用关键字for...in var aCity = new Array("北京" ...
- EEPROM读写学习笔记与I2C总线(二)
无论任何电子产品都会涉及到数据的产生与数据的保存,这个数据可能并不是用来长久保存,只是在运行程序才会用到,有些数据体量较大对于获取时效性并不太强,各种各样的数据也就有不同的存储载体,这次在EEPROM ...
随机推荐
- 接口测试 java+httpclient+testng+excel
最近项目不忙,研究了下java实现接口自动化,借助testng+excel实现数据驱动 目前只用post方式测试,返回结果列没有通过列名去找 另外,请求参数是转义之后的,接口之间的依赖也是个问题,批量 ...
- laravel 优化小记
laravel 优化 7 Performance Optimization Tips for the Laravel Developer 运行 php artisan optimize php art ...
- Java 基础 - java序列化 & serialVersionUID
ref: https://www.cnblogs.com/duanxz/p/3511695.html ------------------- SerialVersionUID概述 SerialVers ...
- 剑指Offer-13:调整数组位置使奇数位于偶数前面
题目描述: 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变.例如给定一个数组 ...
- JSONObject 序列化后,对象数据为引用地址
最近在json序列化的时候,遇到了个坑,记录如下: public static void main(String[] args) { JSONObject json = new JSONObject( ...
- centos7 将home目录空间扩容到根目录
[root@localhost ~]# umount /home/ [root@localhost ~]# lvremove /dev/mapper/centos-home Do you really ...
- PAT甲级——A1122 Hamiltonian Cycle【25】
The "Hamilton cycle problem" is to find a simple cycle that contains every vertex in a gra ...
- 通过apiservice反向代理访问service
第一种:NodePort类型 type: NodePort ports: - port: 80 targetPort: 80 nodePort: 30008 第二种:ClusterIP类型 typ ...
- Mysql优化系列之查询性能优化前篇2
接前一篇,这一篇主要总结下几个经常要用的命令 命令一:explain+sql mysql> explain select * from servers; +----+-------------+ ...
- seienium基础(测试脚本中的等待方法)
测试脚本中的等待方法 一.加等待时间的目的 等待是为了使脚本执行更加稳定 二.常用的休眠方式 第一种 sleep(): 设置固定休眠时间.python 的 time 包提供了休眠方法 sleep() ...