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导入与导出总结相关推荐

  1. Sqoop导入导出的时候总是出现等待5分钟的问题解决办法

    25.25.27 Sqoop导入导出的时候总是出现等待5分钟的问题解决办法: HDP3.1 中的 YARN 的 timeline server 默认使用内置的 HBase,不知道为什么,总是过几天就挂 ...

  2. 数据搬运组件:基于Sqoop管理数据导入和导出

    一.Sqoop概述 Sqoop是一款开源的大数据组件,主要用来在Hadoop(Hive.HBase等)与传统的数据库(mysql.postgresql.oracle等)间进行数据的传递. 通常数据搬运 ...

  3. 详解:Sqoop的导入和导出数据

    一:导入数据 导入:RDBMS ==> Hadoop [hadoop@hadoop001 bin]$ pwd /home/hadoop/app/sqoop-1.4.6-cdh5.7.0/bin ...

  4. Sqoop导入导出基本操作

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

  5. 如何完美解决Sqoop导入导出MySQL数据错位问题

    我发现小伙伴们在使用Sqoop把数据从MySQL导入到Hive的过程中经常会遇到数据错位的问题,虽然最后都是通过添加参数的方法来解决这个问题,但是我认为这并不是一个完美的解决方案,所以花了一点时间研究 ...

  6. sqoop导入数据遇到的参数问题 ,导出–staging-table

    sqoop import参数 –query "select XXXXX and $CONDITIONS " 按条件导入 -m1 指定map 在导入的时候采用指定–columns的方 ...

  7. Sqoop 安装配置、指令介绍【导入、导出】

    文章目录 Sqoop 原理 1.导入原理 2.导出原理 Sqoop 安装配置 1.Sqoop 安装 2.Sqoop配置 3.执行效果测试 Sqoop指令介绍 Sqoop 数据导入(import) My ...

  8. sqoop 导入mysql blob字段,Sqoop导入的数据格式问题

    Sqoop简单介绍 Sqoop是用来在Hadoop平台和其他结构性存储(比如关系型数据库)之间解决大量数据传输问题的工具.也就是说可以从Oracle,MySQL,PostgreSQL等数据库中将数据传 ...

  9. sqoop导入-hdfs

    Sqoop的数据导入 "导入工具"导入单个表从RDBMS到HDFS.表中的每一行被视为HDFS的记录.所有记录都存储为文本文件的文本数据(或者Avro.sequence文件等二进制 ...

最新文章

  1. Alibaba-Dexposed Bug框架原理及源码解析
  2. 安卓学习第37课——DatePickerDialog、TimePickerDialog
  3. SharePoint Designer 2007发布WorkFlow的小bug
  4. 学校计算机 电教材料账册,电教室管理制度
  5. linux nmap下载教程,Linux_在Linux系统上用nmap扫描SSL漏洞的方法,以下载nmap 6.45及以上版本。如 - phpStudy...
  6. 利用lamda函数 的函数式编程 实现scrapy审计外网安全问题
  7. 深度学习之神经网络的结构
  8. ros control
  9. OpenSSL密码库算法笔记——第6.5章 密钥协商
  10. 共享单车信号服务器,【严肃科普】【严肃科普】共享单车靠什么黑科技远程定位开锁?...
  11. 在Centos操作系统下安装mysql8.0
  12. 研旭至尊板——F28335知识点总结①
  13. vue3 路由跳转,打开新页面
  14. 网络打印机拒绝访问,无法连接处理方法汇总
  15. MySQL数据库的完美卸载
  16. 看了这篇文章,再也不用纠结该选OV证书还是EV证书了
  17. Deep Learning 效率神器推荐
  18. php下载列表如何实现,phpcms v9 列表页直接下载功能代码实现
  19. matalab三维画图
  20. 为什么受伤的总是我,赢的总是她?

热门文章

  1. python在自动化中的应用_python中在自动化运维的应用
  2. linux系统在物流公司的z作用,【项目案例】基于RFID的智能物流仓储系统
  3. ensprip引入静态路由_IP路由基础理论知识详解(三)
  4. 查看uboot变量地址_华为FIT AP通过Uboot切换FAT模式
  5. oracle 连接图示,ORACLE 表连接方法
  6. springMVC+hibernate + layui分页
  7. 在el-table中使用el-popover,没法点击确定或取消来关闭添加 多个按钮
  8. python自动化测试框架开发_webUI自动化测试框架(Python+selenium)
  9. php报表开发韩顺平,韩顺平从Html基础到php实战开发视频教程非常全面的一套PHP开发教程...
  10. 编写计算机取余程序_必须收藏,2020年专升本计算机常考知识点总结,抓分的关键点...