一种基于列数据库的空间数据存储方法

文档序号:9818327阅读:829来源:国知局
一种基于列数据库的空间数据存储方法
【技术领域】
[0001] 本发明属于数据存储技术领域,尤其涉及一种基于列数据库的空间数据存储方 法。
【背景技术】
[0002] 目前,基于矢量空间数据的管理方法主要包括两种:一种是直接在关系数据库管 理系统上进行扩展形成具有空间数据存储管理能力;另一种是在RDBMS基础上通过建立空 间数据引擎中间件,使用RDBMS的关系模型对空间数据进行存储管理。与这两个方法对应, 形成了基于拓扑关系的矢量数据模型、面向实体的矢量数据模型和面向对象的矢量数据模 型。
[0003] 具体地,基于拓扑关系的矢量数据模型能够详细的表达地理空间实体的拓扑关 系,并且其数据结构较为紧凑。基于面向实体的矢量数据模型以单个地理实体对象为对象 进行组织与管理。大量的地理实体对象单独管理,这种数据模型有利于扩展与管理。基于面 向对象的矢量数据模型将所有的实体对象都抽象为一个对象,通过继承与多态的方式来描 述与管理空间对象。
[0004]但是,对于基于拓扑关系的矢量数据模型来说,当涉及到更改一个简单拓扑实体 的时候,将会更改其他的拓扑信息,不利于管理与扩展;对于基于面向实体的矢量数据模型 来说,由于其缺乏拓扑信息而不能够很好的运用到空间分析当中;基于面向对象的矢量数 据模型虽然能够很好的保存地理实体之间的逻辑关系,尤其是在复杂地理实体的逻辑关系 表达;然而由于不同的层中存在相同的空间对象,带来大量的数据冗余与管理不便。并且, 以上三种矢量数据模型主要适用于关系型数据库中。但是面对空间大数据的要求,传统的 文件系统与关系型数据库由于高并发能力弱、扩展性差、建设与运营成本高等缺陷,已经无 法满足空间大数据环境下的需求。
[0005] 另外,作为大数据研究及应用的基础技术之一,云计算技术在分布式处理、分布式 数据库、大数据存储和虚拟化等方面发挥着越来越重要的作用,为大规模空间数据存储提 供了新的理论和技术支撑。云计算为解决矢量空间大数据提供了一个很好的方法。但是由 于矢量空间数据的拓扑属性的特殊性,不能将关系型数据库下的矢量空间数据存储管理方 法直接运用到云环境下。因为传统的关系型数据库是基于行的数据库,而在云环境系的数 据库是基于列或者基于文档的数据库。由于数据库底层的数据组织方式不一样,决定了关 系型数据库对矢量数据的存储及管理方法不能适用于基于列的数据库中。
[0006] 基于此,目前亟需一种新的存储方法以能在云环境下实现对矢量空间大数据的存 储与管理。

【发明内容】

[0007] 针对现有技术存在的问题,本发明实施例提供了一种基于列数据库的空间数据存 储方法,用于解决现有技术中的存储模型无法对云环境下的矢量空间数据进行存储及管理 的技术问题。
[0008] 本发明提供一种基于列数据库的空间数据存储方法,所述方法包括:
[0009] 将矢量空间数据模型划分为几何数据、属性数据及空间拓扑关系数据;
[0010] 利用简化后的九交模型确定所述空间拓扑关系数据的拓扑规则;
[0011] 以行标识符为所述矢量空间数据的唯一标识符,根据所述拓扑规则将存储模型中 的列族与所述几何数据、所述属性数据及所述空间拓扑关系数据一一对应,对所述矢量空 间数据进行存储。
[0012] 上述方案中,所述简化后的九交模型包括;
[0013]
:其中,所述B为空间实体的边界,所述I为所述空间 实体的内部。
[0014] 上述方案中,所述拓扑规则包括:点与点之间的拓扑关系规则、点与线段之间的拓 扑关系规则、点与面之间的拓扑关系规则、线段与线段之间的拓扑关系规则、线段与面之间 的拓扑关系规则及面与面之间的拓扑关系规则。
[0015] 上述方案中,所述点与点之间的拓扑关系规则包括:
[0016]
,所述点与点之间对应的拓扑关 系为两点相离;
[0017]
,所述点与点之间对应的拓扑关系 为两点重合。
[0018] 上述方案中,所述点与线段之间的拓扑关系规则包括:
[0019]
,所述点与线段之间对应的拓扑 关系为点与线段相离;
[0020]
,所述点与线段之间对应的拓扑关 系为点包含于线段中;
[0021]
,所述点与线段之间对应的拓扑关 系为所述点位于所述线段的一个结点中;
[0022]
,所述点与线段之间对应的拓扑关 系为所述点与所述线段相切。
[0023]上述方案中,所述点与面之间的拓扑关系规则包括:
[0024]
,所述点与面之间对应的拓扑关 系为所述点与所述线段相离;
[0025]
',所述点与面之间对应的拓扑关系 为所述点位于所述面的内部;
[0026]
,所述点与面之间对应的拓扑关系 为所述点位于所述面的边上。
[0027] 上述方案中,所述线段与线段之间的拓扑关系规则包括:
[0028]
,所述线段与线段之间对应的拓扑 关系为线段与线段相离;
[0029]
,所述线段与线段之间对 应的拓扑关系为包含关系;
[0030]
,所述线段与线段之间对应的拓扑 关系为相交关系;
[0031]
所述线段与线段之间对应的拓扑 关系为邻接关系。
[0032] 上述方案中,所述线段与面之间的拓扑关系规则包括:
[0033]
,所述线段与面之间对应的拓扑关 系为相离关系;
[0034]
,所述线段与面之间对应的拓扑关 系为邻接关系;
[0035]
,所述线段与面之间对应 的拓扑关系为所述线段位于所述面的内部;
[0036]
,所述线段与面之间对应的拓扑关 系为相交关系;
[0037]
,所述线段与面之间对应 的拓扑关系为相切关系。
[0038] 上述方案中,所述面与面之间的拓扑关系规则包括:
[0039]
,所述面与面之间对应的拓扑关系 为相离关系;
[0040]
',所述面与面之间对应的 拓扑关系为包含关系;
[0041 ]
,所述面与面之间对应的拓扑关系 为邻接关系。
[0042]上述方案中,所述存储模型为:
[0043] M(f) = (Rowkey,Times tamp,{Geometry ;Property ;Topology});其中,所述 Rowkey 为行标识符,所述Timestamp用于记录需要更新的对象数据;所述Geometry、Property及所 述Topology为所述存储模型的列族。
[0044] 本发明提供了一种基于列数据库的空间数据存储方法,所述方法包括:将矢量空 间数据模型划分为几何数据、属性数据及空间实体拓扑关系数据;利用简化后的九交模型 确定所述空间实体拓扑关系数据的拓扑规则;以行标识符为所述矢量空间数据的唯一标识 符,根据所述拓扑规则将存储模型中的列族与所述几何数据、所述属性数据及所述空间实 体拓扑关系数据一一对应,对所述矢量空间数据进行存储;如此,能够充分发挥分布式列数 据库的高吞吐性,高扩展性,稀松性等优点;并在矢量空间数据的处理上兼顾了空间拓扑关 系,便于进行空间拓扑分析与空间数据的检索与查询,解决了当前云环境下如何高效存储 空间数据的问题,为大数据时代矢量空间数据的存储提供了新的解决方案。
【附图说明】
[0045] 图1为本发明实施例提供的存储方法流程示意图;
[0046] 图2为本发明实施例提供的矢量空间数据的整体结构示意图;
[0047] 图3为本发明实施例提供的空间实体拓扑关系示意图;
[0048] 图4为本发明实施例提供的矢量空间数据的存储模型结构示意图。
【具体实施方式】
[0049] 为了可以对云环境下的矢量空间数据进行存储及管理,本发明提供了一种基于列 数据库的空间数据存储方法,所述方法包括:将矢量空间数据模型划分为几何数据、属性数 据及空间实体拓扑关系数据;利用简化后的九交模型确定所述空间实体拓扑关系数据的拓 扑规则;以行标识符为所述矢量空间数据的唯一标识符,根据所述拓扑规则将存储模型中 的列族与所述几何数据、所述属性数据及所述空间实体拓扑关系数据一一对应,对所述矢 量空间数据进行存储。
[0050] 下面通过附图及具体实施例对本发明的技术方案做进一步的详细说明。
[0051] 本实施例提供一种基于列数据库的空间数据存储方法,如图1所示,所述方法包括 以下步骤:
[0052]步骤1
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1