一种矢量要素并行计算方法、装置、存储介质及终端制造方法及图纸

技术编号:25345925 阅读:28 留言:0更新日期:2020-08-21 17:05
本发明专利技术公开了一种矢量要素并行计算方法、装置、存储介质及终端,该方法包括:根据Spark计算框架构建分布式要素数据集模型;根据分布式要素数据集模型对外部数据进行数据读取;根据读取后的数据进行数据重分区;将四叉树索引和二叉树索引结合对重分区后的数据创建本地空间索引;对创建本地空间索引后的数据进行数据处理和分析。通过实施本发明专利技术,基于四叉树索引和二叉树索引结合使用的方式,为重分区后的数据创建本地空间索引,采用此种方式构建的复合空间索引能够极大的提高空间数据的叠加分析效率,解决了现有技术采用传统矢量要素分析方法处理海量矢量要素时效率较低的技术问题。

【技术实现步骤摘要】
一种矢量要素并行计算方法、装置、存储介质及终端
本专利技术涉及矢量要素查询分析
,具体涉及一种矢量要素并行计算方法、装置、存储介质及终端。
技术介绍
随着矢量空间数据获取与处理技术的迅猛发展,矢量空间数据日益增多,原始地图数据量呈现爆炸式增长,对地图数据处理的空间及时间效率提出了更高需求。而地理信息系统(GIS,GeographicInformationSystem)中的矢量数据的分析一般不存在模式化的处理方法,而表现为分析方法的多样性和复杂性。目前,常见的矢量要素分析法包括:包含分析、矢量数据的缓冲区分析、多边形重叠分析、矢量数据的网分析等等。然而,传统的矢量要素分析方法虽然能够很好地查询矢量要素,但当数据量过大时,单要素的数据划分算法很容易成为限制瓶颈,同时,在存储节点上,数据仍然以整体数据块存在,随着数据量的增加,数据的检索效率将大大降低。由于Hadoop/HBase/Spark等大数据处理技术本身缺少对地理空间数据的处理能力,无法利用现有Spark框架对矢量要素进行查询分析,矢量要素的运算模型和高效查询能力相关技术成为迫切需要。
技术实现思路
有鉴于此,本专利技术实施例提供了一种矢量要素并行计算方法、装置、存储介质及终端,以解决现有技术采用传统矢量要素分析方法处理海量矢量要素时效率较低的技术问题。本专利技术提出的技术方案如下:本专利技术实施例第一方面提供一种矢量要素并行计算方法,该方法包括:根据Spark计算框架构建分布式要素数据集模型;根据所述分布式要素数据集模型对外部数据进行数据读取;根据读取后的数据进行数据重分区;将四叉树索引和二叉树索引结合对重分区后的数据创建本地空间索引;对创建本地空间索引后的数据进行数据处理和分析。进一步地,所述分布式要素数据集模型包括:特征要素和分布式数据集元信息。进一步地,所述外部数据的数据类型包括:JSON、CSV、Shapefile、HDFS、Elasticsearch、AVRO以及关系型空间数据库。进一步地,根据读取后的数据进行数据重分区,包括:根据分区索引工具对读取后的数据进行重分区,所述索引工具包括HILBERT时空填充曲线索引、QuadTree四叉树索引和RTree二叉树索引。进一步地,将四叉树索引和二叉树索引结合对重分区后的数据创建本地空间索引,包括:根据四叉树索引按照一定规则将重分区后的数据划分成多个子空间;根据二叉树索引在子空间中创建本地空间索引。进一步地,对创建本地空间索引后的数据进行数据处理和分析,包括:对创建本地空间索引后的数据进行过滤、获取地理和时间范围、裁剪、空间查询、属性汇总、网格聚合、多边形聚合、提取列、追加列计算。本专利技术实施例第二方面提供一种矢量要素并行计算装置,该装置包括:模型构建模块,用于根据Spark计算框架构建分布式要素数据集模型;数据读取模块,用于根据所述分布式要素数据集模型对外部数据进行数据读取;分区模块,用于根据读取后的数据进行数据重分区;本地索引创建模块,用于将四叉树索引和二叉树索引结合对重分区后的数据创建本地空间索引;分析模块,用于对创建本地空间索引后的数据进行数据处理和分析。本专利技术实施例第三方面提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行如本专利技术实施例第一方面及第一方面任一项所述的矢量要素并行计算方法。本专利技术实施例第四方面提供一种矢量要素并行计算终端,包括:存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行如本专利技术实施例第一方面及第一方面任一项所述的矢量要素并行计算方法。本专利技术提供的技术方案,具有如下效果:本专利技术实施例提供的矢量要素并行计算方法、装置、存储介质及终端,以分布式计算框架为载体,构建了能够支持空间数据运算的弹性分布式数据集,将多种数据格式如CSV、JSON等转化为FeatureRDD,同时扩展基于FeatureRDD的空间索引对象实现性能优化,继而以此为输入输出进行多种空间、时间的分布式查询和分布式分析操作,解决了现有技术采用传统矢量要素分析方法处理海量矢量要素时效率较低的技术问题。同时基于四叉树索引和二叉树索引结合使用的方式,为重分区后的数据创建本地空间索引,采用此种方式构建的复合空间索引能够极大的提高空间数据的叠加分析效率。本专利技术实施例提供的矢量要素并行计算方法、装置、存储介质及终端,通过构建FeatarueRDD弹性分布式要素数据集,实现空间叠加、聚类运算等基础性地理运算模型,对于1亿以上的矢量要素服务,单个要素和小范围要素查询效率在毫秒级,1亿地块空间查询(图形裁切、面积重算)计算耗时控制在1分钟以内。同时,通过在FeatureRDD中采用索引工具HILBERT时空填充曲线索引、QuadTree四叉树索引和RTree二叉树索引三种类型的分区索引,在运算过程中可以显著降低空间查询中要素遍历次数,大幅提高空间数据的叠加分析和聚合查询效率。附图说明为了更清楚地说明本专利技术具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是根据本专利技术实施例的矢量要素并行计算方法的流程图;图2是根据本专利技术实施例的分布式要素数据集模型的结构原理图;图3是根据本专利技术实施例的矢量要素并行计算装置的结构框图;图4是根据本专利技术实施例提供的矢量要素并行计算终端的硬件结构示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术实施例提供一种矢量要素并行计算方法,如图1所示,该计算方法包括如下步骤:步骤S101:根据Spark计算框架构建分布式要素数据集模型。具体地,可以基于Spark框架的批量空间矢量大数据分析技术,将GIS内核与Spark分布式内存计算框架深度融合,即基于分布式存储,构建分布式要素数据集模型FeatureRDD。因此,该分布式要素数据集模型将GIS基础算法融入Spark计算框架,可以实现分布式空间运算,并将结果通过FeatureRDD快速写回分布式存储。分布式要素数据集模型FeatureRDD是基于Spark的RDD[Feature]扩展,是可以用于数据读取、存储以及分析的模型;通过使用分布式要素数据集模型的相关接口,可以完成空间查询、要素连接、属性统计、缓冲区分析等常用功能。分布式要素数据集FeatureRDD的结构如图2所示。其中,特征本文档来自技高网...

【技术保护点】
1.一种矢量要素并行计算方法,其特征在于,包括:/n根据Spark计算框架构建分布式要素数据集模型;/n根据所述分布式要素数据集模型对外部数据进行数据读取;/n根据读取后的数据进行数据重分区;/n将四叉树索引和二叉树索引结合对重分区后的数据创建本地空间索引;/n对创建本地空间索引后的数据进行数据处理和分析。/n

【技术特征摘要】
1.一种矢量要素并行计算方法,其特征在于,包括:
根据Spark计算框架构建分布式要素数据集模型;
根据所述分布式要素数据集模型对外部数据进行数据读取;
根据读取后的数据进行数据重分区;
将四叉树索引和二叉树索引结合对重分区后的数据创建本地空间索引;
对创建本地空间索引后的数据进行数据处理和分析。


2.根据权利要求1所述的矢量要素并行计算方法,其特征在于,所述分布式要素数据集模型包括:特征要素和分布式数据集元信息。


3.根据权利要求1所述的矢量要素并行计算方法,其特征在于,所述外部数据的数据类型包括:JSON、CSV、Shapefile、HDFS、Elasticsearch、AVRO以及关系型空间数据库。


4.根据权利要求1所述的矢量要素并行计算方法,其特征在于,根据读取后的数据进行数据重分区,包括:
根据分区索引工具对读取后的数据进行重分区,所述索引工具包括HILBERT时空填充曲线索引、QuadTree四叉树索引和RTree二叉树索引。


5.根据权利要求1所述的矢量要素并行计算方法,其特征在于,将四叉树索引和二叉树索引结合对重分区后的数据创建本地空间索引,包括:
根据四叉树索引按照一定规则将重分区后的数据划分成多个子空间;
...

【专利技术属性】
技术研发人员:郭琳裴志远许家俊卫炜石智峰陈晓迪王玉鑫邢雪张寅赵春梅刘宇航李晓辰
申请(专利权)人:农业农村部规划设计研究院北京中农信达信息技术有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1