ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 微软BI系统架构设计

微软BI系统架构设计

原创 Linux操作系统 作者:youli_113 时间:2008-01-05 11:06:07 0 删除 编辑

[转帖]

总体架构设计

BI已成为微软产品线中不可或缺的一部分。从2005年到2007年,微软在其BI产品线中增加了大量的产品,本文将介绍微软BI产品线的各款产品及其系统架构。
    从下图中可以看到,微软BI产品线已经涵盖了所有BI功能点,具体如下:
                  1.      ETLSQL Server 2005 Integration Services
                  2.      数据仓库:SQL Server 2005 Database Engine
                  3.      OLAPSQL Server 2005 Analysis Services
                  4.      数据挖掘模型:SQL Server 2005 Analysis Services
                  5.      多维数据分析(B/S)

                Ø Proclarity200712月之前)
        Ø OWC
        Ø Performance Point Server Analystic200712月之后)
                  6.      多维数据分析(C/S)Excel 2007
                  7.      计划分析(C/S)Performance Point Server Planning
                  8.      平衡计分卡:Performance Point Server ScoreCard
                  9.      报表:SQL Server 2005 Reporting Services + Dundas
                  10.    Data Mining Viewer(C/S)Excel Data Mining Add-in
                  11.    Data Mining Viewer(B/S):自定义开发
                  12.    BI PortalSharePoint Server 2007
    涉及的语言:
                  1.      MDX
                  2.      DMX
                  3.      T-SQL
                  4.      VB Script
                  5.      ASP.NET
                  6.      C#

构建多维数据集
  
         构建Analysis Services数据库是整个过程中最困难的一步,并不在于它要求多高的技术水平,而是它需要对客户需求准确的理解。作为一个开发人员来讲,理解客户需求是非常困难的,这也就意味着你很难去设定哪些是维度,哪些是量度,以及它们的属性。而这些也是客户无法帮助我们的,因为他们根本不懂什么是维度和量度。
        这时,一个既懂开发技术,又能够清楚了解客户业务的人就难得可贵了。
        Analysis Services数据库的建设是后面工作的基础,因为它将直接决定数据仓库、前端展现和ETL的设计。所以对它的设计一定要全方面的进行考虑,尤其是以后客户额外需求所带来的影响,即可扩展性,这也是我发现目前大多数Analysis Services数据库设计所欠缺的考虑。
        Analysis Services数据库的设计需要注意以下几个方面:
            1.尽量保证量度不包含任何实际的意义。
        这一点怎样理解,例如,有时我们会将收入、成本、费用设置为不同的量度,这在以后的扩展方面会存在一定的问题。而应该将设置一个维度称为指标(其中包括这三个成员),而设置一个量度称为金额。关于这种设计的优势我会在以后的帖子中详细说明。
            2.尽量将KPI和计算成员设置在Analysis Services数据库中,而不要设置在前端展现软件中,这样可以减少计算成员的设置数量,同时也易于维护。
            3.在尽可能的应用脚本功能。在Analysis Services数据库中你可以使用脚本功能实现很多强大的功能,包括计算成员的设置、聚合的函数、度量的汇总和格式的设置等等。
            4.创建标准的维度。每一个维度都要按照要求创建成标准的维度,例如主键必须为整型、包括排序键以及自定义汇总列等等,这样在后期扩展功能时会非常方便。
          5.首先创建一个大而全的多维数据集,然后再通过透视图切分成小的多维数据集,这样可以减少存储和维护量。

多维数据集验证及数据仓库生成

在完成多维数据集的创建之后,我们需要根据多维数据集生成数据仓库,在生成数据仓库之后,我们需要在数据仓库中填充测试数据,来实现对多维数据集的测试。
    测试数据的生成我想每个人都有各自的方法,我个人比较喜欢利用现有的一些数据,而不会使用程序生成数据,因为我觉得这样的数据不具有规律性,有时候更容易发现一些问题。
    在填充测试数据之后,我们就可以处理已经创建的多维数据集,并且对多维数据集进行验证。
    多维数据集的验证是一个痛苦的过程,因为你需要尽可能的考虑到客户的需求,这时候考虑得越详细,日后的工作量就会越少,如果这时只是简单的测试一下,那么日后引发的修改量将会非常大。
    在验证的过程中,同时要考虑到OLAP查询和报表的需求,因为这两种展现形式对多维数据集的结构要求是有一定区别的。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12641349/viewspace-102406/,如需转载,请注明出处,否则将追究法律责任。

上一篇: BI概述
请登录后发表评论 登录
全部评论

注册时间:2008-01-04

  • 博文量
    153
  • 访问量
    171683