happmaoo 发表于 2013-1-30 00:46:21

数据仓库建模与ETL实践技巧

<iframe align="center" marginwidth="0" marginheight="0" src="http://www.zealware.com/csdnblog336280.html" frameborder="0" width="336" scrolling="no" height="280"></iframe><div class="postText">数据仓库建模与ETL实践技巧

北京迈思奇科技有限公司 戴子良
专家简历
戴子良,北京迈思奇科技有限公司(www.minesage.com)咨询顾问,微软MCP,ETL专家,在数据仓库,数据清洗,数据整合和多维数据库方面有很深的造诣,负责企业级数据仓库建模,ETL,数据仓库实现,调度,海量数据的优化处理以及数据分析与挖掘等。负责和参与开发的主要项目有:微软总部MSN数据挖掘项目;微软总部Microsoft Marketing数据分析项目等。对数据仓库的架构和海量数据的优化有丰富的经验和处理方法,有丰富的实际项目经验,尤其对ETL过程及数据清洗整合有独到的见解。


在上一期的专栏文章中,我们曾经提到:数据分析系统的总体架构分为四个部分 —— 源系统、数据仓库、多维数据库、客户端(图一:pic1.bmp)

<shapetype id="_x0000_t75" stroked="f" filled="f" path="m@4@5l@4@11@9@11@9@5xe" o:preferrelative="t" o:spt="75" coordsize="21600,21600"><stroke joinstyle="miter"></stroke><formulas><f eqn="if lineDrawn pixelLineWidth 0"></f><f eqn="sum @0 1 0"></f><f eqn="sum 0 0 @1"></f><f eqn="prod @2 1 2"></f><f eqn="prod @3 21600 pixelWidth"></f><f eqn="prod @3 21600 pixelHeight"></f><f eqn="sum @0 0 1"></f><f eqn="prod @6 1 2"></f><f eqn="prod @7 21600 pixelWidth"></f><f eqn="sum @8 21600 0"></f><f eqn="prod @7 21600 pixelHeight"></f><f eqn="sum @10 21600 0"></f></formulas><path o:connecttype="rect" gradientshapeok="t" o:extrusionok="f"></path><lock aspectratio="t" v:ext="edit"></lock></shapetype><shape id="_x0000_i1025" style="WIDTH: 414.75pt; HEIGHT: 311.25pt" type="#_x0000_t75"><imagedata o:title="pic1" src="file:///C:%5CDOCUME~1%5Cyzhu%5CLOCALS~1%5CTemp%5Cmsohtml1%5C01%5Cclip_image001.png"></imagedata></shape>

其中,数据仓库(DW)起到了数据大集中的作用。通过数据抽取,把数据从源系统源源不断地抽取出来,可能每天一次,或者每3个小时一次(当然是自动的)。这个过程,我们称之为ETL过程。
那么,今天,我们就来谈一谈:如何搭建数据仓库,在这个过程中都应该遵循哪些方法和原则;然后介绍一些项目实践中的技巧。


一、数据仓库的架构

数据仓库(Data Warehouse \ DW)是为了便于多维分析和多角度展现而将数据按特定的模式进行存储所建立起来的关系型数据库,它的数据基于OLTP源系统。数据仓库中的数据是细节的、集成的、面向主题的,以OLAP系统的分析需求为目的。
数据仓库的架构模型包括了星型架构(图二:pic2.bmp)与雪花型架构(图三:pic3.bmp)两种模式。如图所示,星型架构的中间为事实表,四周为维度表,类似星星;而相比较而言,雪花型架构的中间为事实表,两边的维度表可以再有其关联子表,从而表达了清晰的维度层次关系。
            <shape id="_x0000_i1026" style="WIDTH: 184.5pt; HEIGHT: 138pt" type="#_x0000_t75"><imagedata o:title="pic2" src="file:///C:%5CDOCUME~1%5Cyzhu%5CLOCALS~1%5CTemp%5Cmsohtml1%5C01%5Cclip_image003.png"><font size="3"></font></imagedata></shape>
                                    <shape id="_x0000_i1027" style="WIDTH: 184.5pt; HEIGHT: 138pt" type="#_x0000_t75"><imagedata o:title="pic3" src="file:///C:%5CDOCUME~1%5Cyzhu%5CLOCALS~1%5CTemp%5Cmsohtml1%5C01%5Cclip_image005.png"><font size="3"></font></imagedata></shape>
                  
页: [1]
查看完整版本: 数据仓库建模与ETL实践技巧