分享
 
 
 

土地信息系统数据库分布式设计与实现

王朝other·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

摘要本文阐述了Oracle分布式设计技术在具有空间分布特征的土地信息系统中的应用,并以深圳市土地治理信息系统为例,具体地说明了基于Oracle的土地信息系统数据库分布式设计与实现。

要害词分布式数据库,Oracle,土地信息系统

1关于土地信息

用关系数据库与空间数据库协同治理土地数据,是近年来土地信息系统的分布式处理的常用方法之一,其分布式实现主要依靠于关系数据库(如Oracle)所提供的分布式功能。

本文将具体阐述土地信息系统中基于Oracle的关系数据库分布式设计及空间数据分布式处理的实现。

2Oracle系统的分布式设计技术

2.1分布式Oracle系统构架

分布式Oracle系统是由分布式数据库治理系统(Oracle Rdbms)、支持多种操作系统和通信协议的分布式处理环境软件SQL*NET、以及与非Oracle Rdbms联接的软件SQL*CONNECT组成的一个软件群[2]。其中,Oracle Rdbms的分布式功能主要包括分布式查询、单点事务、多个事务中多点更新及结点自治等;SQL*NET提供不同Oracle数据库间的连接功能;SQL*CONNECT是实现Oracle与其它DBMS转换的一个接口产品。

2.2SQL*NET

SQL*NET是Oracle分布式处理的基础,其体系结构如图1所示。通过SQL*NET,一个应用程序可以并行存取本地或远程的多个数据库。当存取远程数据库时,在客户端,SQL*NET将来自用户程序接口(UPI)层的子程序调用(SQL语句)组装成信息报文,经过异种机环境所需要的数据转换后,通过网络将报文发送给远程计算机;在服务器端,SQL*NET接受报文,作必要的数据转换,并将子程序调用参数传送到适当的Oracle核心入口点,在相反方向上服务器端驱动SQL*NET传送的是数据和返回码信息[1]。

图1SQL*NET体系结构

2.3各类数据库对象

Oracle中与分布式处理有关的数据库对象主要有:数据库链路、视图、快照、同义词等。其中,数据库链路用于连接本地结点和远程结点之间的数据库;数据快照是Oracle系统提供的一种对数据表的异步复制,它有以下两种作用:数据快照是远程数据表在本地的复制,通过它可以实现对远程数据的快速查询;在系统或网络出现故障时,可以通过数据快照恢复数据。

同义词用来简化一些繁琐的表名或视图名等。对于远程操作,用户也可以为远程数据库的表名或视图名等建立相应的同义词,以后访问这些远程数据库的表或视图就可以直接写同义词名,也就是说用户在访问数据时无须指明数据所在结点的名字,这就达到了透明访问。例如,在某一结点访问另一结点的数据表时需要命令:

SELECT*FROM SUPDBA.EMPLOYEE@SUP—HQ;

假如建立如下同义词:

CREATE PUBLIC SYNONYM EMPLOYEE FOR SUPDBA.EMPLOYEE@SUP—HQ;

再访问该远程表时就只需要命令:

SELECT * FROM EMPLOYEE;

2.4分布式操作

在数据库链路定义以后,远程操作就变得非常简单和方便。用户访问远程数据库的表或视图时,只要在表名或视图名后面附上数据库链路名即可通过SELECT或INSERT、UPDATE、DELETE等语句对数据进行操作。其形式为:

SELECT 列表达式[,列表达式,...]

FROM 表名@数据库链路名[,表名@数据库链路名,...]

[WHERE 逻辑表达式];

在访问数据时,假如要访问的数据来自同一个数据表,根据需要直接访问该表或基于该表的视图或快照;假如所要访问的数据来自不同的数据表,可通过连接(JOIN)操作或相应的视图来实现,视图中各数据项的来源有以下几种情况:

来自同一数据库中的一个表或多个表;

来自同一结点不同数据库中的两个表或多个表;

来自不同结点上数据库中的两个表或多个表。

假如事先建立了有关视图,用户就可以直接访问这些视图以实现一些对数据的复杂访问。

3数据库分布式设计的基本步骤

3.1确定数据的物理位置

在分布式数据库环境中,对每一数据表都要首先确定其最佳的存放位置,从而使整体数据的分布更加合理。在这一过程中,需要考虑的因素主要有以下几点:每一结点需传递的事务量;每一结点使用的数据量;网络的性能与可靠性;各结点速度、磁盘容量;若结点间连接不通后的访问规则;表间联系对数据完整性的影响等。

3.2确定数据库及其对象

对每一存放数据的独立结点都要建立至少一个数据库,对于不同的应用,在同一地点也可以建立多个数据库。在每一数据库中还要根据实际需求建立有关的数据库对象,如Oracle中有关数据库对象有Table、View、Snapshot、Synonym、DatabaseLink等。

3.3确定数据存取机制

分布式数据库的一大重要特点是数据访问的透明性。在应用系统中,不同的功能会需要访问不同数据库中的数据。为了达到数据访问的透明性,在分布式数据库设计时就需要确定如何存取其它数据库中的数据,如何实现不同数据库中数据表的链接等规则。

4土地信息系统数据库的设计

深圳市土地治理信息系统(以下简称SZLIS)是一个面向深圳市规划国土局土地治理业务的集成化分布式信息系统。由于该局行政上采用市局——分局——治理所三级运作模式,土地治理业务分布在三级治理部门,因此SZLIS系统中的分布式处理至关重要。由于Oracle难以治理空间数据,地理信息系统软件ARC/INFO不支持分布式处理,故考虑二者结合来治理,即系统中非空间数据用Oracle治理,空间数据用ARC/INFO治理。

4.1SZLIS体系结构

SZLIS运行在由七个局域子网构成的广域网上。七个局域网分别分布于深圳市规划国土局市局和六个分局,治理所采用电话拨号上网连接到分局数据库中。系统在市局和六个分局的服务器中分别建立七个数据库。

SZLIS的主要功能包括:治理业务文件的流转及办理过程;用地申请的处理和批复;用计算机进行出让地块的划界和对用地空间与文字属性的治理;进行红线图、方案图以及其它图件的制作与输出;制定地价方案,编制土地使用权出让合同书;对与土地有关的各类、各层次信息的查询功能等。在SZLIS中,市局、分局和治理所都有以上功能,且市局可以查询及审批各分局的业务数据,三级部门之间要互相流转文件。

4.2数据说明

根据系统的功能需求,SZLIS中的数据及其使用情况分为以下几类:

类型一:人员、部门、岗位、任职、单位等做参考用的数据,全局统一一份数据,更新量少,市局、分局都能更新;

类型二:文件内容、办理过程等与文件流转相关的数据,市局和分局都会收文,且市局、分局、治理所三级之间要转文;

类型三:业务属性数据,如红线、宗地属性、界址点、地价方案、土地出让合同属性等,主要业务在分局办理,部分大型业务在市局办理,部分小型业务在治理所办理;

类型四:图形数据,包括红线、宗地等地块的图形数据。

SZLIS中的图形数据用ARC/INFO治理,ARC/INFO提供接口与Oracle治理的属性数据相连接。为了实现图形数据与属性数据的有效连接,以及利用图形数据查询或更新属性数据,除通过建立ARC/INFO 与Oracle系统之间的连接外,还需利用RELATE关系建立各COVERAGE的INFO属性表(AAT和PAT)与Oracle数据库中的属性表(table)之间的关联关系,即在ARC/INFO的AAT或PAT表与Oracle表中分别建立公共的标识项,通过这些公共的标识项把AAT或PAT表中的记录与相应Oracle中的对应记录挂接起来。

4.3分布式设计

根据系统对分布式的需求,SZLIS中数据库分布式设计方案如下:

对于类型一数据,市局数据库中建立数据表,分局数据库中建立对市局表的快照和视图,对这些数据的大部分修改在市局进行,分局通过视图修改这些数据,通过快照查询这些数据;对于类型二数据,市局和分局的数据库中分别建立数据表,数据存放在数据的产生地,假如市局向分局转文,则有关此文的文件内容、办理过程等数据都拷到分局的数据库中,反之亦然;对于类型三数据,数据存放在分局的数据库中,在市局的数据库中分别建立对六个分局数据库的DATABASE LINK,市局通过视图创建或修改这些数据,通过快照查询这些数据;分局和治理所系统登录到对应分局的数据库,直接对业务数据进行操作。以宗地属性数据为例,在分局建立表PARCEL,分局操作此表,在市局建立视图和快照如下:

CREATE VIEW V$PARCEL—LH AS SELECT * FROM SUPDBA.PARCEL@SUP—LH;

CREATE SNAPSHOT S$PARCEL—LH

PCTFREE 5 PCTUSED 60

TABLESPACE users

STORAGE INITIAL 50K NEXT 50K

USING INDEX STORAGE (INITIAL 25K NEXT 25K)

REFRESH START WITH ROUND(SYSDATE + 1) + 18/24

NEXT SYSDATE + 1

AS SELECT * FROM SUPDBA.PARCEL@SUP—LH;

/* 快照从第二天18点开始刷新,天天刷新一次 */

上述三类数据存贮于SZLIS的Oracle数据库中,具体的表、视图、快照间的关系如图2所示。

图2SZLIS中各数据库对象间关系

对于类型四数据,市局、分局、治理所各存放一份ARC/INFO数据,市局系统通过与Oracle数据库中对分局远程表做的视图相连来修改属性数据,通过快照来查询属性数据;分局和治理所系统则直接通过与Oracle数据库中的表相连来操作属性数据;天天系统的更新程序要根据Oracle数据库的属性数据对市局、分局、治理所的图形数据进行增量更新,以保证三地的数据一致。

SZLIS中基于Oracle的分布式数据库组织结构如图3所示。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有