3.Sqoop的数据导入

  “导入工具”导入单个表从RDBMS到HDFS。表中的每一行被视为HDFS的记录。所有记录都存储为文本文件的文

本数据(或者Avro、sequence文件等二进制数据)

3.1语法

  下面的语法用于将数据导入HDFS:$ sqoop import (generic-args) (import-args)

3.2 导入表数据到HDFS

  下面的命令用于从MySQL数据库服务器中的emp表导入HDFS:

$bin/sqoop import   \
--connect jdbc:mysql://shizhan2:3306/mysql \
--username root \
--password root \
--table user \
--m 1

  

  导入成功,会有如下输出:

  

  如果没有指定该表导入到那个目录,将使用默认目录,为了验证在HDFS导入的数据,请使用以下命令查看导入的数据:

  

3.3 导入表数据到Hive

bin/sqoop import --connect jdbc:mysql://shizhan2:3306/mysql --username root --password root --table tb_emp --hive-import --m 1

  在HDFS中Hive的默认目录下查看:

  

  

3.5 导入表数据到HDFS的指定目录 

  在导入表数据到HDFS使用Sqoop导入工具,我们可以指定目标目录。

  例如下面的命令是用来导入emp_add表数据到'/queryresult'目录

bin/sqoop import \
--connect jdbc:mysql://shizhan2:3306/mysql \
--username root \
--password root \
--target-dir /queryresult \
--table tb_emp --m 1

  下面的命令是用来验证 /queryresult 目录中 tb_emp表导入的数据形式

 

  它会用逗号(,)分隔tb_emp表的数据和字段

3.6 导入表数据子集:

  我们可以使用Sqoop导入工具导入表的部分数据(子集),"where"子句的一个子集。它执行在各自的数据库服务器相应

的SQL查询,并将结果存储在HDFS的目标目录。

  1.下面的命令用来导入tb_emp表数据的子集。子集查询检索员工ID为1(id = 1)的信息:

bin/sqoop import \
--connect jdbc:mysql://shizhan2:3306/mysql \
--username root \
--password root \
--where "id ='1'" \
--target-dir /wherequery \
--table tb_emp --m 1

  查看文件:默认使用逗号分隔

  

  2.按需导入:

bin/sqoop import \
--connect jdbc:mysql://shizhan2:3306/mysql \
--username root \
--password root \
--target-dir /wherequery2 \
--query 'select id,name from tb_emp WHERE id>1 and $CONDITIONS' \
--split-by id \
--fields-terminated-by '\t' \
--m 1

  查看文件:

  

3.7 增量导入

  增量导入是仅导入表中新添加的行的技术。

  它需要添加‘incremental’, ‘check-column’, 和 ‘last-value’选项来执行增量导入。

  下面的语法用于Sqoop导入命令增量选项,下面的命令用于在tb_emp表执行增量导入:

bin/sqoop import \
--connect jdbc:mysql://shizhan2:3306/mysql \
--username root \
--password root \
--table tb_emp --m 1 \
--incremental append \
--check-column id \
--last-value 2

  

  

  

  

  

  

  

  

  

  

14_sqoop数据导入的更多相关文章

  1. ITTC数据挖掘平台介绍(五) 数据导入导出向导和报告生成

    一. 前言 经过了一个多月的努力,软件系统又添加了不少新功能.这些功能包括非常实用的数据导入导出,对触摸进行优化的画布和画笔工具,以及对一些智能分析的报告生成模块等.进一步加强了平台系统级的功能. 马 ...

  2. FineReport实现EXCEL数据导入自由报表

    在制作填报报表的时候,对于空白填报表,常常导出为Excel,派发给各部门人员填写后上交.如何能避免手动输入,直接将Excel中的数据导入到填报表中提交入库呢? 这里以一个简单的员工信息填报示例进行介绍 ...

  3. Execl数据导入sql server方法

    在日常的程序开发过程中,很多情况下,用户单位给予开发人员的数据往往是execl或者是access数据,如何把这些数据转为企业级是数据库数据呢,下面就利用sqlserver自带的功能来完成此项任务. 首 ...

  4. kettle将Excel数据导入oracle

    导读 Excel数据导入Oracle数据库的方法: 1.使用PL SQL 工具附带的功能,效率比较低 可参考这篇文章的介绍:http://www.2cto.com/database/201212/17 ...

  5. [Asp.net]常见数据导入Excel,Excel数据导入数据库解决方案,总有一款适合你!

    引言 项目中常用到将数据导入Excel,将Excel中的数据导入数据库的功能,曾经也查找过相关的内容,将曾经用过的方案总结一下. 方案一 NPOI NPOI 是 POI 项目的 .NET 版本.POI ...

  6. sqlserver 中数据导入到mysql中的方法以及注意事项

    数据导入从sql server 到mysql (将数据以文本格式从sqlserver中导出,注意编码格式,再将文本文件导入mysql中): 1.若从slqserver中导出的表中不包含中文采用: bc ...

  7. 数据分析(7):pandas介绍和数据导入和导出

    前言 Numpy Numpy是科学计算的基础包,对数组级的运算支持较好 pandas pandas提供了使我们能够快速便捷地处理结构化数据的大量数据结构和函数.pandas兼具Numpy高性能的数组计 ...

  8. MySQL学习笔记十一:数据导入与导出

    数据导入 1.mysqlimport命令行导入数据 在使用mysqlimport命令导入数据时,数据来源文件名要和目标表一致,不想改文件名的话,可以复制一份创建临时文件,示例如下. 建立一个文本use ...

  9. geotrellis使用(十二)再记录一次惨痛的伪BUG调试经历(数据导入以及读取瓦片)

    Geotrellis系列文章链接地址http://www.cnblogs.com/shoufengwei/p/5619419.html 目录 前言 BUG还原 查找BUG 解决方案 总结 后记 一.前 ...

随机推荐

  1. json转字符串 —— jsonObj.toJSONString()与JSON.stringify(jsonObj)json to string

    json 转变成 string方法介绍: var people = { "programmers": [{ "firstName": "Brett&q ...

  2. DOS与cmd(windows)

    dos是计算机的最初期的操作系统,对电脑操作必须输入各种dos命令窗口,可以理解成运行计算机机器内部语言,知道编程吗?其实早期dos命令操作系统就是运行计算机内部的编程命令,因此操作人员都必须具有一定 ...

  3. python多进程实例详解

    写在前面:python中的多线程其实并不是真正的多线程,如果想要充分地使用多核CPU的资源,在python中大部分情况需要使用多进程.Python提供了非常好用的多进程包multiprocessing ...

  4. CommMonitor10.0.3串口过滤工具(serial port monitor)

    CommMonitor  串行端口监视精灵是用于RS232 / RS422 / RS485端口监控的专业强大的系统实用程序软件.CommMonitor监视显示,记录和分析系统中的所有串行端口活动.这是 ...

  5. 谷歌插件:右键搜使用指南.md

    基本功能看插件,说几个自定义搜索的实现 自定义技巧:%s选择的文字或页面或链接,%g转换成GBK字符集,%t转换成BIG5字符集,%p剪贴板内容,%u当前页面域名. 注:这部分内容来自谷歌插件介绍.使 ...

  6. IBM.WMQ订阅消息

    网上关于IBM这个消息队列中间件的资料相对比较少,C#相关的资料就更少了,最近因为要对接这个队列中间件,花了不少功夫去搜索.整理各种资料,遇到很多问题,因此记录下来. 1.基于 amqmdnet.dl ...

  7. 最新 创梦天地java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.创梦天地等10家互联网公司的校招Offer,因为某些自身原因最终选择了创梦天地.6.7月主要是做系统复习.项目复盘.Leet ...

  8. php取上个月月初和月末时间戳

    $thismonth = date('m');$thisyear = date('Y');if ($thismonth == 1) { $lastmonth = 12; $lastyear = $th ...

  9. C#基础知识学习 linq 和拉姆表达式二

  10. win10系统不能ping通vmware虚假机解决办法

    在使用vmware安装虚拟机后,在虚拟机里面可以上网,但就是不能在宿主机通过远程连接工具连接 同时也不能ping通虚拟机 检查网络配置 查看网关 在宿主机打开 ip地址填写刚刚查看的网关,同时把子网掩 ...