【大数据Hive】hive 表设计常用优化策略

目录

一、前言

二、hive 普通表查询原理

2.1 操作演示说明

2.1.1 创建一张表,并加载数据

2.1.2 统计3月24号的登录人数

2.1.3 查询原理过程总结

2.2 普通表结构带来的问题

三、hive分区表设计

3.1 区表结构 - 分区设计思想

3.2 操作演示

3.2.1 创建分区表 按照登录日期分区

3.2.2 开启动态分区

按登录日期分区

基于分区表查询数据

查询先检索元数据

查询执行计划

四、hive分桶表设计

4.1 Hive中Join的问题

4.2 分桶表设计思想

4.3 创建分桶表操作

创建第一张普通表

构建分桶emp表

创建第二张普通表dept并加载数据

构建分桶dept表并加载数据

4.4 普通表与分桶表join执行分析

普通表的join执行计划分析

分桶的Join执行计划分析

 五、hive索引设计

5.1 hive索引说明

5.2 Hive中索引基本原理

5.2.1 Hive索引目的

5.3 索引的使用

5.4 Hive索引的问题

六、写在文末


一、前言

不管是关系性数据库,比如像mysql,还是类关系型数据库,像mongodb,为了确保在建表开始使用之后,能够充分发挥数据表的高性能查询,需要在表的设计阶段,从表的设计,索引的设计,分区的设计等等一系列因素综合去平衡和考虑,以免为上线后的优化工作带来麻烦。本篇将介绍hive关于表设计常用的一些优化策略。

二、hive 普通表查询原理

通过之前的学习,想必大家对hive的查询原理不再陌生,下图是hive查询的原理图;

为什么要说查询原理呢,理解一个软件的设计有必要对其原理做一定的了解,就像之前学习mysql一样,只有了解了innodb引擎的工作原理,才能更好的指导我们sql的做性能优化,关于hive的查询原理,再做如下补充:

  • Hive的设计思想是通过元数据解析描述将HDFS上的文件映射成表;
  • 基本的查询原理是当用户通过HQL语句对Hive中的表进行复杂数据处理和计算时&#
  • 71
    点赞
  • 71
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 105
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 105
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

逆风飞翔的小叔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值