Sqoop 可以与Hive系统结合,实现数据的导入和导出,用户需要在 sqoop-env.sh 中添加HIVE_HOME的环境变量

具体,见我的如下博客:

hadoop2.6.0(单节点)下Sqoop-1.4.6安装与配置(数据读取涉及hadoop、hbase和hive)

hadoop2.2.0(单节点)下Sqoop-1.4.6安装与配置(数据读取涉及hadoop、hbase和hive)

  

  前期工作

(MySQL里的数据)通过Sqoop Import HDFS 里 和 通过Sqoop Export HDFS 里的数据到(MySQL)(五)

本博文的主要内容有

  一、将mysql表的数据导入到hive中

  二、将Hive表的数据导出到mysql中(不建立中间表)

  三、将Hive表的数据导出到mysql中(建立中间表)(推荐)

一、将mysql表的数据导入到hive中
# 追加数据

sqoop import \
--connect jdbc:mysql://192.168.56.104:3306/test?useSSL=false \
--username root \
--password 123456 \
--table t1
--hive-import
--hive-table test.mysql_t1 \

# 覆盖数据

sqoop import \
--connect jdbc:mysql://192.168.56.104:3306/test?useSSL=false \
--username root \
--password 123456 \
--table t1 \
--hive-import
--hive-overwrite
--hive-table test.mysql_t1 \

  注:如果MySQL中的表没有主键,则需要加--autoreset-to-one-mapper参数

  完善

二、将Hive表的数据导出到mysql中(不建立中间表)

  如下,是我的Hive里的数据。

  以/user/hive/warehouse/stock_partition/tradedate=20130722为例。

  这里,Hive   -> MySQL

  我这里是,

    /user/hive/warehouse/stock_partition(在Hive里)    

           ->    

             stock_partition_copy(在MySQL里) 

  对于,将Hive里的数据,导出到MySQL(是需要先建立输出表的。在我这里是,stock_partition_copy

  表明,输出表已经创建成功!

[hadoop@djt002 sqoopRunCreate]$ sqoop export \
> --connect 'jdbc:mysql://192.168.80.200/hive?useUnicode=true&characterEncoding=utf-8' \
> --username hive \
> --password-file /user/hadoop/.password \
> --table stock_partition_copy \
> --export-dir /user/hive/warehouse/stock_partition/tradedate=20130722 \
> -input-fields-terminated-by ","

[hadoop@djt002 sqoopRunCreate]$ sqoop export --connect 'jdbc:mysql://192.168.80.200/hive?useUnicode=true&characterEncoding=utf-8' --username hive --password-file /user/hadoop/.password --table stock_partition_copy --export-dir /user/hive/warehouse/stock_partition/tradedate=20130722 -input-fields-terminated-by ","

  然后,到本地的MySQL,来看

  成功!

三、将Hive表的数据导出到mysql中(建立中间表,有效解决脏数据)

  对于Hive,类似与HDFS一样,在从它们导出到本地的MySQL时,为了规范适应生产业务所需,还是也最好先导出到中间表。

   如下,是我的Hive里的数据

  这里,Hive  ->   先导出到  中间表(成功才可以,后续导出) -> MySQL

  我这里是,

  /user/hive/warehouse/stock_partition(在Hive里)    

        ->    

             stock_partition _copy_tmp (在MySQL里)  

                 ->  

                     stock_partition_copy(在MySQL里) 

  对于,将Hive里的数据,导出到MySQL(是需要先建立中间表和输出表的。在我这里是,stock_partition_copy

  对于,这里,因为,我们只需复制旧表的结构就好,无需它里的数据,教大家快速得到想要的新表

CREATE TABLE stock_partition_copy_tmp SELECT * FROM stock_partition_copy WHERE 1=2;

  表明,中间表和输出表已经创建成功!

[hadoop@djt002 sqoopRunCreate]$ sqoop export \
> --connect 'jdbc:mysql://192.168.80.200/hive?useUnicode=true&characterEncoding=utf-8' \
> --username hive \
> --password-file /user/hadoop/.password \
> --table stock_partition_copy \
> --staging-table stock_partition_copy_tmp \
> --clear-staging-table \
> --export-dir /user/hive/warehouse/stock_partition/tradedate=20130722 \
> -input-fields-terminated-by ","

  或者

[hadoop@djt002 sqoopRunCreate]$ sqoop export --connect 'jdbc:mysql://192.168.80.200/hive?useUnicode=true&characterEncoding=utf-8' --username hive --password-file /user/hadoop/.password --table stock_partition_copy --staging-table stock_partition_copy_tmp --clear-staging-table --export-dir /user/hive/warehouse/stock_partition/tradedate=20130722 -input-fields-terminated-by ","

然后,到本地的MySQL,来看

  推荐博客

http://sqoop.apache.org/docs/1.4.6/SqoopUserGuide.html (sqoop官网文档)

http://blog.csdn.net/aaronhadoop/article/details/26713431

(MySQL里的数据)通过Sqoop Import Hive 里 和 通过Sqoop Export Hive 里的数据到(MySQL)的更多相关文章

  1. (MySQL里的数据)通过Sqoop Import HDFS 里 和 通过Sqoop Export HDFS 里的数据到(MySQL)(五)

    下面我们结合 HDFS,介绍 Sqoop 从关系型数据库的导入和导出 一.MySQL里的数据通过Sqoop import HDFS 它的功能是将数据从关系型数据库导入 HDFS 中,其流程图如下所示. ...

  2. (MySQL里的数据)通过Sqoop Import HBase 里 和 通过Sqoop Export HBase 里的数据到(MySQL)

    Sqoop 可以与HBase系统结合,实现数据的导入和导出,用户需要在 sqoop-env.sh 中添加HBASE_HOME的环境变量. 具体,见我的如下博客: hadoop2.6.0(单节点)下Sq ...

  3. Hadoop Hive概念学习系列之HDFS、Hive、MySQL、Sqoop之间的数据导入导出(强烈建议去看)

    Hive总结(七)Hive四种数据导入方式 (强烈建议去看) Hive几种数据导出方式 https://www.iteblog.com/archives/955 (强烈建议去看) 把MySQL里的数据 ...

  4. sqoop import mysql to hive table:GC overhead limit exceeded

    1. Scenario description when I use sqoop to import mysql table into hive, I got the following error: ...

  5. Hive学习之七《 Sqoop import 从关系数据库抽取到HDFS》

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

  6. 2.11 Hive中数据导入导出Import和Export使用

    https://cwiki.apache.org/confluence/display/Hive/LanguageManual+ImportExport 一.Export.Import Export ...

  7. 大数据笔记(十九)——数据采集引擎Sqoop和Flume安装测试详解

    一.Sqoop数据采集引擎 采集关系型数据库中的数据 用在离线计算的应用中 强调:批量 (1)数据交换引擎: RDBMS <---> Sqoop <---> HDFS.HBas ...

  8. 大数据技术之_11_HBase学习_02_HBase API 操作 + HBase 与 Hive 集成 + HBase 优化

    第6章 HBase API 操作6.1 环境准备6.2 HBase API6.2.1 判断表是否存在6.2.2 抽取获取 Configuration.Connection.Admin 对象的方法以及关 ...

  9. [Hive - Tutorial] Querying and Inserting Data 查询和插入数据

    Querying and Inserting Data Simple Query Partition Based Query Joins Aggregations Multi Table/File I ...

随机推荐

  1. 刷题总结——二叉苹果树(ssoj树形dp+记忆化搜索)

    题目: 题目背景 URAL:http://acm.timus.ru/problem.aspx?space=1&num=1018 题目描述 有一棵苹果树,如果树枝有分叉,一定是分 2 叉(就是说 ...

  2. bzoj1584 [Usaco2009 Mar]Cleaning Up 打扫卫生 动态规划+思维

    Description 有N头奶牛,每头那牛都有一个标号Pi,1 <= Pi <= M <= N <= 40000.现在Farmer John要把这些奶牛分成若干段,定义每段的 ...

  3. cf493E Vasya and Polynomial

    Vasya is studying in the last class of school and soon he will take exams. He decided to study polyn ...

  4. 数字梯形(cogs 738)

    «问题描述:给定一个由n 行数字组成的数字梯形如下图所示.梯形的第一行有m 个数字.从梯形的顶部的m 个数字开始,在每个数字处可以沿左下或右下方向移动,形成一条从梯形的顶至底的路径.规则1:从梯形的顶 ...

  5. R语言入门视频笔记--2--一些简单的命令

    一.对象 1.列举当前内存中的对象 ls() 2.删除不需要的对象 rm(某对象名称) 3.查看向量长度 length(某向量名称) 4.查看向量类型 mode(某向量名称) 二.函数 1.seq函数 ...

  6. jvisualvm远程监控 Visual GC plugin NOT supported for this JVM

    1. 找到jdk安装目录. 2. 进入jdk的 bin目录,新建文件jstatd.all.policy. 3.编辑jstatd.all.policy文件,内容如下: 4. 给jstatd.all.po ...

  7. 2-sat问题,输出方案,几种方法(赵爽的论文染色解法+其完全改进版)浅析 / POJ3683

    本文原创于  2014-02-12 09:26. 今复习之用,有新体会,故重新编辑. 2014-02-12 09:26: 2-sat之第二斩!昨天看了半天论文(赵爽的和俉昱的),终于看明白了!好激动有 ...

  8. Spring 定时器 定时访问数据库并发送邮件

    我这里有两个案例的方法: 第一种:使用Spring quartz: 我这里使用的jar:spring-context-support.jar.quartz-1.6.5.jar ============ ...

  9. JFinal Weixin 1.6发布【转】

    原文:http://www.oschina.net/news/69495/jfinal-weixin-1-6-released#rd 继JFinal 2.1发布之后,再来一发JFinal Weixin ...

  10. R必学包之dplyr

    http://www.360doc.com/content/17/1204/10/50223086_709726679.shtml