版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、11/4/20211第第10章章 空间数据库空间数据库10.1 空间数据库概述空间数据库概述11/4/2021210.1.1空间数据库的意义空间数据库的意义 从本体论的角度,研究和开发空间数据库的意义主要基于下述几个方面。 1时间和空间是物质存在的基本方式时间和空间是物质存在的基本方式 2空间数据是某些重要应用的基本形式空间数据是某些重要应用的基本形式 3复杂的非空间数据可以作为空间数据处理复杂的非空间数据可以作为空间数据处理11/4/2021310.1.2空间数据基本特征空间数据基本特征 1数据量大数据量大 结构复杂结构复杂 数据联系多样化数据联系多样化 2查询过程复杂查询过程复杂 3空间对
2、象间难以定义次序空间对象间难以定义次序11/4/2021410.1.3空间数据库作为常规数据库扩充空间数据库作为常规数据库扩充 由于空间数据库系统理论和技术还处于发展过程当中,而实际应用的需求又非常迫切,同时常规数据库(关系数据库)仍然是当今主流数据库,所以目前空间数据库是作为常规、传统数据库的扩充出现。在这种情况下,空间数据库主要包括下述一些方面的内容:11/4/20215 空间数据模型空间数据模型 基于实际应用,引入各种必须的空间数据类型,并讨相应的数据操作。 空间索引空间索引 由于空间对象之间难以合适的定义“序”,所以空间数据的索引就成为空间数据库技术的一个重要课题,在这方面已经取得了相
3、当成熟的结果,并且应用到其他的领域。 空间数据库管理系统空间数据库管理系统 空间数据模型和当前主流数据模型关系数据模型具有较大的差异,需要研究如何在rdbms基础上有效扩充空间数据管理功能的问题。11/4/2021610.2 空间数据模型空间数据模型 10.2.1空间数据模型空间数据模型 空间数据模型与其它数据模型相比,一个突出的特点就是其模型的提出、引入与相应的实际应用密切相关。 空间数据库的一个重要应用领域是gis。人们通常就以gis为应用背景,介绍其中的基本空间数据类型。我们这里的介绍主要以二维空间数据类型为主,但完全可以推广到三维以上的情形。11/4/20217 在gis中,基本空间数
4、据类型由下述三种空间对象组成: (1)点点(point) 例如城市。点只表示其空间位置,不表示其范围(extent) (2)线线(line)例如河流、道路、管道、航线、等高线、等降雨线、通信或电力线路等。线不仅表示线上各点在空间的位置,而且还有长度,即表示其在空间的延伸范围。 (3)区域区域(region)例如森林、湖泊、行政区域等。区域不但有位置,而且有面积、周长等参数,以表示其覆盖范围。11/4/20218 以上三种是最基本空间数据类型,以此为基础,还可以导出下面两种空间数据类型: (4)划分划分(partition)一个区域可以是按其自然、行政或其他特征,分成若干个区域。如果这些子区域互
5、不相交,但其“并”覆盖该区域,则此子区域的集合就称为该区域的一个划分。国家行政区域划分图,土地利用图等都是划分的例子。划分可嵌套,例如国家分成省市,省市分成县区、县区分成乡镇等。11/4/20219 (5)网络网络(network)网络是由若干点和一些点与点之间的联线组成。例如公路网、河网、电力网、电话网、交通线路图等都是网络的例子。11/4/20211010.2.2空间对象所处的环境空间对象所处的环境 1.欧氏空间欧氏空间 设r表示实数域,v是r上向量的非空集合,如果在v上定义了满足如下条件并称之为内积的一个二元函数,则称v为r的欧氏空间: 非负性 0,=0 x=0, xv 对称性 = 线性
6、性 = +,r;x,y,zv 直线r,平面r2和空间r3通过适当的定义内积都是欧氏空间。11/4/202111 2.在欧氏空间中讨论空间对象间的关系在欧氏空间中讨论空间对象间的关系 我们主要在欧氏空间的环境中定义所有空间对象相互间关系的,这些关系可以分为基于集合、拓扑、.方位和.度量的关系,我们在下面分别讨论。11/4/20211210.2.3 空间对象之间关系空间对象之间关系 1.基于集合的关系基于集合的关系 基于集合的空间对象关系主要有元素与集合的属于及不属于的关系,集合与集合的包含、相交、并等关系。在空间对象间的层次关系就适合用集合的关系理论来讨论,例如城市包含公园,公园包含树林等。11
7、/4/202113 2.基于拓扑的关系基于拓扑的关系 基于拓扑的空间对象关系主要有邻接(meet)、包含(within)和交叠(overlap),这三类拓扑关系也是空间数据查询中最有可能出现的情况。空间数据库中,基于拓扑的查询需要解决这样两个问题: 查询所有与给定对象具有某种拓扑关系r的空间对象。 对象a和b具有怎样的拓扑关系。11/4/202114 在平面上,两个对象a和b之间的二元拓扑关系时基于以下对象成分的相交(insection)关系: a的内部a?,a的边界a,a的外部a-。b的内部b?,b的边界b,b的外部b-。11/4/202115 对象的这六个部分分别构成九种相交情况: a?b
8、, a?b,a? b- ; ab?,a b,a b-;a- b? , a-b, a-b-。11/4/202116 考虑到0,1取值情况0,1,可以确定有29=512种二元拓扑关系,这里,人们研究其中的八种彼此互斥关系: 相离(disjoint),邻接(meet),交叠(overlap),相等(equal),包含(contain),在内部(inside),覆盖(cover)和被覆盖(covered by)。11/4/202117 3.基于方位的关系基于方位的关系 绝对方位 即在全球定位系统背景下定义的方位,例如东、西、南、北,东南、西南、东北等。 相对方位 即根据与给定目标的方向来定义的方位,例
9、如左右、前后、上下等。 基于观察者的方位 即按照专门指定的称为观察者参照对象来定义的方位。11/4/202118 4.基于度量的关系基于度量的关系 设有一个集合e,如果在e上定义了一个二元函数d(x,y),x,ye,满足如下条件: (1)非负性非负性 d(x,y)0 (2)对称性对称性 d(x,y)= d(y,x) (3)三角不等性三角不等性 d(x,y)d(x,z)+ d(z,y) 则称v是一个度量空间,d(x,y)称为v上的度量函数。11/4/202119 考察一个空间的“测度”,例如线段的长度,平面图形的面积,空间立体的体积,以及一个空间对象相对于另一个空间对象的距离等都是基于度量的关系
10、。11/4/20212010.2.4空间数据操作的谓词描述空间数据操作的谓词描述 从理论上讲,空间数据操作特别是空间数据查询的基础是空间对象之间的相互关系,从实际上看,由于空间数据类型取决于实际应用,空间数据操作主要也由现实中的应用所决定。下面主要介绍一些从空间对象相互关系角度考虑的相对比较基本的通用操作,而由应用的多样性,与应用密切相关的操作不拟一一介绍。空间数据操作的描述可以有谓词形式、集合形式和代数形式三种。 11/4/202121 1.基本符号基本符号 先定义空间数据操作中的一些记号。 sdt 空间数据类型 zs 大小为零(zero size)空间数据类型,例如点 nzs 大小非零(n
11、on-zero size)的空间数据类型,例如线、区域等 adt 原子(atomic)空间数据类型 例如点、线、区域 cdt 集合型(collection)空间数据类型,例如网络、划分等11/4/202122 pt 点 ln 线 rg 区域 ptn 划分 ntw 网络11/4/202123 2.基于拓扑的描述基于拓扑的描述 两个同类型空间数据是否相等(= 或 ) ptpt bool lnln bool rgrg bool 空间数据sdt是否在区域rg中(insert) sdt rg bool11/4/202124 两个大小非零的空间数据是否相交(intersects) nzs nsz bool
12、 两个区域是否邻接(isneighborof) rgrgbool11/4/202125 3.基于集合运算的描述基于集合运算的描述 (1)相交(intersection) 两条线相交为点的集合 lnlnpt 线与区域相交为线的集合 lnrgln 区域与区域相交为区域的集合 rgrgrg11/4/202126 (2)重叠(overlap) ptnptnfg (3)中心点(center) nzspt11/4/202127 4.基于度量的描述基于度量的描述 两点间距离(dist) ptpt num dist 两空间图形间的最大、最小距离(maxdist,mindist) sdtsdtnum maxdi
13、st或mindist11/4/202128 多点的直径(diameter) pt numdiameter 线的长度(length) ln num length 区域的周长(perimeter)或面积(area) rg num perimeter 或area11/4/20212910.2.5空间关系的集合描述与判断空间关系的集合描述与判断 在空间数据库中,空间关系主要用于查询。为了获得可以接受的查询效率,常常把空间对象用点、矩形和方盒等简单,规则的图形表示。因此,只需要讨论这些规则几何图形的空间关系即可。这里,规则的几何图形可以看做空间中标准的“点集合”,因此,空间数据操作的集合描述就是这些标准
14、集合间关系的描述。 11/4/202130 1.一维空间中两个线段的关系一维空间中两个线段的关系 一维空间中两个线段的7种可能的关系,分别用记号“=、%、/、|、”表示。图10-4表示了这些关系,其中,(1)(5)是相交关系,(6)(7)是非相交关系。 设a、b线段的起点和终点分别为x1a,x2a,x1b,x2b,则(1)(5)的关系可以归纳为maxx1a,x1bminx2b,x2b11/4/20213111/4/202132 2.二维空间中边平行于坐标轴矩形间的关系二维空间中边平行于坐标轴矩形间的关系 设a、b为这种矩形,其左下角坐标和右上角坐标分别为(x1a,y1a),(x2a,y2a)和
15、(x1b,y1 b),(x2 b,y2 b)。可以得到,如果a和b在x轴和y轴上的投影分别相交,则a、b相交。因此,a,b相交的条件可以表示为 max x1a,x1b min x2a,x2b 和max y1a,y1b min y2a,y2b 11/4/20213310.2.6空间关系的代数描述与运算空间关系的代数描述与运算 空间代数运算的特点在于选择条件或连接条件中出现空间谓词。投影、集合运算不涉及空间谓词,与关系代数没有本质区别。下面讨论空间选择和空间连接。11/4/202134 1.空间选择空间选择 例例10-1 写出下列空间选择表达式。 选择广东省所有城市: f(城市)其中,f=cent
16、er(城市地图)inside 广东; 城市是关系名,其中有属性“城市名”、“人口”、“城市地图”。城市地图表示市区及其周边地区,“广东”是一个区域名称。显然,如果城市中心点在广东省区域内,则该城市一定属于广东省 11/4/202135 选择广东省的所有河流: f(河流)其中 f=route(河流)inside广东; “河流”是关系名,其中有属性“河流流域图”。route是空间数据库中的一个函数,计算河流、道路等的中心线。 选择距离广州小于等于100000米,人口大于等于50万的所有城市: f(城市,广东区域图)其中f=dist(城市名,广州)500000; 城市是个关系,“广州”是城市名,f中
17、的第一个谓词是空间谓词,要用到广东省地图。11/4/202136 2.空间连接空间连接 例例10-2 对每条河流找出沿河10000米的所有城市 设“河流”、“城市”是两个关系。在关系“河流”中,有属性“河流流域图”。如果城市中心距离河流小于等于10000米,则该城市和河流匹配。可以用空间连接表示如下: 河流名,城市名(河流 f城市) 其中,f=mindist(城市名,route(河流流域图)1000011/4/20213710.2.7空间数据查询语言空间数据查询语言 一般在sql语言基础上扩充空间数据类型及其操作和相应的保留字。由于这些扩充与应用有关,目前还未形成标准,以下列举一些例子予以说明
18、。11/4/202138 例例 10-3 选择广东省所有城市及其人口: select 城市名,人口 from 城市 where center(城市地图)inside广东省;11/4/202139 选择流经广东省所有河流的河流名及其在广东省境内的长度: select 河流名,length(intersection(route(河流流域图),广东) from 河流 where route(河流流域图)intersects广东;11/4/202140 选择距离广州小于等于100000米,人口大于等于50万的所有城市: select 城市名,人口 from 城市,广东区域图 where dist(城市
19、名,广州)500000;11/4/202141 例例10-4 将例10-2表示的查询用sql风格表示出来 select 河流名,城市名 from 河流,城市 where mindist(城市名,route(河流流域图)=1000011/4/20214210.3 空间索引空间索引 空间数据库查询的开销一般比关系数据库大,特别是空间谓词求值的开销远比数值或字符串的比较要大。若采用顺序扫描方法进行查询,则效率就会很低,因此采取空间索引十分必要的。11/4/20214310.3.1空间索引概述空间索引概述 1.空间索引的思路空间索引的思路 为了减少开销,通常是采用近似规则图形例如边平行于坐标轴的最小矩
20、形来代替不规则土星进行查询。这种矩形就称为不规则区域的最小限定矩形(minimum bounding rectangle ,mbr)。设mbr左下角坐标为(x1,y1),右上角为(x2,y2),则x1,y1就分别为空间对象的最小横坐标和纵坐标,x2,y2分别为空间对象的最大横坐标和纵坐标。不但区域可以用mbr近似表示,线也可以用mbr近似表示;进一步,不但单个空间对象可以用mbr近似表示,有时mbr还可以包含多个空间对象。最小限定矩形如下图所示。11/4/20214411/4/202145 如果一个mbr还含有另外的mbr,则称其为目录mbr,否则就称为对象mbr。 如果两个空间对象相交,则相
21、应的mbr也相交;如果两个mbr不相交,则对应的两个空间对象也不相交。这样,用mbr代替空间对象检查相交情况,就可以排除一批不相交的对象。 11/4/202146 当然,两个mbr相交,并不能得出对应的空间对象一定相交,此时还需要用精确方法对mbr相交的空间对象逐个进行检验,找出真正相交的情形。先用高效率的近似方法进行粗选,再用精确方法 进行精选,这是空间数据库中常用的搜索方式。11/4/2021472.空间索引的特点空间索引的特点 (1)索引对象的无序性)索引对象的无序性 (2)索引对象的不规则性)索引对象的不规则性 (3)索引对象的交叉性)索引对象的交叉性11/4/20214810.3.2
22、空间对象的近似表示空间对象的近似表示 1.点点 点不但是基本的空间数据类型之一,而且多属性的检索也相当于多维空间点的搜索。有些规则图形也可以用高维空间的点表示。例如一维空间的线段a,b可以用二维空间的点(a,b)表示。二维空间的边平行于坐标轴的矩形(x1,y1),(x2,y2)可以用四维空间的点(x1,y1,x2,y2)表示,式中(x1,y1),(x2,y2)分别为矩形的左下角和右上角坐标。11/4/202149 2.矩形或方盒矩形或方盒 矩形和方盒不但是近似表示不规则空间对象的简单、有效手段,也是划分子空间的首选图形。11/4/202150 3.栅格(栅格(grid) 用栅格表示空间对象,类
23、似于用点阵、像素阵列表示二维图像,原则上可以推广到高维空间,但主要用于二维空间11/4/20215111/4/20215211/4/202153 每个区域都可以近似表示为二进制串的集合。这种二进制串的集合称为该区域的z元素(z-element)。要检查两个区域是否相交或包含,可以按序比较两个区域的z元素。比较时,如果一个二进制串是另一个二进制串的前缀,则后者所代表的区域必然包含于前者所代表的区域中,例如100101一定包含在1001中。 11/4/202154 用z次序的栅格表示区域,可以把本是二维的空间对象,用一维的有序二进制串序列表示。因此,空间对象所占的区域,可以用二进制串作为索引键,组
24、成一个b树。下面是a,b区域的z元素,经扫描比较,可以找出它们的重叠部分。11/4/202155 重叠部分:(a1,b1), (a1,b2)(a1,b3),(b1,a2),(b1,a3),。 在上面的重叠栏中,二元组的第一项覆盖第二项。11/4/20215610.3.3 基于大小非零空间对象查询的基于大小非零空间对象查询的r树树 空间索引按照其操作对象的不同可以分为两类。 以空间点为查询对象的索引 例如kd树和g-树技术(kd树和g树可以参考有关的空间数据库书籍)。 以非点的空间图形为查询对象的索引,例如r-树等技术。 下面,我们主要讨论基于测度非零的空间图形的r-树技术。11/4/20215
25、7 r树主要以矩形(rectangle)为检索对象,这就是r树命名的 由来。r树是由guttmann于1984年提出。与b+树相似,g树是一种平衡多分树;与b+树不同,r树不是通过逐级比较索引键的值来搜索要找的对象。而是通过逐级缩小搜索的空间范围来定位要找的对象。搜索的空间范围在二维空间中就用mrb表示。 11/4/202158 如果一个mrb中含有其他的mrb,则称其为目录mrb,否则就称为对象mrb。在r树中,每个索引项都是一个二元组(r,p),其中r表示mbr,p表示相应指针。对于叶结点,p指向r所近似表示的空间对象;在非叶结点,p指向含有r的子节点。11/4/202159 一个结点最多
26、可有m个索引项,至少有m个索引项。m一般在2与m/2之间选择。由于r树在分裂时涉及到区域的优化与调整,开销较大,为了减少分裂概率,m宜选择较低数值。有实验结果,m在0.4m左右可以获得较好的性能。11/4/202160 r树具有如下基本性质 根结点至少有两个索引项,除非个结点是r树的唯一结点; 每个非叶结点有m到m个索引项; 在上述约束条件下,保持树的平衡。 下图(a)表示了外包矩形的取法,(b)是其对应的r树的取法。11/4/20216111/4/20216211/4/202163 2.r树的查询树的查询 设给定矩形rq=(x1,y1),(x2,y2),其中(x1,y1),(x2,y2)分别
27、为rq的左下角和右上角坐标,要查询其中所包含的空间对象。在查询时,首先从r树的根结点开始。11/4/202164 如果根结点中的索引项是对象,由于这些索引项是无序的,需要逐个检查每个对象mbr是否包含在rq中,如果包含在rq中,则此对象就是选中的对象之一。设对象mbr为r0=(x3,y3),(x4,y4),式中(x3,y3),(x4,y4),分别为r0的左下角和右上角坐标。r0包含在rq中的条件为 x3x1 and y3y1 and x4x2 and y4y211/4/202165 如果根结点中的索引项是目录mbr,则逐个检查个目录mbr是否与rq相交。如果相交,则此目录mbr中的对象mbr就
28、有可能包含在rq中,需要沿此目录mbr继续搜索;如果目录mbr与rq不相交,则其中的对象mbr就不可能包含在rq中,就不必沿此目录继续向下搜索,相交的条件参见前述小节。当搜索到叶结点时,则与前面一样,逐个检查其中对象mbr是否包含在中。如果目录mbr之间有重叠,虽然重叠区中的对象只属于一个目录mbr,但是判定它属于哪一个目录mbr,仍然需要多路搜索。11/4/202166 3.r树的插入树的插入 插入是r树中开销最大的操作,对其性能影响很大,因而研究较多。设(r1,p)是待插入的对象mbr及其指向对象的指针。与r+树不同,插入哪个叶结点以及在叶结点的次序不是唯一的。r1插入哪个叶结点决定于它属于哪个目录mbr,至于它在叶结点中的次序是无关紧要的,因为空间对象本来是无序的。r1可能与多个目录mbr相交或相邻,这些目录mbr只要其中的对象mbr不超过最大值,经过
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五版交通枢纽停车场租用与交通组织合同3篇
- 二零二五年度现代农业示范区个人土地承包合作框架协议4篇
- 二零二五年度二手房交易合同模板(含贷款流程)4篇
- 二零二五年度个人人工智能产品开发与服务合同2篇
- 2025版消防安全设施定期巡检与紧急维修消防劳务合同集锦2篇
- 预制混凝土管桩施工方案
- 二零二五年度行政部合同管理内部控制与合规性评估报告2篇
- 酒泉硅岩净化板施工方案
- 骑行配件测评方案
- 2025版汽车融资租赁合同标准模板(含新能源汽车)3篇
- 《医院财务分析报告》课件
- 2025老年公寓合同管理制度
- 2024年考研政治试题及答案
- 2024-2025学年人教版数学六年级上册 期末综合卷(含答案)
- 2024中国汽车后市场年度发展报告
- 感染性腹泻的护理查房
- 天津市部分区2023-2024学年高二上学期期末考试 物理 含解析
- 2025年初级社会工作者综合能力全国考试题库(含答案)
- 《人工智能基础》全套英语教学课件(共7章)
- GB/T 35613-2024绿色产品评价纸和纸制品
- 2022-2023学年五年级数学春季开学摸底考(四)苏教版
评论
0/150
提交评论