[发明专利]一种基于文件系统的三维空间数据存储管理方法有效
申请号: | 201010269095.9 | 申请日: | 2010-09-01 |
公开(公告)号: | CN101916299A | 公开(公告)日: | 2010-12-15 |
发明(设计)人: | 吴冲龙;刘刚;何珍文;翁正平;孙卡;田宜平;张夏林;刘圆圆;王玭茜;李晶;彭元;崔运涛;刘延婷;李莹莹;周涛 | 申请(专利权)人: | 中国地质大学(武汉) |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 湖北武汉永嘉专利代理有限公司 42102 | 代理人: | 唐万荣 |
地址: | 430074 湖*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 文件系统 三维空间 数据 存储 管理 方法 | ||
1.一种基于文件系统的三维空间数据存储管理方法,其特征在于:
采用文件系统设计模式,将三维空间对象实体的空间数据和属性数据统一存储在文件中;
概念模型设计中,将地上、地下三维空间数据表示成统一的数据模型进行存储与管理;
逻辑模型设计中,将空间对象的存储级别划分为不同的粒度与类别,并将每个类别进行单独存储,对三维空间数据进行分类存储、增量追加、索引管理、实时调度;
物理模型设计中,采用空间分区、属性分层的方法,将整个三维空间范围建立多个可管理的分块,并在每一个分块内部建立基于对象类型的分层组织与分类管理。
2.根据权利要求1所述的基于文件系统的三维空间数据存储管理方法,其特征在于:
所述逻辑模型设计中,将空间对象的存储级别划分为不同的粒度与类别,分别为:要素集、要素对象、空间数据和属性数据。
所述分类存储为将空间对象按其语义划分为不同的要素类,每个要素类进行单独存储;
所述增量追加为对某一空间对象进行编辑时,在其所在要素类文件的末尾写入编辑后的对象,不进行整个要素类文件的重写;
所述索引管理为对空间对象建立索引,以便于查找和更新;
所述实时调度为在需要空间对象时才调度其空间数据。
3.根据权利要求1或2所述的基于文件系统的三维空间数据存储管理方法,其特征在于,所述增量追加包括以下步骤:
①根据更新对象的ID,获取其对应的IndexItem信息;
②将该对象的包围盒及相关信息分别从空间索引和根据ID构建的索引中移除,同时更新这两种索引结构;
③将IndexItem信息添加到更新索引结构中;
④将更新后的对象序列化成的数据块写入*.FS文件,并新建一个IndexItem对象实现相关信息的记录;
⑤将更新后的对象的IndexItem信息分别添加到空间索引和根据ID构建的索引中移除,同时更新这两种索引结构。
4.根据权利要求1或2所述的基于文件系统的三维空间数据存储管理方法,其特征在于,所述逻辑模型设计包括以下步骤:
①在创建基于文件系统的数据库时,创建空的*.FDX和*.UDX文件及其他相关数据文件;
②在系统启动时,打开*.FDX和*.UDX文件,把其内部的数据加载到分别由map<FID,IndexItem*>和vector<IndexItem*>所创建的对象_vIndexMap和_uIndexVector中,并根据_vIndexMap中的内容创建空间索引_SpatialIndex,该索引可以是空间R树索引或其它空间索引;
③在添加空间对象时,将空间对象序列化为DataBlock并追加到*.FS文件的末尾,然后将该空间对象对应的IndexItem*添加到_vIndexMap中,并更新_SpatialIndex对象;
④在读取空间对象时,首先根据用户输入的关键字检索_SpatialIndex对象,查找到满足需求的空间对象的ID集合,然后,在_vIndexMap中找到这些ID集合所对应的IndexItem*项,并对其按其所在的要素类分组,最后启动多线程调度程序,分别从不同的*.FS文件中进行DataBlock的读取,并将其反序列化为空间对象;
⑤在编辑空间对象时,将更新前空间对象的IndexItem*从_vIndexMap中转移到_uIndexVector中,将更新后的对象序列化为DataBlock并追加到*.FS文件的末尾,然后将更新后的空间对象对应的IndexItem*添加到_vIndexMap中,并更新_SpatialIndex对象;
⑥在删除空间对象时,将该对象的IndexItem*从_vIndexMap中转移到_uIndexVector中,然后更新_SpatialIndex对象;
⑦当频繁地对空间对象进行编辑、删除操作后,动态监测*.FS文件的长度以及_uIndexVector中对象的个数,当*.FS的长度接近文件系统所管理的极限或者_uIndexVector中对象的个数超过用户设定的数量时,启动文件压缩功能,文件压缩功能将删除_uIndexVector中索引项所指向的数据段,重建*.FS文件和_SpatialIndex对象,同时清空_uIndexVector和*.UDX文件中的内容。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国地质大学(武汉),未经中国地质大学(武汉)许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010269095.9/1.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置