CN110955656A - 矢量数据拓扑运算索引优化机制与构建方法 - Google Patents

矢量数据拓扑运算索引优化机制与构建方法 Download PDF

Info

Publication number
CN110955656A
CN110955656A CN201910897531.8A CN201910897531A CN110955656A CN 110955656 A CN110955656 A CN 110955656A CN 201910897531 A CN201910897531 A CN 201910897531A CN 110955656 A CN110955656 A CN 110955656A
Authority
CN
China
Prior art keywords
elements
index
tree
vector
vector data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910897531.8A
Other languages
English (en)
Inventor
陈晓迪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Zhongnongxinda Information Technology Co Ltd
Original Assignee
Beijing Zhongnongxinda Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Zhongnongxinda Information Technology Co Ltd filed Critical Beijing Zhongnongxinda Information Technology Co Ltd
Priority to CN201910897531.8A priority Critical patent/CN110955656A/zh
Publication of CN110955656A publication Critical patent/CN110955656A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2246Trees, e.g. B+trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases

Abstract

本发明所提出的矢量数据拓扑运算索引优化机制与构建方法的实现步骤在于:S1、基于Shapefile文件中的矢量要素空间范围和要素偏移量创建四叉索引树索引文件,并将四叉索引树作为初始索引树,树内节点存储根据矢量要素划分的空间范围,范围内存储要素编码,编码可换算为偏移量,通过偏移量可获取要素实体;S2、迭代四叉索引树所有节点并获取节点范围和节点内要素;S3、将二叉树作为承接对四叉索引树查询后结果要素的子树;S4、进行矢量数据拓扑分析,作为运算结果,采用此种索引方式,可大幅度节省计算机资源,计算亿级以内数据量要素。

Description

矢量数据拓扑运算索引优化机制与构建方法
技术领域
本发明属于GIS大数据信息处理领域,提供的是矢量数据拓扑运算索引与构建方法。
背景技术
现有主流商用GIS软件如一般采用将Shapefile文件中的矢量要素导入文件型数据库,在数据库中为矢量要素建立格网空间索引,然后使用ArcGIS Geoprocessing地理信息处理工具,实现的矢量要素的空间分析和拓扑运算。例如在中国专利CN200810117146.9中,就是将原始shapefile文件的图层进行区域划分;再将所述划分的区域进行编码;将原始shapefile文件的所述图层中的几何体根据所属区域的编码进行派分;将派分到相同编号的所述图层中的几何体的集合存储为一个文件,根据所述存储的文件,生成配置文件,用于记录图层的基本信息。
ArcGIS Geoprocessing工具或类似的工具在对信息量较的拓扑运算时还可以满足要求,但在对几十万级到千万级矢量要素进行拓扑检查,部分检查如“地块重叠检查”、“悬挂线检查”, “点重叠检查”等需要对周边所有要素进行空间查询与拓扑质检,这时所关联的数据和运算量就非常的在,检查时间在数小时到数天不等,效率过于缓慢。经分析,缓慢原因主要是ArcGIS Geodatabase格网索引效率过于缓慢、效率太低造成的。针对这个问题,本发明提出了结合Quadtre、Rtree空间索引以及NIO模型(非阻塞I/O模型)的优点,建立一种基于Shapefile文件的矢量数据拓扑运算索引优化机制,质检时间有传统的小时级降低到分钟级。
发明内容
针对现有技术的缺点和不足,本发明的首要目的在于提供一种具有更高索引速度和更高质检效率的系统。
本发明的具体技术方案如下: 一种矢量数据拓扑运算索引优化机制与构建方法,其实现步骤在于:
S1、基于Shapefile文件中的矢量要素空间范围和要素偏移量创建四叉索引树索引文件,并将四叉索引树作为初始索引树,树内节点存储根据矢量要素划分的空间范围,范围内存储要素编码,编码可换算为偏移量,通过偏移量可获取要素实体;
S2、迭代四叉索引树所有节点并获取节点范围和节点内要素,将节点范围根据需求外扩对四叉索引树进行空间查询,获取查询结果,结果为要素集合,将节点内要素作为被检查要素,将查询结果作为拓扑运算参与参数;
S3、将二叉树作为承接对四叉索引树查询后结果要素的子树;
S4、在拓扑运算过程中,遍历当前节点内要素,二叉树中要素进行拓扑分析,高效的从二叉树中提取当前要素的周边要素。进行矢量数据拓扑分析,作为运算结果。
进一步的,树内节点存储根据矢量要素划分的空间范围,范围内存储要素编码,编码可换算为偏移量,通过偏移量可获取要素实体。
进一步的,所述的四叉索引树,可以将每个或其中几个子空间继续划分下去,如此递归下去,直到达到一定的深度或者满足某种要求后停止划分。
进一步的,所述的二叉树也可以四叉索引树。
进一步的,所述矢量要素空间范围的维度增加是基于八叉树进行划分。
进一步的,所述要素集合,将节点内要素作为被检查要素,将查询结果作为拓扑运算参与参数,所述的要述包括地理信息包括各类的图层标识、不规则图形范围、标志位和查询条件,以及自定义的各类信息标识,查询所述不规则图形范围内所有的几何体及相关信息。
进一步的,对所述迭代获取是可以只采集部分要素点,而不是获取所有节点的方式来进行的,结合优先级及关键要素的结合应用。
进一步的,年述的对二叉树中要素进行拓扑分析,从二叉树中提取当前要素的周边要素,是指将重叠部分矢量提取,作为运算结果呈现。
进一步的,对信息文件偏移量的存储方式进行调整,由原来的N字节Int型偏移量表示方式修改为2N字节Long型偏移量存储方式。
进一步的,所述的偏存储方式还包括读取所述信息属性值扩展为新的字段,所述新的字段的起点属性值扩展到初始值起点值在2N倍以上。
本发明的优点和效果在于:采用此种索引方式,可大幅度节省计算机资源,计算亿级以内数据量要素,对内存峰值要求不高,对CPU无要求。同时,此种索引方式,千万点数据进行耗费时间都以分钟计,真正达到了短时间出结果的目的。
附图说明
图1为本发明提出的矢量数据拓扑运算索引优化机制与构建方法的流程框图。
具体实施方式
为了更好地说明本发明,便于理解本发明的技术方案,下面对本发明进一步详细说明。但下述的实施例仅是本发明的简易例子,并不代表或限制本发明的权利保护范围,本发明保护范围以权利要求书为准。
本发明提供一种新型的基于Shapefile文件的高效矢量数据拓扑运算索引优化机制,期目的就是解决在低硬件配置条件下,对较大数据量级、甚至是海量数据量级的矢量要素拓扑运算效率缓慢的问题,提出了一种非常有效的解决方案。
在目前现有技术中主流商用GIS软件如ArcGIS Desktop一般采用将Shapefile文件中的矢量要素导入ArcGIS Geodatabase文件型数据库,在数据库中为矢量要素建立格网空间索引,然后使用ArcGIS Geoprocessing地理信息处理工具,实现的矢量要素的空间分析和拓扑运算,ArcGIS Geoprocessing工具在对几十万级到千万级矢量要素进行拓扑检查,部分检查如“地块重叠检查”、“悬挂线检查”, “点重叠检查”等需要对周边所有要素进行空间查询与拓扑质检,检查时间在数小时到数天不等,效率过于缓慢,经分析,缓慢原因之一是ArcGIS Geodatabase格网索引效率过于缓慢,针对这个问题,本发明在实施例中提出了结合Quadtre、Rtree空间索引以及NIO模型(非阻塞I/O模型)的优点,建立一种基于Shapefile文件的矢量数据拓扑运算索引优化机制,使质检时间有传统的小时级降低到分钟级。
实质上就是结合四叉索引树索引,二叉树索引的优点,提出一种基于Shapefile文件的矢量数据拓扑运算索引优化机制,具体的讲是在本实施例中,具体涉及两种空间索引树RTree和Quadtree,一种I/O模型NIO。
首先S1是基于Shapefile文件中的矢量要素空间范围和要素偏移量创建四叉索引树索引文件,并将四叉索引树索引作为初始索引树,树内节点存储根据矢量要素划分的空间范围,范围内存储要素编码,编码可换算为偏移量,通过偏移量可获取要素实体。
四叉索引树是基于空间划分组织索引结构的索引机制,与规则网格划分不同,它将已知范围的二维空间划成4个相等的子空间,如果需要,可以将每个或其中几个子空间继续划分下去,如此递归下去,直到达到一定的深度或者满足某种要求后停止划分,四元树常应用于二维空间数据的储存,还能进行碰撞检测,这样就形成了一个基于四叉索引树的空间划分,而四叉索引树索引内存需求小,节点区域范围内可存储大量要素,本发明基于Shapefile文件中的矢量要素空间范围和要素偏移量创建四叉索引树索引文件,并将四叉索引树索引作为初始索引树,树内节点存储根据矢量要素划分的空间范围。
范围内存储要素编码,编码可换算为偏移量,通过偏移量可获取要素实体,具体参考NIO工作方式。
对于更复杂的数据信息或是由于需求,也可以将空间数据基于八叉树进行划分,较之四叉索引树,八叉树将场景从二维空间延伸到了三维空间,八叉树(Octree)的定义是:若不为空树的话,树中任一节点的子节点恰好只会有八个或零个,可以根据更多的要素或是层级来分,如对于所述几何实体模型子模块:可以分为:点、实体点、线段、弧段、曲线、折线、面、三角网格面、三角网格体、多点、多线、多面、多三角网格面、多三角网格体、点云多个要素,对于更多的要素和关系在八叉树模型下也更方便于处理。特别是对于三维数据、甚至多维数据可以采用这样的数据处理方法。也包括和限于其它各类的图层标识、不规则图形范围、标志位和查询条件,查询所述不规则图形范围内所有的几何体及相关信息。
并且,对于在要素范围内存储要素编码,编码也可换算为偏移量,例如对相邻线或面,以及其它要素,都是可以通过偏移量来获取更多的要素实体。
其次S2是迭代四叉索引树所有节点并获取节点范围和节点内要素,将节点范围根据需求外扩对四叉索引树进行空间查询,获取查询结果,结果为要素集合,将节点内要素作为被检查要素,将查询结果作为拓扑运算参与参数,即迭代Quadtree所有节点并获取节点范围和节点内要素。将节点范围根据需求外扩对Quadtree进行空间查询,获取查询结果,结果为要素集合。将节点内要素作为被检查要素,将查询结果作为拓扑运算参与参数。
同时,我们对要素集合的部分要集可以分级,分为优先级以及次优先级,在一定的条件下,例如只对于中心点的信息感兴趣,那么我们只要获取中心点的集合进行,或是进行聚类分析,这样即以最短的时间来参与及完成运算。
同时,对以上的迭代获取是可以只采集部分要素点,而不是获取所有节点的方式来进行的,这样结合优先级的应用,达到较好的运行速度和效率。
再者是S3将二叉树作为承接对四叉索引树查询后结果要素的子树。
这是一个建立二叉树索引的过程,RTree具有很强的灵活性与可调节性,建树过程中无需预知整个空间对象所在的空间范围,同时他具有较高的执行效率,但RTree随着数据量的增加会造成树的深度及存储空间的增加,降低查询效率。所以将RTree作为承接对QuadTree查询后结果要素的子树。
最后是S4是在拓扑运算过程中,遍历当前节点内要素,二叉树中要素进行拓扑分析,从二叉树中提取当前要素的周边要素,进行矢量数据拓扑分析,作为运算结果。获取海量数据、采用基于二叉树的分层聚类方法进行初始类划分及邻域构建,建立拓扑连接模型,进行矢量数据拓扑分析。
在拓扑运算过程中,遍历当前节点内要素,与RTree中要素进行拓扑分析,高效的从Rtree中提取当前要素的周边要素。进行矢量数据拓扑分析,如“面状要素重叠检查”,将重叠部分矢量提取,作为运算结果;对于悬挂线的检查也类似如此。
除了在上述的过程中的方法以外,还有以下的发明扩展,Shapefile文件默认不能存储超过2G以上的空间要素,因此无法创建千万级以上面状要素的四叉索引树索引文件,为了解决此问题,本发明扩展了Shapefile文件偏移量的存储方式,将原本的4字节Int型偏移量表示方式修改为8字节Long型偏移量存储方式,可以将空间要素存储容量扩充到1T,这样就形成了容量的扩增。所述的偏存储方式还包括读取所述信息属性值扩展为新的字段,所述新的字段的起点属性值扩展到初始值起点值在2N倍以上,N为自然数。
这样通过上述的发明,其效果是,从资源上来说,采用此种索引方式,可大幅度节省计算机资源,计算亿级以内数据量要素,内存峰值仅达到700M,对CPU无要求;从运行效率上来说,采用此种索引方式,2700万点数据进行“点要素重叠检”耗费时间2分30秒;130万面状要素进行“面状要素重叠检查”耗费时间1分钟以为。2700万线状要素进行“悬挂线检查”耗费时间10分钟以内,这仅是在实施例中的数据,随着系统的成熟,后期的效率会更高。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种矢量数据拓扑运算索引优化机制与构建方法,其实现步骤在于:
S1、基于Shapefile文件中的矢量要素空间范围和要素偏移量创建四叉索引树索引文件,并将四叉索引树作为初始索引树,树内节点存储根据矢量要素划分的空间范围,范围内存储要素编码,编码可换算为偏移量,通过偏移量可获取要素实体;
S2、迭代四叉索引树所有节点并获取节点范围和节点内要素,将节点范围根据需求外扩对四叉索引树进行空间查询,获取查询结果,结果为要素集合,将节点内要素作为被检查要素,将查询结果作为拓扑运算参与参数;
S3、将二叉树作为承接对四叉索引树查询后结果要素的子树;
S4、在拓扑运算过程中,遍历当前节点内要素,二叉树中要素进行拓扑分析,高效的从二叉树中提取当前要素的周边要素,
进行矢量数据拓扑分析,作为运算结果。
2.如权利要求1所述的矢量数据拓扑运算索引优化机制与构建方法,其特征在于:树内节点存储根据矢量要素划分的空间范围,范围内存储要素编码,编码可换算为偏移量,通过偏移量可获取要素实体。
3.如权利要求1所述的矢量数据拓扑运算索引优化机制与构建方法,其特征在于:所述的四叉索引树,可以将每个或其中几个子空间继续划分下去,如此递归下去,直到达到一定的深度或者满足某种要求后停止划分。
4.如权利要求1所述的矢量数据拓扑运算索引优化机制与构建方法,其特征在于:
所述的二叉树也可以四叉索引树。
5.如权利要求1所述的矢量数据拓扑运算索引优化机制与构建方法,其特征在于:
所述矢量要素空间范围的维度增加是基于八叉树进行划分。
6.如权利要求1所述的矢量数据拓扑运算索引优化机制与构建方法,其特征在于:所述要素集合,将节点内要素作为被检查要素,将查询结果作为拓扑运算参与参数,所述的要述包括地理信息包括各类的图层标识、不规则图形范围、标志位和查询条件,以及自定义的各类信息标识,查询所述不规则图形范围内所有的几何体及相关信息。
7.如权利要求1所述的矢量数据拓扑运算索引优化机制与构建方法,其特征在于:对所述迭代获取是可以只采集部分要素点,而不是获取所有节点的方式来进行的,结合优先级及关键要素的结合应用。
8.如权利要求1所述的矢量数据拓扑运算索引优化机制与构建方法,其特征在于:年述的对二叉树中要素进行拓扑分析,从二叉树中提取当前要素的周边要素,是指将重叠部分矢量提取,作为运算结果呈现。
9.如权利要求1所述的矢量数据拓扑运算索引优化机制与构建方法,其特征在于:对信息文件偏移量的存储方式进行调整,由原来的N字节Int型偏移量表示方式修改为2N字节Long型偏移量存储方式。
10.如权利要求9所述的矢量数据拓扑运算索引优化机制与构建方法,其特征在于:所述的偏存储方式还包括读取所述信息属性值扩展为新的字段,所述新的字段的起点属性值扩展到初始值起点值在2N倍以上。
CN201910897531.8A 2019-09-23 2019-09-23 矢量数据拓扑运算索引优化机制与构建方法 Pending CN110955656A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910897531.8A CN110955656A (zh) 2019-09-23 2019-09-23 矢量数据拓扑运算索引优化机制与构建方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910897531.8A CN110955656A (zh) 2019-09-23 2019-09-23 矢量数据拓扑运算索引优化机制与构建方法

Publications (1)

Publication Number Publication Date
CN110955656A true CN110955656A (zh) 2020-04-03

Family

ID=69975482

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910897531.8A Pending CN110955656A (zh) 2019-09-23 2019-09-23 矢量数据拓扑运算索引优化机制与构建方法

Country Status (1)

Country Link
CN (1) CN110955656A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111782742A (zh) * 2020-06-06 2020-10-16 中国科学院电子学研究所苏州研究院 一种面向大规模地理空间数据的存储和检索方法及其系统
CN112947908A (zh) * 2021-02-26 2021-06-11 上海商汤智能科技有限公司 代码生成方法、装置、设备及存储介质
CN112988871A (zh) * 2021-03-23 2021-06-18 重庆飞唐网景科技有限公司 针对大数据中mpi数据接口的信息压缩传输方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101923542A (zh) * 2009-06-12 2010-12-22 如临其境创意(上海)有限公司 一种用于网络多维空间数据表达的MDDRQ-Tree索引结构
US8856184B1 (en) * 2011-01-31 2014-10-07 Google Inc. Methods and systems for encoding the maximum resolution data level for a quadtree
CN105138560A (zh) * 2015-07-23 2015-12-09 北京天耀宏图科技有限公司 基于多级空间索引技术的分布式空间矢量数据管理方法
CN110059067A (zh) * 2019-04-04 2019-07-26 南京南瑞水利水电科技有限公司 一种水利空间矢量大数据存储管理方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101923542A (zh) * 2009-06-12 2010-12-22 如临其境创意(上海)有限公司 一种用于网络多维空间数据表达的MDDRQ-Tree索引结构
US8856184B1 (en) * 2011-01-31 2014-10-07 Google Inc. Methods and systems for encoding the maximum resolution data level for a quadtree
CN105138560A (zh) * 2015-07-23 2015-12-09 北京天耀宏图科技有限公司 基于多级空间索引技术的分布式空间矢量数据管理方法
CN110059067A (zh) * 2019-04-04 2019-07-26 南京南瑞水利水电科技有限公司 一种水利空间矢量大数据存储管理方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王晓龙: "基于Spark的地理空间大数据查询处理技术研究", 《中国优秀硕士学位论文全文数据库(信息科技辑)》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111782742A (zh) * 2020-06-06 2020-10-16 中国科学院电子学研究所苏州研究院 一种面向大规模地理空间数据的存储和检索方法及其系统
CN111782742B (zh) * 2020-06-06 2021-01-26 中国科学院电子学研究所苏州研究院 一种面向大规模地理空间数据的存储和检索方法及其系统
CN112947908A (zh) * 2021-02-26 2021-06-11 上海商汤智能科技有限公司 代码生成方法、装置、设备及存储介质
CN112988871A (zh) * 2021-03-23 2021-06-18 重庆飞唐网景科技有限公司 针对大数据中mpi数据接口的信息压缩传输方法
CN112988871B (zh) * 2021-03-23 2021-11-16 山东和同信息科技股份有限公司 针对大数据中mpi数据接口的信息压缩传输方法

Similar Documents

Publication Publication Date Title
Lv et al. BIM big data storage in WebVRGIS
CN107423368B (zh) 一种非关系数据库中的时空数据索引方法
Chu et al. Triangle listing in massive networks
CN110955656A (zh) 矢量数据拓扑运算索引优化机制与构建方法
CN110321443B (zh) 三维实景模型数据库构建方法、装置及数据服务系统
JP7407209B2 (ja) 情報プッシュ方法及び装置
CN105701104B (zh) 一种基于地理信息的三维数据引擎系统
CN111367913A (zh) 一种面向全空间的数据模型的建模方法
CN111260784B (zh) 一种城市三维空间网格压缩编码方法、装置及终端设备
CN106933833A (zh) 一种基于空间索引技术的位置信息快速查询方法
CN109871418A (zh) 一种时空数据的空间索引方法和系统
CN111090712A (zh) 一种数据处理方法、装置、设备及计算机存储介质
CN109979008A (zh) 一种基于属性的点云条带划分方法
CN113269870B (zh) 一种基于三维剖分网格的多分辨率数字地形集成方法
CN110928878A (zh) 基于hdfs的点云数据处理方法及装置
Azri et al. Review of spatial indexing techniques for large urban data management
CN113076334B (zh) 数据查询方法、索引生成方法、装置及电子设备
Oh Parallel algorithm for spatial data mining using CUDA
CN116796083A (zh) 一种空间数据划分方法及系统
CN115408382A (zh) 面向大规模卫星数据的矢量空间信息网格化存储管理方法
Kumar et al. Comparative analysis of data structures for storing massive TINs in a DBMS
Anh et al. Representing multiple levels for objects in three-dimensional GIS model
Zolotov et al. Effective spatial reasoning in complex 4D modelling environments
Weiss et al. Supercubes: A high-level primitive for diamond hierarchies
CN110727750A (zh) 海洋时空过程对象提取与多尺度数据映射方法、介质及设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20200403

WD01 Invention patent application deemed withdrawn after publication