数智资源网
首页 首页 大数据 大数据入门 查看内容

李昊:谈谈数据仓库建设心得(下)

木马童年 2019-12-30 14:08 401 0

分享记录:下面是具体的模型设计,一般在数据仓库行业,业务模型有两类,一类是企业自有的数据模型,一类是行业模型,比如金融业:天睿,银行业、保险业、制造业、医疗生命科学行业,这些一般是实施顾问团队总结的。 ...

李昊:谈谈数据仓库建设心得(下)

分享记录:

李昊:谈谈数据仓库建设心得(下)

下面是具体的模型设计,一般在数据仓库行业,业务模型有两类,一类是企业自有的数据模型,一类是行业模型,比如金融业:天睿,银行业、保险业、制造业、医疗生命科学行业,这些一般是实施顾问团队总结的。但这些行业模型在中国市场运行的不太好,除了金融和电信稍好点,其他行业因发展较快、业务变化较快,迭代较国外快很多。我不建议以自上而下的方式、预先用一个模型将自己框住,然后按填表似的填入各种业务数据,这些看起来美好,但是实际运营中问题较多。

李昊:谈谈数据仓库建设心得(下)

整个数据仓库的规划实施是一个长期的过程,大体分为三个阶段:规划设计阶段、模型落地阶段、优化阶段,这是一直循环的,比如任何一个需求来了或者开发任务来了,这个循环都要重走一遍。前面一部分都属于规划设计阶段,比如需求评估分析、内容设计、分析思路,这些都是刚入行的人不太熟悉的,而我们熟悉的主要是实施阶段,从概念模型到逻辑模型到物理模型。但是现在很少做概念模型,多是从逻辑模型开始、然后是物理模型、元数据管理。优化部分,包括对数部分,这样的汇总逻辑是否合理准确,压力、物理模型调整、容量的规划,存储哪些、存储多长时间。实际上,数据仓库主要是一系列的实施方法论,主要是如何帮我们将业务主题的分析做好。

李昊:谈谈数据仓库建设心得(下)

在数据模型的具体设计中,星型结构用的较多,但是在数据仓库项目中基本也不会出现雪花型的数据存储。星型已经兼顾了灵活性和线性增长,比如说:事实表就是中间的FACT,,它是线性增长的,但是维度表,像时间维度、部门维度增长较缓慢,一般是比较静态的。总结一下,数据模型的设计原则是方便查询,像目前流行的tableau、qlikview,基本已经不分表,将所有的维度和事实放在一张表里直接运算。

以我们前面的客户价值分析为例,刚才设计的表结构,把维表和事实,也就是维度字段与指标字段都放到一张表,不会维度表与事实表分开存储,这样会造成空间上的冗余和浪费,但是在查询速度与便利性方面,绝对会优于星型与雪花型的存储方式。

李昊:谈谈数据仓库建设心得(下)

数据模型建好后,就会建立一个ETL来去跑,做成一个定时任务; 像T+1,每天凌晨会跑前一天的数据,或者每隔一小时跑数据,按业务需求。把业务系统的数据通过ETL写入到我们建立的数据模型中去。为后面的BI平台,数据挖掘或者其它报表需求来使用这些数据。

李昊:谈谈数据仓库建设心得(下)

一个数据仓库建设的本身大概分这些层级。业务系统是企业本身就有的,会有临时区、历史数据区、明细数据层、数据集市层,这些大概就是数据仓库基本涵盖层面。临时区有的项目有,有的项目没有,主要牵扯到业务系统需不需要做临时处理,夜间是否可以中断,因为有的是7*24小时每秒都要跑的不能中断的系统。

而历史数据ODS层基本上是每个系统或者每个项目都会有的,它主要承担两种功能,一种是说它是跟业务系统表结构基本上有一个一一对应的关系,这样我们在对数时候,也就是我们经过轻度汇总、高度汇总后就可以直接跟ODS对数就可以了,不用回头再去找到业务系统去对数。ODS层的基础任务层是作为数据仓库的基础来源,它是通过定时任务跟业务系统一一对应的。

明细数据层是根据ODS层汇总、导入、调整来的,这一层过程中基本会做一些数据清理、合并、质量校验这样的一些工作。ODS本身为了跟OLTP对应,一般上是不做数据清洗的,可能会做一些简单的,但基本上清洗工作或者数据质量校验,一些基础的合并汇总都会在数据明细层完成。

对于数据集市层轻度汇总、高度汇总,典型的举例可以回顾一下刚才我们所用客户价值分析里面的两张表,一个是客户价值分析明细表实际就是轻度汇总数据,面向DC的高度汇总数据,就是我们高度汇总数据。这样一个数据仓库的完整流程大概类似于这样。

李昊:谈谈数据仓库建设心得(下)

李昊:谈谈数据仓库建设心得(下)

最后简单介绍两个项目案例,一个是金龙汽车,做大客车的;一个是麦考林,是做女性电商的。金龙汽车这边有一个比较好玩的是,用一个案例举例,客户订单及时交付率或者是订单及时响应率,这样的一个指标当时我们把它分解成十几个指标,真正背后应用场景是这样的,他们的客车是从订单到交付的中间环节特别多。

订单从意向订单到确认了以后,设计部门会要确认一下,因为像这种客车每一台发动机、轮胎、车厢都是个性化定制的,所以会要设计部门涉及确认,确认时间影响了整个订单及时率。从确认以后到订单签单、合同签订以及到设计完成、生产完成、质量检测完成、入库完成以及交付完成每一个环节都会有一个指标分析在做,中间甚至入库、或者中间生产过程都会四小时指标,每一个指标都有一个责任人,每一个责任人都要对这个指标负责的。

因为这次分享对象,很多是做数据挖掘,数据分析的同学。所以对于数据仓库的理解可能不是那么多,希望通过今天分享有所收获。而且对于开发工程师来说,一般数据仓库的项目,真正深入做完之后都会或多或少对你所做的业务理解的会比较深了。今天的分享大概会是这样,我先把前面的提问简单回答一下。

Q:

1. 数据仓库与数据挖掘有什么联系和区别?

2. 数据仓库与数据库有什么区别?

3. 那数据集市与数据库、数据仓库 有什么区别?

这三个问题基本算一类问题,我统一回答下。数据仓库与数据挖掘的关系,数据仓库是一个整体数据存储逻辑,数据挖掘是一个具体的知识验证,或者知识设想的时候做的一个具体工作,它发现的结果一般会存储在企业的知识库里。

时间关系,其他几个问题我会后续更新到网站上面,敬请期待。谢谢各位,共同学习。


数据仓库 数据模型 规划设计 数据管理 数据存储 数据挖掘
0
为您推荐
北风网Hadoop大数据零基础实战培训教程30集,资源教程下载

北风网Hadoop大数据零基础实战培训教程30集,资源教程

课程名称北风网Hadoop大数据零基础实战培训教程30集,资源教程下载课程目录Avro数据序…...

课程介绍《Spark 大数据平台》,资源教程下载

课程介绍《Spark 大数据平台》,资源教程下载

课程名称课程介绍《Spark 大数据平台》,资源教程下载课程目录第一周 Spark生态系统概…...

Java数据结构和算法学习视频,资源教程下载

Java数据结构和算法学习视频,资源教程下载

课程名称Java数据结构和算法学习视频,资源教程下载课程目录 NetBeans 下载和安装 数…...

吴老师 hadoop视频教程全套,资源教程下载

吴老师 hadoop视频教程全套,资源教程下载

课程名称吴老师 hadoop视频教程全套,资源教程下载课程目录1云计算开发基础2初级班全…...

从零起步大数据Spark实战高手之路,资源教程下载

从零起步大数据Spark实战高手之路,资源教程下载

课程名称从零起步大数据Spark实战高手之路,资源教程下载课程介绍从零起步,分阶段无…...

EasyHadoop实战手册 让你的Hadoop应用飞起来,资源教程下载

EasyHadoop实战手册 让你的Hadoop应用飞起来,资源教

课程名称EasyHadoop实战手册 让你的Hadoop应用飞起来,资源教程下载课程目录EasyHadoo…...