WEB开发网
开发学院数据库Sybase SYBASE在民航气象的应用 阅读

SYBASE在民航气象的应用

 2006-06-19 23:16:03 来源:WEB开发网   
核心提示:1 . 引言 中国民航航空气象情报数据库系统(AMIDBS)是在北京、广州、上海、成都、西安、沈阳、乌鲁木齐等民航气象中心及53个航站的计算机系统中,开发建设而成的中国民航气象情报分布式数据库系统,SYBASE在民航气象的应用,它组织管理全球观测的与航空有关的气象资料,以及基于这些观测资料加工而成的与航空有关的气象分
1 . 引言

中国民航航空气象情报数据库系统(AMIDBS)是在北京、广州、上海、成都、西安、沈阳、乌鲁木齐等民航气象中心及53个航站的计算机系统中,开发建设而成的中国民航气象情报分布式数据库系统,它组织管理全球观测的与航空有关的气象资料,以及基于这些观测资料加工而成的与航空有关的气象分析产品、预报产品、图形图像产品、航空气象情报等资料,以友好的界面为空中管理部门、航空公司提供便利的、及时的航空气象服务。

在AMIDBS的各中心和航站每天各自都能获得大量气象资料和产品,相互之间(特别是各中心之间)需要交换,另外各气象中心的资料和产品还需送给位于机场的服务器为各航空公司提供服务。为了实现资料交换和传输,采用复制技术是一种明智的选择。我们在各中心之间采用双向复制,气象中心和机场之间采用主从复制,在双向复制中主点数据只有一个,即北京中心获得的数据在北京更新并向上海复制,上海中心获得的数据在上海更新并向北京复制,复制的数据类型有字符数据、实形数、整形数、大文本数据、图形图象数据等。下面就数据复制的一般概念、SYBASE数据复制技术的特点、组成、命令等作一得简单介绍,最后给出一简单的应用实例。

2 . 数据复制的一般概念

数据复制是分布式数据库技术中的一项重要技术, 其功能是提供对数据冗余的控制与维护。

数据冗余是分布式数据库的特性之一, 即同一数据在不同的节点有多个复制拷贝, 它是为了适应数据分布、提高系统性能, 减少网络通信费用、提高应用的有效性而形成的特性。但数据冗余又给保证数据的一致性和完整性增加难度。数据库界曾一度提出用两阶段提交的分布事务技术来实现数据冗余的控制与维护, 以保证数据的一致性。但这种方式存在两个严重的缺陷, 一是比单节点事务响应太慢, 二是一旦参与分布事务的某个节点有故障或网络不通, 则会使其它节点也无法继续处理数据, 从而降低了系统的可靠性。

 数据复制技术就是为了克服上述缺点而研究提出的。它将数据复制的物理过程分成两步, 修改过程和复制过程。对一个数据拷贝进行插入、修改和删除的过程称为修改过程, 将修改过的拷贝中的数据复制到其它拷贝的过程称为复制过程。

目前的数据复制技术根据这两个过程的进行方式的差异而形成下列两种复制方式:

(1) 同步复制方式(严格一致性方式) 同步复制方式要求修改过程和复制过程同时进行, 即数据所有拷贝在任何时候都应保持一致。这种方式在网络和各节点的系统十分可靠且操作正常时是很有效的。这种方式基本上是采用两阶段提交的分布事务技术来实现的。

(2) 异步复制方式(松散一致性方式) 异步复制方式允许修改过程和复制过程异步进行, 两者之间可存在一个时间延迟, 即允许数据的各拷贝之间不立刻一致。如果修改能停下来等到异步复制赶上, 则数据的各拷贝之间就能保持一致。当参与复制的某个节点有故障时, 则那个节点的复制过程暂时停止, 待那个节点恢复正常后再接着进行。

异步复制方式从数据复制机制上分, 有下列两种不同的复制方法:

·基于事务的异步复制 当一个数据拷贝进行修改时, 将该修改事务复制到其它数据拷贝所在的节点并进行执行, 从而达到数据复制的目的。

·基于数据的异步复制 当一个数据拷贝进行修改的同时, 对变化的数据形成一个复制品, 然后再复制到其它拷贝, 在这种方法中复制的是数据本身。

异步复制方式从等待时间上分, 也有下列两种不同的复制方法:

·联机异步复制 当一个数据拷贝进行修改时, 其复制过程也就联机产生相继进行, 除非参与的某节点有故障, 则该节点的复制过程由存储机制进行暂存, 待故障恢复后再进行,其它节点照常进行。

·定时异步复制 当一个数据拷贝进行修改时, 其复制过程不立即进行, 而是到了指定时间后进行。在进行期间某参与节点有故障, 则该节点的复制过程由存储机制进行暂存, 等待故障恢复后再进行。

3 . 复制技术的体系结构

复制是指将数据从数据源拷贝到一个或多个目标的过程, 复制技术的体系结构体现了数据复制过程中数据源和数据目标之间的关系。从目前的发展情况来看, 有以下三种基本的体系结构:

(1) 主/从结构(master/slaver) 这是最简单的一种结构。在这种结构中定义一个数据拷贝为主拷贝, 称为主点数据, 其它的拷贝为副拷贝, 称为复制点数据。数据更新操作只能在主拷贝上进行, 然后复制给其它副拷贝。

(2) 瀑布式结构(cascade) 这种结构是主/从结构的一个扩展, 它也是由一个主拷贝和若干个副拷贝组成。不同于主/从结构的是它允许每个从属副拷贝具有复制的能力, 即一个从属副拷贝可以把接收到的复制数据再传给下一个从属副拷贝。也就是说, 它的复制方法是链式的, 如节点 A→B→C……,而主/从结构是 A→B,A→C……。  

(3) 对等结构(peer-to-peer)   在这种结构下,所有的拷贝在任何时刻都可以被修改,而且能将修改操作复制给其它拷贝。

比较上述三种结构,主/从结构在管理上最简便,并能有效地防止修改冲突, 有较高的可用性。但它不够灵活,自治性也明显降低,由于修改必须在主点数据的节点机上进行,在使用来自非主点数据节点的修改时,必须将修改命令送给主拷贝节点,执行完成后再将结果复制回去。在这种情况下也将增加网络开销。瀑布结构在复制过程中能降低网络开销,但它的可用性比较低,因为在复制链上任一环节的问题都会引起复制失败,使其后的所有节点都无法获得复制数据。对等结构是最灵活的一种结构,它充分体现了分布数据库的分布特性,各节点有高度自治,可用性好,但它必须在解决修改冲突后才能使复制有效, 然而解决修改冲突的难度较大、算法复杂、系统开销大, 因而其管理的代价也很高。所以在实际应用中究竟采用哪种体系结构应视实际需要而定。

3 . SYBASE 复制技术的特点

4.1 SYBASE复制服务器主要采用联机异步复制方法, 当主表中的主点数据由服务器进行修改维护后, 对主表数据修改的事务在几秒内传递到复制表中。

SYBASE复制服务器对数据复制管理的原则如下:

·对于每个参加复制的数据只能有一个主点和多个复制点。

·复制点和主点数据不一致, 以主点为准。

·应尽量减少由于分布传输的次序而产生的不一致。

SYBASE复制服务器的体系结构以主从结构为主, 但也能支持下列多种体系结构:

(1) 主从结构(一个主点,多个复制点)

·只有主点修改能修改数据, 然后按约定复制到各复制点的复制表中;

·复制表不能修改。

(2) 分布式结构(多个主点, 一个复制点)

·复制点用来接收一个或多个主节点的数据

(3) 对等结构

A (主点更新, 远程更新主点)

·只在主点更新数据, 然后按约定复制到各复制点的复制表中  ·复制点通过远程异步事务更新主数据, 然后按约定复制到各点。

B (数据分布, 各为主复)

·主点数据分布在系统的多个服务器中, 但对每个数据而言, 全系统只有一个主点;

·每个主点有自己的数据, 主点更新自己的数据, 然后按约定复制到其它各点。

C (主点更新, 复制点更新, 互为主复)

·主点数据分布在系统的多个主点数据库中;

·每个主点更新主点数据, 然后按约定复制到其它各点。

·在这种结构中会产生修改冲突, 技术支持的应用程序必须有办法解决修改冲突。

(4) 联接结构:

·把两个主点表的列结合在一起复制到一个复制点表中; 4.2 SYBASE复制服务器的其它特性

SYBASE复制服务器是SYBASE SYSTEM 10的核心产品, 自1993年10月推出以来, 已为很多用户所采用, 并备受青睐。这是由于它除了采用联机异步复制方式和适应多种应用结构外, 还具备下列特性:  

(1) 可靠实用

SYBASE复制服务器的复制机制是基于事务的, 它在复制环境中传递的是事务, 而不是传递数据行, 并有存储和前滚的机制保证可靠的数据传输, 如果网络或者系统发生故障, 则相关的信息进入稳定磁盘队列等待传输, 当网络或系统恢复工作后会自动将等待的信息前滚到远程服务器上, 以维护事务的顺序和完整一致, 使之可靠实用。

由于SYBASE复制服务器传递事务, 于是也能传递存储过程, 因而提供了一个有效的方法复制异步远程存储过程完成复制节点对数据的修改, 从而提高了可用性

(2) 复制独立

SYBASE复制服务器的每个部份都未采用数据库系统的特性及功能, 其工作模式是专为复制而设计的技术。SYBASE复制服务器的组件如Log Transfer Mansger(LTM)是完全独立于数据库工作的, 没有使用数据库触发器及规则, 不会增加源数据库的负担, 从而获得较高的复制性能。

另外, SYBASE复制服务器允许管理员选择网上传送数据的路由, 从而能更加有效地使用网络, 加快了事务传递, 也提高了复制性能。

(3)支持异构

SYBASE复制服务器允许非SYBASE数据源加入复制环境, 异构数据源不仅能充当目标节点, 接受复制的数据和存储过程, 而且能充当主节点。

SYBASE复制服务器的这个特性有利于保护用户在各种RDBMS 上的投资、数据资源和旧的应用, 同时也可扩充在sql server(WINDOWS平台上强大的数据库平台)系统方面的新投资。

(4) 本地自治

SYBASE复制系统只传递事务到SYBASE或非SYBASE数据源, 复制何种数据及复制数据如何使用则由各节点自治决定, 每个节点有权进行下列选择:

·选择接受或访问某个主数据集合(或完全集合);

·设置在本地的表名和列名;

·优化本地数据访问方式;

4.SYBASE的实际应用效果

  中国民航北京气象中心的主从复制试运行已有半年,目前运行稳定,在北京和广州之间进行了双向复制的试验,其结果也是较理想的。主要有如下体会:

·数据复制减轻软件开发和维护量,特别对于气象部门的多种硬件平台的分布式数据库系统,因为气象部门的入库数据在入库前需要进行大量且复杂的预处理,其程序量约有几万条指令,使用数据复制技术后,可以只在一个地点和一种平台上开发和维护软件,其它地点和平台可采用复制;

·数据复制可根据不同用户的查询要求,定义复制内容。形成不同的复制点数据库,减轻主数据库的负荷,一定程度上加强了主数据库的安全性,提高了检索速度;

·在进行复制服务定义前,要根据需求作好全面、详细、周密的钻研,才能作出切合实际的复制定义和复制约定;

·主点数据库的日志文件应根据复制的内容给予足够大的空间,以防止网络故障或复制点机器故障造成的复制中断,引起主点数据库日志文件被充满,影响主点数据库运行的情况发生;

·应监视复制服务器的LTM 进程,及时发现问题,及时处理,以免影响主点数据库运行;

·对于实时性要求较强的数据,在故障恢复后应清除复制日志文件,否则影响新数据复制的时效。

Tags:SYBASE 民航 气象

编辑录入:coldstar [复制链接] [打 印]
赞助商链接