数据仓库专题(3)-分布式数据仓库事实表设计思考

简介: 一、前言   最近在设计数据仓库的数据逻辑模型,考虑到海量数据存储在分布式数据仓库中的技术架构模式,需要针对传统的面相关系型数据仓库的数据存储模型进行技术改造。设计出一套真正适合分布式数据仓库的数据存储模型。

一、前言

  最近在设计数据仓库的数据逻辑模型,考虑到海量数据存储在分布式数据仓库中的技术架构模式,需要针对传统的面相关系型数据仓库的数据存储模型进行技术改造。设计出一套真正适合分布式数据仓库的数据存储模型。

二、事实表设计基础

      事实表记录发生在现实世界中的操作型事件,其所产生的可度数值。事实表的设计完全依赖于物理活动,不受可能产生的最终报表的影响。事实表中,除数字度量外,事实表总是包含外键,用于关联与之相关的维度,也可以包含退化的维度键日期/时间戳

三、传统模式

  以FS-LDM数据存储模型Event主题域数据存储模型设计为例,其事件主题域数据逻辑模型结构如下图所示:

   传统模式的主要问题如下:如果数据量很小的情况下,执行多表关联,没有问题,但是当在分布式数据仓库,单表存储海量数据的情况下,很明显模式将面临挑战。

三、分布式模式-维度建模新原则

  (1)以值代键:针对键值唯一的维表,除非必要,否则不引入维表,如IP地址维表,采用IP作为维表的主键,事实表中存储IP值;

      (2)合理分表:传统关系型数据仓库存在多表整合的冲动,如上图Event事实表,各种Acount Ind,Finance Ind等,用来扩展表的通用性,试图把所有的数据都存储到一张表 中。分布式数据仓库的设计,恰恰相反,因为单表数据规模的问题,如果要满足分析和处理的性能,合理的按照业务进行数据的分表存储。如财务相关事件、账户相关事件,单独成表。更有利于数据的计算和分析。 

四、分布式维度模型实例

序号 字段英文 字段中文 字段解释 字段映射 字段加工逻辑 指标字段
1 event_id 事件ID 记录标识     标识
2 tm 时间 时间戳     维度
3 domain       维度-值
4 ip IP地址 IP地址     维度-值
5 os 操作系统 操作系统     维度-值
6 user_id 用户ID 用户ID     维度-FK
7 date 日期 日期(新增)     维度-值
8 from 来源 访问来源系统     维度-值

 五、未完待续

       分布式数据仓库数据存储模型设计进行中,后续会持续更新,请关注QQ群:分布式数据仓库建模 398419457。

 


作者:张子良
出处:http://www.cnblogs.com/hadoopdev
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

相关文章
|
1月前
|
存储 关系型数据库 MySQL
数据仓库设计
数据仓库设计
53 3
|
4月前
|
存储 大数据 数据管理
数据仓库(08)数仓事实表和维度表技术
所谓的事实表和维度表技术,指的就是如何和构造一张事实表和维度表,是的事实表和维度表,可以涵盖现在目前的需要和方便后续下游数据应用的开发
55 1
|
6月前
|
SQL 分布式计算 Java
数仓学习---7、数据仓库设计、数据仓库环境准备
数仓学习---7、数据仓库设计、数据仓库环境准备
|
11月前
|
存储 传感器 分布式计算
【数据架构】数据湖与数据仓库之间的五大差异
【数据架构】数据湖与数据仓库之间的五大差异
|
11月前
|
SQL Oracle 算法
「数据仓库架构」数据仓库的三种模式建模技术
「数据仓库架构」数据仓库的三种模式建模技术
|
存储 大数据 BI
聊聊数据仓库中维度表设计的二三事
聊聊数据仓库中维度表设计的二三事
733 0
聊聊数据仓库中维度表设计的二三事
|
存储 数据挖掘 BI
数据仓库系列(四)数仓架构以及多维数据模型的设计2
数据仓库系列(四)数仓架构以及多维数据模型的设计2
469 0
数据仓库系列(四)数仓架构以及多维数据模型的设计2
|
存储 SQL 数据采集
数据仓库系列(四)数仓架构以及多维数据模型的设计1
数据仓库系列(四)数仓架构以及多维数据模型的设计1
491 0
数据仓库系列(四)数仓架构以及多维数据模型的设计1
|
SQL 分布式计算 Oracle
数据仓库的概念
数据仓库的概念
227 0