18.1.3.5 Oracle RDBMS
Oracle RDBMS为以任务为中心的企业范围的应用提供所需要的操作、监督和管理软件。使用Oracle RDBMS的分布式数据库和网点能力,用户可以透明地集成该企业的新旧数据、系统和应用程序。Oracle被分组形成几个软件包,使得客户可选地获取他们自己的应用所需要的功能。这些软件包是:
● 标准Oracle软件包
● 过程化选件软件包
● 分式式对象软件包
● 并行服务器选件软件包
● 开放网关软件包
标准Oracle软件包提供解决大量关键任务的联机数据处理(OLDP)和决策支持应用所需要的功能及性能。这个标准软件除具有其它几个软件包的全部特征外,还有以下标准Oracle软件包所专有的特征:
1. Oracle的过程化选件(procedual option)
提供多种能力可使数据库服务器成为应用环境的一个有效组成部分,过程化选件非常适用于具有高级需求和复杂商业实施规则的应用。它可选择地包括在Oracle服务器内使用程序设计语言PL/SQL过程的能力。具有存储过程和函数、过程软件包、数据库触发器、锁管理程序软件包以及数据库报警等特点。它还允许交互式提交或从3GL(第三代语言)程序提交“匿名”PL/SQL过程。
2. 分布式选件(distributed Option)允许把一个物理分布式数据库当作一个逻辑数据库来看待。那些需要在多个站点更新数据的应用可以从分布式选件获益。该选件的特征包括:
● 分布式更新
● 事务处理(TP)
● 监控器(XA)接口
● 透明的二阶段提交
● 远程过程调用(RPC)
● 表复制以及Oracle邮件接口
对于标准Oracle服务器,还包含查询能力和全局数据库名。
3. 并行服务器选件(Parallel | Server Option)
提供对松耦合系统多个节点的支持,从而并行存取OLTP和决策支持的一个数据库。并行服务器在高性能、可扩充性、可用性以及数据库连接等领域具有极大的优势。并行服务器选件包括高速缓存(Cache)管理以及松耦合和大规模并行平台所需要的其它所有特征。
4. Oracle开放网关软件包
提供对非Oracle数据管理程序、文件系统、应用程序和其它各种系统中的数据可编程且透明的存取。Oracle公司采用开放网关技术来向众多流行的数据系统和文件系统提供SQL连接网关,以进行透明的SQL存取。对于那些没有SQL连接产品的目标数据管理程序,Oracle开放网关开发人员工具包可以简化基于开放系统的应用手册的系统、数据及应用的集成工作。
如果有些部门希望使用基于数据灵敏性或分类的存取控制,那么Trusted Oracle 会包含有Oracle T的所有特征,并具有多级安全性。
18.1.3.6 Sybase SQL服务器系列
Sybase SQL客户/服务器体系结构由三个产品系列组成Sybase SQL服务器、Sybase生命周期开发工具和Sybase开放式互操作性产品。
Sybase SQL服务器是一个针对联机应用的RDBMS。它提供亚秒级响应时间,每用户低成本操作和可用性,SQL服务器智能数据词典收集了众多数据定义、商业规则、报告以及配置信息。
Sybase SQL生命周期工具提供一种快速原型设计、建立和维护联机应用的手段,使事务处理模型化,实施商业规则保护数据完整性,并将现有应用与新的数据源结合起来。
它们允许开发人员在SQL卡上用生命周期的各个阶段工作。利用Sybase工具,开发人员可以任意组合使用SQL、3GL、4GL多媒体和面向对象的工具来建立联机系统。
Sybase的互操作性策略提供用于开发客户机和服务器应用的两种扩展工具包,并面向最通用的RDBMS提供拨动网关(turnkey gateways)。该策略使得复杂计算环境下的多机种硬件,操作系统、网络、数据库和应用程序协同作成为可能。
18.1.4 IDAPI结构原理
IDAPI(集成数据库应用程序设计接口)是Borland公司解决客户/服务器连通性的方案。也是Delphi 客户/服务器开发的重要组成部分。为了说清楚什么是IDAPI,让我们先来讨论一下普通数据库的接口问题。
每个数据库管理系统和数据库应用都需一定的方式来访问内容所采用的数据格式,连接二者的部分称为接口,其最简单的情况就是对文件的直接访问,也可复杂到由几个层次组成。
当今,面向用户的数据库通常都直接与其数据打交道,对那些有一定的用户和使用了一定时间的产品尤其如此。制造商总是认为自己的产品就是标准,而不关心对其它数据格式的访问。同样,许多纵向数据库应用用类似C的语言开发,多是直接访问其数据库。对开发者,这样做会变得容易些,但用户的情况往往是多变的。他对底层数据格式的选择并不一定与产品一致。其实在ODBC和IDAPI等尚未推出的前20年里,工业界已经认识到,一个DBMS不只是要访问其自身的数据格式。
广义地讲,数据库接口可分为以下两类:
● 本地型(Local)
● 客户/服务器型(Client/Server)