我是靠谱客的博主 含糊酒窝,最近开发中收集的这篇文章主要介绍数据仓库开发经验分享前言一、什么是数据仓库二、数据仓库和数据库的区别三、数据仓库分层架构四、数据仓库建模方法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

文章目录

  • 前言
  • 一、什么是数据仓库
  • 二、数据仓库和数据库的区别
  • 三、数据仓库分层架构
    • (一)ODS
    • (二)DIM
    • (三)DWD
    • (四)DWS
    • (五)ADS
  • 四、数据仓库建模方法
    • (一)星型模型
    • (二)雪花模型


前言

分享本人在数据仓库开发工作中遇到的问题及经验总结。


一、什么是数据仓库

因为数据库中的数据繁多、关系复杂且不能保证数据质量,为解决这样的问题,就诞生了数据仓库的概念。数据仓库是指将各种来源的数据统一接入到某个单一环境,对数据进行清洗,汇总并妥善保存以便支撑相关数据应用的方式。

二、数据仓库和数据库的区别

数据仓库与数据库只有一字之差,区别却很大,甚至有些方面是完全相反的概念。举个例子,关系型数据库需要符合范式要求,需要尽量减少冗余,而数据仓库不需要符合范式,为了方便取数建模、方便做数据分析,数据仓库设计时会主动引入冗余。

三、数据仓库分层架构

(一)ODS

运营数据层:Operation Data Store,相当于数据仓库的数据源,可以使用sqoop从关系型数据库接入hadoop集群,为DWD提供原始数据。

(二)DIM

维度层:Dimension,记录维度数据,累全量保证当天维度唯一。

(三)DWD

明细数据层:Data Warehouse Details,对原始数据进行数据清洗,确定指标度量形成各事实表,也可以将维度退化存储于事实表中。

  1. 事务事实表 Transaction fact table,简称tf
  2. 快照事实表 Shot fact table,简称sf
    (1)周期快照事实表 Periodicsnapshot fact table
    (2)累计快照事实表 Accumulatingsnapshot fact table

(四)DWS

数据服务层:Data Warehouse Service,对数据进行初步汇总,形成较细粒度的宽表供下游ads复用。

(五)ADS

数据应用层:Application Data Service,根据具体业务需求对粒度和维度进行再次汇总,展示最终汇总统计的数据,可导出至关系型数据库做可视化,也可以用于其他数据分析场景,是用户看到的表,需保证隐私问题没有敏感数据。

在这里插入图片描述

四、数据仓库建模方法

(一)星型模型

直接关联维度表获取维度数据

(二)雪花模型

关联一张维度表,再通过这张维度表关联另一张维度表获取所需维度数据。可冗余成星型模型,一般较少使用。

最后

以上就是含糊酒窝为你收集整理的数据仓库开发经验分享前言一、什么是数据仓库二、数据仓库和数据库的区别三、数据仓库分层架构四、数据仓库建模方法的全部内容,希望文章能够帮你解决数据仓库开发经验分享前言一、什么是数据仓库二、数据仓库和数据库的区别三、数据仓库分层架构四、数据仓库建模方法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(38)

评论列表共有 0 条评论

立即
投稿
返回
顶部