国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Grid GIS的空間負(fù)載平衡遷移算法研究

2016-01-24 02:28:28趙曉暉張飛舟2
北京測繪 2016年2期
關(guān)鍵詞:專題地圖副本空間數(shù)據(jù)

趙曉暉 張飛舟2

(1.國核電力規(guī)劃設(shè)計(jì)研究院,北京100095;2.北京大學(xué)遙感與地理信息系統(tǒng)研究所,北京100871)

1 引言

隨著信息技術(shù)、衛(wèi)星遙感遙測技術(shù)、地理信息系統(tǒng)(GIS)的飛速發(fā)展,利用GIS為勘察到的各類信息建立數(shù)據(jù)庫,搭建電力線路系統(tǒng)的信息應(yīng)用平臺,可以實(shí)現(xiàn)對這些龐大信息進(jìn)行高效管理、深度挖掘、綜合分析和廣泛應(yīng)用,優(yōu)化電力線路的路徑選取和桿塔位的設(shè)計(jì),縮短電力線路工程的勘測設(shè)計(jì)工期,減少電力線路工程投資,提升項(xiàng)目的復(fù)用率,有效促進(jìn)電力勘測設(shè)計(jì)中測量設(shè)備和測量手段的完善,極大提高電力工程勘察設(shè)計(jì)技術(shù)水平。

電力勘察設(shè)計(jì)信息系統(tǒng)中的信息類型多樣,海量數(shù)據(jù)存儲復(fù)雜,為了實(shí)現(xiàn)對空間數(shù)據(jù)的快速查詢、多維分析、清晰展示和各種專題地圖的制圖、查找、分析、輸出等一系列功能,需要電力勘察設(shè)計(jì)信息系統(tǒng)具有良好的系統(tǒng)性能[1]。然而,負(fù)載平衡設(shè)備費(fèi)用較為昂貴,為了有效控制企業(yè)硬件投資費(fèi)用,達(dá)到降本增效的目的,本文提出利用軟件方法來改善系統(tǒng)性能。

網(wǎng)格地理信息系統(tǒng)(Grid GIS)是利用網(wǎng)格技術(shù)將多臺地理信息服務(wù)器構(gòu)建成一個(gè)網(wǎng)絡(luò)環(huán)境,實(shí)現(xiàn)地理信息網(wǎng)格調(diào)度、負(fù)載平衡和快速的地理信息服務(wù),已經(jīng)成為GIS新的發(fā)展方向。同時(shí),專題地圖的劃分角度多種多樣,劃分粒度不斷精細(xì),多專題地圖的空間疊合操作也日益頻繁。例如,輸變電線路上的桿塔位設(shè)計(jì),在綜合考慮該輸變電線路區(qū)域的水系、植被、交通網(wǎng)、境界線、地貌等地理要素的情況下,需要對地質(zhì)圖、水文圖、土壤圖等多個(gè)專題地圖進(jìn)行疊加分析。這些專題地圖存儲在系統(tǒng)中的不同節(jié)點(diǎn)上,需要空間負(fù)載平衡方案確定在哪些節(jié)點(diǎn)上進(jìn)行疊合哪些專題地圖,是否需要遷移專題地圖,以及如何選擇遷移的目標(biāo)節(jié)點(diǎn)以便能夠快速有效地進(jìn)行相應(yīng)的空間分析和空間操作等。盡管Grid GIS不斷地調(diào)控空間負(fù)載,但由于系統(tǒng)中節(jié)點(diǎn)加入、退出的隨意性和多專題地圖之間的高交互率,系統(tǒng)經(jīng)常面臨空間負(fù)載的再分配問題。因此,如何有效地處理好多專題地圖的相關(guān)空間操作,保證Grid GIS中的空間負(fù)載合理調(diào)配和有效遷移,是空間負(fù)載平衡研究的難點(diǎn)和重點(diǎn)。

本文以專題地圖作為空間負(fù)載的研究對象,緊密結(jié)合空間數(shù)據(jù)存儲,提供以專題地圖為基礎(chǔ)的更實(shí)用的空間服務(wù)。同時(shí),根據(jù)不同的空間負(fù)載狀況、Grid GIS環(huán)境的動(dòng)態(tài)多變、空間數(shù)據(jù)的復(fù)雜多變和專題地圖的交互多變等空間特性,提出了基于多專題地圖的空間負(fù)載平衡遷移算法,分析了空間負(fù)載遷移條件和子算法調(diào)用的優(yōu)先級,并詳細(xì)描述了算法程序。通過實(shí)驗(yàn)?zāi)M迭代測試,給出空間負(fù)載平衡遷移算法的相關(guān)性能分析,促進(jìn)電力勘測設(shè)計(jì)信息系統(tǒng)性能的提高。

2 相關(guān)研究概述

2.1 Grid GIS

網(wǎng)格地理信息系統(tǒng)(Grid GIS)是使用網(wǎng)格技術(shù),借助地理信息服務(wù)器來構(gòu)建網(wǎng)格環(huán)境,實(shí)現(xiàn)在分布式GIS中網(wǎng)格調(diào)度、資源管理和地理信息服務(wù)[2-5]。GridGIS有效地解決了空間數(shù)據(jù)的多源性、海量性、異構(gòu)性和時(shí)空性等問題,在廣域范圍內(nèi)無縫集成空間數(shù)據(jù),協(xié)同處理各種空間計(jì)算和空間分析任務(wù),全面共享空間數(shù)據(jù),支持跨平臺的數(shù)據(jù)轉(zhuǎn)換,向用戶提供基本的網(wǎng)格系統(tǒng)服務(wù)和專門的地理服務(wù)。

2.2 空間負(fù)載平衡

空間負(fù)載平衡算法結(jié)合空間信息的地理特性,來合理和透明地分配系統(tǒng)中的空間負(fù)載,提高處理器的利用率和系統(tǒng)的執(zhí)行效率,以達(dá)到系統(tǒng)綜合性能最優(yōu),主要分為空間靜態(tài)負(fù)載平衡方法和空間動(dòng)態(tài)負(fù)載平衡方法[6-8]??臻g數(shù)據(jù)自身的復(fù)雜性和專題地圖劃分粒度的細(xì)化日益增加GridGIS處理空間數(shù)據(jù)的難度,使系統(tǒng)中的一些節(jié)點(diǎn)處于超載,一些節(jié)點(diǎn)處于空閑,不能很好的利用系統(tǒng)中的有效空閑資源。這就需要在Grid GIS中使用空間負(fù)載平衡進(jìn)行合理調(diào)度和分配資源。

3 基于GridGIS的空間負(fù)載平衡遷移算法

在GridGIS系統(tǒng)運(yùn)行過程中,節(jié)點(diǎn)根據(jù)自己的空間負(fù)載狀況進(jìn)行決策。本文劃分空間負(fù)載狀況為輕載、正常和超載三個(gè)狀態(tài),并假定所有節(jié)點(diǎn)都是正常加入和正常離開系統(tǒng)。但是,由于空間數(shù)據(jù)的特殊性、GridGIS環(huán)境的高動(dòng)態(tài)性和專題地圖的多交互性等復(fù)雜因素,導(dǎo)致GridGIS中的節(jié)點(diǎn)會(huì)發(fā)生空間負(fù)載超載的狀況,需要進(jìn)行空間負(fù)載平衡遷移。本文依據(jù)不同的空間負(fù)載狀況提出基于Grid GIS的空間負(fù)載平衡算法,分為空間任務(wù)遷移算法、空間數(shù)據(jù)遷移算法、空間計(jì)算遷移算法和空間環(huán)境遷移算法四個(gè)子算法。在綜合考慮時(shí)間開銷、內(nèi)存開銷、磁盤I/O狀況變化和專題地圖數(shù)據(jù)變化情況等方面對負(fù)載遷移的影響,本文認(rèn)為在進(jìn)行負(fù)載遷移時(shí),對四種空間負(fù)載遷移子算法執(zhí)行的優(yōu)先順序遵循先空間任務(wù)遷移,再空間數(shù)據(jù)遷移,再空間計(jì)算遷移,最后空間環(huán)境遷移。

3.1 基于GridGIS的空間任務(wù)遷移算法

當(dāng)節(jié)點(diǎn)發(fā)現(xiàn)自己超載時(shí),它首先會(huì)發(fā)送超載消息,并請求轉(zhuǎn)移其上的空間任務(wù),主動(dòng)調(diào)用空間任務(wù)遷移決策。空間任務(wù)遷移算法的程序描述如下:

migrateSpatiaITask O

/*初始化節(jié)點(diǎn)空間任務(wù)隊(duì)列*/

queue qtask_do←null;//正在執(zhí)行的空間任務(wù)隊(duì)列

queue qtask_wait←null;//正在等待的空間任務(wù)隊(duì)列

cost←δ;//節(jié)點(diǎn)空間代價(jià)量(即節(jié)點(diǎn)上正在執(zhí)行的專題圖層數(shù)據(jù)量和該節(jié)點(diǎn)所承受的最大空間負(fù)載量的比值)

qmax←umax;//節(jié)點(diǎn)能接受的空間任務(wù)數(shù)

/*更新節(jié)點(diǎn)空間任務(wù)隊(duì)列*/

num←size(qtask_do)+size(qtask_wait);

if arrivc(ncw_task)thcn//新空間任務(wù)到達(dá)

if(num=o)then

qtask_do add(new_task);

if(num<qmax)then

if(cos<50%)then

qtask_do.add(new_task);

else

qtask_wait.add(new_task);

clsc

send messages to the directory central node;

refuse to receive new spatial task until num<qmax;

if finish(task)then

qtask do remove(task);//空 間 任 務(wù) 完 成離開

/*超載申請空間任務(wù)遷移*/

if(load_state≥I0)then

send“overload”message to the directory central node;

rcccivc the abstract information of undcrload nodcs;

compute spatial cost gains among underload nodes;

record those underload nodes satisfying conditions of spatioal cost gains;

Io cate Load O;

if(exist Replica)then

send the task to underload nodes;

else

migrateSpatialDataO;//調(diào)用空間數(shù)據(jù)遷移算法

3.2 基于GridGIS的空間數(shù)據(jù)遷移算法

在節(jié)點(diǎn)發(fā)現(xiàn)自己超載,無法執(zhí)行空間任務(wù)遷移,必須執(zhí)行空間數(shù)據(jù)遷移,主要解決如下幾種典型情況下的數(shù)據(jù)遷移:

(1)超載節(jié)點(diǎn)上的專題地圖數(shù)據(jù)具有多個(gè)空間副本,但副本所在節(jié)點(diǎn)或者不能再接受其他空間任務(wù),或者也同樣處于超載狀態(tài);

(2)超載節(jié)點(diǎn)上的專題地圖數(shù)據(jù)沒有空間副本存在;

(3)節(jié)點(diǎn)上的專題地圖數(shù)據(jù)沒有空間副本存在,但節(jié)點(diǎn)由于某種原因正在申請離開。

在執(zhí)行空間數(shù)據(jù)遷移算法時(shí),需要遷移專題地圖和與該專題地圖相關(guān)的空間任務(wù)。如果一個(gè)節(jié)點(diǎn)上的幾個(gè)專題地圖同時(shí)進(jìn)行空間數(shù)據(jù)遷移,當(dāng)遷移的目標(biāo)節(jié)點(diǎn)相同時(shí),只需要順序執(zhí)行每個(gè)專題地圖的遷移;當(dāng)遷移的目標(biāo)節(jié)點(diǎn)不同時(shí),采用多線程機(jī)制來進(jìn)行遷移。如果不同節(jié)點(diǎn)上的幾個(gè)專題地圖同時(shí)遷移到同一個(gè)目標(biāo)節(jié)點(diǎn),那么在目標(biāo)節(jié)點(diǎn)上也執(zhí)行多線程機(jī)制來接收空間數(shù)據(jù)??臻g數(shù)據(jù)遷移算法的程序描述如下:

migrateSpatiaITask O

/*初始化相關(guān)信息*/

//節(jié)點(diǎn)專題地圖信息表,m表示節(jié)點(diǎn)上專題地圖總數(shù)

array[m][]larer_info←layer_id,content,datatype,mbr,isReplica,replicanum;

//目錄中心節(jié)點(diǎn)的節(jié)點(diǎn)信息表,n表示系統(tǒng)中的節(jié)點(diǎn)總數(shù)

//目錄中心節(jié)點(diǎn)是記錄系統(tǒng)中各個(gè)節(jié)點(diǎn)的一些重要參數(shù)信息

array[n][]node_info←node_id,costclass,mbr,isReplica,replicanum;

//目錄中心節(jié)點(diǎn)的輕載節(jié)點(diǎn)表,k表示系統(tǒng)中的輕載節(jié)點(diǎn)總數(shù)

array[k][]underload_node_info←node_id;

//節(jié)點(diǎn)正在執(zhí)行遷移的專題地圖數(shù)

migrate Layer Num←0;

//*空間數(shù)據(jù)遷移*/

if(layer_info.isReplica=false)then

send“query”messages to the directory central node;

get underload nodes;

compute spatial cost gains among underload nodes;

record those underloadnodes satisfying conditions of spatial cost gains;

locateLoad O;

if(migrate Layer Num=0)then

migrate the layer,

else if(migrateLayer Num=1)then

create multithread and migrate the layer,

else

join multithread and migrate the layer,

else

send“query replicas”messages to the directory central node;

get replica nodes;

compute spatial cost gains among replica nodes;

record those replica nodes satisfying conditions of spatial cost gains;

locateLoad O;

if(migrate Layer Num=0)then

migrate the layer,

else if(migrateLayer Num=1)then

create multithread and migrate the layer,

else

join multithread and migrate the layer,

在進(jìn)行空間數(shù)據(jù)遷移時(shí),由于受到帶寬的影響,有些專題地圖不能一次傳輸?shù)竭w移目標(biāo)節(jié)點(diǎn),需要切分專題地圖。為了切分處理盡可能地簡單化,本文采用規(guī)則切分的方法分割專題地圖,保證切分后的子專題地圖邊界是規(guī)則的。同時(shí),為了能夠統(tǒng)一處理不同的幾何形狀,本文采用最小外包矩形(MBR)來表示每個(gè)專題地圖和切分后子專題地圖的空間范圍,有利于在空間數(shù)據(jù)遷移傳輸完成之后,合并子專題地圖。

3.3 基于Grid GIS的空間計(jì)算遷移算法

隨著空間計(jì)算的執(zhí)行使空間負(fù)載狀況變壞,節(jié)點(diǎn)需要執(zhí)行空間計(jì)算遷移。在Grid GIS中,涉及到的空間計(jì)算類型多種多樣,有些空間計(jì)算非常復(fù)雜。本文主要研究針對空間疊加分析相關(guān)的空間計(jì)算遷移,而對于其它類型的空間分析(如緩沖區(qū)分析、網(wǎng)絡(luò)分析、數(shù)字高程模型分析等)相關(guān)的空間計(jì)算遷移不進(jìn)行討論。但是,由于專題地圖疊加分析所進(jìn)行的空間計(jì)算,造成節(jié)點(diǎn)空間負(fù)載變化非常復(fù)雜,故本文只考慮在進(jìn)行疊加分析的過程中,只有一個(gè)節(jié)點(diǎn)出現(xiàn)超載現(xiàn)象,其他參與執(zhí)行的節(jié)點(diǎn)上的空間負(fù)載狀況良好,忽略專題地圖的空間數(shù)據(jù)類型差異和不同空間數(shù)據(jù)類型在進(jìn)行疊加分析處理的差異。

本文將一個(gè)節(jié)點(diǎn)在疊加分析的過程中出現(xiàn)超載現(xiàn)象時(shí)的專題地圖狀況分為如下兩類:

(1)需要的多個(gè)專題地圖恰好都在一個(gè)節(jié)點(diǎn)A上,但此時(shí)節(jié)點(diǎn)A的空間負(fù)載狀況隨著疊加分析的進(jìn)行,出現(xiàn)超載;

(2)需要的多個(gè)專題地圖分散在不同的節(jié)點(diǎn)上,并且在節(jié)點(diǎn)A上的專題地圖(至少是兩個(gè)專題地圖)參與執(zhí)行疊加操作,但此時(shí)隨著疊加分析的進(jìn)行,節(jié)點(diǎn)A出現(xiàn)空間負(fù)載超載。

對于第(1)種情況,超載節(jié)點(diǎn)要先查看參與執(zhí)行的幾個(gè)專題地圖是否存在冗余空間副本,以及此時(shí)冗余空間副本所在節(jié)點(diǎn)的空間負(fù)載狀況,然后決定遷移方案。

對于第(2)種情況,本文設(shè)定其他參與執(zhí)行疊加操作的節(jié)點(diǎn)都沒有超載節(jié)點(diǎn)上的任何一個(gè)專題地圖。超載節(jié)點(diǎn)要先查看共同參與執(zhí)行疊加操作的其他節(jié)點(diǎn)是否可以接受它的空間計(jì)算遷移。如果其他節(jié)點(diǎn)中有多個(gè)節(jié)點(diǎn)可以接受空間計(jì)算遷移,那么超載節(jié)點(diǎn)選擇當(dāng)前空間負(fù)載最小的節(jié)點(diǎn)作為遷移目標(biāo)節(jié)點(diǎn),然后調(diào)用空間負(fù)載平衡定位算法,確定該遷移目標(biāo)節(jié)點(diǎn)的位置,只執(zhí)行空間數(shù)據(jù)遷移。如果其他節(jié)點(diǎn)都不能接受空間計(jì)算遷移,那么超載節(jié)點(diǎn)會(huì)向目錄中心節(jié)點(diǎn)請求空間計(jì)算遷移,并優(yōu)先查找是否具有遷移專題地圖副本的可行節(jié)點(diǎn)。如果沒有可行的副本節(jié)點(diǎn),超載節(jié)點(diǎn)會(huì)向目錄中心節(jié)點(diǎn)查詢當(dāng)前空間負(fù)載最小的輕載節(jié)點(diǎn)。如果有可行的副本節(jié)點(diǎn),選取原則與第(1)種情況相同。

空間計(jì)算遷移算法的程序描述如下:

migrateSpatialComputeO

1./*初始化相關(guān)信息*/

2.//要遷移的m個(gè)專題地圖

3.array[m]layer←layer1_id,layer2_id,...,layerm_id;

4.//目錄中心節(jié)點(diǎn)返回的n個(gè)可行副本節(jié)點(diǎn)

5.array[n][]replicanode_info←node_id,layer_id,node_load_state;

6.//目錄中心節(jié)點(diǎn)的輕載節(jié)點(diǎn)表

7.array[k][]underload_node_info←node_id,node_load_state;

8.//參與執(zhí)行空間計(jì)算的s個(gè)節(jié)點(diǎn)

9.array[s]performnode←node1_id,node2_id,...,nodes_id,;

10./*空間計(jì)算遷移*/

11.if(all the migrating layers in the overload node)then

12.if(exist replicas of the migrating layers)then

13.send messages to the directory central node;

14.get replicanode_info;

15.if(replica node accepts new tasks)then

16.choose replica node having minimum node_load_state in replica_node_info according to the replica nodes priority;

17.locateLoad O;

18.migrate spatial computing content;

19.else

20.send messages to the directory central node;

21.get a underload node having minimum node_load_state;

22.locateLoad O;

23.migrate spatial computing content;

24.else

25.get a underload node having minimum node_load_state;

26.locate LoadeO;

27.migrate spatial computing content;

28.else

29.if(perform node accepts new tasks)then

30.locateLoad O;

31.migrateSpatiaIDataO;

32.else

33.perform the codes between line 12 and line 27;

3.4 基于GridGIS的空間環(huán)境遷移算法

4 實(shí)驗(yàn)分析

當(dāng)某個(gè)節(jié)點(diǎn)發(fā)現(xiàn)自己處于超載狀況或者該節(jié)點(diǎn)要離開系統(tǒng),它會(huì)請求進(jìn)行空間負(fù)載遷移,但此時(shí)系統(tǒng)中輕載節(jié)點(diǎn)和該節(jié)點(diǎn)的運(yùn)行環(huán)境是異構(gòu)的。同時(shí),在該節(jié)點(diǎn)上正在執(zhí)行的和待處理的空間操作都是依賴于它的運(yùn)行環(huán)境,導(dǎo)致即使輕載節(jié)點(diǎn)具有該節(jié)點(diǎn)上專題地圖的副本,也不能執(zhí)行空間操作,需要進(jìn)行空間環(huán)境遷移。很顯然,空間環(huán)境遷移的開銷代價(jià)高,容易引起一致性問題。本文只關(guān)注與空間操作相關(guān)的軟件宿主環(huán)境,而且認(rèn)為相關(guān)聯(lián)的所有軟件程序具有良好的可移植性和平臺無關(guān)性。

在進(jìn)行空間環(huán)境遷移時(shí),本文把空間操作相關(guān)的軟件宿主環(huán)境、空間計(jì)算程序、專題地圖數(shù)據(jù)和相關(guān)空間計(jì)算的中間結(jié)果以整體打包壓縮方式進(jìn)行遷移。由于遷移量較大和帶寬受限使遷移不能一次傳輸完成,本文將壓縮后的空間遷移負(fù)載進(jìn)行切塊,塊的大小選擇依據(jù)具體的帶寬情況,但要保證每塊可以一次遷移完成。另一方面,本文不考慮遷移目標(biāo)節(jié)點(diǎn)是否具有該節(jié)點(diǎn)的專題地圖副本,減少請求任務(wù)完成的等待時(shí)間。然而,在遷移目標(biāo)節(jié)點(diǎn)執(zhí)行完該空間操作后,它會(huì)刪除這些遷移負(fù)載來釋放自己被占用的空間資源。因此,在刪除之前,遷移目標(biāo)節(jié)點(diǎn)會(huì)先確定是否有相關(guān)的遷移負(fù)載副本存在。如果副本存在,那么它就立即執(zhí)行刪除操作;否則,它選擇暫時(shí)保留,當(dāng)該節(jié)點(diǎn)輕載或者重新加入系統(tǒng)后,再執(zhí)行刪除操作??臻g環(huán)境遷移算法的程序描述如下:

mograteSpatoa;Emvorpment O

/*初始化相關(guān)信息*/

//目錄中心節(jié)點(diǎn)的輕載節(jié)點(diǎn)表,k表示系統(tǒng)中的輕載節(jié)點(diǎn)總數(shù)

array[k][]underload_node_info←node_id,node_load_state,environmenttype;

//申請遷移的節(jié)點(diǎn)

array[]migrate_node_node_id,node_load_state,environmenttype;

/*空間環(huán)境遷移*/

if(migrate_node.environmenttype≠underload_node_info.environmenttype)then

choose the underload node which has the minimum node_load_state;

locateLoadO;

migrate all the migrating contents in the type of compressed packages;

Nebula系統(tǒng)是一個(gè)網(wǎng)格空間計(jì)算任務(wù)處理系統(tǒng),能夠協(xié)同處理海量的空間信息,實(shí)現(xiàn)空間計(jì)算能力的有效分配和管理,提出了基于域的網(wǎng)格節(jié)點(diǎn)架構(gòu)[9]。SLBM系統(tǒng)是為Nebula系統(tǒng)提供性能監(jiān)測,合理調(diào)配Nebula中的空間負(fù)載。本文提出了一個(gè)基于Nebula的空間負(fù)載平衡遷移模擬系統(tǒng)(SLBM),模擬了Nebula中一個(gè)節(jié)點(diǎn)在t時(shí)刻出現(xiàn)超載,需要SLBM系統(tǒng)執(zhí)行空間數(shù)據(jù)遷移的過程,給出模擬測試的相關(guān)性能分析。

表1 t時(shí)刻的節(jié)點(diǎn)模擬信息

空間數(shù)據(jù)遷移模擬測試選取10個(gè)同構(gòu)節(jié)點(diǎn)、6個(gè)專題地圖、3個(gè)域,采用多次重復(fù)迭代的方法進(jìn)行實(shí)驗(yàn)。假設(shè)節(jié)點(diǎn)的空間負(fù)載狀況是由節(jié)點(diǎn)空間代價(jià)量所決定的。在t時(shí)刻,節(jié)點(diǎn)模擬信息如表1所示,專題地圖模擬信息如表2所示,系統(tǒng)模擬域如圖1所示。對于專題地圖模擬信息中空間數(shù)據(jù)量級別v,本文假設(shè)為10個(gè)級別(用正整數(shù)表示),每10M為一個(gè)級別。

表2 t時(shí)刻的專題地圖模擬信息

假設(shè)專題地圖D引起節(jié)點(diǎn)n9超載,SLBM系統(tǒng)執(zhí)行如下操作:

(1)節(jié)點(diǎn)n9向其所在域I目錄報(bào)告超載,請求執(zhí)行空間任務(wù)task_a遷移;

(2)域I目錄發(fā)現(xiàn)域I內(nèi)沒有D的副本后,把節(jié)點(diǎn)n9的空間任務(wù)遷移請求轉(zhuǎn)發(fā)給系統(tǒng)目錄,同時(shí)通知節(jié)點(diǎn)n9等待接收系統(tǒng)目錄的查詢返回結(jié)果;

(3)系統(tǒng)目錄查詢專題地圖信息表(見表1),查找到D的副本節(jié)點(diǎn)n8和n6存在,再在節(jié)點(diǎn)信息表(見表2)中,查看節(jié)點(diǎn)n8和n6的當(dāng)前空間負(fù)載狀況,發(fā)現(xiàn)節(jié)點(diǎn)n6雖然沒有超載,但已經(jīng)滿負(fù)荷運(yùn)行,不能再接受新的空間任務(wù);同時(shí),發(fā)現(xiàn)節(jié)點(diǎn)n8也不能再接受新的空間任務(wù);然后,通知節(jié)點(diǎn)n9不能執(zhí)行空間任務(wù)遷移;

(4)節(jié)點(diǎn)n9再次向域I發(fā)出空間數(shù)據(jù)遷移請求;

(5)域I目錄發(fā)現(xiàn)在域內(nèi)節(jié)點(diǎn)中只有節(jié)點(diǎn)n1可以執(zhí)行,把節(jié)點(diǎn)n1的IP地址傳給節(jié)點(diǎn)n9;

(6)節(jié)點(diǎn)n9主動(dòng)連接節(jié)點(diǎn)n1,執(zhí)行空間數(shù)據(jù)遷移操作。

在進(jìn)行空間數(shù)據(jù)遷移時(shí),網(wǎng)絡(luò)帶寬是影響空間數(shù)據(jù)傳輸速率的關(guān)鍵因素之一。因此,本文模擬測試在帶寬為2M的局域網(wǎng)和帶寬為100M的廣域網(wǎng)兩種情況下,單節(jié)點(diǎn)接收遷移專題地圖D的傳輸時(shí)間,并且假定其他節(jié)點(diǎn)的運(yùn)行狀況不影響帶寬。在帶寬一定和單節(jié)點(diǎn)接收的情況下,本文模擬測試了遷移空間數(shù)據(jù)量與傳輸時(shí)間的關(guān)系,如圖1所示。

從圖1中可以看到,在進(jìn)行空間數(shù)據(jù)遷移時(shí),帶寬越大,遷移空間數(shù)據(jù)的傳輸時(shí)間越少。因此,當(dāng)空間數(shù)據(jù)遷移量小于20M時(shí),本文認(rèn)為局域網(wǎng)和廣域網(wǎng)都可以執(zhí)行空間遷移任務(wù);但是,當(dāng)空間數(shù)據(jù)遷移量大于20M時(shí),本文認(rèn)為廣域網(wǎng)執(zhí)行空間遷移任務(wù)明顯優(yōu)于局域網(wǎng)。為了更好地執(zhí)行空間遷移任務(wù),應(yīng)盡可能地增大網(wǎng)絡(luò)帶寬。

此外,當(dāng)多個(gè)節(jié)點(diǎn)接收空間數(shù)據(jù)遷移時(shí),由于帶寬需要同時(shí)分配給多個(gè)節(jié)點(diǎn),無論帶寬采取何種分配方式,每個(gè)節(jié)點(diǎn)平均能夠占有的帶寬就會(huì)大幅減少。例如,在帶寬為100M的網(wǎng)絡(luò)中,如果有10個(gè)節(jié)點(diǎn)同時(shí)接收空間數(shù)據(jù)遷移,那么每個(gè)節(jié)點(diǎn)平均獲取的帶寬為10M,遷移空間數(shù)據(jù)的傳輸時(shí)間就會(huì)增大10倍。很顯然,空間數(shù)據(jù)遷移效率降低較大。特別是,如果空間數(shù)據(jù)遷移量也同時(shí)增多,那么空間數(shù)據(jù)遷移效率將更低,傳輸時(shí)間可能達(dá)到無法預(yù)測的狀況。因此,當(dāng)多個(gè)節(jié)點(diǎn)同時(shí)接收空間數(shù)據(jù)遷移時(shí),參與的節(jié)點(diǎn)數(shù)和遷移的空間數(shù)據(jù)量尤為重要,并且應(yīng)該根據(jù)具體的應(yīng)用環(huán)境進(jìn)行二者的權(quán)衡。

5 結(jié)語

本文結(jié)合了Grid GIS的異構(gòu)性和電力勘察設(shè)計(jì)工程中多專題地圖的交互性,提出了基于多專題地圖的空間負(fù)載平衡遷移算法,依據(jù)不同的空間負(fù)載狀況,給出了遷移條件和遷移原則,提出了空間任務(wù)遷移、空間數(shù)據(jù)遷移、空間計(jì)算遷移和空間環(huán)境遷移四個(gè)子算法,構(gòu)建了基于Neb-ula的空間負(fù)載平衡遷移模擬系統(tǒng)SLBM,進(jìn)行了迭代模擬測試和相關(guān)性能分析,提高了電力勘察設(shè)計(jì)信息系統(tǒng)的性能。本文后續(xù)工作將進(jìn)一步對電力勘察設(shè)計(jì)信息系統(tǒng)的多專題地圖進(jìn)行空間操作和空間分析時(shí),出現(xiàn)有多個(gè)節(jié)點(diǎn)同時(shí)出現(xiàn)超載的情況進(jìn)行深入研究。

猜你喜歡
專題地圖副本空間數(shù)據(jù)
天安門地區(qū)三維立體實(shí)景系統(tǒng)建設(shè)及專題地圖服務(wù)
北京測繪(2021年8期)2021-10-20 05:09:58
面向流媒體基于蟻群的副本選擇算法①
基于CorelDRAW與MAPGIS的專題地圖制作技巧
副本放置中的更新策略及算法*
元數(shù)據(jù)驅(qū)動(dòng)的多中心空間數(shù)據(jù)同步方法研究
樹形網(wǎng)絡(luò)中的副本更新策略及算法*
地震應(yīng)急專題地圖快速化產(chǎn)出研究
山西地震(2014年3期)2014-09-11 02:09:12
基于文件系統(tǒng)的分布式海量空間數(shù)據(jù)高效存儲與組織研究
SUPERMAP DESKPRO在地震專題地圖中的制作方法
客戶端空間數(shù)據(jù)緩存策略
南木林县| 高台县| 达拉特旗| 墨竹工卡县| 大厂| 绥芬河市| 玉田县| 北京市| 丹寨县| 罗山县| 吕梁市| 松潘县| 嘉祥县| 鄂尔多斯市| 景泰县| 香河县| 石台县| 涪陵区| 临邑县| 宝兴县| 沙坪坝区| 甘德县| 广平县| 滨海县| 赣榆县| 平原县| 邹城市| 广昌县| 罗定市| 潼南县| 拜泉县| 青海省| 沅陵县| 阳春市| 淮北市| 海原县| 拜泉县| 那曲县| 天镇县| 郯城县| 宽甸|