在 Hive 中执行 SELECT * 为什么不会触发 MapReduce?
If you run a SELECT * query in Hive, why doesn't it run MapReduce?
题目类型: 技术面试题
这是一道技术面试题,常见于澳洲IT公司面试中。
难度: hard
分类: Hive 执行机制, 性能优化
标签: Hive, SELECT *, MapReduce, hive.fetch.task.conversion, latency optimization
参考答案摘要
核心答案 在 Hive 中某些简单查询(例如 SELECT 、 FILTER 、 LIMIT 等)可能不会触发 MapReduce,是因为 Hive 的配置项 hive.fetch.task.conversion 可以让 Hive 使用更轻量的 Fetch Task 来直接读取数据,从而 避免 MapReduce 启动带来的高延迟开销 。 关键点 MapReduce 启动开销大 :即使是小查询也会...
本题提供 STAR 原则详细解答和技术解析,登录匠人学院学习中心即可查看完整答案。