大数据之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表的结构和定义,来向我们展示出类似表格的形式。

相关推荐
汇智信科7 小时前
智慧矿山和工业大数据解决方案“智能设备管理系统”
大数据·人工智能·工业大数据·智能矿山·汇智信科·智能设备管理系统
阿里云大数据AI技术8 小时前
Hologres Dynamic Table 在淘天价格力的业务实践
大数据·人工智能·阿里云·hologres·增量刷新
查士丁尼·绵8 小时前
hadoop集群存算分离
hive·hdfs·zookeeper·spark·hbase·yarn·galera
OpenCSG11 小时前
新能源汽车行业经典案例 — 某新能源汽车 × OpenCSG
大数据·人工智能·汽车·客户案例·opencsg
外参财观11 小时前
流量变现的边界:携程金融按下暂停键后的冷思考
大数据·人工智能·金融
CCPC不拿奖不改名12 小时前
两种完整的 Git 分支协作流程
大数据·人工智能·git·python·elasticsearch·搜索引擎·自然语言处理
智在碧得12 小时前
碧服打造DataOps全链路闭环,定义大数据工程化发布新标杆
大数据·网络·数据库
亿信华辰软件12 小时前
构建智慧数据中台,赋能饮料集团全链路数字化转型新引擎
大数据·人工智能·云计算
Elastic 中国社区官方博客13 小时前
使用瑞士风格哈希表实现更快的 ES|QL 统计
大数据·数据结构·sql·elasticsearch·搜索引擎·全文检索·散列表
isNotNullX13 小时前
什么是数字脱敏?一文讲透数字脱敏概念
大数据·数据安全·数据可视化·数字脱敏