第八讲 时态GIS数据库

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第八讲时态GIS数据库主要内容一地理信息的时态性分析二时态GIS数据模型三时态GIS实现方法四元组级基态修正法一地理信息的时态性分析现有的GIS大多不具有处理数据的时间动态性的功能,而只是描述数据的一个瞬态(snapshot)。当数据发生变化时,用新数据代替旧数据,系统成为另一个瞬态,旧数据不复存在。因而无法对数据变化的历史进行分析,更无法预测未来的趋势。这类GIS亦称为静态GIS。1时间的结构1)线性结构认为时间是一条没有端点,向过去和将来无限延伸的线轴,除了与空间一样具有通用性、连续性和可测量性外,还具有运动的不可逆性(或称单向性)和全序性。2)循环结构反映了时间的周期性、稳定性,与时间的线性结构不可分割,相辅相成,形成了现实世界在继承中的发展。3)分支结构分为单向分支结构和双向分支结构,分别反映了具有不同的历史时间结构和未来时间结构的多个目标现象的时间结构,其中各分支具有两两正交性。4)多维结构是同一目标的演变经历,从不同时间角度来看,体现为时间的多维结构。主要表现的有:(1)有效时间(ValidTime)Tv:空间目标从产生到消亡,是它在现实世界中存在的时间区间,称为有效时间(也称世界时间、数据时间、逻辑时间、事件时间)。如果理论模型允许目标消亡后再生,则有效时间是多个不相交的时间区间的并。(2)数据库时间(DatabaseTime)Td:目标数据输入系统的时间,称为数据库时间(或事务时间、物理时间、执行时间、系统时间)。(3)用户定义时间(User-definedTime):用户根据需要自己为目标标注的时间,称为用户定义时间,只有用户知道其语义,DBMS不能解释,语义由具体应用确定。另外还有决策时间、观察时间等等。二、时间的密度特性时间的密度特性体现为以下模型:离散模型:时间与自然数同构,每个自然数对应一个时间粒子,是一种较常用的结构;紧凑模型:时间与有理数/实数同构;连续模型:时间与实数同构,每个实数对应时间上一个点。三、时间的不确定性GIS中的数据在空间、非空间属性上都具有不确定性,同样在时态性上也存在着不确定性。当某事件发生是已知的,但何时发生是未知的,则称该事件是时态非确定的。四、时间的多标度性时间多标度性是指用于度量时间的尺度的多样性,时间标度也称时间分辨率或时间粒度。不同的应用领域,及用一应用领域中的不同应用范围,都可能采用不同的时间标度。GIS中时间标度的选择存在着理想的时间精度和节约内存开销相互权衡的问题。二时态GIS数据模型目前已有时空数据的三种组织方法:1时间作为新的一维(时空立方体模型)在概念上最直观的方法是:时间作为信息空间中的新的一维。主要有两种方式表示,其一是使用三维的地理矩阵(geographicsmatriix),以位置、属性和时间分别作为矩阵的行、列和高,其二是,用四叉树表达二维格数据,八叉树表示立方体,则可用十六叉树表GIS的空间—时间模型。可见,时空数据沿时间轴的冗余度极大,因为目标的空间位置和属性的变化总是局部的,不等规律的。2、连续快照模型此模型在快照数据库(SnapshotDatabase)中仅记录当前数据状态,数据更新后,旧数据的变化值不再保留,即“忘记”了过去的状态。连续快照模型是将一系列时间片段快照保存起来,反映整个空间特征的状态,根据需要对指定时间片段的现实片段进行播放。该模型的不足之处在于,由于快照将未发生变化的时间片段的所有特征重复进行存储,会产生大量的数据冗余,当应用模型变化频繁,且数据量较大时,系统效率急剧下降。此外,连续快照模型不表达单一的时空对象,较难处理时空对象间的时态关系。3、基态修正法为了避免连续快照模型将每张未发生变化部分的快照特征重复进行记录,基态修正模型按事先设定的时间间隔采样,不存储研究区域中每个状态的全部信息,只存贮某个时间的数据状态(称为基态),以及相对于基态的变化量。基态修正的每个对象只需存储一次,每变化一次,只有很小的数据量需要记录;同时,只有在事件发生或对象发生变化时才存入系统中,时态分辨率值与事件发生的时刻完全对应。基态修正模型不存储每个对象不同时间段的所有信息,只记录一个数据基态和相对于基态的变化值,提高了时态分辨率,减少了数据冗余量。毫无疑问,在基态修正法中,检索最频繁的状态作为基态(一般的用户最关注的是“现在”时,即系统最后一次更新的数据状态)。此外,目标在空间和时空上的内在联系反映不直接,会给时空分析带来困难。张祖勋提出了一种索引基态修正法,即在采用基态修正法后,再用四叉树(或八叉树)储存基态和变化量,可达到很高的压缩效益。4、时空复合模型时空复合模型将空间分隔成具有相同时空过程的最大的公共时空单元,每次时空对象的变化都将在整个空间内产生一个新的对象。对象把在整个空间内的变化部分作为它的空间属性,变化部分的历史作为它的时态属性。时空单元中的时空过程可用关系表来表达,若时空单元分裂时,用新增的元组来反映新增的空间单元,时空过程每变化一次,采用关系表中新增一列的时间段来表达,从而达到用静态的属性表表达动态的时空变化过程的目的;但在数据库中对象标识符的修改比较复杂,涉及的关系链层次很多,必须对标识符逐一进行回退修改。三时态GIS实现方法现在时态GIS的实现主要有两种途径,一是扩展传统的关系模型,另一种采用面向对象方法。1、地理关系模型由于传统关系模型语义丰富、理论完善以及具有许多高效灵活的实现机制,使人们开始尝试在传统关系模型中加入时间维,扩充关系模型,用关系代数及查询语言来处理时态数据,从而直接或间接地基于关系模型支持时空数据的存贮、表示和处理。基于这一思想,主要有下列方法。1)1.归档保存这是一种支持时态数据的最原始、最简单的方法。就是以规则的时间间隔备份所有存贮在库中的数据。这种方法的不足十分明显,主要有:(1)发生在备份间的事件未被记录,致使部分信息丢失;(2)对存档信息的搜索慢且笨拙;(3)许多数据重复归档,存在大量的数据冗余。2)时间片这种方法是将库中某时刻的时空信息存贮在一个平面文件或二维表格中,即所谓时间片(time-slice)。当发生变化时,将当前状态表存贮起来,并给定一个时间戳(用Since和until来标记,表明状态的一段区间),然后复制一个并更新为新状态。与归档保存相比,这一方法在效率上有所改善。但仍存在大量的数据冗余,而且当使用一个时间戳时,对有关生命周期的查询会非常繁琐。采用两个时间戳时,对特定属性变化的查询,又需检测所有时间片。3)记录级时间戳这种方法将时间戳作用于记录(或元组)级,而非整个关系,时间戳可采用前面提到的两种方法。其实现过程是,当发生事件时,将当前记录标记时间戳,然后建立一个具有变化后新属性值的记录加入表中。新记录的加入可以有三种不同的方法。最简单低效的方法是把新记录加在表尾。这将得到一个规整的时序视图,但也意味着需要频繁地顺序搜索来应答查询。Snodgrass和Aln描述了另一种方法,将相关的记录依时序放在一起。这种方法对于关于生命期的查询非常便利。第三种方法是对每一时间片以同样的方式对表中记录排序。这种方法的问题在于若发生一事件时,某记录没有发生变化,那它仍需复制或以空白填充不变的记录。所有这些上述方法存在一个共同缺陷:关系表会变得越来越长,导致应答时间的下降。2面向对象(OO)方法可以说关系模型的数据类型简单,缺少表达能力,GIS中的许多实体和结构很难映射到关系模型中。近年来,许多研究工作已开始探索如何以更自然的方式表示复杂的地理信息。其中OO方法已引起时态GIS设计者的很大兴趣。对复杂的时间信息,当今大部分基于关系模型的GIS是通过大量元组牵强地表示,对一些无法表示的语义属性只能在外部描述。而在OO模型中,提供了广泛化、特例化、聚合和关联等机制,易于支持时态GIS中各种形式的时空数据,其中可以使用矢量数据或栅格数据,也可以是不同数据类型的集成。数据结构和方法的封装便于数据对象不同表示间的转换。在处理时空不确定性方面,OO技术也体现了优越性。四元组级基态修正法该方法是在基态修正法的基础上改良得到的,具有以下特点:1、历史数据记录的粒度可达元组级:历史数据的粒度可分为数据集、空间实体、元组、字段这四个级别,粒度越小,历史数据的冗余也越小,但实现的技术难度越大,历史数据管理成本(如历史数据索引)也越大。MAPGIS历史数据管理建立在元组级,既能够有效控制和减少历史数据的冗余,又不会使历史数据管理太难。在MAPGIS中,空间实体信息由多个元组构成,历史数据可记录各个元组的历史变化。如行政界线实体信息由“空间坐标信息”、“界线属性信息”、“界线图示化信息”、“界线多媒体信息”这四个元组构成,当某条界线坐标变更后,只保存该界线的“空间坐标信息”的历史数据,其余三组信息保持不变。2、基态+增量修正法:MAPGIS历史数据是元组级的历史数据,系统只记录发生变化的元组的历史数据,对空间数据集而言,是局部增量。MAPGIS在初始时刻记录完整的历史数据集,通过初始状态和元组集历史数据正向推演出任意历史时刻的数据集。完整的历史数据集是数据集在某一历史时刻的快照,为了不使任意时刻数据状态的推演过程太长,MAPGIS在历史数据记录累计到一定程度时,自动建立一个数据快照。该过程如下图所示。快照0快照1修改,事件1:第1次变更结束修改,事件2:第2次变更结束添加,现状修改修改1修改1修改2快照13、单个实体历史演变可追踪MAPGIS元组历史数据中还记录了新的空间实体的父实体标识。空间数据的变更可分为添加、修改、删除、分解、合并这5种操作,新的实体对应的父实体数有0个、1个、1个、1个和多个。通过记录父实体标识,可以动态建立实体的历史演变过程。MAPGIS历史数据管理只记录父实体标识,不记录子实体标识,目的是减少历史数据管理的系统开支。4、“历史事件”作为历史追踪的参照点MAPGIS历史数据管理建立在“历史事件”和“历史动作”这两个基本概念之上,历史事件作为历史的阶段性标识,历史动作则是产生历史数据的原因,历史事件是以历史动作为标志,历史追踪可追溯到某个历史事件前的状态,如图7-4-1,“装入第一次变更结束时的数据”则从最近的快照(快照0)开始推演,一直推到事件1,在推演过程中,可以在任何一个历史动作处结束,从而得到任意时刻的数据。5、基于“动作记录”的历史数据保存空间数据状态的变化都是由特定的操作产生的,如删除操作、修改操作等。有些操作还产生连锁的空间数据变更,如删除弧段,会触发系统修改前后结点的数据、修改拓扑信息等。这些产生历史数据的操作被称为“历史动作”。为了使历史数据尽可能小,对历史数据的保存,MAPGIS不是保存历史状态对应的空间数据,而是保存促使状态发生变化的历史动作信息。历史动作信息包括动作类型(如快照、添加、修改、删除等)、动作对象类型(如点、线、区、网等)、动作对象子类型(如空间数据、属性数据、图形参数等)、动作数据(如删除线的线实体号)等;要恢复某一时刻的历史状态,只要从最近的历史快照开始,顺序执行历史快照之后的历史动作,直到制定的历史时刻。查询返回写入图MAPGIS历史数据管理逻辑结构图提交返回提交用户添加,修改,删除空间实体的请求数据管理层数据管理层历史管理模块用户查询历史数据请求空间信息变化的增量部分空间信息变化和动作解包执行相应的动作打包SQLSERVERSYBASEIBMDB2Oracle空间信息变化的增量部分用户查询历史数据请求SQLSERVEROracleIBMDB2SYBASE空间信息变化和动作打包解包执行相应的动作提交提交写入查询返回

1 / 26
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功