mysql------->hdfs

sqoop导入数据工作流程:

sqoop提交任务到hadoop------>hadoop启动mapreduce------->mapreduce通过指定参数到表中获取导入的数据------->MapReduce将需导入的数据导入到HDFS中

1.全表导入:

mysql----->hdfs

sqoop  import  --connect  jdbc:mysql://192.168.122.15:3306/company  --username  hivee  --password 123456 --table  card  -m  1

#-m 1  表示指定一个任务去执行

2.限制数据范围导入:

mysql----->hdfs

sqoop  import  --connect  jdbc:mysql://192.168.122.15:3306/company  --username  hivee  --password 123456 --table  card  --columns   'id,name'   --where  'id>20'   -m  1

#  --columns <列名>   指定列      --where '条件'  指定条件

3、自由sql语句导入:  (使用sql查询语句导入)

mysql----->hdfs

sqoop  import  --connect  jdbc:mysql://192.168.122.15:3306/company  --username  hivee  --password 123456 --table  card  --target-dir  '/input'   --query  'select id,name from input where id>20 and \$CONDITIONS'  -m  1

4.增量导入:持续将新增源数据导入到目标存储位置

mysql----->hdfs

#核心参数:  -check-column  #指定检索列、   --last-value  #(指定导入检索数字)  、 -incremental   #(指定导入模式)

1>append模式:   只对数据进行附加,不支持更改

sqoop  import  --connect  jdbc:mysql://192.168.122.15:3306/company  --username  hivee  --password 123456 --table  card  --target-dir  '/input'   --check-column id   --last-value  264  --incremental   append   -m 1

2>lastmodified :   适用于对源数据进行更改,对于变动数据收集,必须记录变动时间

sqoop  import  --connect  jdbc:mysql://192.168.122.15:3306/company  --username  hivee  --password 123456 --table  card  --target-dir  '/input'   --check-column last_mod     --last-value  '2018-02-02 21:35:01'  --incremental   lastmodified    -m  1  --append

#时间为最大的时间

mysql------>hive

Sqoop常用命令:

全表导入:

1.创建job:

#解释:这个job是将mysql的表导入到hive中,过程为:  mysql--àHDFS--àhive

--password-file hdfs://user/mnt/.password.file  这是指定hdfs目录下文件位置

--password-file file:///home/.test   这是指定linux服务器目录下文件位置

[root@hdoop2 hadoop]# sqoop job --create  erp4  -- import --connect jdbc:mysql://192.168.18.72:3306/erp_product --username hive  --password-file file:///home/.test  --table erp_project_obversion_detail --target-dir /test3  --hive-import --hive-table erp_project_obversion_detail  --hive-overwrite -m 1

2.查看job列表:

[root@hdoop2 hadoop]#  sqoop job  --list

3.查看某个job的详细信息:

[root@hdoop2 hadoop]#  sqoop job --show erp4

#erp4为job的名称

4.删除job:

[root@hdoop2 hadoop]# sqoop job --delete erp4

5.执行job:

[root@hdoop2 hadoop]# sqoop job --exec erp4

增量导入:持续将新增源数据导入到目标存储位置

Mysql--àhive

1.创建job:

[root@hdoop2 hadoop]# sqoop  job --create insert1 --  import  --connect  jdbc:mysql://192.168.18.72:3306/erp_product --username hive  --password-file file:///home/.test     --table  erp_project_obversion_detail  --target-dir  /test4    --hive-import --hive-table erp_project_obversion_detail   --check-column id   --last-value  264  --incremental   append   -m 1

自由查询语句导入:

1.创建job:

[root@hdoop2 hadoop]# sqoop job --create  erp1  -- import --connect jdbc:mysql://192.168.18.72:3306/erp_product --username hive  --password-file file:///home/.test   --target-dir /test10   --hive-import --hive-table erp_project_obversion_detail --hive-overwrite   --query 'select * from erp_project_obversion_detail where id < 265  and  $CONDITIONS '  -m 1

sqoop数据导入命令 (sql---hdfs)的更多相关文章

  1. MySQL--将MySQL数据导入到SQL Server

    随着时代的进步,社会的发展,各种技术层出不穷五花八门乱七八糟数不胜数(写作文呢!!!) 不扯废话,简单而言,很多公司都会同时使用多种数据库,因此数据在不同数据库之间导入导出就成为一个让人蛋疼的问题,对 ...

  2. 图解如何 将Excel里的数据导入到sql server数据库中

    项目中,经常会碰到如何将Excel里的数据导入到sql server中的问题. 下面,图解如何实现导入Excel中的数据到sql server 2008 R2: Excel截图如下: 查询pub数据库 ...

  3. VBS将本地的Excel数据导入到SQL Server中

    VBS将本地的Excel数据导入到SQL Server中 高文龙关注0人评论1170人阅读2017-05-14 12:54:44 VBS将本地的Excel数据导入到SQL Server中 最近有个测试 ...

  4. sqoop数据导入到Hdfs 或者hive

    用java代码调用shell脚本执行sqoop将hive表中数据导出到mysql http://www.cnblogs.com/xuyou551/p/7999773.html 用sqoop将mysql ...

  5. Sqoop 数据导入导出实践

    Sqoop是一个用来将hadoop和关系型数据库中的数据相互转移的工具,可以将一个关系型数据库(例如:mysql,oracle,等)中的数据导入到hadoop的HDFS中,也可以将HDFS的数据导入到 ...

  6. Excel数据导入到Sql server

    问题:数据库内直接操作导致 错误 0xc020901c: 数据流任务 1: 源 - yndata1$.输出[Excel 源输出] 上的 源 - yndata1$.输出[Excel 源输出].列[ind ...

  7. Visual Basic 2012 借助DataGridView控件将Excel 2010数据导入到SQL server 2012

    (注:注释的颜色原本为绿色,在这里变为黑色,有点不便,但不会造成阅读影响.放入Visual Basic2012代码编辑器后会还原成绿色.) 摘  要:DataGridView控件作为数据传输的中介,只 ...

  8. 如何把EXCEL数据导入到SQL SERVER数据库中 (转)

    转:http://blog.csdn.net/jjp837661103/article/details/13509889 在我们完成一个项目开发之后,通常我们需要把客户的很多数据导入到数据库中,面对大 ...

  9. c#.net Excel中的数据导入到SQL数据库中

    /// <summary>        /// 从Excel 导入学生        /// </summary>        /// <param name=&qu ...

随机推荐

  1. MySQL内连接和外连接

    INNER JOIN(内连接,或等值连接):获取两个表中字段匹配关系的记录. LEFT JOIN(左连接):获取左表所有记录,即使右表没有对应匹配的记录. RIGHT JOIN(右连接): 与 LEF ...

  2. AJAX-XMLHttpRequest和本地文件

    网页中可以使用相对URL的能力通常意味着我们能使用本地文件系统来开发和测试HTML,并避免对Web服务器进行不必要的部署. 然而当使用XMLHttpRequest进行Ajax编程时,这通常是不行的. ...

  3. 【代码笔记】iOS-gif图片播放

    一,效果图. 二,工程图. 三,代码. RootViewController.h #import <UIKit/UIKit.h> @interface RootViewController ...

  4. Linux 线程调度与优先级

    [转] http://blog.chinaunix.net/uid-20788636-id-1841334.html http://blog.chinaunix.net/uid-20788636-id ...

  5. create alter rename desc select update delete insert

    conn scott/root;create table student (id number(3), name varchar2(10), sex char(2), sno number(3));a ...

  6. for循环内嵌套finally使用的意外获得

    在for循环中有continue和break,无论执行continue还是break   finally的逻辑都会执行,原本以为是不执行的 格式 for (int i = 0; i < 3; i ...

  7. elipse安装php

    在用eclipse作为PHP的开发IDE工具时,如果下载的Eclipse不带有PHP功能,则需要我们自己来给Eclipse升级.不过也可以下载eclipseForPHP 在Eclipse的help菜单 ...

  8. PHP获取当前页面的URL地址

    本文出至:新太潮流网络博客 //获取域名或主机地址 blog.iinu.com.cn echo $_SERVER['HTTP_HOST']."<br>"; //获取网页 ...

  9. 把梳子卖给和尚 引起的CRM

    招聘故事  N个人去参加一招聘,主考官出了一道实践题目:把梳子卖给和尚.众多应聘者认为这是开玩笑,最后只剩下甲.乙.丙三个人.   主持人交代:以10日为限,向我报告销售情况.  十 天一到.   主 ...

  10. 国内一元钱 正常搭建android开发环境

    如果你人在gfw之外,那么此篇文章对你来说毫无用处,请自动略过.. 笔者自android出来之后,就一直想尝试一下.可惜,几年来一直未能够定下身心来研究尝试.而所做的工作也与android没有关系,所 ...