Sqoop

 

关系DB与Hive/HDFS/HBase导入导出的Mapreduce框架。

http://archive.cloudera.com/cdh5/cdh/5/sqoop-1.4.4-cdh5.1.0/SqoopUserGuide.html

 

ETL: Extraction-Transformation-Loading的缩写,数据提取、转换(业务处理)和加载。

文件数据源:hive load命令

关系DB数据源:sqoop抽取

Sqoop import数据到HDFS/Hive/Hbase-->业务处理--->Sqoop export数据到关系数据库

Sqoop import   从关系数据库抽取到HDFS

Sqoop export    HDFS导回到关系数据

二、Sqoop Linux下开发的步骤

Mysql Jdbc驱动放到SQOOP_HOME/lib

放lib的目录(eg:cd /opt/cloudera/parcels/CHD/lib/sqoop/lib,有时候master和slave节点都要存放此lib) 

1、Sqoop 基本导入和导出讲解(command line方式)

sqoop import --connect jdbc:mysql://master:3306/test \   (此句是配置mysql路径,linux下一行未完结要加上反斜杠)

--username root --password 123456 --table rpt_sale_daily \ (配置mysql的帐号和密码和table表名)

--columns "dateid,huodong,pv,uv" \ (配置table抽取的字段)

--where “dateid='2015-08-28'”  \ (表抽取查询条件)

--target-dir sqoop/rpt_sale_daily \ (表抽取存放目标位置)

-m 1 (sqoop抽取要启动的map数量,如果抽取量多的话可以适当调节map的数量)

Sqoop import(抽取)需要注意:

抽取到target-dir ,列用逗号分隔;

抽取到hive表时,会根据hive表的列分隔符自动匹配。

2.利用sqoop --options也可以进行sqoop抽取但是不支持往数据里面传参数

sqoop --options-file ./test.opt  不支持往opt文件里传参数。(shell脚本方式)

先写好执行文件test.opt

在shell脚本里写好执行sqoop执行opt文件命令

执行命令

相比下command line的方式会比较好,因为可以利用shell脚本进行传参。不过还是过于麻烦

Sqoop学习笔记_Sqoop的基本使用一的更多相关文章

  1. Sqoop学习笔记_Sqoop的基本使用二(sqoop的import与export)

    Sqoop抽取从mysql抽取到hive sqoop抽取到mysql一样有两种方式一种是用command line的方式,一种是用sqoop opt文件调用的方式.(由于两种sqoop一已经记录了,现 ...

  2. 【大数据】Sqoop学习笔记

    第1章 Sqoop简介 Sqoop是一款开源的工具,主要用于在Hadoop(Hive)与传统的数据库(mysql.postgresql...)间进行数据的传递,可以将一个关系型数据库(例如 : MyS ...

  3. sqoop学习笔记

    #################################################################################################### ...

  4. Hadoop学习笔记—18.Sqoop框架学习

    一.Sqoop基础:连接关系型数据库与Hadoop的桥梁 1.1 Sqoop的基本概念 Hadoop正成为企业用于大数据分析的最热门选择,但想将你的数据移植过去并不容易.Apache Sqoop正在加 ...

  5. Hadoop学习笔记(1)概述

    写在学习笔记之前的话: 寒假已经开始好几天了,似乎按现在的时间算,明天就要过年了.在家的这几天,该忙的也都差不多了,其实也都是瞎忙.接下来的几点,哪里也不去了,静静的呆在家里学点东西.所以学习一下Ha ...

  6. 01_Hadoop学习笔记内容说明

    Hadoop学习笔记内容说明_00 1.  观看云帆大数据梦琪老师的<企业级 Hadoop 1.x 应用开发基础课程>2014年4月左右版本. 2.  博客是在梦琪老师的随堂笔记上改动的, ...

  7. Hadoop学习笔记系列

    Hadoop学习笔记系列   一.为何要学习Hadoop? 这是一个信息爆炸的时代.经过数十年的积累,很多企业都聚集了大量的数据.这些数据也是企业的核心财富之一,怎样从累积的数据里寻找价值,变废为宝炼 ...

  8. hive学习笔记之一:基本数据类型

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  9. hive学习笔记之三:内部表和外部表

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

随机推荐

  1. 使用line-height垂直居中在安卓手机上效果不好

    前端实现单行垂直居中用的最多的方法可能就是line-height了吧.该属性在pc端和ios手机上效果都很好,可到了安卓手机,有很大几率发生文字上移的现象 知乎有人分析了导致这一现象的原因,Andro ...

  2. SQLite加密 wxSqlite3

    一直在网上搜wxSqlite3的文档,但是总找不到能真正解决问题的,就是一个简单的编译wxSqlite3自带的示例也出了老多问题,后来却发现,其实wxSqlite3的readme中已经有了详细的方法, ...

  3. [kuangbin带你飞]专题一 简单搜索 - C - Catch That Cow

    #include<iostream> #include<cstdio> #include<string> #include<vector> #inclu ...

  4. vue-select-lang

    https://cli.vuejs.org/zh/guide/build-targets.html#%E5%BA%93 https://github.com/lipis/flag-icon-css

  5. CSS 实现自适应正方形

    在处理移动端页面时,我们有时会需要将banner图做成与屏幕等宽的正方形以获得最佳的体验效果,比如,商品详情页, 方法1.CSS3 vw单位 CSS3 中新增了一组相对于可视区域百分比的长度单位 vw ...

  6. Git合并时遇到冲突或错误后取消合并

    当合并分支时遇到错误或者冲突,分支旁边会多出“|MERGING”这个东西 有这个状态存在时,会导致后面想要再合并的时候提示如下 所以需要先取消这次合并,使用“git merge --abort”命令

  7. 20.multi_case01

    # 多进程,使用Pool from multiprocessing import Pool def f(x): return x*x if __name__ == '__main__': p = Po ...

  8. 零基础入门学习python--第二章 用Python设计第一个游戏

    知识点汇总1. 什么是BIF? BIF(Built-in Functions)内置函数,共68个,可直接调用,方便程序员快速编写脚本程序.输入dir(__builtins__)即可查看所有内置函数,h ...

  9. C++开发系列-纯虚函数和抽象类

    概念 纯虚函数和抽象类 纯虚函数是一个在基类中说明的虚函数,在基类中没有定义,要求任何派生类都实现该函数. 纯虚函数为各派生类提供了一个公共界面(接口的封装和设计.软件的模块功能的划分) 纯虚函数说明 ...

  10. python学院体系