数据虚拟化克服硬件和软件复杂性的能力为企业提高IT灵活性和显著节省开支提供了极好的机会。随着越来越多的企业寻求这种好处,数据虚拟化正在迅速从新的想法变成主流的应用。下面是早期应用者常犯的十个错误,希望能够作为一些客观的教训帮助企业加快实现数据虚拟化可能带来的潜在的好处。
错误1:过多地进行虚拟化
数据虚拟化与存储、服务器和应用程序虚拟化类似,提供了极好的利润收益。例如,一家能源公司使用数据虚拟化把实时的油田数据与每天晚上的综合仓储信息结合起来把每天的原油产量提高了数千桶。一家金融公司把新的应用的开发时间减少了50%。同时,另一家金融服务公司每年节省了200万美元的商务智能和报告成本。
然而,数据虚拟化不是每一个数据整合问题的解决方案。例如,当消费应用程序需要从多个角度进行分析的时候,或者当数据在消费之前需要进行重大转变的时候,物理的数据整合是更好的方法。
为了避免对任何具体开发项目过多地进行虚拟化,首先要更好地理解这个业务、数据资源和数据消费者的特点。
错误2:虚拟化不够
第一个错误的反面是虚拟化不够。按常规办事,而不是寻求最佳的方法,是每一个人都做的事情。在90年代,物理数据整合的发展出现了单独的、整合的存储和特殊的ETL(提取、转换和装载)中间件软件。到2000年之后,ETL成为了默认的数据证据整合范例。但是,它应该是唯一的方法吗?
虚拟化不足会增加大量的成本,因为物理的数据整合需要时间更长的解决方案、更昂贵的开发和操作成本和更低的业务和IT灵活性(由于包含额外的开销)。幸运的是,避免这个错误的做法是在数据整合决策过程中认真分析和定义要求,以保证最佳的解决方案满足这些要求,而不是让传统的做法推动这个决策。
错误3:错误混合的机会
在许多情况下,最佳的数据整合解决方案是把虚拟和物理的方法结合起来。没有理由锁定这一种方法或者那一种方法。图2展示了混合使用的例子,并且对这些例子进行了说明。
物理数据仓储/或者数据集市方案扩展:这是扩展现有的方案的方法,如把当前的操作数据增加到历史库中。
物理仓储、集市和/或者联合存储:这是把多种物理整合的资源联合在一起的方法,例如合并之后的2个或者3个销售数据集。
数据仓储和/或者数据集市原型产品:这种方法是推出新的仓储或者数据集市的原型产品,加快早期阶段的实施,从而进入更大规模的商务智能计划,
数据仓储和/或者数据集市源数据接入:这是向数据仓储和数据集市提供虚拟访问数据源的一个方法,如当前的ETL工具不容易提供技术支持的XML或者包装的应用程序。
消除数据集市:这是用虚拟的东西消除或者取代物理的数据集市的一种方法,如通过提供方便的和更节省成本的虚拟化选择阻止恶意的数据集市的扩散。
错误4:假定完美的数据是先决条件
糟糕的数据质量是目前企业存在的一个普遍的问题。虽然纠正和完善源数据是最终的目标,但是,我们在物理数据整合的转换和整合阶段清理仓库中数据的时候仍然会留下一些没有处理的数据。
当数据质量问题是反应各个系统中的实施细节的简单的格式冲突问题的时候,数据虚拟化解决方案能够轻松解决这些常见的数据冲突问题,不会对性能产生任何影像。一些例子包括,在一个源系统中的Part_id字段读作VARCHAR,而同样的字段在另一个源系统中读作INTEGER.或者在一个系统中的销售区与另一个系统中的销售区不匹配。如果需要执行繁重的清理工作,在运行时采用专业的数据质量解决方案通常能够满足业务需求,同时打开数据虚拟化的机会。
错误5:预计对操作系统产生负面影响
虽然操作系统通常是在虚拟化数据时使用的主数据源之一,这些系统的运行时性能一般不是受到影响的结果。因此,设计师一直在物理存储的数据量和每天晚上进行的提取、转换和装载操作的数据吞吐量。当使用虚拟化的方法时,设计人员应该考虑最终解决方案在每一次查询时实际查询的数据量和这些查询实施的频繁程度。如果这些查询相对较小(例如1万行)和查询范围比较广(涉及到多个系统或者表格),或者运行次数不是很频繁(如每天运行几百次),那么,这对操作系统的影像是比较轻的。
系统设计师和架构师预计对操作系统产生负面影像一般是低估了最新的虚拟化解决方案的速度。利用一些时间计算需要的数据负荷有助于避免对操作系统产生潜在的影像的错误判断。
错误6:没有简化问题
当企业数据环境是可以理解的非常复杂的时候,开发复杂的数据虚拟化解决方案通常是不必要的。大多数成功的数据虚拟化项目都分成较小的组件,每一个组件解决整个需求的一部分问题。这种简化可以采用两种方法:利用工具和利用合适的整合组件。
数据虚拟化工具帮助解决数据整合方面的三个基本难题:
1、数据位置:数据位于多个位置和来源。
2、数据结构:数据并不总是处于需要的格式。
3、数据完整性:数据经常需要与其它数据结合在一起才有意义。
数据虚拟化中间件软件能够解决数据位置的难题,方法是让所有的数据好像都来自同一个地方,而不是这些数据实际存储的地方。
数据提取可以简化数据的复杂性,方法是把数据结构和句法转换成为商业解决方案开发人员容易理解和商业解决方案消费的可以重复使用的视图和Web服务。
数据联合把数据结合在一起组成更有意义的商业信息,产生一个客户的单个视图或者一个库存平衡组合服务。
成功的合适尺寸的数据整合组件需要聪明地分解各种需求。最近,包括Composite Software公司在内的五家厂商的专家共同发表了一个“SOA实施者指南”,提出了三个级别的虚拟化数据服务,让设计师和架构师设计如下更小的和更容易管理的数据集成组件:
物理服务:物理服务位于数据源上面,把数据转换为更高一级服务能够轻松消费的格式。
商业服务:商业服务体现了转换逻辑的大部分功能,把数据从物理格式转换为所需要的商业格式。
应用服务:应用服务利用商业服务向消费的应用程序提供优化的数据。这样,解决方案开发人员能够按照这些简单的和重点的数据服务进行设计,从而简化当前开发工作的努力,为将来提供更大的再利用和灵活性。
错误7:把SQL/关系数据库和XML/分层数据当作隔离的竖井
从历史上看,数据整合一直把重点放在支持商业智能应用程序的需求方面,而流程整合的重点是优化商务流程。这两种不同的方法产生了不同的架构、工具、中间件软件、方法、团队等等。然而,由于今天的数据虚拟化中间件软件通常适合关系和分层数据,把这些关键的数据格式隔离开来是错误的。这在需要SQL和XML组合的时候是非常重要的,例如,当把外部工资单处理器的数据与内部销售队伍自动化系统的关系数据结合在一起在一个销售代表的效绩门户的单个窗口中提供XML数据的时候。
无论你的数据类型是什么,统一的方法不仅能够提供更好的解决方案,而且,开发人员和设计师还能够获得其传统的核心技术领域以外的经验。
错误8:使用错误的基础设施实施数据虚拟化
在SOA(面向服务的架构)环境中的数据服务的松散耦合是数据虚拟化的极好应用。因此,SOA是数据虚拟化最频繁使用的案例之一。然而,有时候对于什么时候部署企业服务总线中间件软件和什么时候使用信息服务器设计和运行需要的数据服务还存在一些混淆的认识。
企业服务总线善于协调各种交易和数据服务。然而,企业服务总线不支持繁重任务的数据功能,如高性能查询、复杂的联合、XML/SQL转换等目前企业应用软件使用实例中需要的功能。另一方面。数据虚拟化工具提供一种使用方便的、高效率的数据服务开发环境和高性能、高可靠性运行时信息服务器以满足设计和运行时需求。然后,企业服务总线能够根据需求协调这些服务。
错误9:把数据虚拟化人员与流程隔离开
随着物理数据整合技术和方法的成熟,以集成能力中心(ICC)以及最佳做法和流程等方式存在的技术支持机构已经增加了支持。这些中心提高开发人员的效率,优化工具使用,减少项目风险以及做其它一些事情。
认为不能或者不应该利用这些ICC支持数据虚拟化是错误的。通过采用数据虚拟化,ICC在人员和流程资源的配合下能够把数据虚拟化的技术价值组合起来。
错误10:不能发展和共享好处
虽然数据虚拟化能够加快新的开发,执行更快的迭代转变,减少开发和运营成本,但是,以为这些好处能够自己推销自己是错误的,特别是在新技术投资需要严格审查的艰难的商业时期。
幸运的是这些好处能够(和应该)衡量和共享的。下面是完成这个任务的一些想法:
首先使用以前介绍的虚拟的和物理的集成工具找出一些数据虚拟化候选项目作为一个试验项目。
在这些项目处在设计和开发阶段的时候,跟踪它使用数据虚拟化的时间,并且与它使用传统的物理方法所有的时间进行对比。
使用这种节省时间的情况计算两个额外的价值点:解决方案减少的时间和节省的开发成本。
要衡量生命周期的价值,预测由于虚拟化额外的物理数据存储节省的运营成本。
为更快的从故障修复中恢复正常和增强的开发活动中预计节省的开发生命周期成本增加这些硬件操作成本。
最后,把这些试验项目的结果综合在一起推断未来的项目结果,并且把这种推断通报给业务和IT部门的领导人。
行业分析师一致认为,最佳做法的领导人从包含虚拟和物理数据整合工具的产品组合中吸取经验以满足当前企业不断变化的信息需求。广泛的行业和政府机构的多个应用实例说明了数据虚拟化的益处。这些益处包括减少解决方案推出的时间、减少实施和维护的整个成本、以及适应变化的更大的灵活性。通过熟悉需要避免的常见错误,企业将获得在数据整合基础设施中成功地实施数据虚拟化所需要的智慧,从而收获数据虚拟化带来的好处。