sqoop导入与导出总结
mysql导入hadoop体系
sqoop可以可以把mysql的数据导入hdfs,hive以及hbase.就是把mysql导入hadoop体系中.
sqoop需求
- 确定导入还是导出 import 或者export
- maptask的数量可以自定义. 利用-m 或者–split-by 就是依据哪个字段分段
mysql需求
相当于是把mysql中的表变成了hdfs上的文件.
mysql需要提供
- 连接–connect, --username,–password
- 表名–table. 想要被导入hadoop体系的表格
- 有时候可能不是想导入整个表,而只是表的一部分.所以可以是查询的结果 --query, 或者–columns(只是某几列) 还可以使用过滤条件(–where)
hdfs需求
- hdfs需要提供保存路径(–target-dir)即可. 其实相当于也提供了导入后的名字.
- 以及保存的分隔符(–fields-terminated-by).
- hdfs要导入的路径无需提前存在,所以需要一个参数控制,–delete-target-dir.如果有就删除,以防止重复.做一个逻辑判断.
hive需求
- 导入hive的路径? hive本身是存储在hdfs默认路径下的,所以不需要写路径.只要告诉是hive导入就行了.–hive-import,hbase没设计类似的,事实上这玩意设计不合理,多余的.下面的参数又–hive-table…这里就包含了是要导入hive的信息了.
- 导入hive后的名字叫什么?–hive-table
- -确定是否覆盖还是追加 --hive-overwrite
- 导入到hive哪个分区 --hive-partition-key, 还有–hive-partition-value
hbase需求
- 导入哪个表格? --hbase-table 类比–hive-table
- 导入要不要自动创表 --hbase-create-table,hive没设计这个,默认自动创建
- 导入哪个列簇 --column-family
- rowkey是哪个?这也是hbase的必备选项… --hbase-row-key
异常处理
- 对mysql中的空进行处理 --null-string 或者–null-non-string
总结
mysql导入hdfs,hive,hbase. 本质都是hdfs上存储的不同目录.导入hive中必然也导入了hive和hbase. 另一个注意就是hive自己的特有参数,分区. hbase的特有参数 列簇,rowkey等等.
另一个.hive,hbase上都不需要提前创建表结构,schema,因为mysql上表结构很详细,程序可以自动根据mysql的表结构来创建hive上或hbase上的表结构. 反之则不行.当从hdfs,hive,或hbase导入mysql时,需要提前在mysql上建立表,设置schema/
hadoop体系导入mysql
mysql需求
mysql中的表格schema要提前创建好,因为比如说hbase中都没有数据类型,系统无法获取这些信息. 其他需求就是连接啥的
hdfs需求
- 导出来源目录: --export-dir 这个是hdfs上的目录
- 分割符,这个和导入时一样的 fields-terminated-by 不管导入导出,分隔符一定都是要写的
hive需求
和hdfs导出mysql是完全一样的.hive其实也是hdfs下的一个目录.
hbase需求
目前没有这个功能
特殊需求
–input-null-string ‘\N’
–input-null-non-string ‘-1’ \
总结:
hdfs,hive导出到mysql时候,需要导出文件来源路径. 然后mysql需要提前建表.
其实比导入要简单~
sqoop导入与导出总结相关推荐
- Sqoop导入导出的时候总是出现等待5分钟的问题解决办法
25.25.27 Sqoop导入导出的时候总是出现等待5分钟的问题解决办法: HDP3.1 中的 YARN 的 timeline server 默认使用内置的 HBase,不知道为什么,总是过几天就挂 ...
- 数据搬运组件:基于Sqoop管理数据导入和导出
一.Sqoop概述 Sqoop是一款开源的大数据组件,主要用来在Hadoop(Hive.HBase等)与传统的数据库(mysql.postgresql.oracle等)间进行数据的传递. 通常数据搬运 ...
- 详解:Sqoop的导入和导出数据
一:导入数据 导入:RDBMS ==> Hadoop [hadoop@hadoop001 bin]$ pwd /home/hadoop/app/sqoop-1.4.6-cdh5.7.0/bin ...
- Sqoop导入导出基本操作
Sqoop基本操作 Sqoop是一款开源的工具,主要用于在Hadoop(Hive)与传统的数据库(mysql.postgresql-)间进行数据的传递,可以将一个关系型数据库(例如 : MySQL , ...
- 如何完美解决Sqoop导入导出MySQL数据错位问题
我发现小伙伴们在使用Sqoop把数据从MySQL导入到Hive的过程中经常会遇到数据错位的问题,虽然最后都是通过添加参数的方法来解决这个问题,但是我认为这并不是一个完美的解决方案,所以花了一点时间研究 ...
- sqoop导入数据遇到的参数问题 ,导出–staging-table
sqoop import参数 –query "select XXXXX and $CONDITIONS " 按条件导入 -m1 指定map 在导入的时候采用指定–columns的方 ...
- Sqoop 安装配置、指令介绍【导入、导出】
文章目录 Sqoop 原理 1.导入原理 2.导出原理 Sqoop 安装配置 1.Sqoop 安装 2.Sqoop配置 3.执行效果测试 Sqoop指令介绍 Sqoop 数据导入(import) My ...
- sqoop 导入mysql blob字段,Sqoop导入的数据格式问题
Sqoop简单介绍 Sqoop是用来在Hadoop平台和其他结构性存储(比如关系型数据库)之间解决大量数据传输问题的工具.也就是说可以从Oracle,MySQL,PostgreSQL等数据库中将数据传 ...
- sqoop导入-hdfs
Sqoop的数据导入 "导入工具"导入单个表从RDBMS到HDFS.表中的每一行被视为HDFS的记录.所有记录都存储为文本文件的文本数据(或者Avro.sequence文件等二进制 ...
最新文章
- Alibaba-Dexposed Bug框架原理及源码解析
- 安卓学习第37课——DatePickerDialog、TimePickerDialog
- SharePoint Designer 2007发布WorkFlow的小bug
- 学校计算机 电教材料账册,电教室管理制度
- linux nmap下载教程,Linux_在Linux系统上用nmap扫描SSL漏洞的方法,以下载nmap 6.45及以上版本。如 - phpStudy...
- 利用lamda函数 的函数式编程 实现scrapy审计外网安全问题
- 深度学习之神经网络的结构
- ros control
- OpenSSL密码库算法笔记——第6.5章 密钥协商
- 共享单车信号服务器,【严肃科普】【严肃科普】共享单车靠什么黑科技远程定位开锁?...
- 在Centos操作系统下安装mysql8.0
- 研旭至尊板——F28335知识点总结①
- vue3 路由跳转,打开新页面
- 网络打印机拒绝访问,无法连接处理方法汇总
- MySQL数据库的完美卸载
- 看了这篇文章,再也不用纠结该选OV证书还是EV证书了
- Deep Learning 效率神器推荐
- php下载列表如何实现,phpcms v9 列表页直接下载功能代码实现
- matalab三维画图
- 为什么受伤的总是我,赢的总是她?
热门文章
- python在自动化中的应用_python中在自动化运维的应用
- linux系统在物流公司的z作用,【项目案例】基于RFID的智能物流仓储系统
- ensprip引入静态路由_IP路由基础理论知识详解(三)
- 查看uboot变量地址_华为FIT AP通过Uboot切换FAT模式
- oracle 连接图示,ORACLE 表连接方法
- springMVC+hibernate + layui分页
- 在el-table中使用el-popover,没法点击确定或取消来关闭添加 多个按钮
- python自动化测试框架开发_webUI自动化测试框架(Python+selenium)
- php报表开发韩顺平,韩顺平从Html基础到php实战开发视频教程非常全面的一套PHP开发教程...
- 编写计算机取余程序_必须收藏,2020年专升本计算机常考知识点总结,抓分的关键点...