您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > 第九章 空间数据库设计
9.空间数据库设计9.1空间数据库设计概述9.2需求分析9.3概念结构设计9.4逻辑结构设计9.5空间数据库物理设计9.6空间数据库的实施和维护9.7空间数据库建库9.1空间数据库设计概述9.1.1空间数据库设计原则9.1.2空间数据库设计过程9.1.1空间数据库设计原则1)空间数据库设计与应用系统设计相结合的原则2)数据独立性原则3)共享度高、冗余度低原则4)用户与系统的接口简单性原则5)系统可靠性、安全性与完整性原则6)系统具有重新组织、可修改与可扩充性原则9.1.2空间数据库设计过程应用需求(数据、处理)转换规则、DBMS功能、优化方法应用要求,DBMS详细特征需求收集和分析设计概念结构设计逻辑结构数据模型优化设计物理结构评价设计、性能预测不满意试验性运行不满意使用、维护数据库数据库运行和维护阶段数据库实施阶段物理设计阶段逻辑设计阶段概念设计阶段需求分析阶段物理实现9.2需求分析9.2.1需求分析的任务与方法9.2.2数据流图与数据字典9.2.1需求分析的任务与方法Ⅰ:明确调查内容Ⅱ:准备相应的问题清单Ⅲ:整理问题清单/形成调研报告用户基本需求调研报告用户数据现状调研报告用户系统分析调研报告用户系统分析问题清单用户数据现状问题清单用户基本需求调研问题清单系统分析分析系统环境和条件确定系统边界确定计算机实现的功能抽象出系统模型分析数据现状数据内容是否符合要求数据的有效性数据的完整性数据的现势性数据的表示方法数据加工的难易程度数据的标准化数据的数量与质量数据的来源用户需求调查现行业务处理流程数据性质、获取途径与应用范围数据间的关系数据使用频率用户的数据要求、处理方式与处理要求9.2.2数据流图与数据字典1.数据流图的基本成分基本成分名称备注加工输入数据在此进行变换产生输出数据,要注明加工的名字外部实体数据输入的源点或数据输出的汇点,要注明源点和汇点的名字数据流被加工的数据与流向,应给出数据流名字,可用名词或动词性短语命名数据存储文件需用名词或名词性短语命名或标识名字•2.数据流图分层数据存储数据来源数据流处理数据流数据输出FSFDFD/L0F312FFDFD/L11.11.21.32.12.32.22.43.13.23.3FDFD/L2.1DFD/L2.2DFD/L2.33.数据字典1)数据项数据项的描述通常包括以下内容:数据项名,数据项含义说明,别名,数据类型,长度,取值范围,取值含义,与其他数据项的逻辑关系,数据项之间的联系“取值范围”,“与其他数据项的逻辑关系”。2)数据结构数据结构反映了数据之间的组合关系。一个数据结构可以由若干个数据项组成,也可以由若干个数据结构组成,或由若干个数据项和数据结构混合组成。对数据结构的描述通常包括以下内容:数据结构名,含义说明,组成:数据项或数据结构。3)数据流是数据结构在系统内传播的路径。对数据流的描述通常包括以下内容:数据流名,说明,数据流来源,数据流去向,组成:数据结构,平均流量,高峰期流量。4)数据存储数据存储是数据结构停留或保存的地方,也是数据流的来源和去向之一。它可以是手工文档或手工凭单,也可以是计算机文档。对数据存储的描述通常包括以下内容:数据存储名,说明,编号,输入的数据流,输出的数据流数据结构,数据量,存取频度,存取方式。5)处理过程处理过程的具体处理逻辑一般用判定表或判定树来描述。数据字典中只需要描述处理过程的说明性信息,通常包括以下内容:处理过程名,说明,输入:数据流,输出:数据流,处理:简要说明。9.3概念结构设计9.3.1利用E-R模型设计9.3.2利用UML模型设计9.3.1利用E-R模型设计ER模型是最为流行的建模工具之一。实体和属性实体是物理上或者概念上独立存在的事物或对象。实体由属性来刻画性质,属性可以是单值或多值的。联系一对一(1∶1)在一对一的联系中,一个实体中每个实例只能与其他参与实体的一个实例相联系。例如,实体MANAGER和FOREST之间的联系manages就是一个一对一的联系。多对一(M∶1)多对一联系可将一个实体的多个实例与另一个参与该联系的实体的一个实例相连接。Belongs_to是实体FACILITY与FOREST之间的一个多对一联系,这里假定每个设施仅仅属于一个森林,但每个森林可以有多个设施。多对多(M∶N)一个实体的多个实例会与另一个参与该联系的实体的多个实例相联系。实体RIVER和FACILITY之间的联系supplies_water_to正是这样的一个联系。ER图用象形图扩展ER模型•实体象形图–(1)象形图•象形图是一种将对象插在方框内的微缩图表示,这些微缩图用来扩展ER图,并插到实体矩形框中的适当位置。–(2)形状•形状是象形图中的基本图形元素,它代表着空间数据模型中的元素。•一个模型元素可以是基本形状、复合形状、导出形状或备选形状。–(3)基本形状基本形状●/〗基本形状的语法●点/线〗面基本形状的象形图–(4)复合形状•为了处理那些不能用某个基本形状表示的对象,我们定义了一组聚合的形状,并用基数来量化这些复合形状。–(5)导出形状•如果一个对象的形状是由其他对象的形状导出的,那么就用斜体形式来表示这个象形图。基数0.111,n基数的语法●0,n〗n使用了基数的多重形状的象形图0,nn〗导出形状基本形状基本形状的语法●/导出形状的象形图–(6)备选形状•备选形状可以用于表示某种条件下的同一个对象。•例如,根据比例尺,一条河流可以表示成一个多边形或一条线。•备选形状基本形状导出形状•基本形状基本形状备选形状的语法●〗●〗••备选形状的象形图–(7)任意形状•对于形状的组合,我们用通配符(*)表示,它表示各种形状。•例如,一个灌溉网是由泵站(点)、水渠(线)以及水库(多边形)所组成的。–(8)用户自定义形状•除了点、线和多边形这些基本形状外,用户还可以定义自己的形状。•例如,为了表达更多的信息,用户可能更愿意使用感叹号之类的象形图来表示灌溉网。•联系象形图–联系象形图用来构建实体间联系的模型。–例如,part-of用于构建道路与路网之间联系的模型,或是用于把森林划分成林分的建模。–Part_of(网络)Part_of(分区)–联系的象形图带象形符号的ER图利用ER模型设计的步骤确定系统所有的一般实体和地理实体确定各个实体的属性确定实体间的所有联系绘制表示一个单元的空间E-R图将空间E-R图转化为GIS软件和RDBMS可接受的数据模型将各个单元的空间E-R图组合起来,并优化9.3.2利用UML模型设计UML模型是另一个流行的概念建模工具。是用于面向对象软件设计的概念层建模的新兴标准之一。它是一种综合型语言,用于在概念层对结构化模式和动态行为进行建模。UML是一种通用的可视化建模语言,用于对软件进行描述、可视化处理理解、构造和建立软件制品的文档。作为一种建模语言,UML的定义包括UML语义和UML表示法两个部分:(1)UML语义,描述基于UML的精确元模型定义。元模型为UML的所有元素在语法和语义上提供了简单、一致、通用的定义性说明,使开发者能在语义上取得一致,消除了因人而异的最佳表达方法所造成的影响。(2)UML表示法,定义UML符号的表示法,为开发者或开发工具使用这些图形符号和文本语法为系统建模提供了标准。这些图形符号和文字所表达的是应用级的模型,在语义上它是UML元模型的实例。UML包含五类图,用例图、静态图、对象图、行为图、交互图和实现图。这里我们采用静态图当中的类图。关系说明表示法关联普通关联递归关联限定关联关联类类与类之间联接的描述类与它本身之间的关联关系使用限定词将关联中多的那一端具体对象分成对象集与一个关联关系相连的类表明类与类之间的关系具有整体与部分的特点在聚合关系中,构成整体的部分类,完全隶属于整体类聚合组成通用化一个类的所以信息被另一个类继承,继承某个类的类中不仅可以有属于自己的信息,而且还拥有了被继承类中的信息,这种机制就是通用化,通用化也称继承对同一事物的两种描述建立在不同的抽象层上,体现说明和现实之间的关系实现依赖两个模型元素间的关系示例类A示例类B示例类A自相关示例类B限定条件限定关联示例类A示例类B关联类示例类A示例类B示例类A示例类B示例类A示例类B示例类A示例类B示例类A示例类BRealize0..*0..*1示例类A**表9-1UML类图表示法9.4逻辑结构设计9.4.1关系数据模型9.4.2E-R模型向关系模型转换9.4.3面向实体的逻辑模型设计9.4.1关系数据模型关系模型的基本思想是用二维表形式表示实体及其联系(见示例)。二维表中的每一列对应实体的一个属性,其中给出相应的属性值;每一行形成一个,由多种属性组成的多元组,或称元组,与一特定实体相对应。实体间联系和各二维表间联系采用关系描述或通过关系直接运算建立。关系模型中应遵循以下条件:(1)二维表中同一列的属性是相同的;(2)赋予表中各列不同名字(属性名);(3)二维表中各列的次序是无关紧要的;(4)没有相同内容的元组,即无重复元组;(5)元组在二维表中的次序是无关紧要的。关系模型的优点:(1)结构灵活,可满足所有用布尔逻辑运算和数字运算规则形成的询问要求;(2)能搜索、组合和比较不同类型的数据;(3)加入和删除数据方便;(4)适宜地理属性数据的模型。关系模型的缺点:许多操作都要求在文件中顺序查找满足特定关系的数据,若数据库很大的话,这一查找过程要花很多时间。以地图M为例:地图M中有两个面实体ⅠⅡⅠ多边形由a,b,e组成MⅡ多边形由b,c,d组成1aa边的两个端点是1,2eⅠ2b边的两个端点是2,44bcc边的两个端点是2,3dⅡd边的两个端点是3,43e边的两个端点是1,4关系模型例9.4.2E-R模型向关系模型转换将E-R图转换为关系模型实际上就是要将实体、实体的属性和实体之间的联系转化为关系模式,这种转换一般遵循如下原则:(1)一个实体型转换为一个关系模式。实体的属性就是关系的属性,实体的码就是关系的码。(2)一个M:N联系转换为一个关系模式。与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性。而关系的码为各实体码的组合。(3)一个1:N联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。(4)一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。(5)三个或三个以上实体间的一个多元联系转换为一个关系模式。与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性。而关系的码为各实体码的组合。(6)同一实体集的实体间的联系,即自联系,也可按上述1:1、1:N和M:N三种情况分别处理。(7)具有相同码的关系模式可合并。E-R图向关系模型的转换(续)转换原则⒈一个实体型转换为一个关系模式。关系的属性:实体型的属性关系的码:实体型的码例,学生实体可以转换为如下关系模式:学生(学号,姓名,出生日期,所在系,年级,平均成绩)性别、宿舍、班级、档案材料、教师、课程、教室、教科书都分别转换为一个关系模式。E-R图向关系模型的转换(续)⒉一个m:n联系转换为一个关系模式。关系的属性:与该联系相连的各实体的码以及联系本身的属性关系的码:各实体码的组合例,“选修”联系是一个m:n联系,可以将它转换为如下关系模式,其中学号与课程号为关系的组合码:选修(学号,课程号,成绩)E-R图向关系模型的转换(续)⒊一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。1)转换为一个独立的关系模式关系的属性:与该联系相连的各实体的码以及联系本身的属性关系的码:n端实体的码E-R图向关系模型的转换(续)⒊一个1:n联系可以转换为一个独立的关系模式
本文标题:第九章 空间数据库设计
链接地址:https://www.777doc.com/doc-3230544 .html