sqoop 1.4.4-cdh5.1.2高速入门
一、高速入门
(一)下载安装
1、下载并解压
wget http://archive.cloudera.com/cdh5/cdh/5/sqoop-1.4.4-cdh5.1.2.tar.gz
tar -zxvf sqoop-1.4.4-cdh5.1.2.tar.gz
2、将sqoop中的命令加入至$PATH中
export PATH=$PATH:/home/jediael/setupfile/sqoop-1.4.4-cdh5.1.2/bin
3、验证安装
jediael@jediael:~/setupfile/sqoop-1.4.4-cdh5.1.2/bin$ source /etc/profile
……..
15/05/15 09:47:37 INFO sqoop.Sqoop: Running Sqoop version: 1.4.4-cdh5.1.2
Sqoop 1.4.4-cdh5.1.2
……..
(二)在mysql中准备数据
1、创建数据库交授权
create database sqoop;
use sqoop;
GRANT ALL PRIVILEGES ON sqoop.* TO ''@'localhost';
2、创建表
create table widgets(
id int not null primary key auto_increment,
widget_name varchar(64) not null,
price decimal(10,2),
design_date date,
version int,
design_comment varchar(100));
3、插入数据
insert into widgets values(null, 'sprocket', 0.25, '2010-02-10', 1, 'Connects two gizmos');
insert into widgets values(null, 'gizmos', 4.00, '2009-11-30', 4, null);
insert into widgets values(null, 'gadget', 99.99, '193-08-13', 13, 'Our flagship product');
(三)将mysql中的数据导入hdfs
1、准备jdbc connector,并将之入到sqoop/lib文件夹下
wget http://cdn.mysql.com/Downloads/Connector-J/mysql-connector-java-5.1.35.tar.gz
tar -zxvf mysql-connector-java-5.1.35.tar.gz
cp mysql-connector-java-5.1.35-bin.jar ../sqoop-1.4.4-cdh5.1.2/lib/
2、导入数据
sqoop import --connect jdbc:mysql://localhost/sqoop --table widgets -m 1
3、查看数据
$ hadoop fs -cat widgets/part-m-00000
15/05/15 10:29:29 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
1,sprocket,0.25,2010-02-10,1,Connects two gizmos
2,gizmos,4.00,2009-11-30,4,null
3,gadget,99.99,0193-08-13,13,Our flagship product
4、import除了将数据导入hdfs中,还在当前文件夹生成了widgets.java文件。
还能够使用下面命令仅仅生成java类,而不进行实际的导入:
sqoop import --connect jdbc:mysql://localhost/sqoop --table widgets --class-name widget
二、sqoop与hive
(一)将数据导入hive
1、若仅须要将mysql中的数据导入sqoop中。则能够运行下面命令
sqoop import --connect jdbc:mysql://localhost/sqoop --table widgets -m 1 --hive-import
验证数据:
hive> select * from widgets;
OK
1 sprocket 0.25 2010-02-10 1 Connects two gizmos
2 gizmos 4.0 2009-11-30 4 null
3 gadget 99.99 0193-08-13 13 Our flagship product
Time taken: 1.299 seconds, Fetched: 3 row(s)
2、若须要先将mysql中的数据导入hdfs。再从hdfs中导入hive
(1)将数据导入hdfs:见上面。
(2)创建表
sqoop create-hive-table --connect jdbc:mysql://localhost/sqoop --table widgets --fields-terminated-by ‘,'
这会依据mysql中的表结构直接创建一个hive表。
(3)将hdfs中的数据导入hive中
hive> load data inpath "widgets" into table widgets;
此时数据存储在/user/hive/warehouse/widgets
(二)在hive中进行数据分析
1、创建hive表。用于保存分析结果
create table widgets_sum(sum int);
2、分析
hive> insert into table widgets_sum select count(1) from widgets;
(三)将数据导出到mysql
1、在mysql中创建表。用于保存从hive中导出的结果
create table widgets_sum(sum int);
注意,sqoop可以依据mysql的结构自己主动生成hive表,但反之不行,必须手工建表
2、sqoop export --connect jdbc:mysql://localhost/sqoop -m 1 --table widgets_sum --export-dir /user/hive/warehouse/widgets_sum --input-fields-terminated-by '\0001
异常:
1、若没运行GRANT ALL PRIVILEGES ON sqoop.* TO ''@'localhost’;
则会出现下面异常:
15/05/15 10:25:28 ERROR manager.SqlManager: Error executing statement: java.sql.SQLException: Access denied for user ''@'localhost' (using password: NO)
java.sql.SQLException: Access denied for user ''@'localhost' (using password: NO)
sqoop 1.4.4-cdh5.1.2高速入门的更多相关文章
- Windows下FFmpeg高速入门
本系列文章导航 Windows下FFmpeg高速入门 ffmpeg參数解释 mencoder和ffmpeg參数具体解释(Java处理视频) Java 生成视频缩略图(ffmpeg) 使用ffmpeg进 ...
- Tensorflow高速入门2--实现手写数字识别
Tensorflow高速入门2–实现手写数字识别 环境: 虚拟机ubuntun16.0.4 Tensorflow 版本号:0.12.0(仅使用cpu下) Tensorflow安装见: http://b ...
- C语言高速入门系列(二)
C语言高速入门系列(二) -----转载请注明出处coder-pig 本节引言: 在前面一节中我们对C语言进行了初步的了解,学会了使用IDE进行代码的编写,编译执行! 在这一节中我们会对C语言的基本的 ...
- Swift高速入门之函数
函数 看一个函数的样例: func addNumbers( let a:Int,let b:Int)->Int{ return a+b; } 实现两个数相加.函数必须以func开头,后面是函数名 ...
- C语言高速入门系列(八)
C语言高速入门系列(八) C语言位运算与文件 本章引言: 在不知不觉中我们的C高速入门系列已经慢慢地接近尾声了,而在这一节中,我们会对 C语言中的位运算和文件进行解析,相信这两章对于一些人来说是陌生的 ...
- Spark高速入门指南(Quick Start Spark)
版权声明:本博客已经不再更新.请移步到Hadoop技术博客:https://www.iteblog.com https://blog.csdn.net/w397090770/article/detai ...
- 教你高速入门Excel-宏与VBA(续)
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/small_baby01/article/details/24028407 引言 通过 ...
- C语言高速入门系列(四)
C语言高速入门系列(四) C语言数组 ---------转载请注明出处:coder-pig 贴心小提示:假设图看不清晰可右键另存为,应该就非常清晰了; 注意上面的代码都要自己过一遍哦! 本节引言: 经 ...
- 【solr专题之中的一个】Solr高速入门
一.Solr学习相关资料 1.官方材料 (1)高速入门:http://lucene.apache.org/solr/4_9_0/tutorial.html.以自带的example项目高速介绍发Solr ...
随机推荐
- bzoj1026: [SCOI2009]windy数(传说你是数位DP)
1026: [SCOI2009]windy数 题目:传送门 题解: 其实之前年少无知的时候好像A过...表示当时并不知道什么数位DP 今天回来深造一发... 其实如果对这个算法稍有了解...看到这题的 ...
- zzulioj--1807--小明在努力(递归)
1807: 小明在努力 Time Limit: 1 Sec Memory Limit: 128 MB Submit: 95 Solved: 35 SubmitStatusWeb Board Des ...
- python-深拷贝-浅拷贝
python-深拷贝-浅拷贝 标签(空格分隔): 未分类 浅拷贝: 拷贝了引用,并没有拷贝内容 深拷贝: 深拷贝是对于一个对象所有层次的拷贝(递归)
- 加载等待loading
自己写的一个小插件,还有很多需要完善... (function ($) { $.fn.StartLoading = function (option) { var defaultV ...
- 链表python
无序链表.有序链表 有序列表排序通常是升序或降序,并且我们假设列表项具有已经定义的有意义的比较运算. 许多有序列表操作与无序列表的操作相同. 必须明确链表的第一项位置,一旦知道第一项. 链表实现的基本 ...
- bzoj3252: 攻略 优先队列 并查集 贪心
考场上自己yy出来的做法..... Code: #include<cstdio> #include<algorithm> #include<queue> #incl ...
- js中return 、return false 、return true、break、continue区别
在开发中不熟悉这三者区别的同学,一般都知道return可以中止,但会根据字面意思觉得return true 中止当前函数执行,但其后的函数还会继续执行.return false 中止当前函数执行,其后 ...
- tload---显示系统负载
tload命令以图形化的方式输出当前系统的平均负载到指定的终端.假设不给予终端机编号,则会在执行tload指令的终端机显示负载情形. 语法 tload(选项)(参数) 选项 -s:指定闲时的刻度: - ...
- Win10 + YOLOv3 环境配置,编译,实现目标检测----How to compile YOLOv3 on Windows
其他比较好的参考链接: 环境配置: 环境配置的最终图片列表:https://blog.csdn.net/shanglianlm/article/details/80322718 视频讲解YOLOv1: ...
- arcgis engine 获取高亮Feature、element
转自原文 arcgis engine 获取高亮Feature.element IGraphicsContainer pGraphicsC = mainAxMapControl.Map as IGra ...