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

执行脚本

shell 复制代码
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

查看结果

可以看到任务执行完毕

部分导入: 指定列

执行脚本

shell 复制代码
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

执行脚本

shell 复制代码
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"

分配任务

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

相关推荐
悟纤5 分钟前
学习与专注音乐流派 (Study & Focus Music):AI 音乐创作终极指南 | Suno高级篇 | 第33篇
大数据·人工智能·深度学习·学习·suno·suno api
ESBK20257 分钟前
第四届移动互联网、云计算与信息安全国际会议(MICCIS 2026)二轮征稿启动,诚邀全球学者共赴学术盛宴
大数据·网络·物联网·网络安全·云计算·密码学·信息与通信
小马爱打代码17 分钟前
ZooKeeper:入门实战
分布式·zookeeper·云原生
斯普信专业组21 分钟前
构建基于MCP的MySQL智能运维平台:从开源服务端到交互式AI助手
运维·mysql·开源·mcp
Elastic 中国社区官方博客22 分钟前
Elasticsearch:Workflows 介绍 - 9.3
大数据·数据库·人工智能·elasticsearch·ai·全文检索
B站_计算机毕业设计之家24 分钟前
豆瓣电影推荐系统 | Python Django Echarts构建个性化影视推荐平台 大数据 毕业设计源码 (建议收藏)✅
大数据·python·机器学习·django·毕业设计·echarts·推荐算法
莽撞的大地瓜37 分钟前
洞察,始于一目了然——让舆情数据自己“说话”
大数据·网络·数据分析
证榜样呀44 分钟前
2026 中专大数据技术专业可考的证书有哪些,必看!
大数据·sql
星辰_mya44 分钟前
Elasticsearch主分片数写入后不能改
大数据·elasticsearch·搜索引擎
Codefengfeng1 小时前
数据安全知识点速通
sql