oracle数据库:Oracle Spatial时态空间数据库设计来源: 发布时间:星期一, 2009年1月26日 浏览:2次 评论:0
="t18">
需求前提:数据每年变化1~2次软件Software预计生命周期50年
实战环境:Oracle Spatial
术语表:时空对象快照
时空对象:个地理目标从诞生到消亡所经历空间和时间范围及其属性信息这是个为处理时空数据方便而抽象出来概念相当于全信息模型中全信息对象为了理解时空对象我们以 2维地物为例 2维地物在 2维空间中占据定空间范围表现为个 2维几何体也就是它几何属性假如再增加条时间轴成为(xyt)坐标系并认为任何空间对象都有诞生和消亡则这个 2维地物就在(xyt)坐标系中占据了定 3维空间我们就把 2维地物从诞生到消亡这时间段所占据空间-时间范围称的为“时空对象”同理也可以将时空对象扩展为 3维空间对象在时间维度上延续也就是 4维对象时空对象属性信息是张 2维表
快照:个地理目标在某特定时刻所占据空间范围及其属性信息或者说:时空对象在某特定时刻所占据空间范围及其相应属性信息举例来说地图上绘制了个饭店位置大小这就是饭店个快照饭店是从某时刻才诞生又会在某时刻消亡而在诞生和消亡的间还可能会搬迁或扩建所以地图上反映仅仅是饭店在某时刻状态所以称的为饭店在某时刻快照或时空对象在某特定时刻快照注重快照总是对应于某特定时刻否则将失去快照意义快照属性信息是时空对象属性信息表中条记录
设计方向:以时空对象概念组织空间数据和属性数据使得对地物变迁历史查询和分析成为可能对应用层屏蔽历史数据处理过程将历史数据处理当作数据库模块功能的
技术要点:
1、 Oracle包变量会话独立性
2、 动态视图技术(基于视图)
每个时空对象都是由多个快照记录所描述观察者每次观察都是基于个特定观察时间例如图示中观察者应该看到对象快照2和对象 3快照2而无法看到对象 2和对象、 3其他快照记录看不到对象 2是在此观察时间的前对象 2已经消亡看不到对象快照1是对象有更新观察数据快照2可以更好地近似反映对象 2在当前观察时间所处状态
数据表:数据表设计基于以上概念
存储过程:利用Oracle中包变量会话独立性在包中建立以下几个基本存储过程:设置当前观察时间获取当前观察时间利用当前观察时间和传入Snap_timeSnap_end参数判定快照记录是否可见(Snap_Filter)
视图:建立在快照记录表上视图基于存储Snap_Filter实现对表中记录筛选传入参数为:Snap_time,Snap_End.返回值为此快照是否可见
0
相关文章
读者评论
发表评论 |