正确答案
以集中式的仓库模型为例。其主要优点:
(1)数据由某个子系统产生,并且被存储到仓库中,以便为另外一些子系统共享;
(2)由于中央集中控制的缘故,共享数据能得到有效的管理,各子系统之间不需要通过复杂的机制来传递共享数据;
(3)一个子系统不必关心其他的子系统是怎么使用它产生的数据;
(4)所有的子系统都拥有一致的基于中央数据仓库的数据视图。如果新子系统也采用相同的规范,则将它集成于系统中是容易的。
但这种系统也有明显的缺陷:
(1)虽然共享数据得到了有效的管理,但随之而来的问题是各子系统必须有一致的数据视图以便能共享数据,换句话说,就是各子系统之间为了能共享数据必须走一条折中的路线,这不可避免地会影响整个系统的性能。
(2)一个子系统发生了改变,它产生的数据也可能发生结构上的改变。问题随之而来,其他的子系统如何能正确解析这些数据呢?所以为了达到共享的目的,数据翻译系统会被引入到整个系统当中。但这种翻译的代价是很高的,并且有时是不可能完成的。
(3)中央数据仓库和各子系统的私有数据库必须有相同的关于备份、安全、访问控制和恢复的策略,这可能会影响子系统的效率。
(4)集中式的控制使数据和子系统的分布变得非常困难甚至成为不可能。这里分布指的是将数据或子系统分散到不同的机器上。
分布式结构有这样的一些优势:
(1)资源共享:系统中每个服务节点上的资源都可以被系统中的其他节点访问;
(2)开放性高:系统可以方便地增删不同软硬结构的节点;
(3)可伸缩性好:系统可以方便地增删新的服务资源以满足需要;
(4)容错能力强:分布式系统中的信息冗余可以容忍一定程度的软硬故障;
(5)透明性高:系统中的节点一般只需知道服务的位置而不必清楚系统的结构。
但分布式结构也存在着一些不足:
(1)复杂性:分布式系统比集中式系统要复杂得多。集中式系统的性能主要依赖于主机的处理器能力,而分布式系统的性能则还会依赖于网络的带宽,这让情形变得更加复杂。
(2)安全性:网络环境随时面临着各种威胁:病毒、恶意代码、非法访问等。如何保证安全性是一个让人头疼的问题。
(3)可管理性:分布式系统的开放性造成了系统的异构性。显而易见,管理异构的系统比管理主机系统要困难得多。
(5)不可预知性:这主要指系统的响应时间。网络环境本身的特点决定了网络负载会明显地影响整个系统的响应时间。