利用sqoop完成数据导入导出(代码片段)

ITboy-Bear ITboy-Bear     2022-12-01     703

关键词:

一.安装SQOOP后可使用如下命令列出mysql数据库中的所有数据库,与检验是否安装成功。
     #  sqoop list-databases --connect jdbc:mysql://localhost:3306/ --username root --password 123456

二. hive与mysql数据互导

    一. 使用命令范例:

     sqoop import --connect jdbc:mysql://192.168.137.1:3306/test
     --username root --password 123456 --table mytabs --fields-terminated-by
     '\\t' -m 1 [--hive-import] --append --check-column 'id'  --incremental
     append --last-value 5 --where 'id>2 and id<5'

        参数详解:

       1.--fields-terminated-by '\\t',表示将数据导入到hadoop中列记录之间的间隔符,默认符号为英文逗号。这里通常使用制表符\\t来间隔数据,避免数据再次从HDFS到入到关系数据库时引起分割混乱
        2.-m 1,是--num-mappers的缩写,表示指定MapReduce的个数为1个(默认会自动开启多个),sqoop转化的MR程 序不包含reduce
        3.--append,表示数据导入到hadoop的方式为追加,否则不允许重复导入
        4.--check-column '主键列名' --incremental append --last-value 5,表示数据为增量导入,根据--last-value的值来判断,有大于这个值的记录则执行导入,否则不执行导入操作
        5.表示数据为增量导入,根据--last-value的值来判断, 有大于这个值的记录则执行导入,否则不执行导入操作
        6.--hive-import,表示将数据导入到Hive中;
        7.--where '',数据筛选条件
        8.-e 或--query 'select * from table where id>5 and $CONDITIONS',自定义导入数据的sql语句。使用自定义sql语句 需要注意:
           ① 使用了自定义sql就不能指定--table;
           ② 自定义sql语句的where条件中必须包含字符串"$CONDITIONS",$CONDITIONS是一个变量,用于给多个map任务划分任务范 围;
           ③ 使用自定义sql时,如果通过参数-m指定多个map任务,由于自定义sql中可能存在多表查询,因此必须使用参数“--split-by 表名.字段名”指定多个map任务分割数据的根据字段,如--split-by users.id;
        9. --target-dir,显示指定数据导入到HDFS中的位置,默认保存路径为:/user/当前用户/表名/表数据文件,
           如果导入时需要将已存在的HDFS文件删除,可使用--delete-target-dir

    二. hive数据导入导出数据到mysql

     sqoop export -connect jdbc:mysql://localhost:3306/sqoop
     -username root -password hadoop -table hive_student -export-dir
     /hive/student/student --input-fields-terminated-by '\\t'
    三.mysql数据库数据导入hive中
     sqoop import --connect jdbc:mysql://localhost:3306/sqoop
     -username root -password hadoop -table test -hive-import -m 1
三.hbase与关系型数据库数据互导
    从Mysql导入到Hbase中
    参数说明:
    test 为mysql中要传入到hbase表中的表名。
    mysql_sqoop_test 传入hbase中的表名
     --column-family hbase表中的列族
    --hbase-row-key 在hbase中那一列作为rowkey
    使用范例:
   sqoop import --connect jdbc:mysql://10.120.10.11:3306/sqoop
   --username sqoop --password sqoop --table test --hbase-create-table
   --hbase-table mysql_sqoop_test --column-family info --hbase-row-key id -m 1


sqoop1和sqoop2导入导出(代码片段)

sqoop11、使用Sqoop导入MySQL数据到HDFS[[email protected]~]#sqoopimport--connectjdbc:mysql://localhost:3306/test--usernameroot--passwordroot--tableuser--columns‘uid,uname‘-m1-target-dir‘/sqoop/user‘;//-m指定 查看详情

sqoop简单回顾总结(代码片段)

...回顾总结1Sqoop简介SQLtoHadoop开源工具用于hadoop(hive)与传统数据库之间数据的导入导出输入:Mysql、Oracle、DB2等关系数据数据导入到Hadoop输出:从Hadoop的数据导出到Mysql、Oracle等等2Sqoop原理导入和导出都需要在底层调用mapreduce࿰... 查看详情

sqoop的介绍以及部署安装(代码片段)

...型,根据这些信息,sqoop会生成一个与表名相同的类用来完成序列化工作,保存表中的每一行记录。 -sqoop开启MapReduce作业 -启动的作业在input的过程中,会通过jdbc读取数据表中的内容,这时,会使用sqoo 查看详情

头歌sqoop数据导出-详解(代码片段)

...Sqoop导出(export)的基本语法并配置好环境。相关知识为了完成本关任务,你需要掌握:1、Sqoop导出(export)的基本参数。2、配置环境。Sqoop导出(export)的基本参数。Sqoop能够让Hadoop上的HDFS和Hive跟关系型数据库之间进行数据导... 查看详情

sqoop安装及导入sqlserver数据(代码片段)

如何使用Sqoop导出sqlserver的数据1.下载Sqoop1.4.7到清华镜像去下载sqoop-1.4.7就行了2.连接sqlserver用的jar包使用sqoop导出sqlserver的数据,需要使用对应的sqljdbc.jar包,这里用到的是sqljdbc4.jar点我下载3.安装sqoop将下载好的压缩包解压到指... 查看详情

sqoop常用模板案例整理(代码片段)

使用sqoop导入/导出数据首先,导入和导出是相对与hdfs来说的,将数据添加到hdfs中,称之为导入import;反之为导出export。导出(导出到MySQL)需要准备要数据和MySQL表#数据1 sunwukong male2 qiqi female3 beijita male4 buerma female5 kelin ma... 查看详情

sqoop的简易介绍(代码片段)

...式存储系统,如HDFS、HBase等,以便于用户更好地利用Hadoop进行数据处理和存储。易于使用Sqoop提供了一个简单的命令行界面,用户可以轻松地配置Sqoop作业,包括导入和导出作业。Sqoop还提供了一个Web界面,方... 查看详情

数据工具sqoop用法之mysql与hive数据导入导出(代码片段)

一、pomorg.apache.hivehive-jdbc1.1.0org.apache.hadoophadoop-common2.6.0org.mybatismybatis3.4.6mysqlmysql-connector-java5.1.38#二、目录![在这里插入图片描述](https://img-blog.csdnimg.cn/5365076218b84b1b81f5795227b3ecd 查看详情

sqoop笔记整理(代码片段)

...,在mapreduce中有很多map,每个map读一片数据,进而并行的完成数据的拷贝。export原理获取导出表的schema 查看详情

头歌sqoop数据导入-详解(代码片段)

...Sqoop导入(import)的基本参数并配置好环境。相关知识为了完成本关任务,你需要掌握:1、Sqoop导入(import)的基本参数。2、配置环境。注意:本关实训Sqoop的安装与配置建立在Hadoop、Hive、MySQL已安装配置好的情况下。Sqoop的基... 查看详情

大数据(3j)sqoop生产经验(代码片段)

文章目录增量同步遇到的坑并行度列式存储导出问题Sqoop数据导出一致性问题增量同步遇到的坑业务系统手动导入数据,导入的时间使用了历史时间而不是插入时间并行度Sqoop的底层运行任务是MR中的Map,没有Reduce阶段的... 查看详情

sqoop把hive表数据导入到mysql中(代码片段)

应用:SQOOP是用于对数据进行导入导出的。(1)把MySQL、Oracle等数据库中的数据导入到HDFS、Hive、HBase中(2)把HDFS、Hive、HBase中的数据导出到MySQL、Oracle等数据库中1.把数据从mysql导入到hdfs(默认是/user/<username>)中sqoopimport--connectj... 查看详情

大数据(3j)sqoop生产经验(代码片段)

文章目录增量同步遇到的坑并行度列式存储导出问题Sqoop数据导出一致性问题上游业务系统数据库按月分表上游表字段变更管理增量同步遇到的坑上游(业务系统)手动导入数据,导入的时间使用了历史时间而不是插... 查看详情

sqoop的安装和使用(代码片段)

一、概述sqoop是apache旗下一款“Hadoop和关系数据库服务器之间传送数据”的工具。核心的功能有两个:导入、迁入导出、迁出导入数据:MySQL,Oracle导入数据到Hadoop的HDFS、HIVE、HBASE等数据存储系统导出数据:从Hadoop的文件... 查看详情

sqoop安装及使用(代码片段)

...件4、修改环境变量5、添加MySQL连接驱动6、测试准备MySQL数据登录MySQL数据库创建student数据库切换数据库并导入数据另外一种导入数据的方式使用Navicat运行SQL文件导出MySQL数据库importMySQLToHDFS编写脚本,保存为MySQLToHDF 查看详情

1.131.15sqoop导出数据export使用(代码片段)

...工具将一组文件从HDFS导入到RDBMS。目标表必须已经存在于数据库中。根据用户指定的分隔符读取输入文件并将其解析为一组记录,只有map;[[email protected]sqoop-1.4.5-cdh5.3.6]#bin/sqoophelpexportsqoop-export有三种模式:默认模式:将它... 查看详情

sqoop使用入门(代码片段)

sqoop是apache旗下,用于关系型数据库和hadoop之间传输数据的工具,sqoop可以用在离线分析中,将保存在mysql的业务数据传输到hive数仓,数仓分析完得到结果,再通过sqoop传输到mysql,最后通过web+echart来进行图表展示,更加直观的展... 查看详情

hadoop之sqoop(代码片段)

sqoop产生的原因:多数使用Hadoop技术的处理大数据业务的企业,有大量的数据存储在关系型数据中。由于没有工具支持,对Hadoop和关系型数据库之间数据传输是一个很困难的事。所以sqoop产生了。sqoop简介:sqoop是连接关... 查看详情