一种三维空间数据并行调度方法和系统技术方案

技术编号:8655848 阅读:248 留言:0更新日期:2013-05-01 23:30
本发明专利技术涉及地理空间信息系统技术领域,提供了一种基于数据内容的三维空间数据并行调度方法,所述方法包括:接收多个客户端的三维空间数据调度请求;通过基于数据内容的调度任务并行分解方法,将三维空间数据调度任务进行分解,生成可并行执行的三维空间数据调度子任务;为所述三维空间数据调度子任务分配可用任务执行线程和数据库连接,执行三维空间数据库的并行查询;对所述三维空间数据调度子任务查询获取的数据重组后,返回给客户端。本发明专利技术通过将三维空间数据调度任务的分解与并行执行,提高了从三维空间数据库调度不同类型三维空间数据的效率,改善了三维GIS实时可视化的能力。

【技术实现步骤摘要】

本专利技术属于地理空间信息系统
,尤其涉及一种三维空间数据并行调度方法和系统
技术介绍
大规模三维空间数据的流畅可视化一直是三维GIS最基本的需求,能否从大规模三维空间数据库中快速调度所需的数据已成为保障三维实时可视化流畅性的关键。在三维空间数据库的数据量小于系统内存或显示设备缓存时,通常采用系统启动便将数据全部加载到内存与显存的策略,以支持最高效的三维可视化。但是,随着三维空间数据库的规模不断增加,系统内存已远远无法加载全部数据,这就必须需要动态调度技术,按三维可视化的需要动态加载数据。为了提高三维空间数据可视化与数据调度的效率,采用多线程技术能充分利用多核的优势,实现数据读取的真正并行,但是如何能使多线程执行效率更高效,必须考虑并行任务的合理划分问题。现有三维GIS软件对于连续的海量地形表面数据的动态调度已经取得了比较成熟的成果,如Google Earth、World Wind等数字地球软件对全球的海量地形数据,在网络环境下都可以实现快速、流畅的多分辨率显示的可视化效果,如Skyline的Terra Gate网络数据服务器软件以流方式给多客户实时传输三维地理地形数据集。但是,目前对于地上地下各种离散复杂实体、地质实体、地下管网等的海量三维空间数据的动态调度还远没有地形数据的成熟,如Skyline对三维空间数据的纹理大小、几何面片数等有比较严格的限定。尤其是对城市三维模型数据,由于数据结构复杂性、空间分布不规则性以及多细节层次特性等特性,因而对城市三维模型数据的调度远没有地形数据成熟、快速。三维空间数据库的数据调度都是以前端用户的请求为前提,从数据库中高性能的吞吐数据,主动满足前端快速数据请求。此过程以响应前端用户的调度需求为目的,因此必需在中间模块把调度需求转换成从数据库中调度数据的并行调度任务。对于三维空间数据的并行调度必须针对三维GIS可视化以及三维空间数据的数据内容相关性进行数据的并行调度任务划分,但是目前还都没有成熟的方案。
技术实现思路
本专利技术提供一种三维空间数据并行调度方法和系统,旨在解决当前三维空间数据的调度效率低,导致无法从大规模三维空间数据库中快速调度所需的数据,从而难以保障三维实时可视化流畅性的问题。为此,本专利技术提供了如下技术方案—种基于数据内容的三维空间数据并行调度方法,包括以下步骤接收多个客户端的三维空间数据调度请求;通过基于数据内容的调度任务并行分解方法,将三维空间数据调度任务进行分解,生成可并行执行的三维空间数据调度子任务;为所述三维空间数据调度子任务分配可用任务执行线程和数据库连接,执行三维空间数据库的并行查询;对所述三维空间数据调度子任务查询获取的数据重组后,返回给客户端。本专利技术还提供了一种三维空间数据并行调度系统,包括客户端和服务器,服务器包括调度任务分解模块,用于数据调度请求的解析,数据调度任务的并行分解,生成可并行执行的数据调度任务;数据调度模块,用于生成基于数据内容的三维空间数据调度任务;线程池管理模块,用于线程池技术管理线程的创建、销毁与管理操作,任务的分配策略,以及线程之间的同步协同机制;数据库连接池模块,用于数据库连接池技术管理数据库连接的创建、销毁与管理操作与所述数据调度模块和数据库分别相连接,用于为所述三维空间数据调度任务分配可用线程,执行三维空间数据库的多调度任务并行查询,预先创建和保存多个用户的数据库连接队列;;调度任务执行模块,与所述线程池管理模块与数据库连接池管理模块相连接,用于执行的三维空间数据库的并行调度任务;三维空间数据库,与所述线程池管理模块调度任务执行模块相连接,用于存储大规模的三维空间数据。与现有技术相比,本专利技术的实施例具有如下优点本专利技术基于三维空间数据的数据内容相关性分析,对三维空间数据的调度运用调度任务并行分解进行并行调入任务划分,以及多调度任务的并行执行,从而提高从数据库提取不同类型三维空间数据的调度效率,改善了三维GIS实时可视化的能力。附图说明图1是本专利技术实施例提供的三维空间数据并行调度方法的方法流程图;图2是本专利技术实施例提供的生成基于数据内容的三维空间数据调度任务的方法流程图;图3是本专利技术实施例提供的为三维空间数据调度任务分配可用线程,执行三维空间数据库的多调度任务并行查询方法流程图;图4是本专利技术实施例提供的从空闲线程队列中取出空闲线程的方法流程图;图5是本专利技术实施例提供的三维空间数据并行调度系统的结构图。具体实施例方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的仅是本专利技术的一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本专利技术保护的范围。图1是本专利技术实施例提供的三维空间数据并行调度方法的方法流程图,为了便于说明,仅不出了与本专利技术实施例相关的部分。如图1所示,该方法包括以下步骤步骤101,接收多个客户端的三维空间数据调度请求。步骤102,通过基于数据内容的调度任务并行分解方法,将三维空间数据调度任务进行分解,生成可并行执行的三维空间数据调度子任务。步骤103,为所述三维空间数据调度子任务分配可用任务执行线程和数据库连接,执行三维空间数据库的并行查询。步骤104,对所述三维空间数据调度子任务查询获取的数据重组后,返回给客户端。图2是本专利技术实施例提供的生成基于数据内容的三维空间数据调度任务的方法流程图,为了便于说明,仅示出了与本专利技术实施例相关的部分。如图2所示,该方法执行步骤101,接收客户端的数据查询请求后,还包括以下步骤步骤201,判断接收的数据查询请求类型,若为三维空间查询请求,执行步骤202,若为非三维空间查询请求,则执行步骤203。步骤202 :获取所述三维空间查询请求需要查询的三维要素类集合,根据三维要素类的数据类型进行判断,为每个三维要素类建立单独的调度任务,并转换成可并行执行的三维要素数据调度任务。具体的,所述三维空间查询请求,可以是建筑查询、植被查询、管线查询、地质查询中的一种或者多种。具体的,所述转换成的数据调度任务,可以是建筑调度任务、植被调度任务、管线调度任务、地质调度任务中的一种或者多种。步骤203 :判断该查询请求的类型,分离材质、纹理、共享模型以及属性等各种数据类型的查询,并转换成相应的数据调度任务。具体的,所述非三维空间查询请求,可以是纹理查询、材质查询、共享模型查询、属性查询中的一种或者多种。具体的,所述转换成的相应的数据调度任务,可以是纹理调度任务、材质调度任务、共享模型调度任务、属性调度任务中的一种或者多种。图3是本专利技术实施例提供的为三维空间数据调度任务分配可用任务执行线程,执行三维空间数据库的多调度任务并行查询方法流程图,为了便于说明,仅示出了与本专利技术实施例相关的部分。如图3所示,该方法包括以下步骤步骤301,将生成的三维空间数据调度任务放入三维空间数据调度任务队列中。步骤302,依次取出三维空间数据调度任务队列中的第一个调度任务。优选的,按照先进先出的原则,依次从所述三维空间数据调度任务队列中取出第一个调度任务。步骤303,从空闲任务执行线程队列中取出一个空闲线程。具体的,从空闲线程队列中取出空闲线程的方法本文档来自技高网
...

【技术保护点】
一种基于数据内容的三维空间数据并行调度方法,其特征在于,包括以下步骤:接收多个客户端的三维空间数据调度请求;通过基于数据内容的调度任务并行分解方法,将三维空间数据调度任务进行分解,生成可并行执行的三维空间数据调度子任务;为所述三维空间数据调度子任务分配可用任务执行线程和数据库连接,执行三维空间数据库的并行查询;对所述三维空间数据调度子任务查询获取的数据重组后,返回给客户端。

【技术特征摘要】
1.一种基于数据内容的三维空间数据并行调度方法,其特征在于,包括以下步骤: 接收多个客户端的三维空间数据调度请求; 通过基于数据内容的调度任务并行分解方法,将三维空间数据调度任务进行分解,生成可并行执行的三维空间数据调度子任务; 为所述三维空间数据调度子任务分配可用任务执行线程和数据库连接,执行三维空间数据库的并行查询; 对所述三维空间数据调度子任务查询获取的数据重组后,返回给客户端。2.如权利要求1所述的三维空间数据并行调度方法,其特征在于,所述通过基于数据内容的调度任务并行分解方法,将三维空间数据调度任务进行分解,生成可并行执行的三维空间数据调度子任务,包括以下步骤: B1:判断接收的数据查询请求类型,若为三维空间查询请求,执行步骤B2,若为非三维空间查询请求,则执行步骤B3 ; B2:获取所述三维空间查询请求需要查询的三维要素类集合,根据三维要素类的数据类型进行判断,为每个三维要素类建立单独的调度任务,并转换成可并行执行的三维要素数据调度任务; B3:判断该查询请求的类型,分离材质、纹理、共享模型以及属性等各种数据类型的查询,并转换成相应的数据调度任务。3.如权利要求1或2所述的三维空间数据并行调度方法,其特征在于,所述为所述三维空间数据调度任务分配可用任务执行线程,执行三维空间数据库的并行查询,包括以下步骤: Cl:将所述生成的三维空间数据调度任务放入三维空间数据调度任务队列中; C2:按照先进先出的原则,依次取出所述三维空间数据调度任务队列中的第一个调度任务; C3:从空闲任务执行线程队列中取出一个空闲线程; C...

【专利技术属性】
技术研发人员:李晓明朱庆李行义修文群梁守真李洪忠
申请(专利权)人:深圳先进技术研究院
类型:发明
国别省市:

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

1