sqlserver2000olap数据挖掘.ppt_第1页
sqlserver2000olap数据挖掘.ppt_第2页
sqlserver2000olap数据挖掘.ppt_第3页
sqlserver2000olap数据挖掘.ppt_第4页
sqlserver2000olap数据挖掘.ppt_第5页
已阅读5页,还剩78页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1,第五章 SQL Server 数据转换服务,2,SQL Server数据转换服务,创建数据仓库的一大挑战就是在构建好数据仓库之后的数据装入工作。 SQL SERVER 2000增加了一套新的工具DTS(Data Transformation Services,数据转换服务),支持有序而有控制的导入数据。,3,DTS中最常用的两大工具是DTS向导与DTS设计器,DTS向导提供了循序渐进的指引功能,依序的指示用户进行数据导入、导出以及转换的工作。 我们将于本章使用DTS设计器介绍数据转移的工作,因为他的功能比DTS向导更强大。,SQL Server数据转换服务,4,5.1 DTS设计器简介,DTS设计器提供了图形客户机接口,用户可以将所需要的对象用鼠标拉出来,并且在来源数据与目的数据之间进行转换的工作,比起DTS向导,DTS设计器的弹性大得多。 DTS设计器可以让我们将转换过程存储成包(package),以方便重复使用。,5,数据转移任务的步骤: 设置数据源 设置数据目的地 设置转换方式(如果有需要的话) 将数据转移任务存储为一个包 执行包实际进行数据转移,5.1 DTS设计器简介,6,5.2 新建目的数据库,在我们正式开始执行数据转换之前,首先建立一个新的目的数据库,用来存放数据仓库的数据。我们为该数据库命名为foodmart_dw。 在Enterprise Manager上右击【数据库】图标在快捷菜单中选取【新建数据库】选项。,7,5.2 新建目的数据库,8,5.3 激活DTS设计器,激活DTS设计器可以开始设计数据转换的任务。在Enterprise Manager 上右击【数据转换服务】图标,在快捷菜单中选取【新建包(P)】选项。,9,5.3 激活DTS设计器,10,5.3 激活DTS设计器,11,5.4 创建数据源与目的地,在进行数据转移之前,首先要设置的就是数据源与数据目的地。就我们的示范数据仓库而言,源数据库是示范数据库foodmart,而目的数据库库则是我们刚刚创建的foodmart_dw,到目前为止,他还没有任何表。 sql server analysis services为我们提供了一个实验数据库foodmart,是ACCESS格式。我们需要将它利用DTS转换成SQL SERVER格式。,12,单击Microsoft ACCESS 图标,5.4 创建数据源与目的地,13,单击Microsoft ACCESS 图标,5.4 创建数据源与目的地,14,5.4 创建数据源与目的地,15,同理,我们创建sql server的目的数据库,5.4 创建数据源与目的地,16,同理,我们创建sql server的目的数据库,5.4 创建数据源与目的地,17,5.4 创建数据源与目的地,5.4 创建数据源与目的地,18,5.5 转移表,此处我们以转移CUSTOMER表为例来说明这个问题。 我们需要创建一个【转换数据任务】。,19,步骤1:单击microsoftaccess,步骤2:先按住ctrol键,再单击,步骤3:单击“转换数据任务”按钮,5.5 转移表,20,DTS设计器在sqlserver和access之间创建了一个带箭头的指针,箭头位置指向目的数据库。转换数据任务是具有方向性的,所以单击数据连结的顺序是很重要的。,5.5 转移表,21,在我们的应用中没有从access数据库中拷贝所有的列,这样在传输数据时有两种选择: 使用T-SQL命令来从数据源读取数据 选择customer表,使用transformation选项卡移走不必要的列。,5.5 转移表,22,源数据 可以直接使用一个已知的表,5.5 转移表,23,源数据-可以使用一个SQL语句确定原数据的内容。,5.5 转移表,24,目的地如果目的表存在,可以直接选择,5.5 转移表,25,目的地如果目的表不存在,可以在此处直接创建。,5.5 转移表,26,转换,5.5 转移表,27,转换,虽然我们第一次单击转换标签,但是系统已经出现了一些转换,但是实际上系统并没有为我们定义好转换。因此,如果微软不显示这些箭头,误会可能会少一些。,5.5 转移表,28,转换,单击全部删除,5.5 转移表,29,转换,单击“新建”,5.5 转移表,30,转换,选择列之间的直接拷贝,5.5 转移表,31,转换,依次选择源列和目标列,5.5 转移表,32,转换,5.5 转移表,33,转换,5.5 转移表,34,转换,5.5 转移表,35,转换,单击确定,5.5 转移表,36,转换,5.5 转移表,37,转换,这时布局已经作了改变,以反映列的映射。源数据的映射都集中成一条线,然后又发散开。正是中间的那条线决定了转换选型卡式如何工作的。,5.5 转移表,38,转换,单击确定,5.5 转移表,39,5.6 保存包,40,保存包的过程很直接。单击磁盘图标,或者从package菜单中选择save,这时就会弹出关于包的细节信息的窗口。,5.6 保存包,41,5.6 保存包,42,5.6 保存包,43,5.7 包的执行,单击执行,44,5.7 包的执行,45,数据转换服务,包可以重复执行多遍,但必须清除上一次运行时留在数据库中的信息。这样包将删除将要创建的数据库中的所有表,但会保留其它用户自建的表。 因此,在前面的例子中,我们首先利用SQL任务实现表的删除,重新创建,最后在进行数据的转换,从而保证数据的正确性。,46,5.8 删除表,首先删除数据库中所有的ACCOUNT表的实例。,47,首先删除数据库中所有的ACCOUNT表的实例。,5.8 删除表,48,首先删除数据库中所有的ACCOUNT表的实例。,5.8 删除表,49,删除了数据库中的account之后,我们要重新建立一个新的account表。 可以将这两个任务(删除和创建表)放在一个任务中,但如果表不存在,那么第一个动作会产生错误,则第二个动作就不能执行了,或者会将产生的错误传递到下一步中。因此,最好将它们放在两个任务中。,5.8 删除表,50,5.8 创建表,51,5.8 创建表,52,5.8 创建表,53,5.9 创建工作流,54,面对一个包里的多个任务,我们需要建立工作流来指定任务的执行过程和执行条件。,5.9 创建工作流,55,删除当前数据库中的account表 创建一个新的account表 进行account表的数据转换,5.9 创建工作流,56,数据流的建立 工作流有三种,表示执行的条件: 完成时 成功时 失败时,5.9 创建工作流,57,工作流的建立,第一步:按住shift,先后单击delete 和create 任务,第二步:单击工作流,5.9 创建工作流,58,5.9 创建工作流,59,根据我们前面的分析,当第一次执行这个包的时候,account表并不存在,因此这个删除任务可能不能成功执行。但是create table一定要执行,因此,我们选择一个完成时工作流。,5.9 创建工作流,60,然后在create table 和数据转换任务之间建立成功时数据流,5.9 创建工作流,61,5.9 创建工作流,62,包的执行第一次执行,5.9 创建工作流,63,包的执行第二次执行,5.9 创建工作流,64,5.10 设置表的主键域外键,65,单击管理关系图标,设定外键,5.10 设置表的主键域外键,66,5.10 设置表的主键域外键,67,5.11 数据转换中公式的使用,如:目标表的一个字段可以是源表多个属性构成的表达式的值。 这个功能我们可以通过在转换的过程中利用ActiveXScript实现,68,数据转换的过程中可以使用公式,源表,5.11 数据转换中公式的使用,69,数据转换的过程中可以使用公式,目的表 Account_id =a+b,5.11 数据转换中公式的使用,70,数据转换的过程中可以使用公式,5.11 数据转换中公式的使用,71,5.1.7 数据转换的过程中可以使用公式,在左侧的【源】标签中同时选中a,b字段(按住Ctrl键不放) 在右侧的【目的】列表框中单击account_id字段 单击【新建w】按钮,5.11 数据转换中公式的使用,72,数据转换的过程中可以使用公式,选择转换方式,5.11 数据转换中公式的使用,73,数据转换的过程中可以使用公式,转换选项的常规选项卡,5.11 数据转换中公式的使用,74,数据转换的过程中可以使用公式,在转换选项的常规选项卡中,单击“属性”,5.11 数据转换中公式的使用,75,数据转换的过程中可以使用公式,选择语言: vb,java,5.11 数据转换中公式的使用,76,数据转换的过程中可以使用公式,5.11 数据转换中公式的使用,77,数据转换的过程中可以使用公式,* Visual Basic 转换脚本 * 将各源列复制到目的列 Function Main() DTSDestination(“account_id“) = DTSSource(“a“) + DTSSource(“b“) Main = DTSTransformStat_OK End Function,5.11 数据转换中公式的使用,78,数据转换的过程中可以使用公式,单击“分析”验证表达式是否正确,5.11 数据转换中公式的使用,79,数据转换的过程中可以使用公式,单击“分析”验证表达式是否正确,5.11 数据转换中公式的使用,80,5.12 数据转换服务小节,SQLSERVER 2000提供了数据转换服务,它是一套功能强大的数据转换工具,可以在SQL与其它的OLDB、ODBC数据源以及文字文件之间执行数据导入导出以及转换的服务。 DTS中最常用的两大工具是DTS向导与DTS设计器。 DTS向导提供了循序渐进的指引功能,依序的指示用户进行数据导入、导出以及转换的工作。 DTS设计器提供了图形客户机接口,用户可以将所需要的对象鼠标拉出来,并且在源数据与目的数据之间进行转换的任务。,81,5.1 数据转换服务小节,比起DTS向导,DDTS设计器的弹性大得多,他允许用户输入许多类型的定义。我们可以使用DTS设计出更复杂、功能更强大的转换任务。 DTS设计器可以让我们将转换过程存储成包,以方便重负使用。 当我们想同时由数个表取得数据并转换至目的数据库,这时候就非得使用DTS设计器不可。 数据转移的工作步骤:设置数据源、设置数据的目的地、设置转换方式、将数据转移任务存储为一个包、执行包实际进行数据转移。,82,5.1 数据转换服务小节,在进行数据转换之前,首先得为转移后的数据创建一个数据仓库。 激活DTS设计器的方法为:在Enterprise Manager上右击【数据转换服务】图标,在快捷菜单中选取【新建包(P)】选项。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论