Sqoop导入导出

前言:

     Sqoop是一个用于在Hadoop和关系数据库之间进行数据传输的工具。它可以将关系数据库中的数据导入到Hadoop的HDFS、Hive或HBase中,也可以将Hadoop和Hive中的数据导出到关系数据库中。在大数据场景下,Sqoop可以帮助我们轻松地实现数据的迁移和同步。

参数认识:

  • connect:指定数据库的JDBC连接字符串。
  • username:指定数据库的用户名。
  • password:指定数据库的密码。
  • table:指定要导入的表名。
  • columns:指定要导入的列名。
  • target-dir:指定导入的数据存放的目录。
  • delete-target-dir:如果目标目录已经存在,是否删除原有的数据。
  • num-mappers(--m):指定导入任务的并发度。
  • export-dir:指定要导出的数据所在的目录。

一、Sqoop全量导入

1、使用sqoop将MySQL中表的数据同步到大数据平台的HDFS上

//导入命令
sqoop import --connect jdbc:mysql://192.168.137.101:3306/etl_db --username myhive --password 6459367 --table class01 --target-dir /etl_db/test_data --m 1

2、使用sqoop将MySQL中表的数据同步到Hive中

//导入命令
sqoop import --connect jdbc:mysql://192.168.137.101:3306/etl_db --username myhive --password 6459367 --table class04 --hive-import --hive-table etl_data.class04 --m 1

二、Sqoop增量导入

1、使用columns导入想要的列到hive表中

//使用columns导入想要的列到hive表中
sqoop import --connect jdbc:mysql://192.168.137.101:3306/etl_db --username myhive --password 6459367 --table student01 --columns 'id,name' --hive-import --hive-table etl_data.student01 --m 1

2、使用where导入到hive

//使用where导入到hive
sqoop import --connect jdbc:mysql://192.168.137.101:3306/etl_db --username myhive --password 6459367 --table student02 --where "pskq>90" --hive-import --hive-table etl_data.student02 --m 1

3、使用自定义sql的方式导入到hdfs

//使用自定义sql的方式导入到hdfs
sqoop import --connect jdbc:mysql://192.168.137.101:3306/etl_db --username myhive --password 6459367 --target-dir /etl_db/test_data3 --m 1 --query "select id,name,pskq from student03 where pskq>90 and \$CONDITIONS"

三、Sqoop导出

1、使用Sqoop将hdfs上的数据导入到MySQL中

//使用Sqoop将hdfs上的数据导入到MySQL刚刚创建的表中
sqoop export --connect "jdbc:mysql://192.168.137.101:3306/outdata_mysql?useUnicode=true&characterEncoding=utf-8" --username myhive --password 6459367 --table hdfs_mysql --fields-terminated-by ',' --export-dir /etl_db/test_data/part-m-00000

2、使用Sqoop将hdfs上的数据导入到MySQL中

//使用Sqoop将hdfs上的数据导入到MySQL刚刚创建的表中
sqoop export --connect "jdbc:mysql://192.168.137.101:3306/outdata_mysql?useUnicode=true&characterEncoding=utf-8" --username myhive --password 6459367 --table hive_mysql --fields-terminated-by ',' --export-dir /hadoop_data/hive_data01/000000_0

注!!! 除了本人的导入导出方式还可以加入其他的参数进行导入导出,这只是参考!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值