Oracle 和 DB2,比较与兼容性/数据库扩展
由于其灵活性和标准化程度,关系文件系统已成为企业首选的存储方式。关系数据库存储海量数据(字面意思是,截至撰写本文时,已达 PB 级)的能力,以及组织收集更多信息的需求,推动了关系数据库的需求,使其不再仅仅是信息的巨大存储库。
这些需求的第一项是速度。系统响应时间存在着某种人类期望,人们期望现代系统更快。解释说,虽然单个响应时间可能会变慢,但整体并发用户数量和数据量级都在增加,这听起来更像是一种借口,而不是理由。这对那些能够更快地为更多用户和数据群体提供服务的组织(数据库供应商组织和数据库消费组织)来说,是一个直接的机会。
接下来是可用性。互联网促进了全天候的业务运营,因此支持这些信息的系统需要高度可用(HA)。高可用性意味着容错 – 数据系统能够快速从任何类型的系统故障中恢复,并保护自己免受单点故障影响运营。这自然会导致去中心化,即计算资源和数据的地理和逻辑分离。
“大量数据,随时随地快速提供给大量用户”的需求可以通过多种方式解决,可以简单地描述为将需求分散到可用资源中 – 要么分散数据,要么分散处理,要么分散硬件,或者三者的组合。这些策略相对简单,本节将对每种策略进行描述。由于这些策略的实现需要协调多个活动部件(数据、内存、硬件和网络),因此它们会带来额外的成本和一定程度的预先计划。这意味着人们不会仅仅因为技术上可行而实现它们,实现往往基于“对我需求而言最简单、最经济高效的解决方案是什么”。
组织数据和处理能力的方法有很多,这与数据库供应商无关。我们将从对这些方法的描述开始
数据库拓扑概述
到目前为止,我们对数据库的架构描述看起来像这样
此模型为比较功能提供了一个框架,因为总的来说,数据库需要做相同的事情,它们也以相同的方式进行(即,将数据从磁盘移到内存和再移回磁盘,记录事务,执行查询等)。