第8章 空间数据库设计1
• 1.空间数据逻辑设计
层1
关系表
层2
关系表
层3
关系表
(1)图块结构设计 为了在计算机中对大容量的空间数据进行有 效的组织,需要将所研究的地理区域分割成两块 或多块独立的块,然后对这些图块建立空间索引。 图块的结构构成空间数据库的基本组成部分。图 块划分尺寸根据实际需要而定。必须遵循一定的 原则。
2.需求分析
这是整个数据库设计过程中比较费时、复杂同时也是 很重要的一步,是整个空间数据库设计与建立的基础。 主要收集数据库所有用户的信息内容和处理要求,并 加以规格化和分析。在分析用户需求时,要确保用户目标 的一致性。
• 需求分析阶段主要进行以下工作:
–1)调查用户需求:了解用户特点和要求,取得设 计者与用户对需求的一致看法。 –2)需求数据的收集和分析:包括信息需求(信息内 容、特征、需要存储的数据)、信息加工处理要求 (如响应时间)、完整性与安全性要求等。
• 概念结构设计策略与方法(四种)
–(1) 自顶向下。即首先定义全局概念结构的框 架,然后逐步细化。 –(2) 自底向上。即首先定义各局部应用的概念 结构,然后将它们集成起来,得到全局概念结 构。
–(3)逐步扩张。即首先确定核心业务的概念结构 , 然后以此为中向外扩张,最终实现全局概念结构。 –(4)混合策略。即将自顶向下和自底向下两种策略 结合使用,首先确定全局的框架,划分为若干个 局部概念模型,再采取自底向上的策略实现各局 部的概念模型,加以合并实现全局概念模型。
图块1 图块2 图块3 图块4
原则:
其一,按存取频率较高的空间分布单元划分图块,以提高 数据库的存取效率。 其二,图块的划分应使基本存储单元具有较为合理的数据 量。数据量过大,会造成查询分析效率低下;数据量过小, 不便于数据管理。 其三,在定义图块分区时,应充分考虑未来地图数据更新 的图形属性信息源及空间分布,以利于更新和维护。
土地利用 d 图斑 线状地物 零星地物 住宅 建筑物 o 农庄
3 ) ER 模型的操作:在利用 ER 模型进行数据设计 时,常常要对 ER 图进行各种变换,即 ER 模型的 操作。这些操作包括实体类型、联系类型各种 属性的分裂与合并、增加与删除、转位等。
A.实体/联系(类型)的分裂与合并 一个实体类型可以根据需要分解成若干实体类 型。 分裂方式有水平分裂和垂直分裂两种。 水平分裂是指将实体分解成互不相关的子类, 如将客户分为男客户和女客户。 垂直分裂是指对实体的属性进行分组,如将客 户信息中固定不变和经常变动的属性数据分别作为 一个实体。
ER模型( Entity Relationship Model ) ER 模型即实体联系模型,它是概念设计的主要方 法和最常用的表达形式。 ER模型可以形象地用图表表示,称为ER图。
在 ER 图中,以矩形框表示实体类型,用椭圆表示 实体类型和联系类型的属性,所有类型和属性都以相 应的名称记入框内。联系类型和相关实体类型间以直 线相连,并在直线的两端标明联系的种类(?)。
• 需求分析的整理一般采用数据流分析法,分析结果以数 据流图DFD(Data Flow Diagram)表示。DFD同时也可以 作为自顶向下逐步细化的描述工具。
–3)编制用户需求说明书:包括需求分析的目标、 任务、具体需求说明、系统功能与性能、运行环境 等,是需求分析的最终成果。
3.概念设计
概念设计以需求分析为基础,将需求转换成通用的信 息结构模型。这个抽象的信息系统模型被称为概念数据模 型。概念模型不依赖于计算机系统和具体DBMS。
• 2.属性数据逻辑设计
–从理论上讲,设计逻辑结构应该选择最适于描述与表 达相应概念结构的数据模型,然后对支持这种数据模 型的各种DBMS进行比较,综合考虑性能、价格等各种 因素,从中选出最合适的DBMS。 –但在实际当中,往往是已给定了某台机器,设计人员 没有选择DBMS的余地。目前DBMS产品一般只支持关系、 网状、层次三种模型中的某一种,对某一种数据模型, 各个机器系统又有许多不同的限制,提供不同的环境 与工具。
第八章 空间数据库设计
本章内容
• • • • • 空间数据库设计概述 面向对象的数据库设计 地理信息元数据设计 基于Geodatabase的数据库设计 空间数据采集建库
第一节 空间数据库设计概述
• 空间数据库设计概念 • 空间数据设计的目标 • 空间数据库设计的内容
一、空间数据库设计概念
• 数据库设计:
4)模式修正:通过合并、分解或选用另外结构等方法, 完善需求分析和概念设计过程中没能满足的用户需求。
特点 海量数据管理 空间与属性数据一体 化 开放性 可扩充能力 多用户并发 数据维护与更新 权限控制
文件方式 可以
基于RDBMS的空间数据 库 擅长
难于实现一体化,需 要通过连接实现一致 一体化 性维护 特殊格式 工业标准,开放式管理 弱 强 难于实现 很强的并发控制能力 文件数量多,管理困 只需一个数据库 难 弱 强
• 依赖性实体和识别联系用双线矩形框和双线菱形框表 示。 • 依赖性实体总是强制性参与到识别联系中,否则其实 例无法识别。 • 依赖实体与父实体之间的联系是1:1或M:1的关系。
中心线 编号 路段 M …… 组成 名称 编号 类型 长度
1 ……
道路
终点
起点
2)子类和超类:某个实体类型E1中所有实体同时也是另一 实体类型 E2中的实体,如中间销售商和销售商。称E1 是E2 的子 类,E2称为超类。 子类的一个很重要的特征是继承,子类继承超类的所有抽 象。 从一个类产生其子类的操作称为特化,反过来,从类产生 超类的操作成泛化。特化和泛化互为反操作。 另外,同一实体类型若干子类之间可能相交,也可能不相 交,这取决于子类本身的定义。
• 属性表与属性关系的设计
空间 参数 地块 编码 户主 地址 电话 购买 日期 价格 土地 利用 类型 土地 面积 建造 利用 日期 状态
空间 参数
分析和设计阶段
实现和运行阶段
数据库设计的基本步骤
1.规划
该阶段主要进行建立数据库的必要性和可行性分析,确定数据库 系统在组织和管理信息中的地位,以及各个数据库之间的关系。 在这个阶段要分析基于数据库系统的基本功能,再确定数据库的 支持范围时,最好实现建立若干个范围不同的公用或专用数据库, 然后逐步完成整个大型信息系统的建设。 另外,还要对数据库与模型库、方法库或信息系统中其它成分的 关系进行明确的规定。 在数据库规划工作完成后,应编制详尽的可行性分析报告及数据 库规划纲要,内容包括信息范围、信息来源、人力资源、设备资源 、软件及支持工具、开发成本及进度安排等。
4.逻辑设计 逻辑设计又称为“实现设计”,逻辑设计的目的是 从概念结构中(如 ER图)导出特定 DBMS 可处理的数据 库的逻辑结构(数据库模式和外模式),这些模式在 功能、性能、完整性和一致性约束以及数据库的可扩 充性等方面均应满足用户的各种要求。
对关系数据库而言,其逻辑设计的主要步骤如下: 1)导出初始模式:将概念设计结果(全局ER模式)转 换成初始关系模式。 2)规范化处理:目的是减少乃至消除关系模式中存在 的各种异常,改善完整性、一致性和存储效率。 3)模式和性能评价:评价设计出的模式是否完全满足用 户的功能要求,是否具有较高的效率。
1:1,1:M或M:N
建立ER模型的基本步骤: 1)确定实体类型:如城镇和道路 2)确定联系类型:如城镇位于某条道路边 3)确定实体类型和联系类型画出ER图 4)确定实体类型与联系类型的属性
名称 编号 类型 长度 城镇 几何中心 位于 道路 起点 人口数 空间属性
名称
编号
长度
道路中心线
终点
ER 模型的基本成分是实体、联系和属性。在准确模 拟现实时,还应对基本的ER模型进行扩展。对ER模型 的扩展主要包括以下几方面内容: 1)弱实体的划分与依赖联系:有些实体本身不能依据 其属性值唯一的被识别,而必须依赖于它所联系的其 他实体(父实体)才能被识别。这种实体称为依赖性 实体或弱实体。 例如道路数据库中的路段,307国道湖北段。
• 表示概念模型最有力的工具是 E-R模型 • 即实体-联系模型,包括 实体、联系和属性 三个 基本成分。 • 用它来描述现实地理世界,不必考虑信息的存 储结构、存取路径及存取效率等与计算机有关 的问题,比一般的数据模型更接近于现实地理 世界,具有直观、自然、语义较丰富等特点, 在地理数据库设计中得到了广泛应用。
• 实体的合并是分裂的逆操作,将多个实体合并 为一个实体。 • 在实体类型的合并和分裂过程中,实体间的联 系类型也应作相应操作,即分裂实体时相关的 联系也分裂成多个联系,合并实体时其相关的 多个联系也随之合并成一个联系。
• 联系的分裂是将一个联系分裂成多个联系,联 系的分裂不会引起实体的分裂。 • 联系的合并是将多个联系个并成一个联系,联 系的合并不会引起实体的合并。
• 在多数情况下,图块按照地图图幅大小来划分, 如小比例尺地图按经纬线分幅,大比例尺地图 按矩形分幅。由于分幅后会出现某一空间实体 跨越不同图幅,空间实体被分割成若干空间基 本单元情况,因此需要在图幅、空间实体和空 间基本单元之间建立连接关系。
• 主要通过建立空间索引表来实现,即建立:
–a.图幅总索引表,记录各个图幅在整个区域的位 臵; –b.空间实体素引表,记录每个空间实体在各图幅 上的分布; –c.基本单元素引表,记录每一基本单元与邻近八 个图幅所连接的图幅号以及基本单元序号。
B.实体/属性的转位: 向上转位:将某些实体的属性修改为实体。
向下转位:将某些实体修改为实体的属性。
编号 名称 类型 长度 编号 类型 长度 中心线 表示 道路 终点
道路
终点
起点
起点
中心线
坐标串
名称
利用ER模型进行概念设计大致分为三个步骤: 1)设计局部ER模型
2)设计全局ER模型
3)全局ER模型的优化