栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

第四节课 hive的表分层

第四节课 hive的表分层

目录

hive调优优化

建表注意事项

数据倾斜优化

原因:

解决方案:

数据仓库建模架构:

数据仓库建模方式:

数据仓库建模范式:

分层设计:


hive调优优化

建表注意事项

1、分区,分桶

一般按照业务日期进行分区

2、一般使用外部表,避免数据误删

3、选择适当的文件储存格式及压缩格式

4、命名规范

5、数据分层,表分离

分区裁剪 where过滤,先过滤再join

分区分桶,合并小文件

左连接的时候,大表再左边,小标再右边

order by语句:是全局排列

sort by语句:是单reduce排序 只有一个reduce和order bu 没有区别

distribute by语句:是分区字段;

cluster by语句:可以确保类似的数据分发到同一个reduce task中,并且保证数据有序防止所有的数据分发到同一个reduce上,导致整体的job时间延长

数据倾斜优化

处理集中的key

原因:

1、key分布不均匀(实际上还是重复) 比如group by 或者 distinct的时候

2、数据重复,join笛卡儿积 数据膨胀

表现:

任务进度长时间维持再99%,100%,查看任务监控页面,发现只有少量reduce子任务未完成,因为其处理的数据量和其他reduce差异过大

解决方案:

1、看下业务上,数据源头能否对数据进行过滤,比如key为null,业务层面进行优化

2、找到key重复的具体值,进行拆分,hash,异步求和

数据仓库建模:

数据仓库的发展大致经历了三个过程

简单报表阶段

数据集市阶段

数据仓库阶段

数据仓库建模架构:

DB数据->ETL帖源层->ODS汇总数据->DM数据仓库->主题域DataMart

数据仓库建模方式:

1、分库分表,命名规范,库名以所在数据层开头命名 如:ods_dianxin_test

2、星型和雪花型建模

数据仓库建模范式:

1、1NF

1NF简单点就是原子性,列不可再分,没有重复的列也没有重复的行

基本上主要有主键的表都满足第一范式

2、2NF

1、2NF首先满足1NF

2、非主属性必须依赖于键的全部,如果只依赖于主键的一部分,则需要移出创建新表

数仓专业称谓:

1,事实表:事实表是用来存储主题的主干内容,一些外键指向维度表。事实表一般是没有主键的,基本都是外键。数据的质量完全由业务系统来把握。一般单表字段较多,数据量比较大

2,维度表:事实表中某个方向分支,必须有主键,用于关联事实表。一般数据量较小,变化缓慢。

3,宽表:字段和数据量比较巨大,很多维度杂糅在一起。好处:方便查询分析。缺点:没有规范。

4,拉链表:记录一个事物从开始,一直到当前状态的所有变化的信息

分层设计:

ODS数据运营层

DW数据仓库层

DWD数据明细层 维度退化

DWM数据中间层 轻度聚合

DWS数据服务层 数据集市,宽表

(DIM 维表层)

ADS/APP/DM 数据应用层,数据集市

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/613155.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号