IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> Hive企业高级应用 -> 正文阅读

[大数据]Hive企业高级应用

一.数据仓库的架构设计

数据仓库的主要工作就是ETL ( Extract-Transform-Load)

1.2数据架构

架构原则:先水平,再垂直

数据架构分三层:

源数据落地区: (SDF source data file)

数据仓库层: DW Data WareHouse

数据集市层: DM Data Market

数据仓库层进一步分三层

源数据层:DWB Data WareHouse Base

细节数据层:DWD Data WareHouse

汇总数据层:DWS Data WareHouse Summary

源数据层:

存放生产系统的原始数据,清洗掉不符合质量的数据,主要是满足未来大量的不可预知的需求,该层数据通常需要永久保留

细节数据层:

按主题进行组织保留数据,数据粒度与生产系统一致,除了要满足当前可见的数据服务外,还要满足一定的不可预知的应用需求

汇总数据层

该层数据按主题进行组织,数据粒度与细节数据层保持一致

面向分析型应用进行细粒度的统计和沉淀,并为可预见的多个应用提供数据

二.数据仓库的建模:

概念定义:

数据模行是抽象描述现实世界的一种工具和方法

2.1 数据仓库建模的阶段发展:

简单报表阶段

数据集市阶段

数据仓库阶段

2.2数据建模的意义

进行全面的的业务梳理改进业务流程

建立全方位的数据视角,消灭信息孤岛和数据差异

解决业务的变动和数据仓库的灵活性

帮助数据仓库系统本身的建设

2.3如何构建数据模型

数据模型的层次划分

业务建模:主要解决业务层面的分解和程序化。

领域建模:主要是对业务模型进行抽象处理

逻辑建模:主要就是写sql

物理建模:生成表

2.4构建方法:范式建模法

维度建模法

实体建模法

2.5范式建模法:

建模方法:六大范式

第1范式-1NF:无重复的列、列不可再拆分。

第2范式-2NF:属性完全依赖于主键

第3范式-3NF:属性不依赖于其它非主属性,即属于依赖于主键不能出现传递依赖。

巴斯-科德范式(BCNF),第四范式(4NF),第五范式(5NF,又称完美范式)

优点:从关系型数据角度出发,结合了业务系统的数据模型能够比较方便的实现数据仓库的建模

缺点:限制了整个数据仓库模型的灵活性

2.6维度建模法:

按照事实表,维度表来构建数据仓库.常用的方法星型建模法,雪花建模法

星型建模法:

维度表全部直接关联到事实表

雪花建模法:

维度表并非全部关联到实习表中,有维度表关联维度表的情况

2.6.2星型建模法,雪花建模法的区别;

相同点:雪花模型都是属于星型模型的扩展,属于星型模型,两者都是围绕事实表,维度表展开模型构建,只是层次设计不近相同

差异点:星型架构是一种非正规化的结构,有一定的数据冗余

雪花模型:它对星型模型的维表进一步层次化,

2.6.2对比总结:

数据规范性:雪花胜于星型。

性能:雪花的表关联较多,并行性和计算性能上会低于性能上往往低于星型。

ETL开发:雪花关系多则关联多,代码量较复杂一些。而星型数据较集中,关联少,代码量会少一些。

实际使用,两者应用的均比较多,但星型略胜一筹。

2.7维度建模的优缺点:

优点:相比3NF星型模式在性能上占据明显的优势

仅围绕业务,可以直观反应业务模型的业务问题,不需要经过特别抽象处理

缺点:

需要进行大量的数据预处理,带来大量的数据处理工作

数据冗余大

维护成本增大

三.数据分析

定义:基于给定的大批量的源数据,通过数据统计分析相关的方法,

官方定义:数据分析是指用适当的统计分析(当下也包含机器学习等数据挖掘)的方法

3.2专业术语

OLTP

全称:on-line transaction processing。其是数据库的主要应用,主要是执行基本日常的事务处理,如数据库记录的增删查改.

特点:

实时性要求高,操作完后立马看见结果

数据量不大

交易一般是确定的

高并发,并且要求满足ACID原则

QPS

全称:Query per seconds ,每秒请求数

拿该指标作为系统的并发量最重要的衡量标准之一

数据库事务ACID四大特性

原子性:只有成功或者失败没有中间状态,如果执行错误会回滚到事务没开始执行之前

一致性:成功之后不会发生回滚

隔离性:

持久性:做的更改会持续存在于,不会发生回滚

3.3hive对数据分析的支持

函数分类

分析函数:

ntile: 分组

row_number:按照顺序不关心是否有相等情况

rank:排序按照顺序,关心想等的情况 ,相等的情况,会留下空位 1,2,2,4,4,6.....

dense_rank 关心相等的情况, 相等的情况不会留下空位 1,2,2,3,3,4,4,5,5.......... 例如颁奖

窗口函数:

lag :lag(列名,往上几行,)第三个参数为默认值

lead: lead(列明,往下几行, )第三个参数为默认值

first_value:区分组内排序后,截止至到当前行,取第一个值

last_value: 取最后一个值

over()从句:指定分析窗口函数的细化落围规则

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-10-29 13:06:54  更:2021-10-29 13:07:13 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 4:56:21-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码