| itgoit's profileTo arrive at the simple ...BlogListsNetwork | Help |
|
To arrive at the simple is difficult另一个Blog是 "周而复始 生生不息" http://xlzhou.spaces.live.com/ January 25 Business Intelligence - Dimensional Modeling Concepts and Terminology今天开讲DW的技术基本-维度模型,有称为多维模型。英文叫Dimensional Modeling。
前面的章节已经讲到了Dimensional Modeling与Normal Form (3NF 3范式或6NF 6范式)的区别。一定要明白并理解好Dimensional Modeling,否则在你请求源系统DBA帮助的时候会被他们当作你不懂RDBMS的笑话。
Dimensional Modeling必须满足以下的以下目的:
A. 给用户呈现的信息越简单越好
B. 快速的返回信息检索结果
C. 对用户各种业务流程用不同的相关信息表达其所需要呈现的
术语1:dimensional model
简单的信息表现并不代表数据模型的简单,在DW中我们往往用多维模型(dimensional model )来替代范式模型。dimensional model 由一系列中心的因素表fact table和相关的维度表dimensions table组词。
A dimensional model is made up of a central fact table (or tables) and its associated dimensions. The dimensional model is also called a star schema because it looks like a star with the fact table in the middle and the dimensions serving as the points on the star.(The Microsoft Data Warehouse Toolkit : With SQL Server 2005 and the Microsoft Business Intelligence Toolset )
术语2:facts
维度模型的核心是因素(fact),每个fact table都包含着关联业务过程的可度量值。在fact table中的每一条记录就是一个可度量值记录,每一个商业过程活动可以表达为fact table中的记录。大多数fact是一个数字,而其中大部分fact table中的fact 记录值可以累加。比如订单的总额,你可以将本月每日的所有订单总额累加,而商品的单价就不太合适累加,也有合适半累加的,比如市场份额。
术语3:grain
粒度。不同于SQL Isolation Level, 这里的粒度回归原意是指在fact table中每条记录的粒度必须使一致的,比如不能一条记录是今天的订单总额,另一条是本月的。
术语4:dimensions
维度!如果说一个fact代表一个商业行为的动作的话,一个dimensions就代表了一个商业的对象,比如:产品、客户、工具、员工、日期...
dimension可以说类似ER中的entry,是围绕可度量因素fact的业务参与体(paticipates, parties)的对象。可度量因素的fact必须要从多个角度去衡量它,比如从客户收入分类角度看订单分布,从客户地域角度看订单分布,从销售人员年资看订单分布,从分公司角度订单分布...同样一个订单fact,可以有很多dimensions围绕他(关联他),在日后的分析统计中从这些不同角度去了解订单fact。这些角度往往作为dimension table的描述性属性(descriptive attribute)出现,比如customer table中的生日、性别、地址等。这些描述性属性可能存在树形架构关系或1-多对应关系。
在通常的关系数据库系统(RDBMS)中,我们常用规范化(normalization)来规范我们的数据模型,这往往要求我们消除数据冗余等。在DW dimension模型中我们常用反规范化(denormalization)来保持数据模型的简单,以确保今后数据查询的简单。
January 23 Business Intelligence - the tools for BR definition第一个工具是组织架构图(Org Chart)
还记得我们说的建设DW/BI是需要了解Enterprise Level的Requirement 么?有了organization chart, 你不仅能知道客户公司的各级领导,还能知晓部门划分、各级职权、汇报关系、人员组成,也能窥看到哪些是核心业务部门,哪些是公司的重点,哪些人该去interview,哪些人会对你提出大概什么样子的需求。最后请IT的人帮你找到那些源系统的大头们。
第二个工具是业务矩阵(Biz Matrix)
这又是一个Copy过来的东西(原书参见The Microsoft Data Warehouse Toolkit : With SQL Server 2005 and the Microsoft Business Intelligence Toolset )
Biz Matrix能帮你逐渐将User 的Business Processes转化为DW需要的Dimensions
第三个好东西是Prioritization Grid
请尽量用它来确定你下手各个Business Process的优先级。
January 22 Business Intelligence - the Business Requirement尽管大多数的IT软性系统都会有一个定义业务需求(Defining Business Requirements)的地方,但是DW/BI系统的Business Requirement还是有所特殊之处。
首先,BI系统的目的较为特殊,DW系统一般建设的目的是建设一个核心数据中心、为报表查询、数据分析、数据挖掘、数据备份和恢复等做数据和工具层面的基本工作。而BI的功能更进一步,将在DW的基础上将基础数据转化为商业决策需要的结果,也可称为企业知识。比如在call center的呼叫记录转化为话务员和服务部门的绩效结果,或将电话销售的结果和市场广告投放结果数据综合形成推广决策表报。这些结果往往影响或牵涉到整个企业,特别是企业的高层。
DW中积累的系统与在线系统不同,其积累的是长期以及成年累月的数据,因此可以对商业本身长期发展的规划和决策提供基础性建议和帮助。这些帮助对于企业来说是中长期的。
因此,BI系统的用户需求是基于企业范围(enterprise-level business requirements)以及企业长期(Long-Term Success)的需求,需要企业各部门以及高层的参与,而非仅仅是IT部门和最后报表查看的个人。
这边先要说一下需求调研的目的。在DW/BI系统需求调研的目的是
tools for uncovering business value
下面介绍几个工具,帮助发掘用户需求。这些工具都来自于The Microsoft Data Warehouse Toolkit : With SQL Server 2005 and the Microsoft Business Intelligence Toolset。推荐大家先看一下原书。
January 19 Business Intelligence - reference books
The Data Warehouse Toolkit Second Edition By Ralph Kimball,Margy Ross Wiley Computer Publishing ISBN 0-471-20024-7
The Microsoft Data Warehouse Toolkit : With SQL Server 2005 and the Microsoft Business Intelligence Toolset by Joy Mundy, Warren Thornthwaite and Ralph Kimball John Wiley & Sons © 2006 ISBN:0471267155
Mastering Data Warehouse Design Relational and Dimensional Techniques By Claudia Imhoff, Nicholas Galemmo, Jonathan G. Geiger Wiley Computer Publishing ISBN: 0-471-32421-3 January 18 Business Intelligence-To be a MBA & DBABI 的系统基础是数据仓库(Data Warehouse),建设数据仓库需要你即使一个MBA又是一个DBA. You should be hybrid MBA(business analyst)/DBA(database administrator).
可见建设BI系统并不是一个单纯的技术工作。BI首先要强调的是对business 的认识、理解、分析和确认。而且可能是一个反复的过程。如果你想马上进入建模的阶段,或者听我讲Dimensional Modeling的要点的话,你可能要失望了,我要强调的是先做好一个MBA。
粗浅而言,建设BI系统和其他商业系统没有什么太大不同之处,BI比较强调的过程主要由下组成:
1. 业务需求的调研和确认
->2.结构设计和工具选择
->3.建立维度模型(Dimensional Modeling),物理模型设计(Physical Design),ETL 设计和开发
->4.BI Application开发
5.开发
6.数据增长
7.维护
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|