System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及数据存储检索,特别涉及一种黑土耕地质量空间矢量大数据分布式存储检索方法。
技术介绍
1、我国东北黑土区是耕地中的“大熊猫”,随着信息技术与空间数据采集技术的深入发展,黑土耕地质量空间矢量数据规模不断增大,同时,对海量矢量数据实际应用的精准性、高效性、复杂性以及实时响应等要求也在不断提高。然而,作为处理空间矢量数据的传统手段,地理信息系统(geographic information system,gis)技术受限于其数据存储模式、索引结构以及空间计算能力等方面,已经无法很好满足大规模空间矢量数据高性能存储检索的效率需求。
2、近年来,大数据与分布式技术的兴起为空间矢量大数据处理提供了一种具有较高性能的新一代分布式存储与并行检索方法。在此背景下,分布式非关系型(not only sql,nosql)数据库hbase成为海量空间矢量数据存储管理的主流方式之一。然而,从空间数据库的角度来看,hbase虽然可以直接存储空间矢量数据,但是这种存储方式只是简单按照面向对象思想将空间矢量数据转换为wkt、wkb以及geojson等编码格式再按照字节数组形式存储到hbase中,没有考虑数据的空间特性,不利于进行高效空间索引、检索操作。
3、因此,相关技术中亟需一种能够对大规模空间矢量数据进行高效空间存储检索的方法。
技术实现思路
1、基于此,有必要针对上述技术问题,提供一种黑土耕地质量空间矢量大数据分布式存储检索方法。该方法能够对大规模空间矢量数据进行高性能存
2、本专利技术采用下述技术方案:
3、本专利技术提供了一种黑土耕地质量空间矢量大数据分布式存储检索方法,包括:
4、根据黑土地耕地质量空间矢量数据的空间信息和属性信息,对分布式非关系型数据库hbase的底层存储系统的行键、列族以及region分区进行分区编码设计,得到用于存储空间矢量数据的存储模型;
5、通过自适应层级划分编码方法,获取存储模型中空间矢量数据的geohash编码网格;
6、将geohash编码网格升维转换为geohash空间网格,并根据geohash空间网格和r*树的索引单元,构建分布式分层空间索引模型;
7、通过空间并行检索方法在分布式分层空间索引模型中执行空间查询请求,得到空间检索结果。
8、优选地,行键的编码设计,具体包括:
9、rowkey=geohash(geom)+featureid
10、其中,rowkey表示空间矢量数据的行键编码,geom表示空间矢量数据的空间信息,geohash(geom)是空间矢量数据的geohash空间编码;featureid为该空间矢量数据要素id,属性上唯一标识该对象。
11、优选地,列族的编码设计,具体包括:
12、设计空间几何列族和非几何属性列族;
13、将空间矢量数据的空间信息存储在空间几何列族中,并将不同类型空间矢量数据统一存储在空间几何列族的geom列下;
14、将空间矢量数据的属性信息存储在非几何属性列族中,其中,属性信息的字段名对应定义为非几何属性列族下的列名,属性值作为列值。
15、优选地,region分区的编码设计,具体包括:
16、基于自适应层级划分编码方法对空间矢量数据进行自适应层级空间划分,并将复杂空间对象转换成geohash编码;
17、基于实际应用需求和数据的自然分布特性对geohash编码进行前缀匹配分析,自定义出合理的空间分区范围,并计算每个空间分区的字符串值;
18、将每个空间分区的字符串值作为存储模型region预分区的分界值,即每个region分区的行键范围;
19、根据空间矢量数据的行健和region分区行键范围,将空间矢量数据存储到对应region中。
20、优选地,自适应层级划分编码方法,具体包括:
21、获取待编码空间对象的最小外接矩形,并根据最小外接矩形确定待编码空间对象的geohash编码层级;
22、根据geohash编码层级,确定待编码空间对象的编码网格;
23、根据geohash编码层级和最小外接矩形的中心点坐标,对编码网格进行二进制编码,得到待编码空间对象的geohash二进制编码串;
24、基于base32字符串转换规则将geohash二进制编码串转换为字符串,然后将字符串组成geohash编码集,得到待编码空间对象对应的唯一geohash字符串编码;
25、其中,geohash编码将以置于高位的形式作为存储模型设计中的行键的组成部分。
26、优选地,根据geohash空间网格和r*树的索引单元,构建分布式分层空间索引模型,具体包括:
27、根据空间网格和r*树的索引单元,确定gr*-tree混合空间索引结构;
28、根据gr*-tree混合空间索引结构,构建分布式分层空间索引模型。
29、优选地,分布式分层空间索引模型包括基于全表的gr*-tree全局空间索引;根据gr*-tree混合空间索引结构,构建分布式分层空间索引模型,具体包括:
30、以gr*-tree混合空间索引结构中r*树为基本索引结构、region相关信息作为基本索引单位,获取存储模型中所有region的geohash编码和最小外接矩形的键值对集合;
31、遍历键值对集合,将键值对集合中的键值对取出,根据最小外接矩形对应的region空间矩形范围作为空间对象插入到r*树中;并基于r*树“启发式”插入策略,选择叶子节点导入该空间对象;
32、调整全局空间索引r*树节点结构,确定根节点,构建完成基于全表的gr*-tree全局空间索引结构。
33、优选地,分布式分层空间索引模型包括基于region的gr*-tree局部空间索引结构;根据gr*-tree混合空间索引结构,构建分布式分层空间索引模型,具体包括:
34、以gr*-tree混合空间索引结构中geohash空间网格作为region的gr*-tree局部空间索引结构的基本单位,当存储模型存储空间矢量数据时,空间矢量数据按照region预分区分界值分别存入符合的region分区中,将存入空间矢量数据的geohash行键编码和编码网格唯一表示该对象;
35、以<行键编码,编码网格>键值对形式按照“启发式”策略自动插入到r*树中;
36、在插入空间矢量数据后,更新相关节点的最小外接矩形,并根据r*-tree索引节点调整策略,对索引树的相关节点进行调整;
37、在所有空间矢量数据都被插入到r*-tree空间索引结构的情况下,构建完成基于region的gr*-tree局部空间索引结构。
38、优选地,该方法还包括:
39、在分布式分层空间索引模型构建本文档来自技高网...
【技术保护点】
1.一种黑土耕地质量空间矢量大数据分布式存储检索方法,其特征在于,所述方法包括:
2.如权利要求1所述的方法,其特征在于,所述行键的编码设计,具体包括:
3.如权利要求1或2所述的方法,其特征在于,所述列族的编码设计,具体包括:
4.如权利要求1或2所述的方法,其特征在于,所述Region分区的编码设计,具体包括:
5.如权利要求4所述的方法,其特征在于,所述自适应层级划分编码方法,具体包括:
6.如权利要求1或2所述的方法,其特征在于,所述根据Geohash空间网格和R*树的索引单元,构建分布式分层空间索引模型,具体包括:
7.如权利要求6所述的方法,其特征在于,所述分布式分层空间索引模型包括基于全表的GR*-Tree全局空间索引;所述根据GR*-Tree混合空间索引结构,构建分布式分层空间索引模型,具体包括:
8.如权利要求6所述的方法,其特征在于,所述分布式分层空间索引模型包括基于Region的GR*-Tree局部空间索引结构;所述根据GR*-Tree混合空间索引结构,构建分布式分层空间索引
9.如权利要求1或2所述的方法,其特征在于,所述方法还包括:
10.如权利要求9所述的方法,其特征在于,所述通过空间并行检索方法在分布式分层空间索引模型中执行空间查询请求,得到空间检索结果,具体包括:
...【技术特征摘要】
1.一种黑土耕地质量空间矢量大数据分布式存储检索方法,其特征在于,所述方法包括:
2.如权利要求1所述的方法,其特征在于,所述行键的编码设计,具体包括:
3.如权利要求1或2所述的方法,其特征在于,所述列族的编码设计,具体包括:
4.如权利要求1或2所述的方法,其特征在于,所述region分区的编码设计,具体包括:
5.如权利要求4所述的方法,其特征在于,所述自适应层级划分编码方法,具体包括:
6.如权利要求1或2所述的方法,其特征在于,所述根据geohash空间网格和r*树的索引单元,构建分布式分层空间索引模型,具体包括:
7.如权利要求...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。