2008-04-17 15:47:40 来源:CSDN
SOA的一个很大的价值就是整合多个系统比如,人力资源管理,OA、固定资产、采购管理等等。其中一个很重要的需求就是这些系统都建立在统一的一套组织架构管理之下,而不是人力资源管理,OA、固定资产、采购管理等等这些系统的组织结构互相独立,不同的系统采用不同的用户名和密码。虽然大家可以用SSO或者单点登陆来实现统一登陆的问题,但是单点登陆是用来整合历史遗留系统的,而不是鼓励大家每套系统都采用自己的组织架构和权限控制。
咱们先说一个场景:比如现在用户迫切要求统一所有的组织管理,即任何系统都必须建立在一个组织结构下,而用户的各个系统又分布在地理位置不同的数据库里。SOA的一个很大的卖点就是提供整合这些异构系统之间的架构,
所以大家肯定会想到采用SOA的架构去实现,首先人力资源管理采用SOA的架构,抛出一些Service,比如得到所有的员工、部门等组织结构树,由一个员工ID,得到员工的所有信息。这个架构是没有问题的,却可能给别的系统带来严重的性能问题。比如:固定资产系统,固定资产卡片,要求所有的固定资产卡片上都必须记录 卡片编制人,编制部门,审批人审批部门,咱们通常只会记录人员和部门的ID值,如果在一个数据库里,直接通过SQL语句的关联查询,就会由ID得到员工和部门的名字,现在采用SOA架构,每一行数据都需要远程访问一次人力资源管理的Service,由ID得到名字,如果这样做很傻的话,有人可能想到先一次远程服务,得到所有的员工、部门列表,再写一个Service,由ID得到名字,但是这个和传统的数据库,做关联查询,由ID得到名字的效率差距还是甚远的。
推而广之,物资系统采用统一的物资编码,别的系统都不须有物资编码基础表,而必须建立在一个物资编码基础表基础之上,这些系统之间的数据库互相独立,那么,SOA究竟能给这些系统带来什么样的价值呢?
传统的数据库可能无法解决上述问题。而XML型数据库可能是解决这个问题的答案。SOA必须建立在真正的XML型数据库上,才可能发挥其整合异构系统架构的巨大作用。
相对而言,关系型数据库解决了固定流程下效率的提高,对于信息简单、处理数量巨大的应用来说,关系型数据库是最好的选择。关系型数据库与层次型数据库面对了两种不同的世界,前者是企业单一信息应用的王者,后者的强项是企业内不同应用之间、不同企业之间的信息处理。
免责声明:本网站(http://www.ciotimes.com/)内容主要来自原创、合作媒体供稿和第三方投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。