Hadoop-23 Sqoop 数据MySQL到HDFS(部分) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce

章节内容

上一节我们完成了如下的内容:

  • 编写一个 SQL 脚本生成数据
  • 启动我们的依赖服务:HDFS、Hive、YARN
  • Sqoop 将数据 全量 导入 Hive
  • 查看MapReduce状态、查看HDFS结果

背景介绍

这里是三台公网云服务器,每台 2C4G,搭建一个Hadoop的学习环境,供我学习。
之前已经在 VM 虚拟机上搭建过一次,但是没留下笔记,这次趁着前几天薅羊毛的3台机器,赶紧尝试在公网上搭建体验一下。

  • 2C4G 编号 h121
  • 2C4G 编号 h122
  • 2C2G 编号 h123

在这里插入图片描述

注意事项

Apache Sqoop 于 2021 年 6 月迁入 Attic。
Apache Sqoop 的使命是创建和维护与 Apache Hadoop 和结构化数据存储相关的大规模数据传输软件。
虽然项目已经可能过时,但是如果你的时间充裕的话,可以适当地学习一下,可能会对你有一定的帮助的!!!

部分导入: --query

执行脚本

sqoop import \
--connect jdbc:mysql://h122.wzk.icu:3306/sqoop \
--username hive \
--password hive@wzk.icu \
--target-dir /root \
--append \
-m 1 \
--fields-terminated-by "\t" \
--query 'select gname, serialNumber, price, stock_number,
create_time from goodtbl where price>88 and $CONDITIONS;'

上述参数的解释:

  • 查询语句的where中必须包含 ‘$CONDITIONS’
  • 如果query后使用双引号 则 $CONDITIONS 前必须加转移符号,防止shell认为是自己的变量

分配任务

可以观察到 Sqoop 开始了 MapReduce 的任务
在这里插入图片描述

等待执行

此时任务已经开始分配了 Map -> Reduce
在这里插入图片描述

查看结果

可以看到任务执行完毕
在这里插入图片描述

部分导入: 指定列

执行脚本

sqoop import \
--connect jdbc:mysql://h122.wzk.icu:3306/sqoop \
--username hive \
--password hive@wzk.icu \
--target-dir /root \
--delete-target-dir \
--num-mappers 1 \
--fields-terminated-by "\t" \
--columns gname,serialNumber,price \
--table goodtbl

上述参数的解释:

  • columns中如果涉及到多个列,用逗号分隔,不能添加空格!!!

分配任务

与上述的内容一致,就不放重复的内容了,只截取部分。
在这里插入图片描述

部分导入: --where

执行脚本

sqoop import \
--connect jdbc:mysql://h122.wzk.icu:3306/sqoop \
--username hive \
--password hive@wzk.icu \
--target-dir /root \
--delete-target-dir \
-m 1 \
--fields-terminated-by "\t" \
--table goodtbl \
--where "price>=68"

分配任务

与上述一致,内容结果等基本重复,也不放了。

请添加图片描述

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-12 06:58:03       66 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-12 06:58:03       70 阅读
  3. 在Django里面运行非项目文件

    2024-07-12 06:58:03       57 阅读
  4. Python语言-面向对象

    2024-07-12 06:58:03       68 阅读

热门阅读

  1. 阿里生态体系

    2024-07-12 06:58:03       26 阅读
  2. 物联网时代的等保测评:保障万物互联的安全

    2024-07-12 06:58:03       27 阅读
  3. Oracle数据库模式对象

    2024-07-12 06:58:03       22 阅读
  4. 气浮沉淀污水处理设备广泛应用

    2024-07-12 06:58:03       20 阅读
  5. copy 和 mutableCopy 有点乱

    2024-07-12 06:58:03       27 阅读
  6. Go 1.19 工具链升级:go命令与工具改进详解

    2024-07-12 06:58:03       30 阅读
  7. 暗黑魅力:Xcode全面拥抱应用暗黑模式开发指南

    2024-07-12 06:58:03       26 阅读
  8. 驾驭npm更新之力:深入掌握npm update命令的精髓

    2024-07-12 06:58:03       22 阅读
  9. 港口危险货物安全管理人员考试题库(含答案)

    2024-07-12 06:58:03       27 阅读
  10. 云计算 | 期末梳理(中)

    2024-07-12 06:58:03       24 阅读
  11. C语言5 字符输出函数和格式输出函数

    2024-07-12 06:58:03       25 阅读
  12. vue 使用$router.push传递参数

    2024-07-12 06:58:03       22 阅读
  13. 【面试系列】网络工程师 高频面试题及详细解答

    2024-07-12 06:58:03       28 阅读
  14. 云计算 | 期末梳理(上)

    2024-07-12 06:58:03       20 阅读