使用 Microsoft SQL Server 和 Windows Datacenter Server 实现分布式数据仓库.docx

上传人:b****6 文档编号:6714931 上传时间:2023-01-09 格式:DOCX 页数:24 大小:76.22KB
下载 相关 举报
使用 Microsoft SQL Server 和 Windows Datacenter Server 实现分布式数据仓库.docx_第1页
第1页 / 共24页
使用 Microsoft SQL Server 和 Windows Datacenter Server 实现分布式数据仓库.docx_第2页
第2页 / 共24页
使用 Microsoft SQL Server 和 Windows Datacenter Server 实现分布式数据仓库.docx_第3页
第3页 / 共24页
使用 Microsoft SQL Server 和 Windows Datacenter Server 实现分布式数据仓库.docx_第4页
第4页 / 共24页
使用 Microsoft SQL Server 和 Windows Datacenter Server 实现分布式数据仓库.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

使用 Microsoft SQL Server 和 Windows Datacenter Server 实现分布式数据仓库.docx

《使用 Microsoft SQL Server 和 Windows Datacenter Server 实现分布式数据仓库.docx》由会员分享,可在线阅读,更多相关《使用 Microsoft SQL Server 和 Windows Datacenter Server 实现分布式数据仓库.docx(24页珍藏版)》请在冰豆网上搜索。

使用 Microsoft SQL Server 和 Windows Datacenter Server 实现分布式数据仓库.docx

使用MicrosoftSQLServer和WindowsDatacenterServer实现分布式数据仓库

使用MicrosoftSQLServer2000和Windows2000DatacenterServer实现分布式数据仓库

Microsoft的战略客户关系管理

白皮书

摘要

小企业所有者通常知道他们所有客户的名称,尤其是顶级客户的名称。

例如,小企业所有者可以很容易查看单个客户名称、付款地址以及这些客户的购买情况。

小企业所有者通常与客户保持着密切的联系,以便随时了解客户对其业务的满意程度,并努力培养与顶级客户的关系,以确保他们一直是自己的顶级客户。

相比之下,大型企业的所有者要想与客户保持这种灵活的接触就困难得多。

这是因为,大型组织需要处理更多的复杂情况,它们不仅有更多的客户,而且有更多的雇员、产品、服务,最重要的是,还需要处理更多各种各样的文书工作和信息。

这意味着,大型企业的所有者需要详细审阅更多的数据,才能确定有哪些最佳客户、哪些产品和服务客户更愿意同时购买,才能根据各个客户的购买习惯确定客户的总体需要。

仅在美国,Microsoft就拥有超过一亿个客户,1“客户”是指从Microsoft分销商或零售商那里已经购买至少一个Microsoft产品的最终用户、注册为事件参加者的最终用户或订阅联机新闻快递的最终用户。

Microsoft的渠道关系要求公司通过各种独立的来源获得每个最终用户的名称和地址。

Microsoft依靠一组十分先进的工具和技术,也就是基于分布式数据仓库的高效Microsoft®SQLServer™2000,来有效地管理与客户的关系。

该系统每天能够加载2百万个以上的客户记录,但它只使用八台运行MicrosoftWindows®2000DatacenterServer网络操作系统和MicrosoftSQLServer2000的计算机、两台运行MicrosoftWindows2000AdvancedServer网络操作系统的计算机、550个硬盘驱动器、32个磁盘控制器和大约1TB与客户有关的数据。

同时,该数据仓库还包括1亿5千万条SQL事务记录,这些记录支持交叉表报表和图表化功能,便于管理者查看单个客户的综合情况并了解他们对Microsoft产品和Microsoft赞助的事件和新闻快递的兴趣。

对于Microsoft或其他任何大型组织来说,设计和部署分布式数据仓库环境以支持大型的全球客户关系管理(CRM)和决策支持系统(DSS)并不是件小事。

没有一个符合实际的范例,要想计划、部署和扩展一个有效的系统将十分困难。

本文档说明了Microsoft所面临的许多问题和挑战,以及它在扩展和部署其分布式数据仓库以支持CRM和DSS功能(这些功能以前需要有第三方的大型机环境的协助)时所采用的方法。

通过充分解释由Microsoft设计和支持小组完成的许多设计、开发和部署决策,本文档可以视作为Microsoft建立高度有效的分布式数据仓库所使用的方法范例。

业务要求

Microsoft信息技术小组(ITG)确定了三项业务要求,推动数据仓库的设计和部署支持CRM和DSS功能。

这些业务要求是:

提高客户满意度、规模经济以及更加标准化和集成化的环境。

客户满意度

提高客户满意度的中心是Microsoft在1999年开始实施的全球CRM和DSS环境。

这些环境是分布式数据仓库的中心部分,Microsoft希望通过完整地使用这些环境,能够比以往更好地确定个人和组织正在使用哪些产品和服务。

该分布式数据仓库的一项关键功能是帮助Microsoft全面了解每个客户的情况。

因此,Microsoft正在设法统一各种来自内部和外部信息源的客户信息。

在数据仓库中,客户和Microsoft之间的每个“接触”都将记录在中心储存库中。

这意味着,当客户购买产品然后注册该产品时(无论使用平寄邮件或电子邮件,还是通过订阅新闻快递或参加某项事件),都会产生一些交互操作的记录,从而为Microsoft提供了该客户的个人化综合信息。

随着时间的推移,我们相信更有效率的CRM解决方案将帮助决策者更好了解客户关系,开发出更好的产品和服务,由此提高长期的客户满意度和忠诚度。

规模经济

Microsoft是一家高度分散的企业,属下的60多个分支机构都有销售办事处。

多年来,每个分支机构都投资建设独立的客户数据库解决方案,以满足其特定的需要。

这些投资来源于每个分支机构的预算。

例如,位于英国的分支机构每年为此花费了大约一百五十万美元。

其他大型分支机构也需要做相同的投资,而少数几个较小的分支机构则不得不完全放弃对与客户相关的活动和事件有利的投资。

这意味着,较小的分支机构通常无法用大分支机构的大手笔投资方式来培育与客户的关系。

分支机构还可能建立多个数据库以满足每个客户群的需求,或者建立不同的数据库以提供产品技术支持电话、产品注册、传出电话、营销等功能。

每个独立的解决方案都需要对数据获取、数据处理、支持以及客户数据查询工具进行投资。

由于单个投资通常只能使一个分支机构受益,所以传统的方法难于产生规模经济。

因此,Microsoft设计和部署能够支持全球CRM和DSS的分布式数据仓库,其目的另一个方面是要努力利用规模经济,即仅用一个集中管理的解决方案来使所有分支机构的决策者都受益。

标准化

标准也是Microsoft设计和部署使用集中管理的分布式数据仓库的全球统一CRM和DSS环境行动的中心。

过去,在如何实现CRM方面,即使存在一些标准,各个分支机构所使用的不同实施方案却很少使用这些标准。

例如,某些分支机构开发了自定义代码的应用程序来支持销售、市场和客户支持小组。

而其他分支机构则使用第三方应用程序,或者外包整个客户关系职能部门。

为了解决这个问题,Microsoft启动了一项内部计划,开发出标准化的和可伸缩的CRM和DSS实现方法,使所有分支机构的决策者都能够从中受益。

该过程的第一步是统一位于美国的各个独立系统的信息,并设计和部署作为本文主题的分布式数据仓库。

概述

由于Microsoft的客户数量庞大,仓库设计人员在规划解决方案时的首要决策之一是将客户信息分布在多个服务器上,其动机是获得强大功能。

分布式设计允许多个服务器同时处理单独的任务(任务作为一个或多个SQL存储过程)。

它还使扩展更容易,因为它支持识别那些可以划分成多个子任务的任务,而这些子任务又可以同时运行在多个服务器上。

在编程级别上,这涉及到将SQL存储过程划分成两个或更多个新的存储过程,然后将这些存储过程加载在运行SQLServer2000EnterpriseEdition的独立计算机上。

即使数据仓库已经作为分布式系统实施,每个服务器仍然能够与其他使用MicrosoftClusterService(包括在Windows2000DatacenterServer中)和存储区网络的服务器共享部分数据。

每个群集服务器都执行专门的数据处理,然后通过把数据库放在某个群集磁盘资源中,来共享该处理的结果。

随后,当另一个服务器请求共享的磁盘资源并重新加载共享的数据库时,系统将用更专门化的数据处理来继续执行后续的处理过程。

最后,决策者就能通过基于Web的活动管理及DSS工具来查看数据。

使用这些工具,决策者就能根据特定配置文件查看客户列表,并根据实际选择的任一配置文件来生成活动和事件。

到2001年3月,该数据仓库包含了大约1亿个Microsoft美国客户的信息,并且计划未来包括其他国家或地区的客户信息。

不管美国客户的信息是从什么地方收集到的,这些信息都会安全存储在位于华盛顿州Redmond的Microsoft总部的服务器中。

这些系统每天24小时每周7天受到严格的安全措施保护。

数据仓库基于如下Microsoft产品:

∙Windows2000DatacenterServer,包括MicrosoftClusterService2(要查看合格OEM的列表,请访问的数据仓库设计人员和产品开发组正在评估在使用超过四个节点的配置下的Windows2000DatacenterServer。

本文档通过图例说明了正在评估的七节点群集的使用情况。

∙Windows2000AdvancedServer,包括InternetInformationService

∙MicrosoftSQLServer2000EnterpriseEdition

数据仓库中的数据来自各种内部和外部渠道,包括Web站点和Dun&Bradstreet。

利用每天能够添加2百万条记录的容量,该数据仓库几乎始终都在加载那些注册新产品、订阅新闻快递或参与公司事件的新老客户的信息。

因为数据仓库采用集中管理方式,所以它只需要相对少的维护资源。

数据仓库的设计、部署以及目前的维护只需要23个人参加,在运行大约一年之后,它已经证明具有几个明显的优点。

例如,数据仓库正在帮助提供更全面的美国客户的情况;以前,为了实施新功能和报表功能,以及为了制定培养与公司顶级客户的关系计划,需要做大量的外包安排工作,而现在这方面所花的时间正在减少。

图1概述了Microsoft内部所使用的分布式设计,以及服务器及其功能。

图1Microsoft技术支持CRM和DSS数据仓库设计的各种组合情况

内部数据仓库的使用者由两组主要决策者组成:

确定市场趋势者和数据挖掘者。

第一组观察各个市场段,并使用相当基本的报表进行交叉表报告和历史分析,例如,参加事件或订阅新闻快递之后购买了产品的人数。

第二组则挖掘横向销售和纵向销售的机会,以便规划未来的活动和事件。

设计

由于分布式数据仓库的逻辑及物理结构对其分布式性质和可伸缩性起关键作用,因此下面将详细介绍Microsoft如何把数据仓库划分成逻辑层和物理层,并设计通过数据仓库的数据流。

在这方面所做的工作是为了从各个分散的渠道获得客户名称和地址,这与利用现有客户的识别号相反。

(要详细了解实施逻辑结构时所面临的问题,请参见“实施”一节。

逻辑结构

在分布式数据仓库的逻辑结构设计过程中,工程师考虑了为符合业务要求而必须在系统中执行的主要事件,以及这些事件的执行顺序。

事件

工程师将六个数据仓库事件定义为主要事件:

数据映射、标准化和匹配、操作数据存储、决策支持、活动管理和数据抑制。

数据映射。

客户信息来自许多数据源,包括产品注册卡、事件注册卡、电子调查和订阅电子新闻快递。

每个数据源既可以获得所有数据源共有的信息(例如“客户名称”),也可以获得给定数据源唯有的信息(例如“订阅起始日期”)。

数据映射将数据字段在表中的位置标准化,以便(例如)客户的名称不会因为疏忽而存储到客户的地址字段。

数据映射还对各种数据源提供的数据字段进行安排,以便每个输入文件都使用相同的数据字段格式。

标准化和匹配。

与任何数据仓库一样,MicrosoftCRM和DSS数据仓库包括一些规定,以避免出现不必要的重复和冗余。

例如,当客户更改地址、电话号码或职业信息时,数据仓库必须反映这些更改,而不能因疏忽去更新错误的记录(例如,更改另一个同名客户的记录),或者创建重复记录(例如,用原地址列出了一个客户,然后再用新地址列出该客户)。

通过对每个更新记录以及所有新的客户记录使用标准化和匹配方法,数据仓库将确保建立一个完备和准确的单个客户信息记录。

操作数据存储。

为了在准备永久存储时使数据均质化,数据仓库使用了基于星形构架格式的操作数据存储库(ODS)来获得灵活和永久的存储环境。

从该环境中,DSS和活动管理的“工厂处理”获得它们的数据。

工厂处理。

在分布式数据仓库中,工厂处理涉及对ODS中的数据进行转换,以便适合进行报告、分析和活动管理等的活动。

工厂处理的方法是,从ODS取得数据,并通过应用业务规则进行提炼,对其进行非规范化、聚合和分区处理,从而确保它有适合在数据集市中使用的格式。

按照数据仓库的设计,在ODS和数据集市中,“单个客户”是最低一级的聚合。

决策支持。

决策者必须能够统计正在注册产品、参与事件、加入新闻快递等的单个客户的数目。

他们还必须能够观察给定市场段以确定纵向销售和横向销售的机会。

出于这些原因,MicrosoftCRM和DSS数据仓库包括了灵活的DSS环境。

活动管理。

决策者还必须能够邀请选中的客户参加公司赞助的事件,并使用批量电子邮件、平寄邮件或客户电话联系他们。

出于该原因,数据仓库包括活动管理功能。

数据抑制。

虽然Microsoft能够定期地以任何最实用的方式来联系数据仓库中的大多数客户是非常重要的,但某些客户却不喜欢与其联系,或者只愿意通过某些方式进行联系(例如,电子邮件而不是电话,或者平寄邮件而不是传真)。

通过数据抑制,MicrosoftCRM和DSS数据仓库可以在判断要联系哪些客户以及何时以何种方式联系他们时考虑这些客户的要求。

数据抑制是Microsoft在数据仓库中实施安全和隐私首选项的一个组件。

该仓库不仅可以指示单个客户的首选联系和非联系信息,而且还能限制对敏感数据的访问,以便分析人员可以查看计算结果,而不用实际查看名称和地址。

事件顺序

定义数据仓库中的主要事件之后,设计工程师确定了这些事件发生的顺序。

如图2所示,事件被按照数据负载、工厂处理和数据集市的生成进行分组。

图2MicrosoftCRM和DSS数据仓库的逻辑结构

下面是数据流的简短摘要:

∙数据安全地存储在ODS中,

∙数据移动到工厂服务器,在这里使用SQL存储过程生成聚合和加速表,并且

∙转换后的数据被移动到决策支持或活动管理的数据集市,其中使用相关的星形构架格式将数据存储起来。

利用该过程,通过应用业务逻辑和规则,使数据保持在系统中的移动,其中间结果可以供需要该数据来进行额外处理的各种服务器使用。

该方法允许数据仓库中的每个服务器有一个专门的角色,并确保所有服务器保持忙碌状态。

物理结构

在MicrosoftCRM和DSS数据仓库的物理结构的设计过程中,工程师考虑了逻辑结构、输入数据的数量、业务规则的复杂性以及高速计算机的可用性等因素。

要最有效地利用硬件,并能够通过添加服务器进行扩展,工程师使用了分布式计算环境在建立逻辑结构之后对物理结构进行建模。

遵循在90年代初期流行起来的“适时”方法,该设计使组织(例如Microsoft)能够仅在需要进一步处理时才应用财力资源。

这种方法的另一个优点是,它使组织能够确实是在需要更多的计算能力时,才利用最先进和最强大的计算设备。

图3说明Microsoft按照适时方法扩展数据仓库的方式。

图3使用“适时”方法扩展分布式数据仓库

物理结构还指定了需要多少服务器、每个服务器上需要运行什么产品以及如何处理联网和存储问题。

对于MicrosoftCRM和DSS数据仓库,该结构指定了八台在Windows2000DatacenterServer网络操作系统下运行SQLServer2000EnterpriseEdition的服务器,和两台运行Windows2000AdvancedServer网络操作系统用于中间层报表功能的服务器。

系统要求SQLServer2000EnterpriseEdition使用超过3GB的内存。

图4说明了该部署情况,表1则详细说明了所使用的各种硬件配置。

图4分布式数据仓库的物理结构

表1MicrosoftCRM和DSS分布式数据仓库中所使用的硬件配置

主要服务器角色

处理器数

处理器速度

内存

SQLServer数据库大小

标准化和匹配

4

500MHz

4GB

8GB

ODS

8

550MHz

4GB

900GB

活动管理工厂

8

550MHz

4GB

1100GB

活动管理数据集市

8

550MHz

4GB

650GB

活动管理数据集市

8

550MHz

4GB

650GB

决策支持中间层

4

500MHz

4GB

8GB

决策支持工厂

8

550MHz

4GB

600GB

活动管理中间层

4

500MHz

4GB

决策支持数据集市

8

550MHz

4GB

300GB

决策支持数据集市

8

550MHz

4GB

300GB

目前,数据仓库使用了超过550个磁盘和32个磁盘控制器,组成总计17.3TB未格式化的物理存储区。

七台服务器正在使用MicrosoftClusterService(包括在Windows2000DatacenterServer中)和存储区网络(SAN)来共享接近1TB的基于SQLServer2000的数据,并使其可供其他运行SQLServer2000的服务器全局使用。

图5说明了SAN的逻辑体系结构,它使用逻辑单位数字(LUN)掩码功能。

使用MicrosoftClusterService来管理共享的逻辑驱动器。

图5逻辑SAN结构

数据流

为了与其他服务器共享专门化处理的中间结果,数据仓库利用了MicrosoftClusterService、SAN和SQLServer2000备份。

SQLServer2000备份用来把数据库放在群集化的驱动器资源上,然后使用MicrosoftClusterService根据对驱动器资源的请求并应用“故障转移”将该驱动器资源转移到另一台服务器。

这时,其他服务器可以通过执行更专门化的SQL代码,立即重新加载数据库并继续执行其他专门处理。

分布式数据仓库中的服务器通过线缆连接到光纤通道控制的磁盘卷。

它们还通过线缆连接到异步传输模式(ATM)网络。

最初,生产支持人员通过在网络上复制数据实现在服务器之间共享数据。

当仓库只包含几百万条客户记录时,该方法很有效,但是对于更大的数据集合,则不能很好地扩展使用该方法,因为复制操作需要花费数天的时间才能完成。

现在,使用SAN、SQLServer2000备份和MicrosoftClusterService故障转移,等量数据的加载操作可以在数分钟内完成。

注意,尽管通常部署MicrosoftClusterService是为了提高容错性和可用性,但在分布式数据仓库中这不是它的使用目的。

实际上,使用它只是为了在群集节点之间共享基于SQL的数据。

数据将连续加载到ODS中。

每周,操作小组都要停止加载过程,并使用SQLServer备份工具将ODS备份到SAN。

一旦备份完成,小组将使用MicrosoftClusterAdministrator应用故障转移,从包含备份的驱动器转移到决策支持工厂服务器,并在这里立即重新加载数据。

决策支持工厂使用SQL通过应用业务规则和数据转换继续处理该数据。

该过程运行大约需要超过四天的时间。

然后,工厂服务器将在启动SQLServer备份,把ODS派生的数据库备份到共享驱动器资源时,然后开始运行它当前的工厂处理。

备份完成后,将使用MicrosoftClusterService应用故障转移,从共享驱动器资源转移到活动管理工厂服务器。

一旦发生该操作,活动管理工厂服务器将使用SQLServer2000还原数据库并开始处理数据,以支持活动管理。

该处理过程将与决策支持工厂所执行的处理过程同时进行。

活动管理工厂运行SQL存储过程大约需要12天的时间,同时对ODS派生的数据库应用业务规则和数据转换。

决策支持工厂执行完SQL代码之后,该工厂将使用SQLServer备份工具和共享驱动器资源,将它的数据库传输到两个不同的决策支持服务器。

然后,每个决策支持服务器将还原包含在共享驱动器资源中的数据库,这将使数据集市可用于活动管理和报告目的。

图6说明了该数据流。

图6MicrosoftCRM和DSS分布式数据仓库的物理结构和数据流

 

集成

分布式数据仓库集成了30多种不同的、来自公司内部和外部的数据馈送。

这些数据馈送代表了美国客户与Microsoft建立联系的许多种不同方法,包括产品注册、新闻快递订阅、事件注册和更改地址。

数据仓库将来自每个数据源的信息与单个客户和帐户以及单个名称和地址一一对应。

数据仓库还与内部业务系统(例如MSSales和WorldWideEvents系统)进行集成。

MSSales是包含分销商、零售商和客户销售相关信息的数据仓库。

通过从MSSales获得数据,分布式数据仓库可以提供有关公司赞助的活动如何影响购买决策的相关信息。

集成MSSales目的是为了帮助决策者确定参加事件和订阅新闻快递是如何影响客户做出第二次或第三次购买决定的。

通过从WorldWideEvents系统获取数据馈送,数据仓库得以维护有关客户注册到公司赞助事件的最新信息。

实施

实施数据仓库涉及到设计逻辑和物理结构、部署SAN、安装SQLServer2000和Windows2000DatacenterServer,以及配置MicrosoftClusterService和第三方提供的软件。

目前,设计人员正在分阶段实施分布式数据仓库。

他们在1999年11月和2000年8月分别完成了第1阶段和第2阶段的工作。

编写本文时正在实施第3阶段。

第1阶段包括部署仓库的物理和逻辑基础结构,并开发决策支持的用户界面。

在该阶段,设计小组将数据源限制为仅三或四个,以便限制数据仓库需要处理的数据量。

也是在第1阶段中,决策者开始看到数据仓库可能获得的信息种类,并开始在进入下一个实现阶段之前提供反馈。

现在,大约30个分支机构是在第1阶段中所实现的功能的定期用户。

在第2阶段中,通过从大约30多个数据源添加数据,工程师显著扩展了数据仓库的规模。

他们还实现了更健壮的数据处理和验证环境、Trillium匹配环境和支持管理活动的数据工厂。

编写本文时,CRM数据集市中的数据被限制为居住在美国的客户。

DSS数据集市包含美国客户的数据以及部分全球数据。

工程师使用美国客户作为数据仓库的初始数据集合,因为它是所有Microsoft客户数据集合中最大的。

同样,小组考虑到在开始合并其他地区的数据集合(这是现在正在进行的第3阶段的一部分)之前,它是进行压力测试的有效基础。

实施数据仓库还涉及到用SQL编写自定义的业务规则和算法,这是其中一个需要持续和专门的工作以使分布式仓库获得成功的实施领域。

因此,本讨论将帮助读者了解有关实施领域,它们需要数据仓库设计小组使用SQL但不包括实际源代码。

(注意,该讨论假设读者已经熟悉数据仓库术语、

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 高考

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

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