ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 微软商业智能客户解决方案案例研究(转载)

微软商业智能客户解决方案案例研究(转载)

原创 Linux操作系统 作者:bq_wang 时间:2007-10-15 00:00:00 0 删除 编辑

网络服务提供商通过完整的商业智能解决方案提高运营效率

来源http://www.microsoft.com/china/SQL/2000/reporting/productinfo/casestudies/Cox.mspx


概述

客户简介
国家:美国
行业:IT (Information Technology)

总部位于乔治亚州亚特兰大市的Cox Communications是网络服务提供商中的佼佼者。该公司提供了全国性的高速宽带网络,这一网络提供以下三种主要业务:有线电视,电话和高速因特网。

解决方案
Cox 从零开始建立了使用户可以快速高效地做出决策和发布信息的解决方案。被称做NetMon的解决方案集成了实时的网络数据,修正了来自多种异构数据源的数据,并通过唯一的企业门户向最终用户提供了访问相互关联数据的能力。

获益
• 提高了发现并修正错误的能力
• 更好地维护系统
• 更高效地使用资源
• 提高报表处理进程
• 非技术人员也可以制作并管理报表

Cox Communications 建立了一个用来对它的全国网络健康性和体系架构性能进行深度预测的商业智能解决方案,。这个被称为NetMon的解决方案可以从多种异构数据源系统中以”拉”的方式获取数据,将这些数据进行聚合和修正,并将所有数据关联后通过唯一的企业门户展现出来。Microsoft SQL Server Reporting Services提高了NetMon的价值,使得报表可以由业务分析专家而不是软件开发人员进行建立和管理。NetMon帮助公司内所有级别的人员以更快的速度做出更好的决策,从而提高了发现并处理错误的能力,使得企业可以更好地对系统进行维护,更有效地使用资源,加快了报表的处理进程。
客户状况
Cox Communications是美国第四大的网络服务提供商,有将近21,000员工和六百三十万用户,每年的收益八亿美金。该公司提供的电讯服务包括数字视频系统,本地与长途电话服务,高速因特网,面向商业的音频与数据服务等。
对于Cox,发展到最大不是它的最终目标,它的目标希望能够做到行业中最好。做为电讯行业的领导者,COX在Communication Engineering and Design Magazine2002年的评选中获取了Operator of Year的荣誉,在过去十年的Cablevision Multichannel News Operator的年度荣誉奖评选中三次荣获此殊荣。这些成功的核心来自Cox NetWork Operations Center (NOC),位于乔治亚州亚特兰大的这一机构不间断地监视着全国范围的宽带情况,同时与本地资源相协调保障所有的设备都可以很正常地运行。
在2003年以前,NOC几乎没有什么有效的途径对网络的运行情况进行分析。所有来自于电话系统,有线电视,高速因特网的设备的实时更新数据被不间断地提供给NetCool,它是一个集中式的网络监控系统,该系统基于UNIX和Sybase,但是这些更新会随着事件的清除被从系统的内存数据库中清除。
一度,COX曾经试图将这些网络事件存档到与NetCool结构镜像的第二套UNIX数据库中,这些网络事件需要每天一百七十万行的数据的插入处理能力,这使得系统在运行查询的时候响应速度降低。此外,为保证所有的报表是有意义的,对网络事件收集的数据必须是关联的,比如对设备的参数配置与其导致的警告信息或者该设备的位置图示等。根据设备的类型,这些关联的数据存储在三个附加的建立在不同技术平台的系统中:
• 电话 电话设备的关联数据与事件数据一起存储在Cornerstone Voice中, 它是一个由商业智能顾问和Cox长期合作伙伴Intellinet在前些年帮助COX建立的基于Microsoft SQL Server的数据仓库。
• 有线电视 支持公司有线电视服务的设备关联数据存储在NetMentor中,该解决方案基于Solaris和Oracle
• 高速因特网 支持公司高速因特网服务的设备数据存储在Linux和MySQL构建的Edgehealth解决方案中
由于没有对所有系统历史数据的趋势的处理能力,NOC无法获取做出相关的业务决策所需的信息,如区域资源效率或者在什么地方的系统维护状况如何等。因此,他们被迫需要对已经发生的问题和行为作出反应,而只能利用有限资源对很少的情况做出预先反应,例如建立新服务的体系结构。

此外,有限的对发生问题的预感知能力导致了对资源使用效率很差。例如,当光纤的结点--底层光纤网的一个重要组件,是其它三个COX的关键服务的基础 -- 发生故障时,会在电话,有线电视和高速因特网中产生不同的警报。如果没有一个正确的途径将这些事件定位到同一个故障上,公司可能会将会派遣出不同的员工来解决同一个问题。
“我们有大量的实时信息,这是我们的一笔财富,但不能将它们及时地报告出来限制了我们运营的效率。”Tim Winebarger,COX Communicatiosn的NOC Tools group的经理如是说。

通过SQL Server Reporting Services,我可以无需开发人员的帮助建立更多的报表,我只需要指定数据源的位置,设置报表格式,然后预览它们,所有的动作都可以在同一工具中完成。我在四个小时之内就建立起了我的第一个Reporting Services的报表。

Austin Harmon
应用支持分析专家, NOC Tools Group, Cox Communications

解决方案
Intellinet, 微软金牌商业智能合作伙伴,以他能够满足公司所有需求的对企业报表体系架构的预想得到了Cox的认同,他们于2002年中期来到Cox,帮助他们进行解决方案的开发。在不到六个月的时间,这一预想变成了现实。Cox的新的商业智能解决方案使用了基于SQL Server 2000的先进的商业智能特性,向整个公司提供了对网络性能和健康程度监测的洞察力,这一解决方案也提高了对网络的管理效率。
被称为NetMon的解决方案,聚集了Cox所需的所有信息,使他们迅速地得到更好的商业决策。它会在三个不同的主要服务系统中捕获所有实时数据,将获取的数据与其它系统的数据相关联,并将组合好的来自异类数据源的数据在唯一的企业门户中展现出来。

最终用户以一种直观的基于Web的方式访问NetMon中的报表,无需关心他们生成报表的数据是混合多种数据源的。NOC group使用同样的 Web界面对报表的特性进行管理,例如,对可以访问报表的人员设置权限,决定报表重新处理与刷新的频率等。NetMon已经有三百多个常用用户,Winebarge希望在更多的报表加入到系统后会有数以千计的用户来使用。
建立解决方案
NetMon通过两个阶段进行开发,在2002年六月到十二月间,Intellinet与NOC Tools group一起工作,确定需求,将解决方案确定为四个主要组成部分:
• 预处理 这层将实时数据从NetCool中取出,并从相关的数据源和另两个系统中得到信息之间的关系。SQL Server Data Transformation Servers(数据转换服务)对这一层次的解决方案进行了扩展,不但能够从异构的数据源中获取数据而且可以寻找到数据之间的关联。DTS运行在两个四个处理器的群集服务器上,每天向数据仓库提供640兆数据的抽取,转换以及装载。
• 数据仓库 相互关联的数据被预处理层装入到数据仓库,目前数据仓库中的数据容量已经将近0.5TB,每周数据增加4.5G。
• OLAP 通过使用SQL Server中的分析服务,将信息从数据仓库中选取出来,并装入联机分析(OLAP)的多维数据集中,这些多维数据集包含了数据的聚集和对公司业务有意义的维度。用户可以通过NetMon门户提供的瘦客户端工具访问OLAP的多维数据集,按需将信息“切片或切块”做出明智的商业决策。
• 报表与展现 对所有的报表访问是通过NetMon基于Web界面的门户实现的。根据报表的类型的不同,点击NetMon门户上的不同链接可以启动OLAP的瘦客户端或者将报表直接展现在Web浏览器窗口中。
尽管该体系结构可以提供用户需要访问的信息,但是NOC Tools Group仍然面对很多挑战。一些报表需要很多的处理器资源,允许用户接照自己的意愿随意运行查询会对系统造成很多不希望的压力。另外,需要了解源系统的开发人员对报表进行开发,经常的,开发人员需要在对Web页面中编程直接写出查询。那些额外的为表现出图形化报表而需要的代码非常难以实现。报表管理是另外一个负担,对软件开发人员来讲这一工作需要对代码进行修改。

NetMon使我们可以很方便地从始至终对问题进行跟踪,而不需要进行假想和推测。它大大提高了我们确定需要预防问题的能力。


集成的报表环境
Cox使用了SQL Server Reporting Services解决了这个长期的挑战,Reporting Services向整个公司提供了坚实的环境和有力的工具以支持报表整个生命周期的所有阶段:制作,管理与发布。NetMon已经有80个并发用户,300个使用用户,30多个Reporting Services报表。Cox希望能够很快增长到2000个用户和150-200个Reporting Services报表。
“SQL Server Reporting Services使得制作,管理与将报表发布给需要信息的人十分容易,”Winebarger说。“将Reporting Services加入到NetMon中几乎没遇到任何问题,只需要花费几周的时间,但是获益是巨大的。”
设计报表 在Reporting Services环境中,报表可以使用直观的图形化的设计器进行设计,这一设计器是Microsoft Visual Studio .NET 2003开发系统中的一个集成的插件。这一工具使得没有软件开发经验的人可以使用基于表单的设计环境和简单的拖拉操作建立包括图表或者其它图形元素的报表。对于NOC Tools部门,这意味着报表现在可以由业务分析专家来建立,这就解放了本组内的开发人员,使他们可以专注于其它更需要开发的工作。

“使用SQL Server Reporting Services,我可以无需请求开发人员的帮助自己建立很多报表,”Austin Harmon,一位NOC Tools组的应用支持分析专家如是说,“我只需指出数据源,设计报表的样式,然后预览它,所有的动作都可以使用一个工具完成。我在四个小时内就完成了我的第一个可用的Reporting Services 报表。”
这个小组已经建立了大约三十个新的Reporting Services报表。以前已经存在的使用Active Server Pages(ASP)建立的报表大约有100个,小组中的设计人员每周估计可以将三到四个这样的报表转换成Reporting Services 报表。在很多时候,这个小组发现Reporting Services 提供的灵活性可以使业务分析专家将多个ASP报表集成在一个Reporting Services报表中,给最终用户提供了实时按需裁剪报表结果的很大的灵活性,他们只需使用下拉框或者其它的用户友好的机制就可以完成这一功能。


NetMon使我们可以很方便地从始至终对问题进行跟踪,而不需要进行假想和推测。它大大提高了我们确定需要预防问题的能力。

管理报表 对于Winebarger和他的小组来说,另一个使用Reporting Services很重要的获益是灵活高效的报表管理环境。与之前不同,现在管理报表,如分配权限,这一过程不需要开发人员的帮助,该小组使用基于WEB的Reporting Services管理控制台来对每个报表设定属性,例如什么样的用户才能对报表有访问权限和其它的一些根据用户不同身份而设定的个性化选项。
由于Reporting Services与COX已经存在的基于Windows NT域结构的无缝集成,管理人员无需更多的对用户定义和授权的工作。
“Reporting Services将报表建立与报表管理完全区分开来,”Winebarger说,“无需任何技术背景,我可以很容易地重命名,移动,复制或者隐藏一张报表,或者对它的描述进编辑。业务分析专家可以专注于报表内容与样式的制作而无需关心报表的使用者是谁。”
Reporting Services对报表的处理时间以及更新时机提供了灵活的控制。通过Reporting Services管理控制台,业务分析专家可以定义处理每张报表的三种选项:
• 实时 当这个选项被选择时,用户发出请求时系统会从指定的数据源中取出数据实时运行生成报表。
• 快照 这种类型的报表按照定义的时间间隔运行,结果存储在Reporting Services的数据存储中。当用户访问这个报表时,Reporting Services将存储的报表从从数据存储中取出来,并将结果传递给最终用户
• 缓存 当一个报表标记为“缓存“并且第一次运行时,系统会实时运行并将结果存储在Reporting Services的数据存储中,当报表在缓存拷贝没有过期之前被用户再次访问时(时间间隔是在Reporting Services管理控制台中管理员定义的),缓存拷贝从Reporting Services数据存储中取出数据并传递给用户。如果缓存数据已经过期,报表会重新运行后再传递给用户。新的结果集会存储在缓存中,过期时间被重置。
“报表的缓存与快照使我们可以很好地控制后台系统的工作压力,并且以前所未有灵活性很容易地发布报表。“ Winebarger说,“例如,我们想要建立一个特定的月报表,但是如果允许用户可以随意地在任何时间运行他们希望得到的数据,将会给后台的源系统带要很大的压力。使用Reporting Services,我们可以将报表定义为快照,只在每个月有新数据需要生成报表时才对它的数据进行更新。”
Reporting Services中共享源数据的特性对管理报表也非常有用。使用这一特性,多个使用同一数据源的报表在变化时只需要对数据源的位置信息进行重新编辑,这一功能大大提高了报表的管理能力,因为它将数据源的指定从开发的阶段转到的生产阶段中。
发布报表 现在,最终用户可以通过NetMon门户--WEB浏览器访问所有在COX中建立的Reporting Services报表。其中一个Web服务器将Reporting Services的报表目录发布给用户,另外两个运行着Reporting Services、建立成服务器农庄的WEB服务器完成对报表的处理工作。这一体系结构可以使Cox对体系结构的扩展没有什么困难,公司可以在报表的压力达到当前两台服务器极限时,将其它Reporting Services服务器加入到现有的服务器农庄中.
Cox也很希望能够将新的报表解决方案集成到它现有的业务系统和应用中。Reporting Services的功能接口是以一组XML的Web Services暴露出来的,这使得Cox可以以基于标准的接口从现有的业务系统和应用中访问NetMon中的数据。同样,最终用户可以将NetMon中的数据拖到他们的桌面应用,如Microsoft Office Excel中, 然后就可以方便地进行更进一步的分析。Winebarger还计划使用Reporting Services提供的基于订阅的”推”的报表发布方式,这样可以将报表以预先定义好的时间间隔主动而且自动地发送给最终用户。
获益
通过Net Mon, NOC Tools Group向所有员工提供了访问实时信息的方式,使整个公司的所有员工都可以更好地快速做出业务决策。对信息访问的改进将会帮助Cox Communications多快好省,更有效地使用资源,并将这些资源投入到那些对大量用户更有影响的事件中。
“NetMon使我们可以将真正的商业智能通过唯一的门户发送给所有类型的用户,而无需关心数据在什么地方,”Winebarger说,“当员工可以访问到正确的信息时他们就可以做出更好的业务决策,从而可以更好地提高服务水平和运营效率,Reporting Services通过使我们能够将这些信息快速而且成本低亷传递给用户。”


在我们新的应用和应用整合扩展平台中,我们一直选择带有Reporting Services的SQL Server。现在我们可以在已经充分利用数据转换服务,SQL Server关系引擎,OLAP的分析服务,数据挖掘以通知服务的商业智能环境中加入Reporting Services的稳定的,可扩展的报表体系结构。


提高了发现并修正错误的能力
Cox的技术人员可以从提高了发现问题并处理解决方案优先级的能力中获得好处。他们可以从一个高级别的报告开始确定主要问题的区域,快速地向下钻取到细节数据从而发现问题的根源。他们可以确定那些可能发生问题的设备类型,浏览在规定时间内没有解决问题的警告信息,发现特定网络设备峰值使用时间,并做出网络设备相关信息的文档(例如设备的位置与配置设置)。
更加有效地维护
使用NetMon,Cox的员工可以很容易定位在任何时间发生的问题,并且可以评估出问题对系统健康的影响程度。更为重要的是,他们还可以向后访问问题没有发生之前那一时刻的历史数据,例如访问设备切换到冗余子系统那一时刻的数据,这可以更好地预先发现报警信号并预先做出相应行为。
“NetMon使我们可以很方便地从始至终对问题进行跟踪,而不需要进行假想和推测,”Winebarger说,“它大大提高了我们确定何处需要预先处理的能力,现在不需要派多辆卡车去响应一个故障,服务部门可以只派一个带着螺丝刀技术人员就可以了。这不但提高了我们对于技术资源的使用,并且将问题在第一时间发现并定位可以大大节约我们对呼叫中心的支出。”
更为有效地利用资源
Winebarger给出一个过去的例子,NOC的员工可能要花百分之九十的时间事后对问题的状态做出反应。提高的运营效率和和预防性的维护方式可以大大节约员工的时间,从而有更多的时间投入到更多预防性的工作中,比如提高服务水平,降低支出,提高收益等。“NetMon可以帮助我们每年减少800小时的开发时间,这可以帮助我们节约大量资金,因为我们不想象过去那样把很多开发工作转包给其他公司。”

提高了报表处理能力
Reporting Services中提供的缓存与快照能力使Cox在无论在体系结构层还是最终用户层运行报表的过程中都得到了很多益处。NOC Tools Group现在可以向用户很好地提供过去那些对处理器压力很大的报表,同时,那些ASP的报表处理负载也在降低,这是因为已经将部分ASP报表转换成了Reporting Services的报表,并将缓存与快照应用到这些报表上。处理器可以为其它更需要处理器的应用更好地使用,例如加快那些需要实时处理的报表查询速度等。对于最终用户,无论是那些需要实时处理的报表还是那些使用了Reporting Services缓存与快照的报表,他们能够看到的结果是可以更快地访问所有类型的报表。
节约成本
在整个公司内对微软商业智能技术的投资,使得NOC Tools group在布署新报表时处于一个很有利的地位,他们可以将主要精力投入到用户需求,而不是获得数据以及验证数据的有效性等其它每繁杂的工作中。由于对NetMon使用的持续增长,解决方案的每一层都可以很容易地扩展或扩充来适应更多的用户,新增的数据源以及不断增长的数据量。
“在我们新的应用和应用整合扩展平台中,我们一直选择带有Reporting Services的SQL Server。现在我们可以在已经充分利用数据转换服务,SQL Server关系引擎,OLAP的分析服务,数据挖掘以通知服务的商业智能环境中加入Reporting Services的稳定的,可扩展的报表体系结构。”John Hall, Director of Operational System Support for Cox Communications说。
系统体系结构
如图一所示,NetMon的体系结构分为三层,预处理,数据仓库,OLAP,报表与展现。Intellinet选择这样的设计是为保证解决方案更好的扩展性:每一层都可以按照需要向上扩展或者向外扩展,同时每一层的扩展对解决方案其它层的影响非常小。


我们采用的64位Windwos环境给我们带来很大的性能提升空间,从而使我们不用在同一层次上扩展32位系统。我不敢相信如果没有64位的Windows2003和SQL Server 2000我们怎么能够实现这些。


预处理层r
预处理器由两个DELL PowerEdge 6650组成,运行Windows 2000 Advance Server操作系统和Microsoft SQL Server 2000企业版。每个服务器包括四个Intel 至强1.6G处理器和4GB内存。为了保证整个公司每天24小时的可用性,这两个服务器被配置成MSCS的Active-Active的集群。“NetMon十分可靠,”WineBarger说,“我想不起来有什么故障导致过它的停机”。
预处理器连续从模拟NetCool数据库结构的ORACLE数据库中抽取数据,转换数据并将这些数据与公司内两个trouble-tickets系统和三个相关的数据源中的数据相关联。从NetMentor 和Edgehealth中每天若干次以批模式抽取数据,从Cornerstorn Voice中获取的数据则按需取出。在从Netcool中获取网络事件数据然后装载到数据仓库的过程中会有一个十五分钟的窗口。

Intellinet充分利用了SQL Server 数据转换服务(DTS),实现了复杂的从若干异构源系统中抽取、转换和修正数据并持续向数据仓库装载的功能。通过使用嵌套的DTS包建立这一层上的抽取、转换、装载的功能,Intellinet可以保证任何源数据的改变只需对底层的DTS包进行改变,不会给代码带来很大影响。SQL Server的通知服务可以在任何原因导致的ETL过程失败时,如源数据系统脱机时,发送电子邮件给系统管理员。
数据仓库层
从预处理层得到的相互关联的数据被存储在数据仓库中,数据仓库存储在两台Dell PowerEdge 6450/900的机器中,运行Windows 2000 Advance Server 和SQL Server 2000企业版。每台服务器配置900M至强处理器和2G内存,并且使用了特定的network-attached storage(NAS)设备。数据仓库目前有450G数据,并且被设计为可扩展到TB级。一些表插入记录峰值时可达到135条/秒的数据,已经达到上亿条记录。

数据仓库基于星型结构,这个非通常的数据库设计用来保证装载大量数据的效率和最小化报表处理时间。Intellinet建立了相关存储过程并对关键表建立了索引视图以更好地提高报表的性能,最小化解决方案展现和报表服务器数据装载压力。
OLAP 层
NetMon的OLAP层位于Intel TIGER4服务器上,运行64-bit Windows Server 2003和SQL Server分析服务,这个服务器配置了16G的内存和四个64-bit 1.5G第三代的Intel Itanium(“Madison”)处理器,每个处理器上都有有6M的高速缓存,OLAP层中建立了14个OLAP的多维数据集,最大的一个包括290M行的数据。其中一个OLAP多维数据集中的“voice ports”维度包含超过五百万的成员,“network devices by type”包含超过一百万的成员。
选择基于安腾的服务器的64位的环境,Cox避免了32位系统中虚拟内存4GB的限制。这可以使公司可以安装并且更有效地使用更大的物理内存,物理内存是OLAP应用中处理大量数据时所需的关键系统资源。“从32位分析服务环境迁移到64位OLAP环境中,系统的性能得到了很大提高。”Winebarger说。

Hall补充说,“我们采用的64位Windows环境给我们带来很大的性能提升空间,从而使我们不用在32位系统同一层次上进行扩展。我不敢相信如果没有64位的Windows2003和SQL Server 2000我们怎么能够实现这些。”
在这个解决方案中,OLAP多维数据集在同一个服务器上建立和提供查询(第二台服务器为硬件系统失败提供备份)。多维数据集会被经常地更新,以更好地最小化NetMon得到的数据与报表数据的延迟。那些聚集,划分维度并在分析服务中使用的数据包括日常和历史的损耗信息,反应时间,网络拓朴信息等。象Reporting Services报表一样,OLAP报表可以通过主要的NetMon门户访问。
展现与报表层
展现与报表层包括三台Dell PowerEdge 6650服务器组成,运行带有IIS5.0的Windows 2000 Server(IIS是Windows 2000自带的Web服务器),SQL Server Reporting Services和Microsoft .NET Framework。每台服务器配置两个2G的至强处理器和2G内存。一个WEB服务器用来发布所有非报表的WEB页面给NetMon,包括一些对OLAP报表和Reporting Services报表的链接信息。对于分析服务的报表,使用可以与OLAP多维数据集中数据交互的TARGIT 2K3 AnalysisNET,它是TARGIT A/S提供的可定制的OLAP的瘦客户端。
以下描述展现与报表层是如何与解决方案中其它层次交互并将报表展现给最终用户,
• Reporting Services中的报表目录和所有报表的定义存储在数据仓库层(它们可以位于不同的服务器)。Reporting Services实例运行在一个门户服务器上,可以完成对用户授权, Reporting Services目录查询,展现用户有权访问等功能。
• 当用户点击了一个报表时,请求从主门户传递到两个报表服务器之一,这个请求是无状态的。Reporting Services将报表定义从报表目录中取出。报表的定义以基于XML的报表定义语言(RDL)模式存储。
• 基于报表的类型(实时,快照,或缓存),Reporting Services在数据仓库和其它后台系统中执行报表,返回快照,检查或返回所需的缓存拷贝。如果在缓存中的拷贝已经过期,报表会再次执行,新的拷贝会被缓存。缓存和快照以二进制大对象(BLOB)类型存储在Reporting Services的数据存储中,并且可以由Reporting Services渲染成HTML类型。

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

请登录后发表评论 登录
全部评论

注册时间:2007-12-07

  • 博文量
    412
  • 访问量
    1118539