大数据之HIVE,一次HIVESQL执行的过程(四)

在hive中执行如下sql

INSERT OVERWRITE TABLE XXX

SELECT * from XXX

数据最终是怎么存储到hdfs上的过程

执行的过程当中,打印出如下的日志过程,本质上是一个在MapReduce中进行Shuffle的过程

所以下面就Shuffle的过程进行分析

Shuffle 描述的是数据从 Map 端到 Reduce 端的过程,大致分为排序(sort)、溢写(spill)、合并(merge)、拉取拷贝(Copy)、合并排序(merge sort)这几个过程,大体流程如下:

上图的 Map 的输出的文件被分片为红绿蓝三个分片,这个分片的就是根据 Key 为条件来分片的,分片算法可以自己实现,例如 Hash、Range 等,最终 Reduce 任务只拉取对应颜色的数据来进行处理,就实现把相同的 Key 拉取到相同的 Reduce 节点处理的功能。下面分开来说 Shuffle 的的各个过程。

注意:

sqoop import实际上是把数据存放到hdfs对应路径上了,而不是"直接导入表里",

查询时,hive会从hdfs的路径上提取数据,再根据hive表的结构和定义,来向我们展示出类似表格的形式。

相关推荐
大大大大晴天1 小时前
从 HDFS 到对象存储:计算存储分离如何重塑云原生大数据底座
大数据
用户36105886261210 小时前
SparkStreaming 之 updateStateByKey 算子详解及代码实现
大数据·spark
咖啡屋和酒吧12 小时前
“隐性肩颈紧张”正在透支精力|没有酸痛,不代表肩颈处于健康状态
大数据·精选
港股研究社12 小时前
专注履约底座,顺丰同城在即时零售效率时代提升增长动能
大数据·人工智能
AI_yangxi14 小时前
短视频矩阵系统选哪家
大数据·人工智能·矩阵
lupai1 天前
手机在网状态接口实测效果与质量评估
大数据·python·智能手机·api接口
大模型丫丫1 天前
Hermes Agent:轻量级智能体框架实战指南
大数据·运维·服务器
大大大大晴天1 天前
每天认识一个组件:SQL网关Apache Kyuubi
大数据
2601_962218471 天前
万象生鲜系统冷链物联网接入技术实现生鲜企业温控管理数字化
大数据·运维·微服务·云原生·架构
2601_962074811 天前
大数据-264 实时数仓 - Canal MySQL的binlog研究 存储目录 变动信息 配置MySQL
大数据·数据库·mysql