大数据仓库之ods原始数据层和dw层设计

原创 2016年08月31日 15:55:46

甲问:数仓建模时,涉及到uv(去重用户数)指标时,数据从哪里取,只能走ods原始数据层吗,汇总到dw层时,由于数据量太大,不能到用户粒度,所以在dw层中不包含用户粒度的数据,而且电商的报表分析,几乎每张报表都会涉及到uv指标,如果所有的uv指标都从ods层去获取,那样io是否会成为瓶颈,原始数据量也比较大。举例:比如说有个字段column_a,包含了几百个数据(1-500),统计时可能会统计条件为1-20的uv指标,或者5-50,10-200。。。等等这些uv指标。

乙答:反问三个问题:

1.DW层为何不存储用户粒度的数据?
2.DW层为何不做聚集?
3.UV既然是共性需求,为何不考以DM的方式提供?

甲答:1.原始数据是用户访问网站的情况,用户今天可能访问了多次,也可能只访问一两次,如果dw层汇总数据精确到用户粒度,那dw层相对于ods层,数据压缩比太低了,而且因为数据量也太大,汇总比较耗时的
2.dw层做的是不同维度的聚集,但是没有到用户维度这么细的粒度
3.不是很明白,dm层需要uv指标,目前dm层的数据从dw基础汇总层来的,然后dm层需要的uv从ods原始数据层统计的,就是这样感觉不合理

乙答:

1:感觉你此处的DW其实更像DM,只存储聚集&汇总的结果;通过ODS来存储最细粒度的数据;DW和ODS的数据存储模型还是有差异的,定位也不同,建议是DW层存储最明细粒度的的数据,即每一次的用户访问事件。压缩比的问题属于存储能力和技术问题,与存储模型无关。DW层存在的目的,是提供长周期,更易访问的数据能力,ODS的目的是缓冲区。
2.无论是ODS和DW,都会存在同样的问题,数据量大,汇总耗时,这个不会因为你通过ODS聚集还是通过DW聚集,而有什么不同,你要解决的其实是计算性能问题,与存储无关,建议从技术视角处理。






版权声明:本文为博主原创文章,未经博主允许不得转载。

ODS与DW的区别

背景知识:在当今这样一个信息技术发展迅速的时代,数据量也在不断的增长,面临这样的压力,总是会有大神提出一些解决方案。比如高层管理人员希望能查看整个公司的发展业绩,数据仓库(Data Warehouse...
  • hero_hegang
  • hero_hegang
  • 2013年03月19日 16:04
  • 17901

数据仓库分层之辩

--转自:http://blog.itpub.net/post/14877/198599 数据仓库的分层可以算是数据仓库架构的子话题。在前段时间参与的一次讨论中,笔者发现其中争论的焦点集中在每一层的...
  • nisjlvhudy
  • nisjlvhudy
  • 2013年01月31日 14:08
  • 10428

数据仓库的架构以及数据分层

数据仓库分层的原因 1通过数据预处理提高效率,因为预处理,所以会存在冗余数据 2如果不分层而业务系统的业务规则发生变化,就会影响整个数据清洗过程,工作量巨大 3通过分层管理来实现分步完成工作,这样每一...
  • zengxiaosen
  • zengxiaosen
  • 2016年09月25日 17:16
  • 7797

大数据环境下该如何优雅地设计数据分层

0x00 前言 最近出现了好几次同样的对话场景: 问:你是做什么的? 答:最近在搞数据仓库。 问:哦,你是传统行业的吧,我是搞大数据的。 答:…… 发个牢骚,搞大数据的也得...
  • zhaodedong
  • zhaodedong
  • 2017年06月17日 21:47
  • 3709

数据仓库的架构与设计

公司之前的数据都是直接传到Hdfs上进行操作,没有一个数据仓库,趁着最近空出几台服务器,搭了个简陋的数据仓库,这里记录一下数据仓库的一些知识。涉及的主要内容有: 什么是数据仓库? 数据仓...
  • Trigl
  • Trigl
  • 2017年04月01日 17:52
  • 6328

数据仓库设计思路

数据仓库一些设计思路和总结 1、数据仓库模型设计分为概念模型、逻辑模型和物理模型;数据仓库建模方法:实体关系模型、维度建模。数据仓库逻辑模型设计:确定主题域->粒度层次划分->确定数据分割策略->关...
  • liyong19850208
  • liyong19850208
  • 2012年07月11日 22:35
  • 1505

数据仓库概念(二) - ODS

ODS(英语:Operational Data Store)是一种数据架构或数据库设计的概念,出现原因是来自于当需要集成来自多个系统的数据,结果又要给一或多个系统使用时。 一、概念 ODS (Oper...
  • leicool_518
  • leicool_518
  • 2015年04月02日 14:33
  • 711

关于数据仓库 — ODS概念

ODS是一个面向主题的、集成的、可变的、当前的细节数据集合,用于支持企业对于即时性的、操作性的、集成的全体信息的需 求。常常被作为数据仓库的过渡,也是数据仓库项目的可选项之一。根据Bill.Inmon...
  • liuzhoulong
  • liuzhoulong
  • 2013年07月05日 22:26
  • 2898

大数据的仓库Hive原理(三)

上次我们简单说了一下Hive的工作原理,今天我们来深入看一下它是如何把Hql语句转换为m/r来运行的。 我们从认识Hive到理解它的运行原理,已经对其有了一定的了解。当然在实际应用中还会遇到...
  • u010168160
  • u010168160
  • 2016年06月29日 18:31
  • 1145

Flume+Hadoop+Hive的离线分析系统基本架构

最近在学习大数据的离线分析技术,所以在这里通过做一个简单的网站点击流数据分析离线系统来和大家一起梳理一下离线分析系统的架构模型。当然这个架构模型只能是离线分析技术的一个简单的入门级架构,实际生产环境中...
  • ymh198816
  • ymh198816
  • 2016年05月31日 01:01
  • 12852
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:大数据仓库之ods原始数据层和dw层设计
举报原因:
原因补充:

(最多只允许输入30个字)