专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »数据库 » 分布式数据库:土地信息系统数据库分布式设计和实现 »正文

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

来源: 发布时间:星期三, 2009年2月25日 浏览:0次 评论:0
="t18">
  摘 要 本文阐述了Oracle分布式设计技术在具有空间分布特征土地信息系统中应用并以深圳市土地治理信息系统为例具体地介绍说明了基于Oracle土地信息系统数据库分布式设计和实现
  
  要害词 分布式数据库Oracle土地信息系统
  
  1 有关土地信息
  
  用关系数据库和空间数据库协同治理土地数据是近年来土地信息系统分布式处理常用思路方法的其分布式实现主要依靠于关系数据库(如Oracle)所提供分布式功能
  本文将具体阐述土地信息系统中基于Oracle关系数据库分布式设计及空间数据分布式处理实现
  
  2 Oracle系统分布式设计技术
  
  2.1 分布式Oracle系统构架
  分布式Oracle系统是由分布式数据库治理系统(Oracle Rdbms)、支持多种操作系统和通信协议分布式处理环境软件SoftwareSQL*NET、以及和非Oracle Rdbms联接软件SoftwareSQL*CONNECT组成个软件Software群[2]其中Oracle Rdbms分布式功能主要包括分布式查询、单点事务、多个事务中多点更新及结点自治等;SQL*NET提供区别Oracle数据库间连接功能;SQL*CONNECT是实现Oracle和其它DBMS转换个接口产品
  2.2 SQL*NET
  SQL*NET是Oracle分布式处理基础其体系结构如图1所示通过SQL*NET个应用可以并行存取本地或远程多个数据库当存取远程数据库时在客户端SQL*NET将来自用户接口(UPI)层(SQL语句)组装成信息报文经过异种机环境所需要数据转换后通过网络将报文发送给远程计算机;在服务器端SQL*NET接受报文作必要数据转换并将子参数传送到适当Oracle核心入口点在相反方向上服务器端驱动SQL*NET传送是数据和返回码信息[1]
   土地信息系统数据库分布式设计和实现(图<img src='/icons/61136yi.gif' />)
  图1 SQL*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)是个面向深圳市规划国土局土地治理业务集成化分布式信息系统由于该局行政上采用市局——分局——治理所 3级运作模式土地治理业务分布在 3级治理部门因此SZLIS系统中分布式处理至关重要由于Oracle难以治理空间数据地理信息系统软件SoftwareARC/INFO不支持分布式处理故考虑 2者结合来治理即系统中非空间数据用Oracle治理空间数据用ARC/INFO治理
  4.1 SZLIS体系结构
  SZLIS运行在由 7个局域子网构成广域网上 7个局域网分别分布于深圳市规划国土局市局和 6个分局治理所采用电话拨号上网连接到分局数据库中系统在市局和 6个分局服务器中分别建立 7个数据库
  SZLIS主要功能包括:治理业务文件流转及办理过程;用地申请处理和批复;用计算机进行出让地块划界和对用地空间和文字属性治理;进行红线图、方案图以及其它图件制作和输出;制定地价方案编制土地使用权出让合同书;对和土地有关各类、各层次信息查询功能等在SZLIS中市局、分局和治理所都有以上功能且市局可以查询及审批各分局业务数据 3级部门的间要互相流转文件
  4.2 数据介绍说明
  根据系统功能需求SZLIS中数据及其使用情况分为以下几类:
  类型:人员、部门、岗位、任职、单位等做参考用数据全局统份数据更新量少市局、分局都能更新;
  类型 2:文件内容、办理过程等和文件流转相关数据市局和分局都会收文且市局、分局、治理所 3级的间要转文;
  类型 3:业务属性数据如红线、宗地属性、界址点、地价方案、土地出让合同属性等主要业务在分局办理部分大型业务在市局办理部分小型业务在治理所办理;
  类型 4:图形数据包括红线、宗地等地块图形数据
  SZLIS中图形数据用ARC/INFO治理ARC/INFO提供接口和Oracle治理属性数据相连接为了实现图形数据和属性数据有效连接以及利用图形数据查询或更新属性数据除通过建立ARC/INFO 和Oracle系统的间连接外还需利用RELATE关系建立各COVERAGEINFO属性表(AAT和PAT)和Oracle数据库中属性表(table)的间关联关系即在ARC/INFOAAT或PAT表和Oracle表中分别建立公共标识项通过这些公共标识项把AAT或PAT表中记录和相应Oracle中对应记录挂接起来
  4.3 分布式设计
  根据系统对分布式需求SZLIS中数据库分布式设计方案如下:
  对于类型数据市局数据库中建立数据表分局数据库中建立对市局表快照和视图对这些数据大部分修改在市局进行分局通过视图修改这些数据通过快照查询这些数据;对于类型 2数据市局和分局数据库中分别建立数据表数据存放在数据产生地假如市局向分局转文则有关此文文件内容、办理过程等数据都拷到分局数据库中反的亦然;对于类型 3数据数据存放在分局数据库中在市局数据库中分别建立对 6个分局数据库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;
  /* 快照从第 2天18点开始刷新天天刷新次 */
  上述 3类数据存贮于SZLISOracle数据库中具体表、视图、快照间关系如图2所示
   土地信息系统数据库分布式设计和实现(图 2)
  图2 SZLIS中各数据库对象间关系
  
  对于类型 4数据市局、分局、治理所各存放份ARC/INFO数据市局系统通过和Oracle数据库中对分局远程表做视图相连来修改属性数据通过快照来查询属性数据;分局和治理所系统则直接通过和Oracle数据库中表相连来操作属性数据;天天系统更新要根据Oracle数据库属性数据对市局、分局、治理所图形数据进行增量更新以保证 3地数据
  SZLIS中基于Oracle分布式数据库组织结构如图3所示
  
0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: