集群环境下面向动态空间计算域的地图数据均衡存储方法

文档序号:9505944阅读:198来源:国知局
集群环境下面向动态空间计算域的地图数据均衡存储方法
【技术领域】
[0001] 本发明涉及高性能地理计算领域,尤其涉及一种集群环境下面向动态空间计算域 的地图数据均衡存储方法。
【背景技术】
[0002] 集群环境下海量地图数据的均衡存储是WebGIS中需要解决的难题之一,尤其是 在空间计算域动态变化场景下,如何将各个动态空间计算域的地图数据访问请求均衡分配 给集群中的各个结点,是实现网络地图服务负载均衡的关键。目前集群环境下的地图数据 存储主要有两大类,第一类是完全冗余存储,即集群中每个结点都将数据完整的存储了一 份,这种方式最易实施,但由于是完全冗余存储,极大的浪费了有限的存储资源,不能适应 海量地图数据。第二类是划分存储,将海量地图数据按专题、比例尺、空间范围或行政区等 进行划分,存储到集群环境下各个服务结点中,由于客户端访问的地图数据空间位置具有 动态性,如果采用这类划分存储方法,来自客户端的地图数据访问请求大多只能分配到某 一个服务结点上,不能并行调度集群下所有服务结点响应同一客户端地图数据访问请求, 集群的多结点并行计算资源没有得到充分利用。

【发明内容】

[0003] 本发明要解决的技术问题在于针对现有技术中的缺陷,提供一种集群环境下面向 动态空间计算域的地图数据均衡存储方法。
[0004] 本发明解决其技术问题所采用的技术方案是:集群环境下面向动态空间计算域的 地图数据均衡存储方法,包括以下步骤:
[0005] 1)设置集群环境下服务结点个数η ;
[0006] 2)根据集群中的服务结点个数η计算地图子空间大小s ;根据地图子空间大小将 海量地图数据划分为多个子空间范围;
[0007] -个地图子空间大小为s,则该子空间中有s*s个地图数据块;
[0008] 3)计算地图数据块在地图子空间中的位置,设地图数据块的行号为R,列号为C, 地图数据块在地图子空间中的行号为r,列号为c,则 r和c的计算方法如公式(1)和公式 (2)所示;
[0009] r = R% s (1);
[0010] C = C% s (2);
[0011] 4)根据地图数据块在地图子空间中的位置计算地图数据块在集群中的目标存储 结点索引i ;
[0012] 其计算方法如公式(3)所示;
[0013] i = (r · s+c) % η (3);
[0014] 5)将地图数据存储到目标结点i中;
[0015] 6)循环将所有地图数据存储到集群中的各个服务结点中,完成地图数据均衡存 储。
[0016] 按上述方案,所述步骤2)中每个地图子空间是一个规则的正方形,其中 =, Math, ceil ()是向上取整函数。
[0017] 本发明产生的有益效果是:将海量地图数据根据集群结点数在空间上划分为多个 子空间范围,在每个地图子空间中都将地图数据均衡分配到集群中的各个结点,从而能够 将客户端动态变化的空间计算域的地图访问请求均衡分配到集群中的各个结点,实现网络 地图服务集群的负载均衡,提高集群的资源利用率和并发响应能力。
【附图说明】
[0018] 下面将结合附图及实施例对本发明作进一步说明,附图中:
[0019] 图1是本发明提供的集群环境下面向动态空间计算域的海量地图数据均衡存储 方法流程图;
[0020] 图2是本发明以第3级瓦片地图数据在集群环境下的存储为例的方法流程图。
[0021] 图3是本发明以第3级瓦片地图数据为例的集群下的存储结点分配效果图。
【具体实施方式】
[0022] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明 进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限 定本发明。
[0023] 如图1所示,图1是本发明提供的集群环境下面向动态空间计算域的海量地图数 据均衡存储方法流程图,所述方法包括以下步骤:
[0024] 步骤1)设置网络地图服务集群中的服务结点个数η ;
[0025] 步骤2)根据集群中的结点个数η计算地图子空间大小s,每个地图子空间是一个 规则的正方形,其包含s*s个地图数据块,其中λ' = MalhxWUZzO,Math, ceil ()是向上取 整函数;
[0026] 步骤3)计算地图数据块在地图子空间中的位置,设地图数据块的行号为R,列号 为C,地图数据块在地图子空间中的行号为r,列号为c,则 r和c的计算方法如公式⑴和 公式(2)所示;
[0027] r = R% s 公式(1)
[0028] c = C% s 公式(2)
[0029] 步骤4)计算地图数据块在集群中的目标存储结点索引i,其计算方法如公式(3) 所示;
[0030] i = (r · s+c) % η 公式(3)
[0031] 步骤5)将地图数据块存储到第i个目标结点;
[0032] 步骤6)循环执行步骤3至步骤5,将所有地图数据块存储到集群中的各个服务结 点中,结束。
[0033] 本发明最明显的不同在于在步骤3至步骤4中借助地图子空间,将海量地图数据 根据集群结点数在空间上划分为多个子空间范围,在每个地图子空间中都将地图数据均衡 分配到集群中的各个结点,从而能够将客户端动态变化的空间计算域的地图访问请求均衡 分配到集群中的各个结点,实现网络地图服务集群的负载均衡,提高集群的资源利用率和 并发响应能力。
[0034] 实施例一:
[0035] 为了更清晰地说明本发明的思想,下面结合附图2以四叉树形式组织的第3级瓦 片地图数据为实施例进行进一步的说明,在该实施例中,网络地图服务集群采用4个服务 结点,第3级瓦片地图数据在该集群环境下均衡存储的具体步骤如下:
[0036] 步骤200)、设置网络地图服务集群中的服务结点个数η = 4 ;
[0037] 步骤201)、根据集群中的结点个数η计算地图子空间大小s,每个地图子空间是一 个规则的正方形,其中
第3级瓦片数据一共包含23行*2 3列瓦片图 像,可将其划分为(23/s) · (23/s) = 16个地图子空间;
[0038] 步骤202)、计算地图数据块在地图子空间中的位置,设地图数据块的行号为R,列 号为C,地图数据块在地图子空间中的行号为r,列号为c,以第5行第4列瓦片数据为例, R = 5,C = 4,其在地图子空间中的行号r = 5% 2 = l,c = 4% 2 = 0,该瓦片在地图子空 间中位于第1行第0列。如图3所示。
[0039] 步骤203)、计算地图数据块在集群中的目标存储结点索引i,以第5行第4列瓦片 数据为例,其目标存储结点索引i = (1 · 2+0) % 4 = 2。
[0040] 步骤204)、将地图数据块存储到第i个目标结点,以第5行第4列瓦片数据为例, 将其存储到集群中的第2个服务结点;
[0041] 步骤205)、循环执行步骤3至步骤5,将第3级所有地图数据块存储到集群中的各 个服务结点中,结束。
[0042] 第3级瓦片数据中的各个瓦片图像最终的存储结点分配结果如图3所示。在4个 结点组成的网络地图服务集群环境下,该实施例采用地图子空间局部均衡存储技术,将第3 级瓦片地图数据均衡存储到4个结点,此均衡存储方法不仅均衡了各个结点的数据量,同 时也顾及到了客户端空间计算域的空间位置的动态变化性,能够将动态空间计算域的地图 数据访问请求均衡分配到集群下的各个结点中,在实际地图应用中,地图可视化窗口的空 间位置和大小是动态变化的,但本发明采用的局部地图子空间均衡存储方法能够适应这种 动态变化性,以图3中的地图可视化窗口为例,该空间计算域的36个瓦片地图数据访问请 求将被均衡的分配到4个结点上,本发明有助于实现网络地图服务集群的负载均衡,对提 高集群资源利用率和并发响应能力具有重要的意义。
[0043] 以上内容是结合具体的实施例对本发明所作的进一步详细说明,不能认定本发 明的具体实施只局限于这些说明,本发明可以用于所有类型的空间数据在集群环境下的均 衡存储。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下, 还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
【主权项】
1. 一种集群环境下面向动态空间计算域的地图数据均衡存储方法,其特征在于,包括 以下步骤: 1) 设置集群环境下服务结点个数η; 2) 根据集群中的服务结点个数η计算地图子空间大小s;根据地图子空间大小将海量 地图数据划分为多个子空间范围; 3) 计算地图数据块在地图子空间中的位置,设地图数据块的行号为R,列号为C,地图 数据块在地图子空间中的行号为r,列号为c,则r和C的计算方法如公式(1)和公式(2) 所示; r=R%s(1);c=C%s(2); 4) 根据地图数据块在地图子空间中的位置计算地图数据块在集群中的目标存储结点 索引i;其计算方法如公式(3)所示; i=(r·s+c)%η(3); 5) 将地图数据存储到目标结点i中; 6) 循环将所有地图数据块存储到集群中的各个服务结点中,完成地图数据均衡存储。2. 根据权利要求1所述的方法,其特征在于,所述步骤2)中每个地图子空间是一个规 则的正方形,其中\ =HaLhx'《7(,/?),Math,cei1 ()是向上取整函数。
【专利摘要】本发明公开了一种集群环境下面向动态空间计算域的地图数据均衡存储方法,其包括以下步骤:设置地图服务器集群中的结点个数;计算地图子空间大小;计算地图数据在子空间中的位置;计算地图数据在集群中的目标存储结点索引;将地图数据存储到目标结点;循环上述步骤将所有地图数据均衡存储到地图服务器集群的各个结点中。本发明能够将每个地图子空间中的地图数据均衡分配到集群中各个服务结点,从而实现将任意动态空间计算域的地图数据访问请求均衡分配到集群中的各个结点,均衡集群环境下各个网络地图服务结点的负载,实现集群环境下面向动态空间计算域的海量地图数据的均衡存储。
【IPC分类】G06F3/06
【公开号】CN105260134
【申请号】CN201510607192
【发明人】郭明强, 黄颖, 罗显刚, 吴亮, 谢忠
【申请人】中国地质大学(武汉)
【公开日】2016年1月20日
【申请日】2015年9月19日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1