先说一些废话

总结一下Hive面试宝典中的要点,方便读者快速过一遍Hive面试所需要的知识点。

本文请搭配 Hive面试宝典 来食用更美味哟 ┗( ▔, ▔ )┛

方便自己系统性回忆,根据*的数量来标记重要性

* 简单了解

** 熟悉掌握

*** 需要精通

  1. Hive的介绍(*)

    • Hive和Hadoop的关系
    • Hive的特点
    • Hive的缺点
    • Hive常见的应用场景
    • Hive和mysql的区别
  2. Hive的架构(*)
  3. Hive的数据(**)
    • Hive的数据模型
    • Hive的底层如何存储Null值
    • Hive中元数据metadata和元数据商店metastore)`的作用
    • Hive有哪些保存元数据metadata的方式
    • Hive元数据存储方式中,本地模式和远程模式的区别
    • Hive的数据类型
    • Hive的隐式类型转换规则
    • Hive数据存储所使用的文件格式
    • Hive中使用的压缩算法
    • 什么是数据可分割
    • 关于压缩模式说明
  4. Hive的安装与使用(*)
    • 如何在Hive中集成HBase
    • 如何通过 HiveSQL 来直接读写 HBase
  5. Hive的分区和分桶(**)
    • 什么是Hive分区
    • Hive分区的优点
    • Hive分区的缺点
    • 什么是Hive分桶
    • 关于Hive索引的说明
    • Hive分桶的优点
    • Hive分桶的缺点
    • Hive中静态分区和动态分区的区别
    • Hive动态分区的参数设定
  6. Hive的内部表和外部表(*)
    • 什么是Hive的内部表和外部表
    • Hive内部表和外部表的区别是什么
    • 生产环境中为什么建议使用外部表
  7. Hive SQL(***)
    • Hive中的SQL如何转化成MapReduce任务的
    • 什么情况下Hive不走MapReduce任务
    • Hive中如何查询A表中B表不存在的数据
    • Hive中有哪些连接查询以及如何使用
    • Hive中左连接和内连接的区别
    • Hive中左连接的底层原理
    • Hive查询时候 ON 和 WHERE 有什么区别
  8. Hive 函数(***)
    • 如何使用UDF/UDAF/UDTF
    • 为什么使用UDF/UDAF/UDTF
    • 你写过什么样的UDF/UDAF/UDT
    • Hive自定义函数实现了什么函数什么接口
    • Hive中如何去重
    • Hive中排序函数的使用方式及区别
    • 请说明以下常用函数 split / coalesce / collect list / collect set 的功能
    • 请描述工作中常用的Hive常用函数及使用场景
  9. Hive 运维(*)
    • 如何监控一个提交后的Hive状态
  10. Hive 优化(***)
    • 请说明你在工作中如何进行Hive优化
    • HiveSQL优化 ———— Hive单表查询优化
    • HiveSQL优化 ———— Hive多表查询优化
    • HiveSQL优化 ———— Hive其他查询优化
    • Hive数据倾斜 ———— 单表携带了 Group By 字段的查询
    • Hive数据倾斜 ———— 两表或多表的 join 关联时,其中一个表较小,但是 key 集中
    • Hive数据倾斜 ———— 两表或多表的 join 关联时,有 Null值 或 无意义值
    • Hive数据倾斜 ———— 两表或多表的 join 关联时,数据类型不统一
    • Hive数据倾斜 ———— 单独处理倾斜key
    • HiveJob优化 ———— HiveMap优化方案
    • HiveJob优化 ———— HiveReduce优化方案
    • Hive整体优化方案

我是 fx67ll.com,如果您发现本文有什么错误,欢迎在评论区讨论指正,感谢您的阅读!

如果您喜欢这篇文章,欢迎访问我的 本文github仓库地址,为我点一颗Star,Thanks~

转发请注明参考文章地址,非常感谢!!!

2023 Hive 面试大纲的更多相关文章

  1. BAT美团滴滴java面试大纲(带答案版)之三:多线程Lock

    继续面试大纲系列文章. 这是多线程的第二篇. 多线程就像武学中对的吸星大法,理解透了用好了可以得道成仙,俯瞰芸芸众生:而滥用则会遭其反噬. 在多线程编程中要渡的第二个“劫”,则是Lock.在很多时候, ...

  2. Java面试大纲-java面试该做哪些准备,java开发达到这样的水平可以涨工资

    Java培训结束,面临的就是毕业找工作.在找工作时,就要针对性地做充分的面试准备.准备不充分的面试,完全是浪费时间,更是对自己的不负责. 上海尚学堂Java培训整理出Java面试大纲,其中大部分都是面 ...

  3. BAT美团滴滴java面试大纲(带答案版)之三:多线程synchronized

    继续面试大纲系列文章. 从这一篇开始,我们进入ava编程中的一个重要领域---多线程!多线程就像武学中对的吸星大法,理解透了用好了可以得道成仙,俯瞰芸芸众生:而滥用则会遭其反噬. 在多线程编程中要渡的 ...

  4. 金三银四跳槽季,BAT美团滴滴java面试大纲(带答案版)之一:Java基础篇

    Java基础篇: 题记:本系列文章,会尽量模拟面试现场对话情景, 用口语而非书面语 ,采用问答形式来展现.另外每一个问题都附上“延伸”,这部分内容是帮助小伙伴们更深的理解一些底层细节的补充,在面试中可 ...

  5. BAT美团滴滴java面试大纲(带答案版)之四:多线程Lock

    每天学习一点点 编程PDF电子书.视频教程免费下载:http://www.shitanlife.com/code 这是多线程的第二篇. 多线程就像武学中对的吸星大法,理解透了用好了可以得道成仙,俯瞰芸 ...

  6. Hive面试准备

    Hive与HBase的区别Hive架构原理Hive的数据模型及各模块的应用场景Hive支持的文件格式和压缩格式及各自特点Hive内外表的区分方法及内外部差异Hive视图如何创建.特点及应用场景Hive ...

  7. C/C++程序员面试大纲

    基础篇:操作系统.计算机网络.设计模式一:操作系统 1. 进程的有哪几种状态,状态转换图,及导致转换的事件. 2. 进程与线程的区别. 3. 进程通信的几种方式. 4. 线程同步几种方式.(一定要会写 ...

  8. hive数据仓库入门到实战及面试

    第一章.hive入门 一.hive入门手册 1.什么是数据仓库 1.1数据仓库概念 对历史数据变化的统计,从而支撑企业的决策.比如:某个商品最近一个月的销量,预判下个月应该销售多少,从而补充多少货源. ...

  9. hive最全学习线路和实践练习

    非原创,源自:https://www.cnblogs.com/snowbook/p/5723767.html hive被大多数企业使用,学习它,利于自己掌握企业所使用的技术,这里从安装使用到概念.原理 ...

  10. hive入门学习线路指导

    hive被大多数企业使用,学习它,利于自己掌握企业所使用的技术,这里从安装使用到概念.原理及如何使用遇到的问题,来讲解hive,希望对大家有所帮助.此篇内容较多:看完之后需要达到的目标1.hive是什 ...

随机推荐

  1. 常用注解使用总结系列: @Order 注解

    @Order 注解 @Order注解主要用来控制配置类的加载顺序示例代码: package com.runlion.tms.admin.constant; public class AService ...

  2. js扩展方法(自用)

    //字符串转Date 字符串格式 yyyy-MM-dd HH:mm:ssString.prototype.toDate = function() { var date = eval('new Date ...

  3. 用百度和神策做埋点为何pv差异很大?

    近期ClkLog收到一个客户反馈说我们与百度统计的PV数据差异很大.为了验证问题,开发进行了一次对页面浏览量统计的测试.针对同一个IP同一个时间的页面浏览量统计发现,百度的统计数据只有一条,而ClkL ...

  4. OceanBase初体验之查看OceanBase的执行计划

    前置条件 包含obd和obclient的中控机 OceanBase 测试集群 独立的测试租户 BenchmarkSQL 工具(可选) 为了能够方面的查看复杂SQL的执行计划,我们先用TPCC模拟一些数 ...

  5. PolarDB-X源码解读系列:DML之Insert流程

    简介: Insert类的SQL语句的流程可初略分为:解析.校验.优化器.执行器.物理执行(GalaxyEngine执行).本文将以一条简单的Insert语句通过调试的方式进行解读. 在阅读本文之前,强 ...

  6. 从操作系统层面分析Java IO演进之路

    简介: 本文从操作系统实际调用角度(以CentOS Linux release 7.5操作系统为示例),力求追根溯源看IO的每一步操作到底发生了什么. 作者 | 道坚来源 | 阿里技术公众号 前言 本 ...

  7. [FAQ] golang-migrate/migrate error: default addr for network '127.0.0.1:3306' unknown

    按照项目github文档上所示,在使用 mysql 时你可能会这样写: $ migrate -path db/migrations -database mysql://root:123456@127. ...

  8. dotnet C# 基于 INotifyPropertyChanged 实现一个 CLR 属性绑定辅助类

    习惯了 WPF 或 UWP 等的依赖属性的绑定机制之后,我在写 CLR 属性时,有时也期望将两个 CLR 属性给绑定到一起.在 dotnet 里,提供了 System.ComponentModel.I ...

  9. 非技术 对以后各大应用功能与 AI 助手的思考

    本文记录我对于 AI 助手在未来给各大应用或网站或设备带来的影响的思考 结论:未来的各大应用或网站或者是设备,都不会出现满屏的眼花缭乱的功能,取代的是各自有一个专属的 AI 助手,通过 AI 助手与人 ...

  10. dotnet 6 创建进程 Process.Start 时设置 UseShellExecute 在 Windows 下对性能的影响

    本文将告诉大家,在 dotnet 6 或 dotnet 7 版本里,启动新的进程时,在 StartInfo 设置 UseShellExecute 为 true 和 false 时,对性能的影响 在 d ...