- 1、本文档共51页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第六章 城市信息系统数据库 第二讲: 一、传统数据库的局限性 二、面向对象数据模型 三空间数据库设计 一、传统数据模型存在的主要问题 ????? 目前非空间数据最主要的数据模型是层次模型、网状模型和关系模型。这里,我们分别介绍它们用于GIS地理数据库的局限性 1、层次模型用于GIS地理数据库的局限性 很难描述复杂的地理实体间的联系,描述多对多的关系时导致物理存储上的冗余; 对任何对象的查询都必须从层次结构的根结点开始,低层次对象的查询效率很低,很难进行反向查询; 数据独立性较差,数据更新涉及许多指针,插入和删除操作比较复杂,父结点的删除意味着其下层所有子结点均被删除; 层次命令具有过程式性质,要求用户了解数据的物理结构,并在数据操纵命令中显式地给出数据的存取路径; 基本不具备演绎功能和操作代数基础。 2、网状模型用于GIS地理数据库的局限性 结构的复杂性,增加了用户查询的定位困难,要求用户熟悉数据的逻辑结构,知道自己所处的位置; 数据操作命令具有过程式性质,存在与层次模型相同的问题; 不直接支持对于层次结构的表达; 基本不具备演绎功能和操作代数基础。 3、关系模型用于GIS地理数据库的局限性 ??? 关系模型表示各种地理实体及其间的关系,方式简单、灵活,支持数据重构;具有严格的数学基础,并与一阶逻辑理论密切相关,具有一定的演绎功能;关系操作和关系演算具有非过程式特点。尽管如此,关系模型用于GIS地理数据库也还存在一些不足。主要问题是: 无法用递归和嵌套的方式来描述复杂关系的层次和网状结构,模拟和操作复杂地理对象的能力较弱; 用关系模型描述本身具有复杂结构和涵义的地理对象时,需对地理实体进行不自然的分解,导致存储模式、查询途径及操作等方面均显得语义不甚合理; 由于概念模式和存储模式的相互独立性,及实现关系之间的联系需要执行系统开销较大的联接操作,运行效率不够高。 关系模型的根本问题是不能有效地管理复杂地理对象。 二、面向对象的数据模型 (一)、面向对象的概念 (1)基本思想和基本概念 (2)面向对象的特性 (3)面向对象数据模型的四种核心技术 (4)面向对象数据模型的核心工具 (二)、面向对象的地理数据模型 (1)基本含义 (2)复杂对象及其特点 (3)面向对象地理数据模型的特点 (4)GIS中面向对象的数据模型 面向对象的基本概念是在本世纪70年代萌发出来的,它的基本做法是把系统工程中的某个模块和构件视为问题空间的一个或一类对象。到了80年代,面向对象的方法得到很快发展,在系统工程、计算机、人工智能等领域获得了广泛应用。但是,在更高级的层次上和更广泛的领域内对面向对象的方法进行研究还是90年代的事。 (1)基本思想和基本概念 面向对象的方法就是以接近人类通常思维方式的思想,将客观世界的一切实体模型化为对象。每一种对象都有各自的内部状态和运动规律,不同对象之间的相互联系和相互作用就构成了各种不同的系统。 在面向对象的方法中,对象、类、方法和消息是基本的概念 对象 对象——含有数据和操作方法的独立模块,可以认为是数据和行为的统一体。如一个城市、一棵树均可作为地理对象。对于一个对象,应具有如下特征: 具有一个唯一的标识,以表明其存在的独立性; 具有一组描述特征的属性,以表明其在某一时刻的状态; 具有一组表示行为的操作方法,用以改变对象的状态。 类 类——共享同一属性和方法集的所有对象的集合构成类。从一组对象中抽象出公共的方法和属性,并将它们保存在一类中,是面向对象的核心内容。如河流均具有共性,如名称、长度、流域面积等,以及相同的操作方法,如查询、计算长度、求流域面积等,因而可抽象为河流类。被抽象的对象,称为实例,如长江、黄河等。 消息与方法 ??? 消息——对对象进行操作的请求,是连接对象与外部世界的唯一通道。 ??? 方法——对对象的所有操作,如对对象的数据进行操作的函数、指令、例程等。 (2)面向对象的特性 (3)面向对象数据模型的四种核心技术 分类是把一组具有相同属性结构和操作方法的对象归纳或映射为一个公共类的过程。对象和类的关系是“实例”(instance-of)的关系。 概括是把几个类中某些具有部分公共特征的属性和操作方法抽象出来,形成一个更高层次、更具一般性的超类的过程。 聚集是将几个不同类的对象组合成一个更高级的复合对象的过程。术语“复合对象”用来描述更高层次的对象, 联合是将同一类对象中的几个具有部分相同属性值的对象组合起来,形成一个更高水平的集合对象的过程。 (4)面向对象数据模型的核心工具 1、继承 2、传播 ??? 传播是一种作用于聚集和联合的工具,用于描述复合对象或集合对象对成员对象的依赖性并获得成员对象的属性的过程。它通过一种强制性的手段将成员对象的属性信息传播给
文档评论(0)