【IT168技术案例】作为世界第二大集装箱船线,地中海航运公司(MSC)非常依赖它的5TB的数据库来跟踪每年超过150亿次的交易。由于每年30%的业务增长及来自世界各地客户的处于永远增长的数据请求,MSC需要一个企业解决方案支持可伸缩的增长和简化数据库管理。公司把运行于Microsoft Windows Server™2003企业版之上的 数据库更新到Microsoft® SQL Server™ 2005,而该操作系统运行于Unisys ES7000平台之上。MSC发现从SQL Server 2000升级到SQL Server 2005后,大大增长了它快速响应客户需求的能力,使得数据库管理变的简单,提供更快的查询响应,并且通过结合Microsoft Visual Studio® 2005,赋予了它更好的开发平台。
项目背景
地中海航运公司是世界上第二大集装箱航运线公司,在200多个国家有办公室或代理处,在世界范围内有40000个雇员。公司在250个港口拥有270支船,每年要运送超过7百万只集装箱。
公司的客户单读起来好像是一个Fortune 100公司的国际商业的指南。
以瑞士日内瓦为基础,地中海航运公司有3个主要的数据中心,在日内瓦,新加坡和位于美国新泽西的Warren。MSC管理超过了5TB的数据。
很多年前,公司把IBM DB2数据库更改为Microsoft® SQL Server™ version 4.2.1,并且开发了自己内部的程序,MSCLink,跟踪它航运业务所有的方面。多年来公司不断稳定地升级它的SQL Server数据库,已达到稳定并使用运行于Microsoft Windows Server™ 2003操作系统之上的SQL Server 2000。(Windows Server 2003和SQL Server是Microsoft Windows Server System™整合服务器软件的一部分。)现在SQL Server存储了公司90%以上的数据。
公司对信息技术永远有着需求并保持了它的快速增长,和顾客的增长需求一样,他们需要端到端的航运货物跟踪。
“对于地中海航运公司,和其它的货运公司,全球航运的需求总是压力巨大的,” 地中海航运公司软件开发部高级副总裁Bob Erickson说,“就单在美国,我们每天运送1200个内陆集装箱。即使我们的商业是以海运为基础的,我们提供门对门的服务以此来满足客户的需要。展望将来大量的集装箱运送的增长和客户提出的更苛求的数据要求,我们知道我们的信息系统应该可扩展,以保持我们的竞争力。”
系统的可伸缩性对于MSC来说非常重要,因为它在最近几年享受着每年30%的增长并且期望在未来持续增长。“通过每年30%的增长,我们最大的挑战就是确保我们可以持续给我们的客户提供服务,以此来超越我们的竞争者,” 地中海航运公司首席技术官Fabio Catassi说。“我们已经成功的做到了,需要保持并建立这种传统。”
MSC执行层渴望升级到SQL Server 2005,Microsoft的下一代数据管理和分析平台,来满足MSC对于数据库解决方案所提出的要求:
在行业内支持快速改变的能力
数据管理简单
企业级可伸缩性,支持公司的快速增长。
一个有效的开发平台。
解决方案
在2005年,地中海航运公司升级了它的数据库到SQL Server 2005来支持MSCLink应用,公司与它的合作者Interlink协同工作,为了公司的集中应用开发了一个新的基于Web的portal--MSCLink.com,它同样使用SQL Server 2005为数据库平台。MSCLink和MSCLink.com以多层架构为基础,包括:
Web Portal层。MSCLink.com提供了一个基于浏览器的MSC程序并连接到了SQL Server 2005数据库,以便外部的客户可以基于互联网跟踪货运情况,它代替了传真机或是电话。MSCLink.com使用Microsoft Visual Studio® 2005开发系统和Microsoft ASP.NET程序架构创建,它们是Microsoft .NET架构版本2.0的一部分。
客户端层。客户端软件使用Microsoft Visual C++®开发工具开发并且更新到Microsoft Visual Studio 2005。客户端软件使用了Microsoft Message Queuing,在Microsoft Windows Server 2003操作系统中的一种技术,该技术支持异步消息队列。Message Queuing和应用层通讯。例如,当客户层接收到一个预约请求时,它传递这个请求给应用层执行,并返回结果。客户端软件被部署在全球5大洲的70多个城市里。
应用层。应用层由Visual Studio C++和SQL Server 2005存储过程写成,是一系列的模块,包括:预约,签约,设备控制和运输管理,进口操作,帐单,电子数据交换,报表,通过MSCLink.com的电子商务,还有审计。MSCLink应用包括约7000行的SQL Server存储过程代码。来自Microsoft Microsoft .NET 架构的Microsoft ADO.NET应用程序架构提供了数据库的连接性。应用层使用Microsoft网络分布式处理调制器(MSDTC)。为了负载平衡,应用层分布于在新泽西的Warren的4台主机上。另外有中间层服务器被用在其它的MSC全球运营上。
数据层。MSC有大约5TB的信息存储在多个SQL Server 实例中。最大的是一个在Warren数据中心的单8TB的实例。数据层有1934张表和4959个存储过程。系统每天支持超过5000万个数据库交易。数据层被运行在18台Unisys ES7000/520服务器上,每台都有8个Intel Xeon处理器和8GB的RAM。这些服务器被配置成两节点的主动/被动集群。SQL Server 2005每年要处理超过150亿次的交易。在三个全球数据中心,在ES7000服务器集群中进行同步核心数据拷贝。
借助微软Message Queuing技术, MSC同步了3个主要的数据中心数据库,可以让运行在不同时间的程序通过异类的网络和系统进行通信,提供可靠的消息传输,有效的路由,和基于优先级通知。
n 报表层。MSC管理层计划部署SQL Server 2005报表服务来处理报表。
n 分析层。MSC IT人员建造了一个数据仓库,在2005年年底进行部署。在MSC 解决方案中,SQL Server 2005分析服务支持多维报表。
获益分析
升级到SQL Server 2005给地中海航运公司带来了大量的好处,包括灵敏快速的响应客户的需求,简单的数据库管理,企业级性能,和一个整合的开发平台。
灵敏快速响应客户的需求
当MSC公司构建在享有满足客户需求的盛誉的SQL Server 2005之上时,MSC管理获得了SQL Server 2005提供的敏捷能力。“MSC是一个全球公司,并且越来越多的我们的客户也成为全球性的,”Catassi说。“有了SQL Server 2005的支持下的MSCLink和MSCLink .com,我们的客户有了一个单一的访问点,不管客户是在地球上的哪个地理位置进行操作,他总能和我们取得联系,和我们做生意,从我们的统一的全球服务中获益。SQL Server 2005赋予了我们更大的灵活性来响应他们的任何请求。我们还没有遇到象客户要求运送而我们却无法满足的情况。”
MSC从SQL Server 2005获得的敏捷能力是非常重要的,因为全球航运商业中的变化非常快。敏捷能力,作为公司文化的一部分,由SQL Server 2005和Microsoft Visual Studio 2005得以部分实现,它们被MSC用来作为公司的程序开发环境。
“我们面临的最大的挑战是在全球变化的航运业中的所有的商业需求中。”Erickson说。“我们经常得到新的请求,不得不快速的执行。我们尝试着快速反应,让我们的客户和我们的员工越来越有效。我们在全世界协同工作以提出解决方案。我们的态度是我们可以应付发生的事情并且我们可以快速的完成我们的工作。”
Erickson列举了一个敏捷的例子,公司使用SQL Server和Visual Studio,可以适应快速变化的需要。“几年前,美国本土安全部门改变了进口货进入美国的规则。”Erickson回忆到。“新的规则影响到了世界范围内的航运,我们只用了几个月就顺应了它。我们能够完成这些是因为在我们的公司里有那些伟大的员工,也因为我们能够通过SQL Server和微软开发工具这些IT架构中获得灵活性。”
MSC在全公司范围内使用微软操作系统和产品,从而赢得了IT敏捷力。“我们多年来是一家微软商店,”Catassi说。“基本上,我们打赌微软可以提供给我们一个如此完整的整合产品组来帮助我们满足我们商业上的需要。除了SQL Server,和微软的开发工具,我们使用微软Exchange Server【消息和写作服务器】来支持e-mail,我们的桌面计算机运行于Microsoft Windows® XP上的微软Office【专业企业版本2003】。整个公司运行在微软解决方案上。我们相信将来无论何时如果有个紧急的需求要求改变,我们能够更容易的做出响应。”