18143453325 在线咨询 在线咨询
18143453325 在线咨询
所在位置: 首页 > 营销资讯 > 信息时代 > 远程数据库访问(数据库)

远程数据库访问(数据库)

时间:2022-12-08 06:30:01 | 来源:信息时代

时间:2022-12-08 06:30:01 来源:信息时代

    远程数据库访问 : 为支持数据库在网络环境中的应用,实现互连、互操作的一项重要技术标准。
20世纪90年代网络技术广泛应用,数据库在网络环境的访问、互操作已成为应用的迫切需求。1995年由ISO提出制订了 ISO/IEC 9579 Information Technology—Open Systems Interconnection—Remote Database Access标准。它对应的我国标准是GB/T17533—1998信息技术——开放系统互连——远程数据库访问。
RDA标准是针对“开放系统互连”(OSI)的网络环境制定的,作为OSI应用层的一个特定应用服务元素,规定了由OSI支持的两个开放实系统间进行数据库访问所需要的系统服务和通信协议。
RDA标准分为三部分,第一部分是关于RDA的类属模型、服务与协议,规定通用的RDA类属标准。第二部分是RDA的SQL专门化标准,专门为用SQL语言的数据库规定实现数据库之间的访问规范,让RDA类属标准规定的内容完全与SQL数据库结合,使标准的实施更加具体明确。第三部分是SQL专门化协议实现一致性叙述(PICS)形式的标准,是对RDA一致性要求更详细的表述。
RDA标准把在开放系统环境中一个分布的开放系统具有数据库功能的设施称为数据库服务器,它提供数据库的存储设施,并对其他开放系统(称为客户)提供数据库处理服务。标准规定的通信服务和协议支持客户访问数据库服务的能力。
1. RDA服务模型
RDA服务模型如图1所示。


图1 RDA模型


图中,RDA客户和RDA服务器是RDA通信服务的用户。RDA通信服务在RDA客户和RDA服务器之间提供合作。RDA客户是初始RDA对话并请求由RDA服务执行RDA操作的用户。RDA服务器是向RDA客户提供数据库服务的用户。RDA客户和RDA通信服务之间的界限称为RDA客户接口,而RDA服务器和RDA通信服务之间的界限称为RDA服务器接口。
在这个模型中的RDA服务器位置就是数据库服务器。数据库服务器在通信服务协议的支持下,由建立的应用联系的语境,实现RDA的对话。
数据库服务器提供数据资源的管理。数据资源是命名的关于数据库服务器的数据和(或)支持功能的集合。数据库服务器的处理是在一个RDA对话中,由RDA事务执行数据库语言命令,完成RDA的操作。
RDA通信服务是在OSI应用层实现,它需要应用层及其以下各层提供的协议和服务来支持,完成RDA客户和RDA服务器之间的交互。通信服务管理RDA对话、事务及对话的失败和恢复等。
RDA对话只能在已建立应用联系的语境中存在如果联系(正常或非正常)释放,RDA对话也将不复存在。因此,RDA对话的状态可以认为是在已建立的“联系”的状态中存在。对话状态和事务状态如图2所示。


图2 RDA对话状态图


RDA对话只能处于下述两个对话状态之一:
(1) 非活动(inactive)状态: 客户与服务器之间不存在RDA对话;
(2) 活动(active)状态: 客户与服务器之间存在一个已建立的RDA对话。
RDA对话的活动状态能进一步细分为三个事务状态如下:
(1) 事务未打开(transaction not open): 没有RDA事务在进行。
(2) 事务打开(transaction open): 有一个RDA事务在进行,但它不是在结束处理过程。
(3) 事务结束(transaction terminating):存在一个在进行中的RDA事务,但它为了向数据库的状态交付或回滚,在结束它的处理。
RDA应用语境定义应用层通信能力的单个联系对象。它是模型化的一些相异的应用服务元素(ASE)和单个联系控制功能(SACF)。每个ASE的规范定义支持通信方面的服务和协议。SACF的规范定义ASE与应用一起使用的规则。
RDA类属应用语境有RDA基本应用语境和RDA TP(事务处理)应用语境。基本应用语境是通过在对话之前建立联系来支持RDA对话的。TP应用语境由RDA、TP、ACSE(联系控制服务元素)以及可选择的CCR(交付、并发和恢复)组成,由TP服务提供两阶段交付的事务管理。
2. RDA服务
类属RDA服务的定义是作为定义专门化RDA服务的一个模板。RDA服务的定义形式如下:
(1)服务按照它们支持客户请求的功能区分为:管理RDA对话、管理RDA事务、控制未完成的操作、控制数据资源的可用性、定义和调用服务器的数据库操作。
(2)在每个组中的服务按照它们能独立地用于其他功能单元而再区分为一些功能单元。
(3)在每个功能单元中服务的描述包括对每个服务的服务原语。
(4)在组中的每个服务的定义,由服务的目的、展示服务参数的表(列出请求、结果响应和错误响应的参数)、对请求、结果响应和错误响应参数的描述等内容组成。
每个服务由服务原语的集模型化,成为RDA服务接口上的一些事件。典型的单个服务由RDA客户接口上的请求,并伴随着在RDA服务器接口上的指示所组成。通过RDA服务器对它处理,稍后在RDA服务器接口产生结果响应或错误响应,并在RDA客户接口产生结果证实或错误证实。
3. RDA协议
RDA协议规定了服务器执行规则、协议机的状态表、协议数据单元及一致性。
服务器执行规则定义RDA服务器响应RDA客户请求的一些约束,这些请求是在服务器开放系统中按照RDA服务器接口上指示的事件通信,这些事件跟结果和错误响应一起,组成RDA服务器接口。
在服务器中,从客户接受的请求,被模型化通过服务器改进成一些操作实体,直到它们在RDA服务器接口上显示结果或错误响应原语事件。
操作实体的语义和它们通过数据服务器的处理是通过服务器的模型状态和通过服务器管理的操作事件的改进规则定义的。
服务器的状态有两个主要组成部分:
(1)对话状态:是把一次对话中与单个客户的交互模型化。
(2)数据库状态:是把所有数据库用户之间共享的持久(存储的)数据模型化。
这些状态通过RDA专门化定义的数据库操作去改变。服务器执行规则描述了由服务器操作执行所允许的动作,包括: 当产生错误时定义适应的条件: 描述由操作实体执行引起的改变对话状态; 当产生结果时定义适应的条件。
状态表定义两个RDA协议机(PM)状态表,一是对RDA客户的,另一个是对RDA服务器的。状态表指明PM当前状态、进入出现的事件和引起退出动作以及RDA PM状态之间的相互联系。
RDA PM组成部分及RDA PM与RDA模型的关系如图3所示。


图3 RDA PM与RDA模型关系图


图中RDA服务全部由RDA客户开始,并有请求、指示、响应和证实组成的结构。在对等的RDA客户和服务器协议机之间,通过RDA初始化应用协议数据单元(RI APDU)和RDA交付应用协议数据单元(RC APDU)实现通信服务。类属RDA的APDU结构和编码是作为RDA专门化APDU的模板,用标准的抽象语法表记法(ASN.1)建模。
4.应用语境
RDA应用语境包括基本应用语境和事务处理应用语境。
基本应用语境是数据库事务使用ACSE的联系管理设施和RDA的远程数据库访问设施,这些事务通过单个远程开放系统访问数据。ACSE服务定义创建联系和正常与非正常释放联系的操作。RDA服务定义包括对话管理服务和使用一段交付的事务管理服务的远程数据库访问的操作。RDA基本应用语境在ACSE服务的使用方面设置了附加的约束。
RDA事务处理应用语境是对跨一个以上开放系统的数据库事务,使用事务处理(TP)涉及控制服务、资源管理服务和数据库语言服务的对话管理及事务管理的设施。
在RDA TP应用语境中,RDA客户和RDA服务器是事务处理服务用户请求(TP SUI)的一部分。TP服务提供用作所有本地和远程资源全部协调的事务管理设施,以高度可靠的方法,成功或不成功地终止分布的事务,使所有资源达到一致的状态。TP服务也包括随着通信或系统故障而引起对所有资源重创一致性状态的适合的恢复机制。TP服务包括为确保分布事务的原子性、一致性、隔离和持久的特征而必需协调远程服务的预防措施。TP也提供创建、维护和终止对话的对话管理设施。RDA TP应用语境在TP和RDA两者上也设置附加的约束。
5. RDA专门化
RDA专门化是为SQL专门定义的RDA服务,也是对RDA类属标准的应用和补充。RDA类属标准包含一个ASN.1的模块模板,根据这个模板,可以构造出一个专门的RDA服务的ASN.1模块,其中类属标准未定义参数表的类型,在专门化会被赋予适当的类型,同时也定义它们的含义和格式(包括可允许的值)。
RDA专门化也可以对每个服务的使用定义附加约束,并与RDA类属标准中规定的全部规则同时有效。
RDA只制订了SQL专门化标准,这是对以SQL语言为代表的关系数据库按照具体的功能设施规定专门的服务和协议。其中的RDA服务器称为SQL服务器,RDA类属数据资源称为SQL数据资源。SQL专门化支持RDA客户和SQL服务器之间的对话,支持RDA服务器规定的所有服务功能,它是实现SQL数据库联网操作的具体技术依据。

74
73
25
news

版权所有© 亿企邦 1997-2022 保留一切法律许可权利。

为了最佳展示效果,本站不支持IE9及以下版本的浏览器,建议您使用谷歌Chrome浏览器。 点击下载Chrome浏览器
关闭