图书前言

前    言

Analysis Services 2005是在Analysis Services 2000基础上实现的一次巨大飞跃,在概念上从使用Business Intelligence Development Studio(BIDS)构建多维数据集转变为具有特性和用户层次结构的统一维度模型(Unified Dimensional Model,UDM)。本书的第1版Professional SQL Server Analysis Services 2005 with MDX,其读者对象既包括初学者,也包括具有丰富经验的高级用户,出版后受到读者的广泛认可。Analysis Services 2005是一个大型的复杂产品,需要经过大量的细致优化才能获得最佳性能。

Analysis Services 2008向开发人员工具集以及服务器本身添加了一些增强功能,使得可以更加轻松地构建数据库,同时实现高效的性能。编写第2版的目的是深入介绍这些增强功能,帮助你了解如何高效地利用这些增强功能以满足你的业务需求。由于Analysis Services 2008是一个增量发布的版本,因此本书的第2版与第1版在结构上颇为类似,但是书中的每一章都新增了大量的内容。第2版的读者对象仍然是从初学者到高级用户均适用。

在Analysis Services 2008与当前的主要版本Analysis Services 2012之间,Microsoft发布了SQL Server 2008 R2,其中引入了PowerPivot,从此,Microsoft开始迈上自助服务商业智能的舞台。PowerPivot的目标是通过一种更简单且更易于理解的数据模型将商业智能(BI)的益处带给更大的受众群体,这里所说的数据模型就是DAX表达式语言(设计形式类似于Excel表达式,熟悉Excel表达式的用户可以轻松掌握)以及VertiPaq引擎(既具有面向列的内存中数据库引擎的速度优势,又具备高水平的压缩功能,允许更大的数据库驻留在内存中)。

现在,我们使用的是Analysis Services 2012,其中引入了Microsoft全新的包罗万象的商业智能语义模型(Business Intelligence Semantic Model,BISM)。BISM既包含旧有的统一维度模型,又为Excel和SharePoint上下文环境以外的专业BI开发人员提供了表格模式。表格模式是在SQL Server 2008 R2中与PowerPivot一起引入的。这次版本发布带来了很多问题,包括Microsoft在BI领域的发展方向,以及如何在Analysis Services 2012中使用SQL Server Data Tools(以前称为BIDS)来实施你的BI解决方案。本书将对这些问题一一予以解答,并为你提供商业智能语义模型两种模式(维度模式和表格模式)的亲身经验。我们仍然延续本书之前各个版本的传统,旨在为从初学者到高级用户的广泛读者对象提供最大的使用价值。

0.1  本书读者对象

本书的目标对象与之前各个版本的读者受众相同:想要使用Microsoft的工具了解和掌握数据仓库以及BI的用户。你可能对成为一名BI专家具有非常高的热情,并且希望在深度和广度上对Microsoft的BI方法有一个全面的了解。你可能是已经在某种BI环境中工作的用户,希望获得相关的帮助来解决你当前工作中所面临的挑战。或者,你可能之前曾经使用其他公司提供的工具或Microsoft BI技术的早期版本在BI环境中工作,现在希望了解Analysis Services 2012以及相关产品提供了哪些新的功能。我们相信,上述所有受众都可以在本书中找到想要的答案。

阅读和理解本书中的内容需要具备哪些先决条件呢?如果你之前没有关系数据库的使用经验,甚至没有接触过关系数据库的概念,那么在阅读本书时可能会遇到非常大的挑战,你可能需要首先阅读一本有关关系数据库的更为基础的图书,之后再深入学习本书中的内容。另一方面,我们并不要求你在数据仓库、商业智能或应用程序开发方面具有丰富的知识。如果想要了解这些主题,以及Microsoft的各种产品和技术如何协同工作以帮助你开发BI解决方案,那么本书绝对适合你!

0.2  本书主要内容

Analysis Services 2012是Microsoft最主要的分析数据库产品。Analysis Services 2012是基于之前的Analysis Services版本构建的,提供大量强大的工具用于设计、构建、测试和部署你的多维模式和表格模式数据库。通过使用集成到Visual Studio中的工具,可以在构建BI项目的过程中获得真正的开发人员经验。

本书将借助于分步说明循序渐进地向你介绍整个产品及其各种重要的功能。在此过程中,你不仅可以了解到如何使用这些功能,还可以在用户级别了解有关这些功能的更多详细信息,以及在后台究竟发生了哪些活动才使得操作能够顺利完成。我们相信,这可以为你提供额外的洞察力,让你了解这些功能实际上是如何工作的,从而使你认识到如何最好地利用这些功能。此外,本书还能增强你调试解决问题的能力,你在其他地方可能无法获得这种能力。

MDX和DAX是用于从Analysis Services检索数据的语言。在本书中,将向你介绍这两种语言的基本概念以及各种函数。通过了解发送到服务器以执行各种操作的表达式和函数,你将开始认识到这些语言的复杂性,并通过补习来提高自己的编码技能。最后,你将学习如何优化查询,以从Analysis Services获得最佳性能。

本书的一项主要附加价值在于使你开始认识到BI应用程序开发中涉及哪些设计方面的权衡,单凭这一点,我们认为你就值得花钱购买本书。此外,本书提供了很多示例场景,可以帮助你在面临上述权衡决策时能够开发出更能满足公司需求的BI设计。这些示例场景针对的是现有Analysis Services客户当前所面临的一些常见业务问题。虽然我们并没有声称本书可以在本质上教会你有关商业的知识,但书中确实介绍了大量BI相关知识,我们为你解释了一些你最后一定会遇到的商业概念。例如,折旧是一个经常被错误理解的概念,我们对这一概念进行了较为详细的解释。再次强调一下,本书在这一方面介绍的还不够深入,但我们希望纯粹的商业概念所涵盖的内容能够为你提供更为丰富的基础知识,并在工作中加以应用。

最后,本书还介绍了Analysis Services与其他SQL Server 2012组件的集成,这些组件包括:数据挖掘、Integration Services和Reporting Services(包括SQL Server 2012中新引入的交互式报告工具Power View)以及Microsoft Office产品。这些章节中的内容可帮助你深入了解Analysis Services 2012,而不仅仅是粗略的了解。通过与这些不同组件的集成,让你真真切切地能够构建有始有终的BI解决方案,这些解决方案不但具有可伸缩性、可维护性和良好的性能特征,而且还能突出显示正确的信息。不要跳过那些乍一看对了解Analysis Services 2012本身并不是至关重要的章节,所有章节组合在一起才能带来真正的价值。了解了整本书的所有内容才能获得重大的成功,你花费的时间和精力才能得到相应的回报。

0.3  本书的结构

Wrox Professional系列图书的作者试图使每一章都尽可能地相对独立,本书也不例外。但是,有时候,主题的复杂性以及某些概念必不可少地与其他概念相互关联的特性会破坏这种美好的意图。实际上,除非你是一位经验丰富的数据仓库专家,或者在Analysis Services的早期版本方面有非常丰富的使用经验,否则,我们建议你从前往后按顺序阅读每一章。请按顺序阅读前7章以及第15~18章,因为这些章节共同为你提供某些体系结构上下文环境,使你可以初步了解如何创建多维数据库和表格数据库,此外还对MDX和DAX进行了简要的介绍。我们在学习本书的过程中要循序渐进,不要盲目超前!至于本书的实际布局,我们将本书分为大致4个主要的部分。

首先,我们用一个章节的内容来介绍基本概念,并提供产品的概述。

第Ⅰ部分向你初步介绍如何使用Analysis Services来实现设计多维数据库所需的绝大多数常见操作。如果之前对该产品并不了解,那么这一部分将让你有一个初步的了解,此外,我们还希望能够为你提供一定的成就感,这可以激励你努力学习,最终从一名初学者蜕变成经验丰富的高级用户。

第Ⅱ部分中的章节使你可以准备好学习有关创建多维数据库的更高级的主题,例如多个度量值组、商业智能向导、关键性能指标以及操作。你将了解Analysis Services 2012中的计算模型,并使用SQL Server Data Tools增强你的维度和多维数据集设计。最后,将向你介绍SQL Server Integration Services、SQL Server Reporting Services以及数据挖掘如何提供与你的多维模型的集成。

在第Ⅲ部分中,我们将介绍自助服务商业智能以及随SQL Server 2008 R2一起发布的PowerPivot。然后,我们将立即深入介绍如何创建和管理表格数据库,紧接着介绍如何通过DAX查询数据,以及可以在表格数据库中使用DAX实现的一些常见商业解决方案。最后,我们介绍如何使用Microsoft Office产品分析你的多维数据库或表格数据库。

最后,在第Ⅳ部分中,我们介绍了Power View,这是一种基于浏览器的Silverlight应用程序,用于为数据分析师、业务决策者以及信息工作者等商业用户提供点对点的报告。Power View可帮助你将SQL Server Analysis Services表格数据库中的数据可视化并对其进行分析。

这四部分与前面的介绍性章节一起构成了本书的组织结构,这些内容将提供全面的BI学习体验,使你可以创建、部署和管理多维数据库和表格数据库。由于BI和BI应用程序是一个异常复杂和庞大的领域,因此没有任何一本书可以涵盖所有的相关内容。在通过SQL Server Analysis Services 2012的视角介绍BI这一方面,我们希望本书能为你提供相关的内容。

0.4  使用本书的条件

需要一台运行某一版本的Windows操作系统(例如Windows 7 Professional)的计算机,并在该系统上安装一个SQL Server 2012副本。此外,还需要SQL Server 2012商业智能示例,这些可以在www.wrox.com上本书对应的网页上获取。

0.5  源代码

在练习书中的示例时,可以选择手动输入代码或者使用本书附带的源代码文件。书中用到的所有源代码都可以从www.wrox.com下载。进入站点http://www.wrox.com后,只需要找到本书的英文书名(使用Search搜索框或书名列表),单击本书详细信息页面上的Download Code链接,就可以得到本书所有的源代码。

下载完代码后,用你喜欢的压缩工具把它解压缩。此外,也可以去Wrox的主下载页面www.wrox.com/dynamic/books/download.aspx找到本书或Wrox出版的其他书籍的代码。

0.6  勘误表

尽管我们竭尽所能来确保在正文和代码中没有错误,但人无完人,错误难免会发生。如果你在Wrox出版的书中发现了错误(例如拼写错误或代码错误),我们将非常感谢你的反馈。发送勘误表将节省其他读者的时间,同时也会帮助我们提供更高质量的信息。

要找到本书的勘误表页面,可以进入www.wrox.com,使用Search搜索框或书名列表定位本书,然后在本书的详细信息页面上单击Book Errata链接。在这个页面上可以查看为本书提交的、Wrox编辑粘贴上去的所有错误。完整的书名列表(包括每本书的勘误表)也可以从www.wrox.com/misc-pages/booklist.shtml上获得。

如果你在本书的勘误页面上没有看到你发现的错误,可以到www.wrox.com/contact/ techsupport.shtml上填写表单,把你发现的错误发给我们。我们会检查这些信息,如果属实,就把它添加到本书的勘误页面上,并在本书随后的版本中更正错误。

0.7  p2p.wrox.com

如果想和作者或同行进行讨论,请加入http://p2p.wrox.com上的P2P论坛。该论坛是一个基于Web的系统,你可以发布有关Wrox图书及相关技术的消息,与其他读者或技术人员交流。该论坛提供了订阅功能,当你感兴趣的主题有新帖子发布时,系统会发送邮件来通知。Wrox的作者、编辑、其他业界专家和像你一样的读者都会出现在这些论坛中。

在http://p2p.wrox.com网站上,你会找到很多不同的论坛,它们不但有助于你阅读本书,还有助于开发自己的应用程序。加入论坛的步骤如下:

(1) 进入http://p2p.wrox.com,单击Register链接。

(2) 阅读使用条款,然后单击Agree按钮。

(3) 填写加入该论坛必需的信息和其他你愿意提供的信息,单击Submit按钮。

(4) 你将收到一封电子邮件,描述如何验证你的账户和完成加入过程。

加入之后,就可以发布新的消息和回复其他用户发布的消息。可以随时在Web上阅读论坛里的消息。如果想让某个论坛的新消息以电子邮件的方式发给你,可以单击论坛列表中论坛名称旁边的Subscribe to this Forum图标。

要了解如何使用Wrox P2P的更多信息,请阅读P2P FAQ,其中回答了论坛软件如何使用的问题,以及许多与P2P和Wrox图书相关的问题。要阅读FAQ,单击任何P2P页面上的FAQ链接即可。