异构数据库系统
异构数据库系统是相关的多个数据库系统的集合,可以实现数据的共享和透明访问,每个数据库系统在加入异构数据库系统之前本身就已经存在,拥有自己的DBMS。异构数据库的各个组成部分具有自身的自治性,实现数据共享的同时,每个数据库系统仍保有自己的应用特性、完整性控制和安全性控制。异构数据库系统的异构性主要体现在以下几个方面:
1、计算机体系结构的异构
各个参与的数据库可以分别运行在大型机、小型机、工作站、PC或嵌入式系统中。
2、基础操作系统的异构
各个数据库系统的基础操作系统可以是Unix、Windows NT、 Linux等。
3、DBMS本身的异构
可以是同为关系型数据库系统的Oracle、 SQL Server等,也可以是不同数据模型的数据库,如关系、模式、层次、网络、面向对象,函数型数据库共同组成一个异构数据库系统。
----异构数据库系统的目标在于实现不同数据库之间的数据信息资源、硬件设备资源和人力资源的合并和共享。其中关键的一点就是以局部数据库模式为基础,建立全局的数据模式或全局外视图。这种全局模式对于建立高级的决策支持系统尤为重要。
----大型机构在许多地点都有分支机构,每个子机构的数据库中都有着自己的信息数据,而决策制订人员一般只关心宏观的、为全局模式所描述的信息。建立在数据仓库技术基础上的异构数据库全局模式的描述是一种好的解决方案。数据仓库可以从异构数据库系统中的多个数据库中收集信息,并建立统一的全局模式,同时收集的数据还支持对历史数据的访问,用户通过数据仓库提供的统一的数据接口进行决策支持的查询。
动态系统定义按确定性规律随时间演化的系统,又称动力学系统。动态系统理论来源于经典力学。美国数学家G.D.伯克霍夫发展了法国数学家H.庞加莱在天体力学和微分方程定性理论方面的研究,奠定了动力学系统理论的基础。
特点其特点是:
①系统的状态变量是时间函数,即其状态变量随时间而变化。
②系统状况由其状态变量随时间变化的信息来来描述。
③状态变量的持续性。
应用现代控制理论的发展促进了对动态系统的研究,使它的应用从经典力学扩大到一般意义下的系统。
演化规律用微分方程描述的动态系统称为微分动力系统。例如:
凧 =F(x,t)
式中x为状态变量矢量,t为时间,F为确定性矢量函数。对微分动力系统的研究从理论上揭示了系统的许多基本性质。如对系统吸引子的研究说明了系统终态,即定常状态的种类(见[2]非平衡态)。又如对系统稳定性条件的研究和相空间拓扑结构对参量依赖关系的研究都对系统的设计具有重要指导意义。
不用微分方程描述的动态系统模型中最简单的是映射,一般用差分方程或迭代方程表示:
x(t+1)=F【x(t)】 t=0,1,2,…
式中x为状态变量矢量,F为确定性矢量函数,t为离散时间变量。关于用映射描述的动态系统的理论比较困难,其进展远不如微分动力系统。对于一维映射系统,系统的终态既可能是平衡态,也可能是非平衡态。对于二维和二维以上的映射,现代研究大多采用数值方法,在理论上存在很大困难,还很少有能广泛应用于工程实践的一般性理论成果。
数据库转换
----对于异构数据库系统,实现数据共享应当达到两点:一是实现数据库转换;二是实现数据的透明访问。由华中科技大学开发的,拥有自主版权的商品化数据库管理系统DM3系统,通过所提供的数据库转换工具和API接口实现了这两点。
----DM3提供了数据库转换工具,可以将一种数据库系统中定义的模型转化为另一种数据库中的模型,然后根据需要再装入数据,这时用户就可以利用自己熟悉的数据库系统和熟悉的查询语言,实现数据共享的目标。数据库转换工具首先进行类型转换,访问源数据库系统,将源数据库的数据定义模型转换为目标数据库的数据定义模型,然后进行数据重组,即将源数据库系统中的数据装入到目的数据库中。
----在转换的过程中,有时要想实现严格的等价转换是比较困难的。首先要确定两种模型中所存在的各种语法和语义上的冲突,这些冲突可能包括:
命名冲突:即源模型中的标识符可能是目的模型中的保留字,这时就需要重新命名。
格式冲突:同一种数据类型可能有不同的表示方法和语义差异,这时需要定义两种模型之间的变换函数。
结构冲突:如果两种数据库系统之间的数据定义模型不同,如分别为关系模型和层次模型,那么需要重新定义实体属性和联系,以防止属性或联系信息的丢失。
----总之,在进行数据转换后,一方面源数据库模式中所有需要共享的信息都转换到目的数据库中,另一方面这种转换又不能包含冗余的关联信息。
----数据库转换工具可以实现不同数据库系统之间的数据模型转换,需要进一步研究的问题是:如果数据库转换同时进行数据定义模式转换和数据转换,就可能引起同一数据集合在异构数据库系统中存在多个副本,因此需要引入新的访问控制机制。在保证各个参与数据库自治,维护其完整性、安全性的基础上,对于异构数据库系统提供全局的访问控制、并发机制和安全控制。
----如果数据库转换只进行数据定义转换,不产生数据的副本,那么在新的目的数据库定义模型的框架下访问数据,实现上仍是对源数据库系统中数据的访问。这时利用新的数据库系统中的数据处理语言实现的事务,不能直接访问源数据库,必须进行事务级的翻译才可以执行。
数据的透明访问
----在异构数据系统中实现了数据的透明访问,用户就可以将异构分布式数据库系统看成普通的分布式数据库系统,用自己熟悉的数据处理语言去访问数据库,如同访问一个数据库系统一样。但目前还没有一种广泛使用的数据定义模型和数据查询语言,实现数据的透明访问可以采用多对一转换、双向的中间件等技术。开放式数据库互连(Open DataBaseconnectivity,简称ODBC)是一种用来在相关或不相关的数据库管理系统中存取数据的标准应用程序接口(API)。ODBC为应用程序提供了一套高层调用接口规范和基于动态链接库的运行支持环境。目前,常用的数据库应用开发的前端工具如Power Builder、 Delphi等都通过开放数据库互联(ODBC)接口来连接各种数据库系统。而多数数据库管理系统(如:Oracle、Sybase、SQL Server等)都提供了相应的ODBC驱动程序,使数据库系统具有很好的开放性。ODBC接口的最大优点是其互操作能力,理想情况下,每个驱动程序和数据源应支持完全相同的ODBC函数调用和SQL语句,使得ODBC应用程序可以操作所有的数据库系统。然而,实际上不同的数据库对SQL语法的支持程度各不相同,因此,ODBC规范定义了驱动程序的一致性级别,ODBC API的一致性确定了应用程序所能调用的ODBC函数种类,ODBC 2.0规定了三个级别的函数,目前 DM3 ODBC API支持 ODBC 2.0规范中第二级扩展的所有函数。
----随着Internet应用的不断普及,Internet的异构分布式信息系统正在迅速发展,Java以其平台无关性、移植性强,安全性高、稳定性好、分布式、面向对象等优点而成为Internet应用开发的首选语言。在Internet环境下,实现基于异种系统平台的数据库应用,必须提供一个独立于特定数据库管理系统的统一编程界面和一个基于 SQL的通用的数据库访问方法。Java与数据库接口规范JDBC(Java Database Connectivity)是支持基本SQL功能的一个通用的应用程序编程接口,它在不同的数据库功能模块的层次上提供了一个统一的用户界面,为对异构数据库进行直接的Web访问提供了新的解决方案。 JDBC已被越来越多的数据库厂商、连接厂商、Internet服务厂商及应用程序编制者所支持。1
基于异步动态系统的网络控制系统故障检测网络控制系统的被控对象模型为
其中:x(t)为状态向量,v(t)为输入向量,y(t}为输出向量。
传感器故障一般可转化为执行器故障的形式.为了研究方便本文统一采用故障向量v(t)来表示。
研究目的是:在一定的数据包丢失率下,对系统设计故障观测器,并比较观测器和原系统状态,得到观测器状态估计误差。在确保误差系统稳定性的基础上利用故障检测残差对系统故障进行检测。整个系统结构如图1所示。
对系统作如下假设:1
传感器、控制器为时间驱动,执行器为事件驱动,采样周期为h;
控制时延τca∈[ 0,h ],输出时延τsc相对于h可忽略不计。
采用单包传输。
传感器与控制器之间存在数据包丢失。
网络介入后,按照采样周期对被控对象进行离散化,可得
其中
由矩阵理论可知,如果矩阵A含有n个互异特征根,则可化成对角阵,得到
其中:λ1,λ2,...,λn为A的特征值,为对应的特征向量组成的矩阵。
设λ1,λ2,...,λn均不为0,则有:
其中:
系统可化为:
基于异步动态系统的时延及丢包检测方法概述网络控制系统(Network Control System, NCS)是控制技术和网络通信技术的融合,研究内容非常广泛。网络诱导时延和数据包丢失问题是NCS中最主要的问题。国内外很多学者针对NCS的建模与控制器设计问题进行了深入的研究,但是对于同时存在网络诱导时延和数据包丢失情沉下的NCS研究较少。然而,在实际的NCS中,网络诱导时延和数据包丢失在大多数情沉下是并存的。国内外在NCS方面的研究已有较多的研究成果。2
模型描述考虑如图1所示的NCS结构,假设系统存在控制时延τcak(控制器到执行器的网络延时)以及在传感器和控制器之间存在数据包丢失,将网络连接等效为开关S,当网络通信正常时,开关S闭合;当丢包发生过程中,开关S断开。
被控对象可由下列状态方程描述:
研究方法本文基于上述模型并假设:
每个采样时刻的数据包丢失率ξ (0