数据库定义.ppt_第1页
数据库定义.ppt_第2页
数据库定义.ppt_第3页
数据库定义.ppt_第4页
数据库定义.ppt_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 数据库定义 特点空间数据库 空间数据库管理系统的实现方法层次模型 网状模型 关系模型矢量数据 特点 栅格数据 特点 2 第四章土地数据库 数据库的一般概念土地信息的概念数据模型空间数据库设计土地信息的数据结构数据库管理系统 3 第一节数据库的一般概念 1 数据库 数据库管理系统和数据库应用系统2 数据库的主要特征3 数据库的系统结构4 空间数据库的数据模型 4 1 数据库 数据库管理系统和数据库应用系统 1 1数据库 DataBase 数据库 按照一定结构组织的相关数据的集合 是在计算机存储设备上合理存放的相互关联的数据集空间数据库 存储空间数据的集合土地数据库 属空间数据库 存储相关土地空间数据的集合 5 数据库的发展历程 从文件管理到数据库管理 数据库是数据管理的高级阶段 是从文件管理系统发展而来的文件管理 20世纪50年代 访问方式 一次最多存取一个记录数据结构 不同文件之间缺乏相互联系的结构数据库管理 20世纪60年代末 诞生了第一个商品化的数据库系统 美国IBM公司的IMS系统 InformationManagementSystem 文件管理 数据库管理 6 1 2数据库管理系统 数据库管理系统 DataBaseManagementSystem DBMS 提供数据库建立 使用和管理工具的软件系统 7 1 2 1数据库管理系统的功能 一般地 数据库管理系统应该具有下列3项功能 1 数据定义功能 DBMS能向用户提供 数据定义语言 DataDefinitionLanguage 简称DDL 用于描述数据库的结构 2 数据操作功能 对数据进行检索和查询 是数据库的主要应用 为此 DBMS向用户提供 数据操作语言 DataManipulationLanguage 简称DML 支持用户对数据库中的数据进行查询 更新 包括增加 删除 修改 等操作 8 3 控制和管理功能 除DDL和DML两类语句外 DBMS还具有必要的控制和管理功能 其中包括 在多用户使用时对数据进行的 并发控制 对用户权限实施监督的 安全性检查 数据的备份 恢复和转储功能 对数据库运行情况的监控和报告等 通常数据库系统的规模越大 这类功能也越强 所以大型机DBMS的管理功能一般比PC机DBMS更强 9 1 2 2空间数据库管理系统 空间数据库管理系统 建立在常规数据库管理系统之上 除了完成常规数据库管理系统所必备的功能之外 还能够对地理空间数据进行管理 LIS的数据库管理系统属空间数据库管理系统 10 1 2 3空间数据库管理系统的实现方法 两种方法 一是直接对常规数据库管理系统进行功能扩展 加入一定数量的空间数据存储与管理功能 运用这一种方法比较有代表性的是Oracle等系统 另一种方法是在常规数据库管理系统之上添加一层空间数据库引擎 以获得常规数据库管理系统功能之外的空间数据存储和管理的能力 代表性的系统是ESRI的SDE SpatialDatabaseEngine 等 11 1 3数据库应用系统 数据库应用系统 DataBaseApplicationSystems 简称DBAS 指基于数据库的应用系统 空间数据库的数据库应用系统 由空间分析模型和应用模型所组成的软件 通过它不但可以全面地管理空间数据 还可以运用空间数据进行分析与决策 12 二 数据库的主要特征 数据库一般具有如下的主要特征 能够减少空间数据存储的冗余量 提供稳定的空间数据结构 满足用户对空间数据及时访问的需求 在数据元素间维持复杂的联系 以反映空间数据的复杂性 支持多种多样的决策需要 具有较强的应用适应性 应用程序对数据资源的共享 服务于一个或多个应用程序 数据独立性 数据的存放尽可能地独立于使用它的应用程序 统一管理 例如对数据的维护 更新 增删和检索等一系列操作 13 三 数据库的系统结构 概念模式 是数据库的总框架 是对数据库中关于目标存储的逻辑结构和特性 基本操作 目标以及目标与操作的关系和依赖的描述 2 外模式亦称子模式 用户级 是数据库用户的数据视图 不同用户可以有自己的视图3 内模式亦称存储模式 物理级 是对数据库在物理存储器上具体实现的描述 数据库系统的结构 一般分为三个层次 它们是概念模式 外模式和内模式 14 中间存在两次映像 一次是外模式与概念模式间的映像定义了用户和逻辑结构之间的对应关系 保证了数据的逻辑独立性 另一次是概念模式与内模式之间的映像 定义了逻辑结构和物理结构之间的对应关系 使逻辑数据独立于物理数据 外模式 内模式 概念模式 数据库 映像 映像 15 四 空间数据库的数据模型 数据模型 以抽象的形式描述和反映一个部门和系统的业务活动和信息流程 选择和建立数据模型的目的是用最佳的方式反映本部门的业务对象及信息流程和以最佳的方式为用户提供访问数据库的逻辑接口 数据结构 数据操作和数据的约束条件是数据模型的三要素 数据模型在数据库系统中的作用 现实世界中的事物及联系是用数据模型来描述的 数据库中各种操作功能的实现是基于不同的数据模型的 因而数据库的核心问题是模型问题 空间数据库的设计最终可以归结为空间数据模型的设计 空间数据模型是衡量土地信息系统功能强弱与优劣的主要因素之一 16 数据模型中常用概念 实体 实体是可以相互区别而又可以被人识别的事 物 概念的统称 有具体的 也有抽象的 有物理上存在的 也有概念性的 具有共性的一类实体可以划分为实体集 属性 实体的属性是指描述实体的若干特征 例如 宗地有地号 坐落 四至 面积等属性 联系 实体与实体之间会有各种关系 例如建设用地管理处与用地申请者有审批的关系等 这种实体与实体之间的关系抽象为联系 联系也可以有自己的属性 如建设用地管理处与用地申请者之间的审批联系有审批号 审批意见 审批日期 审批人等属性 码 惟一标识实体的属性集 域 属性的取值范围 17 实体间的逻辑关系 在现实世界中 实体间之间是彼此联系的 实体之间关系的种类繁多 例如拥有 属于关系 集 子集关系 父 子关系 实体的组成关系 空间拓扑关系等 如果仅考虑实体间的逻辑关系 则只有一对一 一对多 多对多三种关系类型 18 1 一对一的联系 1 1 这种联系是指对实体集A中的一个实体ai 在实体集B中有时有一个实体bj与之对应 反之亦然 在1 1的联系中 一个实体集中的实体可以标志另一个实体集中的实体 即ai bj 反之bj ai 例如 在地下水灌区内 每眼机井负责灌溉一块农田 机井与农田地块之间的关系就是一种一对一的联系 见图5 1 a 19 2 一对多的联系 1 N 现实世界存在较多的是一对多的联系 这种联系可以表达为 对实体集A中一个实体ai 在实体集B中存在一个子集Bi bi1 bi2 bin 与之联系 河流与跨河桥梁之间就具有一对多的联系 一条河流上有多座桥梁 见图5 1 b 20 3 多对多的联系 M N 这是现实世界中最复杂的联系 即对于实体集A中的一个元素ai 在集合B中存在一个实体子集Bi bi1 bi2 bin 与之相联系 反之亦然 地理实体中的多对多联系是很多的 例如 泵站与河流之间有多对多联系 一个泵站可以属于不同的河流 一条河流又有多个泵站 地理环境与种植的作物之间有多对多联系 同一种地理环境可以生长不同的作物 同一种作物又可生长在不同地理环境中 见图5 1 c 21 第二节土地信息的概念数据模型 数据模型是数据库系统的核心和基础 各种机器上实现的数据库管理系统软件都是基于某种数据模型的 目前 数据库领域中最常用的数据模型有五种一 层次模型二 网状模型三 关系模型四 面向对象模型五 时空模型 22 一 层次模型 用树状结构来表示实体之间联系的模型称为层次模型 它揭示的是实体 记录 之间的一对多 1 n 的联系 通常把表示1的实体放在上方 称为 父结点 将表示n的实体放在下方 称为 子结点 最上层只能有一个结点 称为根结点 为符合1 n的联系 除根结点外 其他的结点都有且仅有一个 父结点 但是每个父结点可以对多个子结点 最下层的末端结点称为叶结点 23 层次模型的两个限制条件 1 有且仅有一个结点无父结点 即根结点 2 除根结点之外 所有结点有且仅有一个父结点 层次模型的优点是容易理解 单码查找速度快 易于更新和扩充 但是多码查找比较困难 一般需要较大的索引文件 所以产生数据冗余 24 二 网状模型 网状模型的有向图与层次模型的有向树比较 其区别在于 1 可以有零个或多个结点元父结点 2 至少有一个结点有多于一个父结点 3 允许两个结点之间有两种或多种联系 25 网状模型示例 表示自然要素 社会经济要素和地理位置之间联系的示例 网状模型较层次模型扩充了实体之间联系的限制 可以较灵活地表示实体之间的多种关系 对确定的数据表示效率较高 数据冗余也较小 适合于表示关系较复杂的地理数据和具有网络状特征的地理实体 但网状模型的数据指针比较复杂 数据更新也较为繁琐 26 三 关系模型 关系模型源于数学 它把数据看成是二维表格中的元素 而这个二维表格就是所谓关系 表中的每一行代表一个记录 每一列称为关系的一个属性集 列可以命名 称为属性名 或数据项类型 一个实体可由若干关系组成 而关系表的集合就构成关系模型 对这种数字化的模型 每个关系应满足下列条件 1 表中的每一列属性都是不能再分的基本字段 2 各列被指定一个相异的名字 3 各行 记录 相异 不允许重复 4 行 列次序无关 综合以上四点可知 一个关系是一个概念文件 该文件中的每个记录是惟一的 所有记录具有相同的个数和类型的宇段 也就是说 所有的记录有同样的固定长度和格式 27 利用关系模型表示空间数据实例图4 3所示的多边形地图 可用下列关系表示出多边形实体之间的联系 可以通过连接字段来实现 例如表4 1 关系1中边界弧段号C可与表4 2关系2中相同字段边界弧段号C进行连接 同样道理 表4 2关系2中结点3也可与表4 3关系3中结点号3进行连接 28 关系模型的特点 关系模型的最大特色是对实体描述的一致性 上述示例中用连接字段实现各实体之间联系说明这一点 关系模型正是利用数据本身通过公共值隐含地表达它们之间的联系 此外 关系模型还具有结构简单 数据修改灵活和更新方便 容易维护等特点 所以它是当前数据库中较常用的数据模型 目前 很多LIS中的属性数据都是采用关系数据模型 甚至某些关系还采用关系数据库管理系统来管理空间数据 29 四 面向对象模型 传统数据模型层次 网状和关系三种模型 它们不但在数据库发展的历史过程中起了重要作用 而且现代仍然是商用数据库的主要数据模型 但由于历史和技术条件的限制 传统数据模型带有很深的面向计算机的烙印 在非事务处理的应用 例如CAD 办公自动化 基于知识的系统等 人们越来越感到它们的局限性 其主要弱点可概括为 1 以记录为基础 不能很好地面向用户和应用 2 不能以自然的方式表示实体之间的联系 3 语义贫乏 4 数据类型太少 难以满足应用需要 30 面向对象方法和面向对象数据库 面向对象 object oriented 方法 也称面向目标方法 是为了克服软件质量和软件生产率低下发展起来的一种程序设计方法 目前它在涉及计算机科学的许多领域得到重视 面向对象数据库 把面向对象的技术运用到数据库技术中 在逻辑上和物理上都从面向记录上升为面向具有复杂结构的对象 从而大幅度地提高了管理效率 降低用户使用复杂性 为版本管理 动态模式修改等功能的实现创造了条件 31 面向对象模型 它是在前面数据模型的基础上发展起来的数据模型技术 它将现实世界的实体都抽象成对象 即将模拟实体状态的数据和操作封装为相对独立的模块 然后进行分类和概括 特点 以人们认识问题的自然方式将所有的对象构建成一个分层结构 来描述问题领域中各实体之间的相互关系和相互作用 从而建立起一个比较完整的结构模型 使得现实世界的构成与人们认识问题的方式直接对应 与GIS的关系 面向对象的数据模型既可以表达图形数据又可以有效地表达属性数据 为目前GIS所面临的问题提供了较好的解决途径 涉及到的概念 对象 类 概括 联合 聚集 与语义模型 继承 传播 工具 32 1 对象 object 和对象标识 在面向对象的系统中 所有的概念实体都可以模型化为对象 多边形地图上的一个结点或一条弧段是对象 一条河流或一个省也是一个对象 一个对象是由描述该对象状态的一组数据和表达它的行为的一组操作 方法 组成 例如 河流的坐标数据描述了它的位置和形状 而河流的变迁移动表达了它的行为 由此可见 对象是数据和行为的统一体 每个对象有一个惟一的不可改变的对象标识 用以确定和检索这个对象 对象标识符独立于对象的值存在 通常由系统产生 在整个系统范围内是惟一的 两个对象即使内部状态值和方法都相同 如标识符不同 仍认为是两个相等而不同的对象 33 1 对象和对象标识 一个对象是一个三元组object ID S M 其中 ID为对象标识 M描述该对象行为的一组操作 方法 S描述该对象状态的一组数据 它可以直接是一属性值 也可以是另外一组对象的集合 34 2 类 classification 类是关于同类对象的集合 具有相同属性和操作的对象组合在一起称为类 属于同一类的所有对象共享相同的属性项和操作方法 每个对象都是这个类的一个实例 即每个对象可能有不同的属性值 可以用一个三元组来建立一个类型 Class CID CS CM 其中 CID为类标识或类型名 CS为状态描述部分 CM为应用于该类的操作 显然有 S CS和M CM 当Object Class时 因此 在实际的系统中 仅需对每个类型定义一组操作 供该类中的每个对象应用 由于每个对象的内部状态不完全相同 所以要分别存储每个对象的属性值 35 实例 一个城市的LIS中 包括了建筑物 街道 公园 电力设施等类型建筑物类中有宾馆 饭店 商店 住宅等 它们具有相同属性 位置 用途 地址 房主 建筑日期等 和操作 显示 更新 编辑等 每个建筑物都使用建筑物类中操作过程的程序代码 代入各自的属性值操作该对象 洪山路一号楼则是建筑物类中的一个实例 即对象 36 3 概括 generalization 在定义类型时 将几种类中某些具有公共特征的属性和操作抽象出来 形成一种更一般的超类 superclass 比如 设有两种类型Classl CID1 CSA CSB CMA CMB Class2 CID2 CSA CSc CMACMc Classl和Class2中都带有相同的属性子集CSA和操作子集CMA并且CSA CS1和CSA CS2及CMA CM1和CMA CM2因而将它们抽象出来 形成一种超类superclass SID CSA CMA 在定义了超类以后 Classl和Class2可表示为Classl CID1 CSB CMB Class2 CID2 CSc CMc 此时 Classl和Class2称为Superclass的子类 Subclass 即 超类与子类一起表示原有的内容 其意义在于简化原有的表示方式 抽出共同项 37 例如 建筑物是饭店的超类 因为饭店也是建筑物 子类还可以进一步分类 如饭店类可以进一步分为小餐馆 普通旅社 宾馆 招待所等类型 所以 一个类可能是某个或某几个超类的子类 同时又可能是几个子类的超类 饭店 建筑面积 餐厅 旅馆 建筑面积 客房 建筑物 建筑面积 超类饭店 餐厅 子类旅馆 客房 子类 38 建立超类的意义 建立超类实际上是一种概括 是共同属性项和操作的提取 这样可避免说明和存储上的大量冗余 由于超类和子类的分开表示 所以就需要一种机制 在获取子类对象的状态和操作时 能自动得到它的超类的状态和操作 这就是面向对象方法中著名模型工具一继承 它提供了对世界简明而精确的描述 以利于共享说明和应用的实现 39 4 继承 inheritance 继承是一种服务于概括的工具 在上述概括的概念中 子类的某些属性和操作来源于它的超类 例如在前面概括的例子中 饭店类是建筑物类的子类 它的一些操作 如显示和删除目标等 以及一些属性如房主 地址 建筑日期等是所有建筑物公有的 所以仅在建筑物类中定义它们 然后遗传给饭店类等子类 在遗传的过程中 还可以将超类的属性和操作遗传给子类的子类 例如可将建筑物类的一些操作和属性通过饭店类遗传给孙类一招待所类等 继承是一有力的建模工具 它有助于进行共享说明和应用的实现 提供了对世界简明精确的描述 继承有单个继承和多个继承 单个继承是指子类仅有一个直接的父类 而多个继承允许多于一个的直接父类 40 多个继承实例 单个继承实例 属性 位置 用途 面积 操作 查询 删除 属性 饭店设备 房间 操作 41 5 联合 association 在定义对象时 将同一类对象中的几个具有相同属性值的对象组合起来 为了避免重复 设立一个更高水平的对象表示那些相同的属性值 假设有两个对象Object1 ID1 SA SB M object2 ID2 SA Sc M 其中 这两个对象具有一部分相同的属性值 可设立新对象Objet3包含Object1和Object2 Object3 ID3 SA object1 Object2 M 此时 Object1和Object2可变为Object1 ID1 SB M Object2 ID2 Sc M Object1和Object2称为 分子对象 这里联合与概括的概念不同 概括是对类型进行抽象概括 而联合是对对象进行抽象联合 联合的另一个特征是分子对象应同属于一个类型 联合所得到的对象叫 组合对象 42 6 聚集 aegadon 聚集是将几个不同特征的对象组合成一个更高水平的复合对象 每个不同特征的对象是该复合对象的一部分 它们有自己的属性描述数据和操作 这些是不能为复合对象所公用的 但复合对象可以从它们那里派生得到一些信息 例如 弧段聚集成线状地物或面状地物 简单地物组成复杂地物 例如 设有两种不同特征的分子对象Object1 ID1 S1 M1 Object2 ID2 S2 M2 用它们组成一个新的复合对象Object3 ID3 S3 Object1 Su Object2 Sv M3 其中Su S1 Sv S2 从上式中可见 复合对象Object3拥有自己的属性值和操作 它仅是从分子对象中提取部分属性值 且一般不继承子对象的操作 43 7 传播 propagation 在联合和聚集这两种对象中 是用 传播 作为传递子对象的属性到复杂对象的工具 即复杂对象的某些属性值不单独存于数据库中 而是从它的子对象中提取或派生 例如 一个多边形的位置坐标数据 并不直接存于多边形文件中 而是存于弧段和节点文件中 多边形文件仅提供一种组合对象的功能和机制 通过建立聚集对象 借助于传播的工具可以得到多边形的位置信息 44 继承和传播的比较 继承应用于类 传播应用于对象它们分别用在不同的方面 继承是在概括中使用 而传播则作用于联合和聚集的结构 继承是以从上到下的方式 从一般类型到更详细的类型 而传播则以自下而上的方式 提取或派生子目标的值 继承包括了属性和操作 而传播一般仅涉及属性值 继承一般是隐含的 系统提供一种机制 只要声明子类与超类的关系 超类的特征一般会自动遗传给它的子类 而传播是一种带强制性的工具 它需要在复杂目标显式定义它的每个子目标 并声明它需要传播哪些属性值 45 2 LIS中的面向对象模型 1 LIS中面向对象的几何数据模型如图6 4所示 从几何方面划分 GIS的各种地物可抽象为点状地物 线状地物 面状地物以及由它们混合组成的复杂地物 每一种几何地物又可能由一些更简单的几何图形元素构成 46 例如 一个面状地物是由周边弧段和中间面域组成 弧段又涉及到节点和中间点坐标 或者说 节点的坐标传播给弧段 弧段聚集成线状地物或面状地物 简单地物组成复杂地物 47 2 拓扑关系与面向对象模型通常地物之间的相邻和关联关系可通过公共节点 公共弧段的数据共事来隐含表达 在面向对象数据模型中 数据共享是其重要的特征 将每条弧段的两个端点 通常它们与另外的弧段公用 抽象出来 建立应该单独的节点对象类型 而在弧

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论