《空间概念和数据模型精.ppt》由会员分享,可在线阅读,更多相关《空间概念和数据模型精.ppt(61页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、空间概念和数据模型第1页,本讲稿共61页第2章空间概念和数据模型本章内容l2.1空间信息模型l2.2数据库设计的三个步骤l2.3趋势:用空间概念扩展ER模型l2.4趋势:用UML构建面向对象数据模型l2.5小结第2页,本讲稿共61页关键点l本章讲述空间数据库概念设计有关的技术;l空间概念、抽象、建模、数据模型、数据库设计;l场模型、对象模型。第3页,本讲稿共61页背景l传统数据库主要关心商务和管理应用领域;重点是高效安全地处理大量相对简单的事物;lGIS,CAD以及工程等具有明确的空间和几何成分的应用空间数据更为复杂,传统数据库不足以处理;空间数据库的设计和实现由应用领域专家解决;传统数据库设
2、计和实现由计算机专家解决。第4页,本讲稿共61页2.1空间信息模型现实世界(抽象)信息世界(转化)数据世界(建立概念模型)(建立数据模型)模型:对现实世界中的实体或对象的抽象或简化,是对实体或现象中的重要构成及其相互关系的表达,能反映事物固有的特征或运动变化规律。数学模型:变量-公式数据模型:类别-关系什么是模型?第5页,本讲稿共61页空间资料和数据l几何测量数据l取样数据l图纸数据建模依赖于建模对象的直接、间接的资料资料和数据和数据的分析不同领域对同一对象有不同的模型空间建模第6页,本讲稿共61页空间信息模型一个州立公园的例子用连续变量变量分布表达空间现象-场模型用离散类别类别分布表达空间现
3、象-对象模型第7页,本讲稿共61页州立公园(State-Park)的SDB例子l森林(Forest)l道路(Road)l管理员(Manager)l消防站(Fire-Station)l设施(Facility)(野营地,办公室)l河流(River)第8页,本讲稿共61页森林的场模型观点l从函数的角度看,森林可建模成一个函数。l定义域是森林占据的地理空间。值域是树种的集合;l空间二维坐标连续取值,空间(X,Y)上任何一点都对应一个函数值f(x,y)。l考虑森林分布,按林分对空间区域作穷尽划分。(0,4)(0,0)(0,2)(4,0)(2,0)橡树冷杉松树其他f(x,y)=“松树”,0 x2;2y4“
4、冷杉”,0 x2;0y2xy“橡树”,2x4;0y2“0”,2x4;2y4第9页,本讲稿共61页场模型适合表达的空间现象l物理参数温度、气压、湿度、电磁场、流体l环境参数化学污染分布、地表化学元素分布第10页,本讲稿共61页森林的对象模型l考虑f值发生变化的地方,在明确规定树种之间界限的情况下,可以得到多边形的边界。每个多边形都有一个唯一的标识和树种名称。得到二维空间中的离散对象及其坐标。(0,4)(0,0)(0,2)(4,0)(2,0)橡树冷杉松树其他xy多边形ID树种边界坐标FS1FS2FS3松树冷杉橡树(0,2),(2,2),(2,4),(0,4)(2,0),(4,0),(4,2),(2
5、,2)(0,2),(2,2),(2,4),(0,4)第11页,本讲稿共61页对象模型适合表达的空间现象l人工建筑物城市基础设施,道路、房屋、公园l自然对象河流、湖泊、热带气旋、危险区域l其他类别变量Network第12页,本讲稿共61页2.1.1场模型的结构和操作l场模型的3个组成部分:空间框架:空间格网,(定义域:空间+自变量)场函数:fi:空间框架-属性域(Ai)场操作:对单个或多个场函数值的操作l场模型的空间操作叠加操作(局部操作):给定位置的新场值取决于同一位置的多个输入场值,(f+g)(x)=L(f(x),g(x),常用于地图综合。聚焦操作:给定位置的新场值取决于该位置的一个假定小邻
6、域上的输入值,例如高程场的梯度,温度场梯度。带操作(区域操作):例如计算区域的面积、平均值等。第13页,本讲稿共61页2.1.2对象模型l将空间信息抽象成明确的可标识的类别实体或事物,称之为对象,并加以命名(名称变量)。与场函数不同(数值变量)。l空间对象的主要特点是它的属性集,包括空间属性和非空间属性。第14页,本讲稿共61页场模型与对象模型的关系l空间域上对象集合的某些属性可以形成数据场;l对场模型数据按照区间值分割或划分可以形成空间对象。第15页,本讲稿共61页2.1.3空间对象模型中的数据类型l属性数据类型:整型,浮点型,日期型等l基本空间数据类型:点、线、面、体1维2维3维第16页,
7、本讲稿共61页OGC空间对象几何体点面线空间参照系统几何体集合多面多线多边形线串2*多点1*1*线线性环多个多边形多个线串2*1*继承构成聚合第17页,本讲稿共61页SDTS的空间数据类型(对象类型)第18页,本讲稿共61页SDTS对象第19页,本讲稿共61页OracleSpatial的空间对象第20页,本讲稿共61页XML表示的空间对象0.0,0.030.0,50.060.0,100.070.0,50.0100.0,30.00.0,0.00.00.0100.0100.0第21页,本讲稿共61页2.1.4空间对象的操作l1)面向集合的操作并(Union)交(Intersection)包含属于第
8、22页,本讲稿共61页2)面向拓扑的操作l找出所有与给定对象存在拓扑关系R的对象。l对象A和B之间存在什么样的拓扑关系R?l空间对象的拓扑关系类型Point-Surface;Curve-Surface;Surface-Surface例子:地块与危险弃物场规划带或线与洪泛区第23页,本讲稿共61页平面上二元拓扑关系l基于以下的相交情况:A的内部A,边界A以及外部AB的内部B,边界B以及外部Bl九交矩阵交为空集:用0表示交为非空集:1第24页,本讲稿共61页两个空间对象的拓扑关系第25页,本讲稿共61页表表2-1 拓扑操作拓扑操作举举例例拓扑操作Endpoint(point,arc)点是弧的端点S
9、imple-nonself-intersection(arc)非自交的弧On-boundary(point,region)温哥华在加拿大和美国的边界上Inside(point,region)明尼阿波利斯市在明尼苏达州内Outside(point,region)麦迪逊市在明尼苏达州之外Open(region)加拿大的内部是个开域(不包括其边界)Close(region)Carleton郡是个闭域(包括其边界)Connected(region)瑞士是个连通域(对于区域上的任两点,都有完全内含在该区域上的路径将这两点连接起来),而日本不是连通域Inside(point,loop)点在环中Crosse
10、s(arc,region)路(弧)穿过森林(区域)Touches(region,region)明尼苏达州(区域)是威斯康星州(区域)的邻州Overlap(region,region)土地覆盖(区域)和土地利用(区域)相重叠第26页,本讲稿共61页空间对象的其他操作l方位操作l度量空间操作非拓扑操作Euclidean-distance(point,point)两点间的距离Direction(point,point)麦迪麦迪逊逊市在明尼阿波市在明尼阿波利斯市的利斯市的东东面面Length(arc)单位向量的长度是1个单位Perimeter(area)单位正方形的周长是4个单位Area(region
11、)单位正方形的面积是1个平方单位第27页,本讲稿共61页2.1.5动态空间操作l静态操作中操作对象不受操作的影响。l动态操作改变它所作用的对象。l三种基本的动态操作:创建Create销毁Destroy更新Update第28页,本讲稿共61页将空间对象映射到JAVAl找出Maple野营地周围方圆10公里内的旅游公司。Facility类Importjava.lang.*Importjava.io.*Importutil.*publicclassFacilityprotectedStringname;protectedStringtype;protectedpointlocation;第29页,本讲
12、稿共61页将空间对象映射到JAVApublicFacility(Stringname,Stringtype,Pointlocation)this.name=name;this.type=type;this.location=location;publicbolleanwithinDistance(Facilityf,doubled)if(this.location.distance(f.location)d)returntrue;elsereturnfalse;第30页,本讲稿共61页2.2数据库设计的三个步骤l概念模型设计概念模型设计(E-R)l逻辑模型设计逻辑模型设计:与概念数据模型在商用
13、DBMS上的具体设计实现(关系模型、层次模型、网状模型)有关。关系模型设计:关系表,属性,关系模式,逻辑一致性。关系查询语言SQL与关系代数(详细在第三章讲)。关系数据模型(关系代数)并不能满足空间数据的建模要求;GIS与关系数据库之间还存在相当大的语义鸿沟。目前还没有广为接受的地理信息数学模型,地图代数并不成熟。ArcGIS的Geodatabase提供了空间实体及其关系的要素-对象-关系模型,但不支持SQL查询操作。l物理模型设计物理模型设计:空间存储、索引(第4章)。第31页,本讲稿共61页E-R模型(概念模型)l实体和属性现实世界被划分为一个个实体(Entity),或对象;例如州立公园中
14、的:河流、森林、设施实体由属性(Attributes)来描述其性质,唯一标识实体的属性或属性集称为码(Key)。属性包括名称和类型:类别、比例、数值(场)。属性的单值和多值:例如森林的空间多值属性(包括多个多边形)l联系实体间关系通过联系来关联表达;第32页,本讲稿共61页二元联系l一对一联系(1:1)管理者与森林l多对一联系(M:1)设施与森林l多对多联系(M:N)河流与设施基数(Cardinality)第33页,本讲稿共61页实体及其属性RiverNameLengthLineIDDischargeQualityFacilityNameLengthLineID第34页,本讲稿共61页实体的联
15、系RiverNameLengthLineIDDischargeQualityFacilityNameLengthLineIDSupplies_water_toNMVolume第35页,本讲稿共61页E-R图州立公园例子的ER图l个实体l属性l个联系第36页,本讲稿共61页逻辑设计:关系模型l1970年CODD提出,最流行的逻辑数据模型;l表称为一个关系(Relation),列称为属性(Attribute);l元组(或行)对应关系实例;l属性的取值范围称为域:整型、浮点型、字符型、日期型。不支持自定义类型和几何类型。第37页,本讲稿共61页关系模型中的约束l逻辑一致性要求,维护某些约束:码约束:
16、每个关系必须有一个主码(primaryKey)实体完整性:主码不能取空值参照完整性:外码(foreignkey)的属性值要么是另一个关系的主码值,要么为空值。第38页,本讲稿共61页将ER模型映射到关系模型l通常有个基本步骤:(由CASE工具生成的ER图可以转化成关系模式:ERwin;OracleDesigner;RationalRose.)l将每个实体映射成一个独立的关系;l1:1的联系,将任一实体的码属性作为其他关系的外码;lM:1的联系,“1”侧关系的主码作为“M”侧关系的外码。lM:N的联系,每个M:N联系被映射成一个新的关系,关系的名称就是联系的名称,关系的主码由参与实体的主码对组成
17、。l对于多值属性,创建一个有两列的新关系:一列为拥有该多值属性的实体的码,另一列为该多值属性。第39页,本讲稿共61页州立公园的例子:M:N联系映射为新表lSupplies_Water-To是Facility实体和River实体之间的一个M:N联系,河流和设施的名字组成主码,Volume为新表的一个属性。Supplies_Water-ToFacNameRivNameVolume(varchar)(varchar)(Real)第40页,本讲稿共61页州立公园的例子:多值属性lForest-Stand有一个多值属性Polygonid。创建一个有两列的新关系:一列为拥有该多值属性的实体的码,另一列为
18、该多值属性StandId(Integer)(Integer)Forest-Standard-GeomPolygonid第41页,本讲稿共61页E-R图州立公园例子的ER图l个实体l属性l个联系第42页,本讲稿共61页州立公园中森林林份的关系模式Forest-StandStand-idSpeciesForest-name(Integer)(varchar)(varchar)Forest-Stand-GeomStand-idPolygonid(Integer)(Integer)lM:1的联系,“1”侧关系的主码作为“M”侧关系的外码。第43页,本讲稿共61页州立公园中实体和联系的关系数据库模式规则
19、:(1)实体关系表(2)M:N联系关系表(3)多值的几何属性关系表第44页,本讲稿共61页空间表l在关系数据库模型中,ER图中实体的空间属性必须用特殊的方式处理:空间属性被表示为新的关系:Pointid(Integer)Latitude(Real)Longitude(Real)PointPolygonid(Integer)Seq-no(Integer)Pointid(Integer)PolygonLineid(Integer)Seq-no(Integer)Pointid(Integer)Line第45页,本讲稿共61页2.3用空间概念扩展ER模型l用形象图扩展ER模型增加空间实体的语义(Poi
20、nt,Line,Polygon)增加空间关系(拓扑关系,Part-of关系)l用类似于BNF(Bachus-Naurform巴克斯-诺尔范式)来表达空间扩展。第46页,本讲稿共61页BNF表示的实体象形图(1)象形图任意可能的形状用户定义形状基本形状复合形状导出形状备选形状第47页,本讲稿共61页BNF表示的实体象形图(2)形状第48页,本讲稿共61页BNF表示的实体象形图()基本形状有哪些?第49页,本讲稿共61页BNF表示的实体象形图()基本形状点线面第50页,本讲稿共61页BNF表示的实体象形图()复合形状()导出形状()备选形状()任意形状()自定义形状第51页,本讲稿共61页BNF表
21、示的联系象形图lPart-of第52页,本讲稿共61页用空间概念扩展ER模型/基本形状的语法点/线面基本形状的象形图第53页,本讲稿共61页2.4趋势:用UML构建面向对象数据模型l面向对象语言促进了OODBMS的发展;lUML是用于面向对象软件设计的概念建模标准之一;l包括:类属性关系方法第54页,本讲稿共61页类、属性和关系l类:应用中所有具有相同性质的对象的抽象和封装。l属性:描述类和对象的特征。+公有的属性:属性可以被任何类访问和操作;-私有的属性:只有属性所在的类才能访问这个属性;#受保护属性:从父类派生的类可以访问该属性。l关系聚合(aggregation):描述部分整体关系泛化(
22、generalization):描述一般-特殊关系关联(association):描述不同类对象的对等关系。l方法函数,类定义的一部分,用来修改类的行为或状态。第55页,本讲稿共61页UML例子Supplies_Water_To#VolumeRiver#Name#Length+GetName()Facility#Name+GetName()Supplies_water_toForest#Name#Geometry+GetName()Belongs_to*1.*1第56页,本讲稿共61页ER与UML的比较ERUML实体(Entity)关系(Relationship)属性(Attributes)码
23、属性角色(Roles)综合与特化(Generalization&Specialization)类(Class)关联(Association)属性(Attributes)方法角色(Roles)综合与分类(Generalization&Classification)第57页,本讲稿共61页2.5小结l两种空间信息模型场模型对象模型l空间信息模型中的数据类型矢量数据模型栅格数据模型l空间对象模型中的操作l数据库设计的三个步骤l扩展ER模型lUML对象模型第58页,本讲稿共61页第二章复习重点1.两种空间信息模型(场模型、对象模型)表达空间现象的特点。2.空间对象模型中空间对象间的拓扑关系特征。3.栅
24、格数据结构和矢量数据结构。4.在对象模型中表示空间对象的主要矢量数据类型(OGC,Oraclespatial,STDS)。5.ER模型的空间扩展。6.空间对象ER模型到UML的转换。7.具有空间属性的实体ER模型的关系模式设计。第59页,本讲稿共61页作业l1.设计一个空间扩展的ER模型来表示国家(Country)和河流(River),包括他们之间的联系(Cross相交),并将此ER模型中的实体、空间和非空间属性和联系映射为关系数据库模式。国家属性包括:名字(Name),所属大洲(Continent),人口(Population),国民生产总值(GDP),空间几何形状(Polygon).河流的
25、属性:名字(Name),起源国(Country),流量(Discharge),几何形状(Line).l2.课本P59第8题,使用UML对State-Park的例子进行建模l3.课本P60第18题,研究图2-4中的ER图,对如下问题作了哪些规定?第60页,本讲稿共61页作业4.某一灌区包括一个水资源管理中心(Center),6条水渠(Channel)以及多片耕地(Parcel),其空间ER图如下:CenterNamePointIDChannelBelongs-toParcelConnectionChannel-idNameLineidParcel-idOwnerPolygonid要求:写出对应的关系数据库模式nn第61页,本讲稿共61页