Hadoop2.x辅助框架(一)数据转换工具sqoop

本文介绍了sqoop在Hadoop2.x中的作用,作为数据转换工具,它用于在HDFS和RDBMS之间进行数据的导入导出。sqoop通过MapReduce实现并行批处理,提升数据传输速度,并具备容错性。文中详细阐述了sqoop的导入导出过程,以及如何直接使用和配置sqoop命令进行数据操作。
摘要由CSDN通过智能技术生成

一、sqoop的作用:实现数据在HDFS 和RDBMS之间进行导入导出

    1、要想将存储在Oracle、MySQL等关系型数据库上的数据上传到HDFS时 ,可以使用sqoop将表中数据抽取到HDFS。

    2、一般情况下,使用Flume搜集的实时数据是被存储到HDFS上的。可以将其导出到RDBMS.

二、sqoop的底层:sqoop本质上运行的还是mapreduce程序,它利用并行批处理的方式来加快数据的传输速度。并且具有容错性。

    1、sqoop通过mapreduce进行导入时会从表中一行行的读取记录并将其存入HDFS中。其读取过程如下:


        (1)第一步,Sqoop会通过JDBC来获取所需要的数据库元数据,例如,导入表的列名,数据类型等。

        (2)第二步,这些数据库的数据类型(varchar, number等)会被映射成Java的数据类型(String, int等),根据这些信息,Sqoop会生成一个与表名同名的类用来完成反序列化工作,保存表中的每一行记录。

        (3)第三步,Sqoop启动MapReducer作业

        (4)第四步,启动的作业在input的过程中,会通过JDBC读取数据表中的内容,这时,会使用Sqoop生成的类进行反序列化操作

        (5)第五步,最后将这些记录写

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值