[读书笔记]《大数据之路》——阿里数据整合及管理体系——OneData模型
阿里数据整合及管理体系——OneData模型
摘要
阿里的《大数据之路》第9章介绍了其内部进行数据整合及管理的方法体系和工具OneData。他们在这一体系下,构建统 、规范、可共的全域数据体系,避免数据的冗余和重复建设,规避数据烟囱和不一致性,了解他们的建模理论,有助于扩宽我们对数据建模的视野和思考。
1. 概述
阿里巴巴集团大数据建设方法论的核心 :从业务架构设计到模型设计,从数据研发到数据服务,做到数据可管理 、可追溯、可规避重复建设。
1.1 定位及价值
定位:建设统一的、规范化的数据接人层( ODS )和数据中间层( DWD 和
DWS ),通过数据服务和数据产品,完成服务于阿里巴巴的大数据系统建设 ,即数据公共层建设。
价值:提供标准化的( Standard )、共享的( Shared )、数据服务( Service )能力,降低数据互通成本,释放计算、存储、人力等资源,以消除业务和技术之痛。
2. 体系架构

图1.2.1 体系架构图
2. 规范定义

图2.1.1 规范定义实例
3. 模型设计
3.1 指导理论
维度建模理论:基于维度数据模型总线架构,构建一致性的维度
和事实。
3.2 模型层次
(1) 操作数据层(ODS)
功能:同步;结构化;累积历史、清洗
(2) 公共维度模型层(DM):明细数据层(DWD)+汇总数据层(DWS)
功能:组合相关和相似数据;公共指标统一加工;建立一致性维度
(3) 应用数据层( DS )
功能:个性化指标加工;基于应用的数据组装

图3.2.1 模型层次关系图
3.3 基本原则
(1) 高内聚和低辑合
(2) 核心模型与扩展模型分离
(3) 公共处理逻辑下沉及单一
(4) 成本与性能平衡
(5) 数据可回滚
(6) 一致性
(7) 命名清晰、可理解
4. 模型实施
需求分析>架构设计>详细模型设计
4.1 业界常用的模型实施过程
- Kimball 模型实施过程
(1) 高层模型
(2) 详细模型
(3) 模型审查、再设计和验证
(4) 提交 ETL 设计和开发
参考:Ralph Kimball, The DataWarehouse Lifecycle Toolkit
- Inmon 模型实施过程
三个层次:
ERD (Entity Relationship Diagram ,实体关系图)层
DIS (Data Item Set 数据项集)层
物理层(Physical Model ,物理模型)
参考:Inmon, Building the Data Warehouse
- 其他模型实施过程
· 业务建模,生成业务模型
· 领域建模,生成领域模型
· 逻辑建模,生成逻辑模型
· 物理建模,生成物理模型
4.2 OneData 实施过程
- 指导方针
首先,在建设大数据数据仓库时,要进行充分的业务调研和需求分析。
其次,进行数据总体架构设计,主要根据数据域对数据进行划分;按照维度建模理论,构建总线矩阵、抽出业务过程和维度。
再次,对报表需求进行抽象整理出相关指标体系,使用 OneData 工具完成指标规范定义和模型设计。
最后,就是代码研发和运维。
- 实施工作流
(1) 数据调研
· 业务调研
· 需求调研
(2) 架构设计
· 数据域划分
· 构建总线矩阵
(3) 规范定义
主要定义指标体系,包括原子指标、修饰词、时间周期和派生指标。
(4) 模型设计
主要包括维度及属性的规范定义,维表、明细事实表和汇总事实表的模型设计。
(5) 总结
是一个高度迭代和动态的过程, 般采用螺旋式实施方法。

图4.2.1 OneData实施工作流
[读书笔记]《大数据之路》——阿里数据整合及管理体系——OneData模型的更多相关文章
- 机器学习实战 - 读书笔记(13) - 利用PCA来简化数据
前言 最近在看Peter Harrington写的"机器学习实战",这是我的学习心得,这次是第13章 - 利用PCA来简化数据. 这里介绍,机器学习中的降维技术,可简化样品数据. ...
- 读书笔记 effective c++ Item 22 将数据成员声明成private
我们首先看一下为什么数据成员不应该是public的,然后我们将会看到应用在public数据成员上的论证同样适用于protected成员.最后够得出结论:数据成员应该是private的. 1. 为什么数 ...
- 【读书笔记】iOS-使用钥匙串保护数据
一,将应用从设备上删除时,并不会删除其钥匙串项,这使得调试工作困难得多.模拟器有一个Reset Contents and Settings选项,可用于将钥匙串项移除.因此,强烈建议在模拟器上确定Key ...
- 笔记大神推荐的个人知识文档管理工具mybase
铛铛铛,今天我要给大家推荐一款个人知识笔记管理神器,不出你们所料,它就是mybase. 那mybase究竟能干啥呢?借用mybase中文官网的一句话来说,mybase软件可以将电脑上的文档.知识.笔记 ...
- R in action读书笔记(11)-第八章:回归-- 选择“最佳”的回归模型
8.6 选择“最佳”的回归模型 8.6.1 模型比较 用基础安装中的anova()函数可以比较两个嵌套模型的拟合优度.所谓嵌套模型,即它的一 些项完全包含在另一个模型中 用anova()函数比较 &g ...
- INSPIRED启示录 读书笔记 - 第28章 创业型公司的产品管理
产品设计方式 第一步:创业初期只设三个职位,产品经理.交互设计师和原型开发人员(职位可以兼任) 第二步:快速展开产品设计(高保真原型),邀请真实的目标用户验证产品原型,迭代修改 第三步:随着迭代的深入 ...
- 一. 数据分片和路由 <<大数据日知录>> 读书笔记
本章主要讲解大数据下如何做数据分片,所谓分片,即将大量数据分散在不同的节点,同时每个存储节点还要做副本备份. 而一般的抽象分片方法是, 先将数据映射到一个分片空间,这是多对一的关系,即一个数据分片区间 ...
- 《大数据日知录》读书笔记-ch11大规模批处理系统
MapReduce: 计算模型: 实例1:单词统计 实例2:链接反转 实例3:页面点击统计 系统架构: 在Map阶段还可以执行可选的Combiner操作,类似于Reduce,但是在Mapper sid ...
- 读书笔记:深入理解java虚拟机(一)虚拟机的运行时的数据区域
最近在看深入了解java虚拟机第一版(周志明著),特此写读书笔记,整理其中重要的东西和自己的理解. ”java与c++之间有一堵由内存动态分配和垃圾收集技术所围成的高墙,墙外面的人想进去,墙里面的人却 ...
- 大数据平台Hive数据迁移至阿里云ODPS平台流程与问题记录
一.背景介绍 最近几天,接到公司的一个将当前大数据平台数据全部迁移到阿里云ODPS平台上的任务.而申请的这个ODPS平台是属于政务内网的,因考虑到安全问题当前的大数据平台与阿里云ODPS的网络是不通的 ...
随机推荐
- 【MATLAB习题】双摇杆机构的运动学分析
1.双摇杆机构概述 双摇杆机构的判别方法: 最长杆长度+最短杆长度 ≤ 其他两杆长度之和,连杆(机架的对杆)为最短杆时. 如果最长杆长度+最短杆长度 >其他两杆长度之和,此时不论以何杆为机架,均 ...
- selenium 提示 Non-UTF-8 code starting with '\xc4'
解决(1):在程序最上方加上语句,# coding=gbk 解决(2):在preference下进行修改
- python 二级 函数与代码复用
- 部署sing-box代理服务器绕过付费校园网上网
解决的问题 学校一般会有2个网络,一个是教学区的免费校园网,一个是寝室楼的付费校园网.如何不交钱也能在寝室楼上网是一个问题. 以及,如果校园网在12点之后断网,如果解决断网问题 sing-box Gi ...
- 魔方求解器程序(层先法,java版本)
实现了一个三阶魔方的层先法求解程序:https://github.com/davelet/java-puzzle-resolver 欢迎试用. 用法 1. 随机试用 不关注起始状态的话可以用程序的随机 ...
- PHP Fatal error: Uncaught RedisException: Redis server went away in
PHP Fatal error: Uncaught RedisException: Redis server went away in 导致这个问题的原因可能有 1.redis未安装,php没有开启r ...
- 【消息利器RabbitMQ】RabbitMQ常用内容浅析
以下是一篇关于 RabbitMQ 的博客内容,涵盖了从基础到死信队列的实现,以及 RabbitMQ 其他常用知识点的补充.内容逻辑清晰,代码完整,适合直接发布. 使用 RabbitMQ 实现消息队列与 ...
- SpringBoot集成LDAP认证登录
Maven依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="htt ...
- 在Java集合框架中,`Set`接口是一个重要的接口,它表示一个不包含重复元素的集合。常见的`Set`实现类有`HashSet`、`LinkedHashSet`和`TreeSet`。下面是关于`Set`接口的一些基本用法和方法介绍:
常用实现类 HashSet: 基于哈希表实现,元素无序. 插入.删除.查找操作的时间复杂度为O(1). LinkedHashSet: 继承自HashSet,并使用双向链表来维护元素的插入顺序. 保留元 ...
- 包装类面试题--java进阶day05
1.面试题 如下两个输出,请问分别是true还是false呢? 答案: 当范围在-128~127时,对象相同就会返回true 在讲解这个问题之前,先了解自动装箱的原理 2.自动装箱的原理 自动装箱,就 ...