数据仓库的核心是展现层和提供优质的服务。ETL 及其规范、分层等所做的一切都是为了一个更清晰易用的展现层。
1. 数仓架构的原则:
底层业务的数据驱动为导向同时结合业务需求驱动
便于数据分析
屏蔽底层复杂业务
简单、完整、集成的将数据暴露给分析层
底层业务变动与上层需求变动对模型冲击最小化
业务系统变化影响削弱在基础数据层(资金订单改造)
结合自上而下的建设方法削弱需求变动对模型的影响
数据水平层次清晰化
高内聚松耦合
主题之内或各个完整意义的系统内数据的高内聚
主题之间或各个完整意义的系统间数据的松耦合
构建仓库基础数据层
使得底层业务数据整合工作与上层应用开发工作相隔离,为仓库大规模开发奠定基础
仓库层次更加清晰,对外暴露数据更加统一
数仓模型不只是考虑如何设计和实现功能,设计原则应该从访问性能、数据成本、使用成本、数据质量、扩展性来考虑。如何搭建一个好的数据仓库:
数仓设计的3个维度:
2. 主流建模方法
当前主流建模方法为:ER模型、维度模型。
ER模型常用于OLTP数据库建模,应用到构建数仓时更偏重数据整合, 站在企业整体考虑,将各个系统的数据按相似性一致性、合并处理,为数据分析、决策服务,但并不便于直接用来支持分析。缺陷:需要全面梳理企业所有的业务和数据流,周期长,人员要求高。
维度建模是面向分析场景而生,针对分析场景构建数仓模型;重点关注快速、灵活的解决分析需求,同时能够提供大规模数据的快速响应性能。针对性强,主要应用于数据仓库构建和OLAP引擎低层数据模型。优点:不需要完整的梳理企业业务流程和数据,实施周期根据主题边界而定,容易快速实现demo,而且相对来说便于理解、提高查询性能、对称并易扩展。
作为大数据板块,数据来源更加广泛,针对的业务域也更加宽广,所以维度建模相对来说更加灵活并适用。
在讨论维度建模之前,关注数仓和BI的基本目标是非常有意义的,在做日常的数据需求的时候,经常会遇到如下几个痛点:
收集了海量数据,不知道如何去做ETL;
不同来源的数据该如何去聚合;
如何方便业务人员快速方便的获取数据;
如何定义重要的数据指标;
如何确保数据准确性;
数据如何支持决策;
基于上面的痛点,就需要搭建一套DW/BI系统(当然现在市面上有很多类似的产品,例如:如:QuickBI、GrowingIO、神策、猛犸等等),但是对于公司而言,适合自己的才是最好的,大部分公司选择自己搭建或者利用开源的软件(例如MateBase),这个系统必须满足:
DW/BI系统能够方便的存储信息(或者说能跟现在主流的数据库打通)。也就是说系统展现的内容必须是容易理解的,对于业务人员必须直观而且好操作,数据结构和标示必须符合业务思维过程和词汇,用户能够以各种形式切割和分析数据,同时能够快速的将查询结果反馈。
DW/BI系统必须以一致性的形式展现信息(指标的唯一性)。也就是说数据必须是可信的,同一指标定义在不同的数据源中,所含的意义必须相同,既同名同意性。
DW/BI系统能够适应变化(模块的低耦合)。当用户需求、业务维度需要调整的调整的时候,设计的DW模型必须能够兼容这些变化,已经存在数据和指标不应该被破坏或修改,就算一些指标的调整,也要以适当的方式描述变化,并对用户完全透明。
DW/BI系统必须保证数据安全(数据安全)。能展示的数据必须是统计的结果数据,一些详单展现和下载必须和平台的权限系统挂钩,避免数据泄漏。
DW/BI系统成功的标示是业务群体接收并使用,而且必须配套一个展现模块的监控系统,能够让产品方知道各个模块的使用情况,对一些访问量比较少的模块可以适当的调整和优化。
二、数据仓库介绍
1. 定义
数据仓库,由数据仓库之父Bill Inmon 在1991 年出版的“Building the Data Warehouse”定义且被广泛接受的——面向主题的、集成的、相对稳定的、反映历史变化的数据集合,用于支持管理决策。从定义上来看,数据仓库的关键词为面向主题、集成、稳定、反映历史变化、支持管理决策,而这些关键词的实现就体现在分层架构内。
没有合适的资源?快使用搜索试试~ 我知道了~
深入探讨数据仓库建模的关键步骤和方法
共33个文件
xml:13个
class:5个
sh:3个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 198 浏览量
2024-06-02
06:29:54
上传
评论
收藏 4.81MB ZIP 举报
温馨提示
数仓建模 1. 数仓架构的原则: 底层业务的数据驱动为导向同时结合业务需求驱动 便于数据分析 屏蔽底层复杂业务 简单、完整、集成的将数据暴露给分析层 底层业务变动与上层需求变动对模型冲击最小化 业务系统变化影响削弱在基础数据层(资金订单改造) 结合自上而下的建设方法削弱需求变动对模型的影响 数据水平层次清晰化 高内聚松耦合 主题之内或各个完整意义的系统内数据的高内聚 主题之间或各个完整意义的系统间数据的松耦合 构建仓库基础数据层 使得底层业务数据整合工作与上层应用开发工作相隔离,为仓库大规模开发奠定基础 仓库层次更加清晰,对外暴露数据更加统一 数仓模型不只是考虑如何设计和实现功能,设计原则应该从访问性能、数据成本、使用成本、数据质量、扩展性来考虑。如何搭建一个好的数据仓库: 数仓设计的3个维度: 2. 主流建模方法 当前主流建模方法为:ER模型、维度模型。 ER模型常用于OLTP数据库建模,应用到构建数仓时更偏重数据整合, 站在企业整体考虑,将各个系统的数据按相似性一致性、合并处理,为数据分析、决策服务,但并不便于直接用来支持分析。
资源推荐
资源详情
资源评论
收起资源包目录
mofang数仓,数仓建模项目.zip (33个子文件)
mofang-master
pom.xml 2KB
doc
shell
hdfs_to_ods_log.sh 435B
f2.sh 861B
f1.sh 1KB
数仓
业务表创表语句.sql 20KB
dim
dim.sql 3KB
conf
flume-tailDir-kafka.conf 699B
flume-kafka-hdfs.conf 1KB
src
main
java
com
atguigu
flume
interceptor
ETLInterceptor.java 2KB
JSONUtil.java 447B
TimeStampInterceptor.java 2KB
.idea
jarRepositories.xml 860B
codeStyles
codeStyleConfig.xml 149B
Project.xml 263B
webServers.xml 2KB
vcs.xml 180B
misc.xml 528B
dataSources.xml 520B
inspectionProfiles
Project_Default.xml 1KB
compiler.xml 527B
deployment.xml 806B
.gitignore 176B
sshConfigs.xml 617B
encodings.xml 157B
target
classes
com
atguigu
flume
interceptor
TimeStampInterceptor$Builder.class 842B
JSONUtil.class 705B
TimeStampInterceptor.class 2KB
ETLInterceptor$Builder.class 818B
ETLInterceptor.class 2KB
mofang-1.0-SNAPSHOT.jar 6KB
mofang-1.0-SNAPSHOT-jar-with-dependencies.jar 5.34MB
maven-archiver
pom.properties 109B
新建文本文档.txt 5KB
共 33 条
- 1
资源评论
野生的狒狒
- 粉丝: 3387
- 资源: 2436
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 离线OCR(此软件解压后双击即可运行, 免费)
- 公开整理-上市公司员工学历及工资数据(1999-2023年).xlsx
- 公开整理-上市公司员工学历及工资数据集(1999-2023年).dta
- GDAL-3.4.3-cp38-cp38-win-amd64.whl(GDAL轮子-免编译pip直接装,下载即用)
- 基于Java实现WIFI探针的商业大数据分析技术
- 抖音5.6版本、抖音短视频5.6版、抖音iOS5.6版、抖音ipa包5.6
- 图像处理领域、QT技术、架构,可直接借鉴
- 【源码+数据库】基于Spring Boot+Mybatis+Thymeleaf实现的宠物医院管理系统
- H5漂流瓶交友源码 社交漂流瓶H5源码+对接Z支付+视频教程
- 华为ICT大赛云赛道真题资源库.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功