ImageVerifierCode 换一换
格式:DOCX , 页数:50 ,大小:1.58MB ,
资源ID:7656162      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7656162.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(SQLServer 数据挖掘分析经典全集.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

SQLServer 数据挖掘分析经典全集.docx

1、SQLServer 数据挖掘分析经典全集 对于初学者来说,本章可以帮助他们入门,对于有一定SQL Server数据挖掘经验的用户来说,本章可以为他们提供一些技术,以帮助他们最有效地发挥该工具集的作用。但是这并不意味着本章可以取代产品的帮助文档中优秀的帮助和教程。更确切地说,本章讲述如何使用Analysis Services提供的通用工具,特别是用于数据挖掘的工具。本章将通过用户界面来讲述如何使用Analysis Services的功能,并提供详细的操作步骤来示范如何创建一组挖掘模型。本章还将穿插介绍相关的一些概念。如果您偏离这些操作太远,则可以重新开始操作,也可以从本书的Web站点( data

2、_mining_SQL_2008)上获得完整的项目文件,以便随时使用。本章将会使用附录A描述的MovieClick数据库来举例说明工具的用法。本章将学习:使用Business Intelligence Development Studio(BI Dev Studio)理解即时模式和脱机模式创建及修改数据源、数据源视图和数据挖掘对象浏览数据和评估模型4.1 BI Dev Studio介绍在使用SQL Server数据挖掘功能的过程中,大部分时间将会花费在商业智能应用程序开发工具集(Business Intelligence Development Studio,BI Dev Studio)上。B

3、I Dev Studio环境已经集成到Microsoft Visual Studio(VS)框架中,为商业智能操作提供了完整的开发环境。在使用Visual Studio时,数据挖掘项目是一组项目中的一部分,这组项目也称为解决方案。数据挖掘项目与应用程序所要求的其他项目可以组合到一个解决方案中。例如,数据库管理员(Database Administrator,DBA)可能创建一个Integration Services项目,这个项目从联机事务处理(OLTP)系统中提取数据,并且把这些数据转换为适合于数据挖掘的形式。然后,分析员可以创建一个Analysis Services项目,这个项目包含浏览事

4、务数据和分析事务数据的模型。最后,应用程序开发人员可以创建一个Web服务和Web站点,在终端用户应用程序和商业化的服务中嵌入这些模型。所有这些项目都可以包含在一个解决方案中,这个解决方案包含所有相互合作完成的工作。而且,这些工作的所有方面都可以通过源控制系统中完整的版本历史来获得。4.1.1 用户界面BI Dev Studio主要是为应用程序开发人员设计的,有一个实现解决方案的非结构化方法,该方法与传统的数据挖掘工具完全不一样。该方法和BI Dev Studio开发环境的复杂性,使得那些熟悉其他数据挖掘工具集的用户感到害怕。然而,开始使用这个工具时,要处理Visual Studio中内置的无数

5、选项和窗口,一旦经历这一段的磨练之后,要创建和分析一个挖掘模型就是非常简单的事。熟悉BI Dev Studio的第一步是理解用户界面各个部分中哪些部分是重要的,并且理解各个部分的作用。图4-1列出了BI Dev Studio的典型窗口布局,其中对各个重要的元素做了标注。图4-1 BI Dev StudioBI Dev Studio最重要的部分如下所示。解决方案资源管理器:解决方案资源管理器窗口用于管理解决方案和项目。在这个窗口中可以创建和管理所有的对象。要在项目中增加一个对象,可以右击项目名,然后选择“添加新项”,或者右击一个特定文件夹,然后选择“新建”。进行上述操作之后,将会启动一个对话框或

6、向导,创建特定的对象了。窗口选项卡:通过窗口选项卡可以在设计器窗口之间快速切换。每一个当前打开的文件或者对象都有一个选项卡。如果打开的对象的数目超过了选项卡区域能够容纳的数目,则可以使用选项卡右边的滑动条来浏览其他的窗口。设计窗口:设计窗口是编辑和分析对象的地方。创建一个新的对象或者在解决方案资源管理器中双击一个对象,将会打开该对象的特定设计窗口,以修改该对象,与该对象交互。设计选项卡:许多对象都有不同的方面,可以对它们进行编辑或者与它们交互。这些方面在设计器窗口中是通过选项卡来给出的。属性窗口:属性窗口是一个上下文相关的窗口,它显示当前选择项的属性。属性窗口在Visual Studio中很常

7、见,适用于该开发环境中所执行的任何类型的操作。例如,如果在解决方案资源管理器中选择一个对象,则在属性窗口中将会显示所选对象的属性(比如对象ID、文件名等等)。如果在数据挖掘设计器窗口中选择某一列,则在属性窗口中将会显示列的属性(比如名称和数据类型)。如果所选的项没有属性,则属性窗口将是空的。BI菜单:BI菜单位于主菜单栏的“调试”菜单和“工具”菜单之间,从中可以找到特定于Analysis Services对象的上下文相关的菜单。例如,如果打开数据源视图(Data Source View,DSV)编辑器,则“格式”菜单和DSV菜单将会在这个区域中显示。输出窗口:当构建和部署项目时,输出窗口将显示

8、相关的信息。如果项目有错误,则可以在输出窗口中查看关于该错误的描述。注意:要使操作环境更适合自己的数据挖掘任务,可以按照所喜欢的形式重新组织工作空间。单击并且拖动任何窗口的标题栏,可以显示窗口悬浮的图标,以帮助悬浮和停靠窗口。甚至可以将这些窗口彼此叠放,这样,可选择的选项卡将会显示在窗口的下面。在集成开发环境中选择不同的选项时,可能会显示额外的窗口。可以关掉当前不再使用的窗口不要担心,如果需要它们,总是可以从视图菜单中打开它们。如果想使那些窗口易于使用,而且在屏幕空间上运行短暂时间,则可以在窗口的标题栏中单击图钉图标,这样,当不使用这个窗口时,该窗口将会自动隐藏。4.1.2 脱机模式和即时模式

9、BI Dev Studio有两种工作模式:脱机模式和即时模式。具体使用哪一种工作模式有时基于个人的爱好,有时基于个人的需要。每一种模式都有各自的优点和缺点,重要的是,在使用BI Dev Studio时需要理解这两种模式的区别。1. 即时模式对数据挖掘用户来说,工作在即时模式下是很自然的。在即时模式下工作时,就直接并持续地连接到Analysis Services服务器。当打开一个对象(比如挖掘结构)时,是从服务器中打开该对象。当改变了对象并且要保存它时,该对象将直接在服务器上改变。在即时模式下,BI Dev Studio项目是一个到服务器上的数据库的链接。在解决方案资源管理器中,可以看到数据库中

10、的当前所有对象。如果关闭这个项目,然后重新打开它,将会自动重新连接到该数据库。如果上次打开该项目时数据库中的对象已经改变了,则再一次打开它时,还能够看到这些改变。虽然这种模式很直观,也很容易理解,但是在使用时有一些因素还是应该注意的。最重要的是,它是真正的“即时”。如果有一个现成的工作模型,需要修改并保存该模型,那么,这种改变立即进行,并且该模型会变成是未处理的,任何针对该模型的查询都无法执行。除此之外,如果已经打开一个对象,其他用户也可以修改它。如果已经修改了一个对象并且试图保存它,将会看到一个警告,因为保存对象时会覆盖其他用户已经做出的修改。只有关闭对象并且重新打开它时,在服务器上的对象改

11、变才能在项目中反映出来。在数据库中新建或者删除一个对象后,只有在关闭项目并且重新打开它时才能看得到所进行的改变。即时模式相对于脱机模式来说,一个最大的优点是安全性高。如果在即时模式下工作,则该模式允许在单一数据库限定的范围工作,同时允许拥有数据库管理员权限的用户创建和修改对象。下一节将会讲述为什么使用脱机模式要求用户是服务器管理员。2. 在即时模式下使用BI Dev Studio要在即时模式下开始使用BI Dev Studio,则按照下面步骤进行操作:(1) 启动BI Dev Studio。(2) 在“文件”菜单中选择“打开”,然后选择Analysis Services数据库,如图4-2所示的

12、对话框将会出现。(3) 在对话框的相应输入框中输入要连接的服务器名和数据库名。(4) 单击“确定”按钮。如果有服务器管理员的权限,则也可以在服务器上创建新的数据库,所需的操作是选择“创建新数据库”单选按钮,然后指定服务器名和数据库名。图4-2 即时模式下连接到数据库的对话框3. 脱机模式在脱机模式下工作时,项目包含的文件存储在客户机上。在这种环境下修改对象时,所作的修改以XML文档的格式存储在硬盘上。在将一个模型或者对象部署到目标服务器之前,所创建的模型和其他对象不会存储在服务器上,而是存储在客户机上。这样就允许数据挖掘开发人员或者分析员在将模型部署到真正的服务器之前进行一些操作,设计和测试该

13、模型。也可以将这些文件放到源控制系统中,以便跟踪对象元数据的改变,并且在一个开发团队中实现共享。在解决方案资源管理器中右击一个对象,然后选择“查看代码”,就可以查看和编辑这些文件的源代码。当部署一个项目时,BI Dev Studio会对项目中的对象进行验证,并且会创建一个部署脚本,将脚本发送到服务器。部署的基本单位是整个项目,代表整个Analysis Services数据库。当部署一个项目时,这些工具能够部署增量更改。然而,如果在服务器上有一个与项目设置中的数据库同名的数据库,或者如果要部署来自不同计算机的项目,则该部署将会完全覆盖已有的数据库。幸运的是,在覆盖已有数据库之前会弹出一个警告对话

14、框。因为数据库是在部署时创建的,所以,只有服务器管理员才能将脱机模式下的项目部署到服务器上。4. 在脱机模式下使用BI Dev Studio要在BI Dev Studio中开始使用脱机模式,按照下面步骤进行操作:(1) 启动BI Dev Studio。(2) 首先从“文件”菜单中选择“新建”菜单,然后选择“项目”,将会显示如图4-3所示的“新建项目”对话框。(3) 在“项目类型”窗格中打开“其他语言”节点。(4) 选择“商业智能项目”。(5) 从“模板”窗格中选择Analysis Services项目。(6) 指定项目的名称,然后单击“确定”按钮。(7) 首先选择“生成”菜单,然后选择“部署”

15、,将项目部署到服务器,创建数据库。图4-3 “新建项目”对话框默认情况下,项目会部署在local host服务器,也就是说,该服务器与工具在同一台计算机上。为了改变目标服务器,首先选择“项目”,然后选择“属性”,以启动“配置属性管理器”对话框。在这个对话框中,可以创建不同的部署配置,还可以为每一个可能的配置指定目标服务器和数据库的名称,如图4-4所示。图4-4 项目属性对话框在部署的过程中需要注意的其他重要属性是处理选项和部署模式。默认情况下,部署功能自动处理已经创建的对象,或者由于项目的改变而变得无效的对象。处理选项属性控制处理行为。同样,默认情况下只将来自这些工具的增量更改部署到服务器上。

16、如果其他客户已经改变了该数据库,或者在服务器上有一个同名数据库,则默认的部署方式会导致错误。部署模式属性可以控制这种行为。注意:可以设置一个属性来改变默认的部署服务器,默认的部署服务器是每次创建一个新的脱机项目时设置的。如果要改变默认的部署服务器,则需要选择“工具”菜单上的“选项”选项,进入“选项”对话框。在“选项”对话框中,依次选择“商业智能设计器”|“Analysis Service 设计器”|“常规”,然后将默认的目标服务器属性设置为选定的服务器。这个设置只对新创建的项目起作用,所以仍然需要手动修改之前创建的项目。5. 切换项目模式有时需要从一种模式切换为另一种模式,例如,要在另一台计算

17、机上快速更新一个以前部署的项目时,或者要将一个数据库的对象元数据保存到源控制中时。进行这种切换是比较容易的。最容易的切换是将脱机模式切换为即时模式。只要按如下步骤操作:首先打开“文件”菜单,选择“打开”|“Analysis Services数据库”,然后选择以前部署的数据库。相反,如果要将即时模式切换为脱机模式,需要在“新建项目”对话框中创建一个新的项目,并且选择“导入Analysis Services 2008数据库”,如图4-3所示。该操作将启动一个向导,在向导中可以指定服务器和源数据库的名称,并且可以将元数据提取到一个新的项目中。需要指出的是,如有必要,仍然需要设置部署选项来指出目标服务

18、器和数据库的名称。注意:查看解决方案资源管理器中项目的名称,可以确定当前是在即时模式下还是在脱机模式下。如果当前是即时模式,则项目名称后面的圆括号中会有服务器的名称。除此之外,所有的窗口选项卡都会有文本(Online)跟在对象名字的后面。4.1.3 创建数据挖掘对象打开数据库或者项目之后,不管选择哪一种操作模式,在Analysis Services项目里执行的操作都是相似的。如果要进行数据挖掘,则需要指定和描述源数据,然后创建挖掘结构和挖掘模型。4.2 设置数据源Analysis Services中的两个对象数据源和数据源视图(DSV)是数据的接口。数据源实际上是一个连接字符串,用于描述数据的

19、位置,然而,DSV是一个抽象层,DSV能够修改查看数据源的方式,甚至定义一个模式,在以后的某个时候切换实际数据源。本节讨论如何设置这些对象,以便在数据挖掘中使用。4.2.1 数据源数据源是一个非常简单的对象。它只包含一个连接字符串和一些描述如何连接的附加信息。但是,数据源的两个问题可能会成为我们学习的绊脚石,如果不理解它们,则在以后学习的过程中很可能会受到挫折。由于允许在客户端上创建对象,因此这两个问题都将出现,当部署对象时,该对象不能正常工作。第一个问题是数据位置。与大多数数据挖掘产品不一样,SQL Server数据挖掘是一个基于服务器的解决方案。这意味着在设置数据源时,不但客户端(这个客户

20、端是指创建模型的工具所在的计算机)能够访问该数据源,而且服务器(这个服务器是用来处理模型的地方)也能访问该数据源。例如,如果根据C:My DocumentsNorthwind.mdb中的Access数据库构建了一个模型,那么,除非这个文件位于服务器的同一个位置,否则模型将无法处理。即使这个文件恰好存在,也有可能出问题,因为没有办法知道这个文件是否与本地版本包含同样的数据或者同样的模式。通常,当对本地数据进行挖掘时,应该使用SQL Server集成服务(SSIS)把当前的数据移到SQL Server数据库中,然后使用BI Dev Studio构建挖掘模型。第二个问题是安全性。理解用户凭证是非常重

21、要的,用户凭证用来控制从Analysis Services中访问数据。当设置连接时,可以选择使用集成的安全性,也就是说,使用账户凭证来访问数据。也可以考虑选择使用简单的安全性,即要求使用一个指定的用户名和口令来访问数据。只要源数据库支持集成的安全性,则Microsoft通常推荐使用集成的安全性。当连接数据库时,不管源数据库支持什么方法,数据源对象都包含附加信息,这些附加信息能够准确地告诉Analysis Services要使用或者模拟哪一种安全凭证。创建一个数据源对象有4种不同的模拟选项。使用当前用户的凭证对于通过查询语句来访问的数据源而言,这种方法是最安全的。选择该选项,Analysis S

22、ervices就使用当前的用户凭证访问远程的数据。但是,在许多的实现方案中,Analysis Services必须将凭证委派给源数据库计算机。为了让委派能够正常工作,需要域管理员对其进行配置。参考有关Kerberos的Windows Server文档可以了解这个问题的更多信息。这种方法不能用于在处理Analysis Services对象时用到的数据源,因为这种方法将会导致不同数据的访问,这取决于是由谁来处理对象。使用帐户当不选择“使用当前用户的凭证”选项时,“使用帐户”选项是次优选择。“使用帐户”允许指定账户凭证,这个账户凭证将会在访问数据源时使用。凭证包含一个用户名和口令,存储在Analys

23、is Services上,所有对这些数据的访问都使用这个凭证。如果不选择委派,则这个方法是最安全的。使用服务帐户“使用服务帐户”选项使得所有对这些数据的访问都使用这个账户,该账户也是Analysis Services的账户。使用这种方法主要用于测试,而不用于产品。通常,Analysis Services应该尽可能地在拥有最少权限的账户下运行。默认值“默认值”选项是指使用不同的凭证,具体依赖于如何访问数据源。如果是为了数据处理而进行访问,则应使用服务账户凭证访问数据。如果是为了数据查询而进行访问,则应使用当前用户凭证访问数据。创建MovieClick数据源要创建一个指向MovieClick数据库

24、的数据源,则按如下步骤进行:(1) 按照附录A中的描述下载MovieClick数据库,然后安装它。(2) 在解决方案资源管理器或者对象资源管理器中右击“数据源”文件夹,然后选择“新建数据源”,以启动数据源向导。(3) 跳过介绍页,在第二页中单击“新建连接”按钮,启动“数据链接”对话框。(4) 输入用于安装数据库的服务器名称,指定安全设置,然后选择MovieClick数据库。(5) 单击“确定”按钮,退出“数据链接”对话框,单击“下一步”,转到模拟信息页。(6) 输入用户名和口令(当访问MovieClick数据库时,Analysis Services将会使用该用户名和口令),然后单击“完成”按钮

25、,关闭向导。4.2.2 使用数据源视图数据源视图(Data Source View,DSV)是数据在客户端的一个抽象视图,这也是建模工作开始的地方。在DSV中,可以选择、组织、浏览以及(在某种意义上来说)操作数据源中的数据。其实,DSV是告诉Analysis Services希望如何查看数据源中的数据。因为对象存在于Analysis Services服务器中,而不是关系数据源中,所以即使对关系数据库服务器只有读的权限,也可以执行这种类型的操作。为数据挖掘目的而创建一个DSV时,要确定的最重要的表是事例表。事例表包含要分析的事例。除此之外,还需要引入一些关系表,比如嵌套表或者查找表,这些表包含事

26、例的附加信息。1. 创建MovieClick数据源视图要从MovieClick数据源中创建一个DSV,则按如下步骤进行:(1) 在解决方案资源管理器或者对象资源管理器中右击“数据源视图”文件夹,然后选择“新建数据源视图”,以启动数据源视图向导。(2) 跳过介绍页,然后在选择数据源向导页中,MovieClick数据源会默认被选中;单击“下一步”继续。(3) 名称匹配页对于导入的数据源不起作用,所以单击“下一步”继续。这一页只有当源数据库中的关系没有指定时才会显示,并且允许基于表的键列来选择如何自动创建关系。因为导入的MovieClick数据库既没有关系也没有键,所以它使用的算法不起作用。(4)

27、在选择表和视图向导页中,单击按钮,将“可用对象”列表中的所有表移到“包含的对象”列表中。(5) 单击“下一步”按钮继续,然后单击“完成”按钮,退出DSV向导,以显示DSV设计器。(6) 右击MovieGenre表的Movie列,并选译“设置逻辑主键”。(7) 将一个关系从Movies表的Movie列拖动到MovieGenre表的Movies列。连接之后,在设计器窗口中单击右键,然后选择“排列表”,把表排列整齐,更便于观看。完成这些操作之后,DSV应该如图4-5所示。图4-5 完整的MovieClick数据源视图DSV设计器最初显示的是包含在数据源中的表和这些表之间的关系。如果已经熟悉了数据,并

28、且这些数据现在适合于进行数据挖掘,就可以开始创建挖掘模型。但是,如果这些条件没有达到(通常是这样),则可以使用DSV设计器来浏览数据,并且将这些数据改为模型所需要的形式。最初,可以在模式中对表和列进行简单的注释,以便于理解。也可以为这些对象添加描述信息,甚至可以改变对象的名称,使它更便于理解和支持。例如,如果有一个表NWSFY03,可以把它重命名为Fiscal Year 03 Northwest Sales,或者将列014重命名为Quantity。只要选择对象,然后在属性窗口中输入描述和友好的名称即可。除此之外,如果在源数据库中还没有指定表之间的关系,则可以在这里指定。只需从一个表的外键列,将

29、一条关系线拖到另一个表的主键列,就可以完成关系的指定。所有这些修改只发生在DSV中,并且不会以任何方式影响源数据。注意:如果事例表和嵌套表之间的关系不存在于关系数据库中,则必须在DSV中指定该关系,否则将无法将嵌套表添加到模型中。除了可以利用DSV对模式进行注释外,DSV还允许创建命名计算、命名查询和视图,并且在数据透视图(pivot chart)中交互式地浏览数据。2. 使用命名计算在DSV中,命名计算列是表中附加的虚列。这个功能可以在自己的数据中挖掘派生信息,而不需要改变源数据。命名计算列包含一个名称、一个包含计算的SQL表达式和一个可选的描述。计算可以是任何有效的SQL表达式。如果对SQ

30、L表达式不熟悉,则可以学习下面的一些表达式类型,这些表达式在许多数据挖掘项目中都会用到。(1) 算术操作标准的SQL支持、/和%(取模)。例如,可以利用下面的公式来创建一个名为Profit的命名计算列:Sales Price Item Cost(2) 数学函数数学函数是非常有用的,特别是当列中的数据不遵循统一分布时。在所有的SQL函数中,ABS、LOG、SIGN和SQRT用得特别多。下面有两个示例。要以对数的方法来规范化一个以指数级别增加的变量,可以使用如下函数:LOG(Sales Quantity)要创建一个标志,来指出实际费用是高于预算还是低于预算,可以使用如下函数:SIGN(Actual

31、 Expenses Budgeted Expenses)(3) 组合表达式通常,想要测试的假设条件依赖于一个变量,这个变量是已有两个变量的组合。例如,可能对一个人是否结婚或者是否有孩子不感兴趣,但是这两个属性的组合可能提供很有价值的信息。针对这种情况的一个组合表达式如下所示:Marital Status + + Has Children(4) CASE表达式在数据挖掘中,CASE表达式是一种非常灵活的方式,用于创建有意义的变量。CASE表达式允许根据对一个或者多个条件的评估来指派结果。运用CASE可以达到下面的目的:改变值的标签,手动离散化列,减少有效状态的个数,将一个属性从一个嵌套表中转换为一个事例级属性。下面是几个范例。要改变值的标签,可以使用下面的表达式:CASE CategoryWHEN 1 THEN FoodWHEN 2 THEN BeverageWHEN 3 THEN GoodsEND CASE要手动离散化列,可以使用下面的表达式:CASEWHEN Age 20 THEN Under 20WHEN Age = 30 THEN Between 20 and 30WHEN Age = 40 THEN Between 30 and 40ELSE Over 40END要减少有效状态的个数,可以使用下面的表达式:CASE Marital

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1