專(zhuān)利名稱(chēng)::一種用于數(shù)據(jù)網(wǎng)格的全分布式副本定位方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及一種網(wǎng)絡(luò)技術(shù),特別是涉及一種用于數(shù)據(jù)網(wǎng)格的全分布式副本定位方法。
背景技術(shù):
:整合廣域網(wǎng)上分布、異構(gòu)、海量的存貯資源,根據(jù)用戶(hù)需求,提供足夠的虛擬化存貯空間,安全可靠的存貯機(jī)制,高效穩(wěn)定的傳輸機(jī)制是數(shù)據(jù)網(wǎng)格的重要功能。為實(shí)現(xiàn)以上功能,副本技術(shù)必不可少。副本即文件源數(shù)據(jù)在本域中或遠(yuǎn)域產(chǎn)生的一個(gè)文件拷貝,拷貝文件數(shù)據(jù)可以為源文件的部分和全部。文件拷貝通常稱(chēng)之為數(shù)據(jù)副本。數(shù)據(jù)副本存儲(chǔ)方式也有多種,源文件數(shù)據(jù)可以完整地集中存儲(chǔ)在單一存儲(chǔ)節(jié)點(diǎn)上,也可以分成多個(gè)數(shù)據(jù)段(即分片)的方式存儲(chǔ)在多個(gè)存儲(chǔ)節(jié)點(diǎn)上。數(shù)據(jù)副本通過(guò)將本域文件在遠(yuǎn)域產(chǎn)生一個(gè)或多個(gè)副本,使遠(yuǎn)域用戶(hù)在需要訪(fǎng)問(wèn)本域文件時(shí)只需讀寫(xiě)遠(yuǎn)域中的副本數(shù)據(jù),減少了用戶(hù)的數(shù)據(jù)訪(fǎng)問(wèn)延遲,降低了網(wǎng)絡(luò)間的帶寬消耗。另一方面,通過(guò)在域內(nèi)創(chuàng)建同一數(shù)據(jù)的多個(gè)副本,增加了用戶(hù)的可用訪(fǎng)問(wèn)數(shù)據(jù)點(diǎn),保障了數(shù)據(jù)的可用性和可靠性。副本定位指給出一個(gè)文件的邏輯文件名,找到這個(gè)文件對(duì)應(yīng)的一個(gè)或多個(gè)副本的物理地址的過(guò)程。邏輯文件名指在本域唯一標(biāo)識(shí)一個(gè)文件的字符串,這個(gè)字符串在本域內(nèi)唯一。物理地址指本域內(nèi)某個(gè)邏輯文件名對(duì)應(yīng)的文件的數(shù)據(jù)副本的具體存儲(chǔ)節(jié)點(diǎn)的位置。由于網(wǎng)格環(huán)境下數(shù)據(jù)量龐大,往往達(dá)到千億、萬(wàn)億級(jí),對(duì)于數(shù)據(jù)的副本信息也呈海量增長(zhǎng)趨勢(shì),使用單一的副本搜索服務(wù)器已經(jīng)無(wú)法滿(mǎn)足副本信息的存貯量和對(duì)于有副本定位需求用戶(hù)的響應(yīng)時(shí)間的控制。因此將副本信息分布在不同的存貯節(jié)點(diǎn)上,在不同的節(jié)點(diǎn)間實(shí)現(xiàn)分布式副本定位成為解決這一問(wèn)題的途徑。目前已有幾種網(wǎng)格環(huán)境下副本定位的機(jī)制,這些機(jī)制在其特定應(yīng)用或模擬測(cè)試中都體現(xiàn)出可觀(guān)的優(yōu)越性,但是它們?nèi)杂锌筛倪M(jìn)之處。副本定位服務(wù)是個(gè)典型的分布式副本定位機(jī)制。這個(gè)機(jī)制由本地副本目錄和副本定位索引組成層次結(jié)構(gòu)。在很多網(wǎng)格應(yīng)用中都有副本定位索引的使用,取得了很好的效果,但是副本定位索引是一個(gè)靜態(tài)配置的機(jī)制,即當(dāng)其中某一個(gè)節(jié)點(diǎn)出現(xiàn)問(wèn)題,整個(gè)機(jī)制沒(méi)有辦法做出動(dòng)態(tài)調(diào)整。點(diǎn)對(duì)點(diǎn)副本定位服務(wù)點(diǎn)對(duì)點(diǎn)副本定位索引,在某種程度上提出了解決這一問(wèn)題的方案。但存在性能和安全上的問(wèn)題??傊?,現(xiàn)有數(shù)據(jù)網(wǎng)格中副本定位模型的兩大問(wèn)題(1)多個(gè)應(yīng)用域內(nèi)及應(yīng)用域間的副本定位效率低(2)副本定位模型的不能自適應(yīng)動(dòng)態(tài)調(diào)整。
發(fā)明內(nèi)容本發(fā)明的目的在于提供一種用于數(shù)據(jù)網(wǎng)格的全分布式副本定位方法,該方法在多個(gè)應(yīng)用域內(nèi)及應(yīng)用域間的副本定位效率高,安全性好,并且可以對(duì)副本定位模型的進(jìn)行自適應(yīng)動(dòng)態(tài)調(diào)整。本發(fā)明提供的用于數(shù)據(jù)網(wǎng)格的全分布式副本定位方法,首先判斷用戶(hù)命令是創(chuàng)建副本、查找副本還是刪除副本,再分別按照下述步驟(1)、(2)或(3)進(jìn)行對(duì)應(yīng)的操作,當(dāng)完成一次操作后接受用戶(hù)命令判斷是否結(jié)束,若需要繼續(xù)操作,則返回接受用戶(hù)命令,否則結(jié)束整個(gè)流程;(1)創(chuàng)建副本通過(guò)副本目錄管理器注冊(cè)物理映射,并將副本目錄管理器注冊(cè)到本地副本管理器索引中;(2)查找副本接收用戶(hù)的副本定位請(qǐng)求,査詢(xún)映射表,返回邏輯文件名對(duì)應(yīng)得物理地址集;(3)刪除副本副本通過(guò)查找對(duì)應(yīng)的本地副本目錄管理器索引和副本目錄管理器,完成在路由表上的副本撤銷(xiāo)。本發(fā)明方法所采用的副本定位模型由分布在不同域中的副本服務(wù)節(jié)點(diǎn)副本服務(wù)對(duì)(即存儲(chǔ)節(jié)點(diǎn))組成,服務(wù)節(jié)點(diǎn)構(gòu)成了一個(gè)多重環(huán)。副本服務(wù)系統(tǒng)具備多應(yīng)用域及應(yīng)用域內(nèi)的副本定位功能,并提出了解決效率和安全問(wèn)題的解決方案。同時(shí),基于邊界聯(lián)系算法,副本服務(wù)系統(tǒng)能在副本服務(wù)對(duì)動(dòng)態(tài)改變(加入或離開(kāi))時(shí),動(dòng)態(tài)調(diào)整自己的拓?fù)浣Y(jié)構(gòu),保證副本定位服務(wù)的穩(wěn)定性。具體而言,本發(fā)明具有以下技術(shù)效果。1.自適應(yīng)性副本服務(wù)系統(tǒng)能在動(dòng)態(tài)改變(加入或離開(kāi))時(shí),能夠動(dòng)態(tài)調(diào)整自己的拓?fù)浣Y(jié)構(gòu),從而保證副本定位服務(wù)的穩(wěn)定性。2.支持多應(yīng)用域數(shù)據(jù)網(wǎng)格的副本定位請(qǐng)求數(shù)據(jù)網(wǎng)格的每個(gè)應(yīng)用域都能夠給出若干服務(wù)器作為副本服務(wù)對(duì),不同的應(yīng)用域的副本服務(wù)對(duì)合作構(gòu)成全分布式的副本定位的系統(tǒng)。副本服務(wù)對(duì)既可以為自己所屬的應(yīng)用域服務(wù),也可以為其它應(yīng)用域的有副本定位要求的數(shù)據(jù)網(wǎng)格用戶(hù)服務(wù)。3.可擴(kuò)展性該分布式副本定位方法具備擴(kuò)展特性,即可以通過(guò)增加副本服務(wù)對(duì)的數(shù)量提高副本定位算法的定位能力,如服務(wù)用戶(hù)的數(shù)量。4.高效率性該分布式副本定位算法采取分布式聯(lián)合査詢(xún)的機(jī)制,使副本定位的性能更高。圖1為本發(fā)明的功能總流程圖;圖2為本發(fā)明的體系結(jié)構(gòu)示意圖;圖3為本發(fā)明中副本服務(wù)節(jié)點(diǎn)副本服務(wù)對(duì)的功能模塊示意圖;圖4為本發(fā)明的副本信息創(chuàng)建工作流程示意圖;圖5為本發(fā)明中本地副本目錄管理器與本地副本管理器索引的層次關(guān)系示意圖;圖6為發(fā)明的副本定位信息刪除工作流程示意圖;圖7為本發(fā)明的副本定位工作流程示意圖;圖8為副本映射的分類(lèi)示意圖;圖9為位數(shù)據(jù)文件副本的執(zhí)行過(guò)程示例圖。具體實(shí)施方式下面結(jié)合附圖和實(shí)例對(duì)本發(fā)明作進(jìn)一步詳細(xì)的說(shuō)明。如圖1所示,本發(fā)明方法首先接受一個(gè)用戶(hù)命令,判斷用戶(hù)命令是創(chuàng)建副本、查找副本還是刪除副本,再分別進(jìn)行對(duì)應(yīng)的操作,當(dāng)完成一次操作后接受用戶(hù)命令判斷是否結(jié)束,若需要繼續(xù)操作,則返回接受用戶(hù)命令,否則結(jié)束整個(gè)流程。分布式副本定位模型副本服務(wù)系統(tǒng)的體系結(jié)構(gòu)。整個(gè)副本服務(wù)系統(tǒng)由若干個(gè)副本服務(wù)對(duì)(即存儲(chǔ)節(jié)點(diǎn))構(gòu)成,這些副本服務(wù)對(duì)屬于不同的邏輯域。為同一應(yīng)用服務(wù)的資源的集合定義為一個(gè)邏輯域。以該圖2為例,一共有三個(gè)邏輯域,每個(gè)邏輯域里有三個(gè)副本服務(wù)對(duì),這9個(gè)副本服務(wù)對(duì)組成一個(gè)二重環(huán)的拓?fù)浣Y(jié)構(gòu),這個(gè)拓?fù)浣Y(jié)構(gòu)的組成和維護(hù)是基于邊界鏈接算法。二重環(huán)的第一重環(huán)處于邏輯域內(nèi),以邏輯域A為例,三個(gè)副本服務(wù)對(duì)互聯(lián),構(gòu)成了一個(gè)環(huán)。第二重環(huán)介于邏輯域之間,在圖中,每個(gè)邏輯域中都有兩個(gè)副本服務(wù)對(duì)與領(lǐng)域的兩個(gè)副本服務(wù)對(duì)相連。所有的副本定位過(guò)程都是在這個(gè)二重環(huán)中完成的,即多個(gè)副本服務(wù)對(duì)的聯(lián)合查詢(xún)過(guò)程。其中,副本服務(wù)節(jié)點(diǎn)副本服務(wù)對(duì)由三大功能模塊構(gòu)成(如圖3):本地副本目錄管理器,本地副本管理器索引,路由表。如圖5所示,副本定位信息的創(chuàng)建流程為1.1獲取待創(chuàng)建副本的邏輯文件名;表1給出了一個(gè)本地副本目錄信息條目中各個(gè)屬性定義的例子,如表所示,表中有6個(gè)關(guān)鍵屬性邏輯文件名、邏輯域名、物理存儲(chǔ)地址、創(chuàng)建時(shí)間、文件大小和最近訪(fǎng)問(wèn)時(shí)間。它們的定義如下表l副本存儲(chǔ)信息條目邏輯文件名邏輯域名物理存儲(chǔ)地址創(chuàng)建時(shí)間文件大小最近訪(fǎng)問(wèn)時(shí)間Testtxtimageprocess.edu.cngridftp:〃211.69.193.1:2811〃CGSP2/data/repl2006-03-201024字節(jié)2006-03-25Test.txtImageprocess.edu.cnhttD:〃211.69.193.16:8080/2006-03-231024字節(jié)2006-03-26/CGSP2/data/rep2other.txtftp:〃162.105.193:22048字節(jié)courseonline.ed2006-03-212006-03-25u.cn811〃CGSP2/data/repl邏輯文件名是數(shù)據(jù)網(wǎng)格中某一數(shù)據(jù)文件在該文件所屬的邏輯域中的唯一標(biāo)識(shí)符。邏輯文件名在其所屬的邏輯域內(nèi)唯一,而不同邏輯域之間的邏輯文件名可能相同。邏輯域名是邏輯域的唯一標(biāo)識(shí)符,邏輯域與邏輯域間的邏輯域名不同。邏輯文件名在數(shù)據(jù)網(wǎng)格環(huán)境中是全局唯一的,而如上所述邏輯文件名在某一邏輯域中是唯一的,所以邏輯域名+邏輯文件名是對(duì)該邏輯文件名所對(duì)應(yīng)的數(shù)據(jù)文件的全局標(biāo)識(shí)符。物理存儲(chǔ)地址是指某個(gè)副本所存儲(chǔ)的物理位置,這個(gè)物理位置與四個(gè)屬性相關(guān):傳輸協(xié)議、IP地址、端口和文件目錄信息。1.2根據(jù)副本的邏輯文件名和物理位置創(chuàng)建該副本的物理映射;物理映射是副本對(duì)應(yīng)數(shù)據(jù)文件的邏輯文件名與其實(shí)際存儲(chǔ)的物理地址之間的對(duì)應(yīng)關(guān)系。1.3存入該副本的數(shù)據(jù)文件所屬的邏輯域內(nèi)的一個(gè)本地副本目錄管理器;本地副本目錄管理器維護(hù)存在本邏輯域內(nèi)數(shù)據(jù)文件的邏輯文件名到這個(gè)邏輯文件名對(duì)應(yīng)的副本的物理存儲(chǔ)地址的映射。它的主要功能包括在注冊(cè)副本時(shí),建立本地副本的邏輯文件名到物理存儲(chǔ)地址的映射表項(xiàng);在撤銷(xiāo)副本時(shí),刪除對(duì)應(yīng)的映射表項(xiàng);接收用戶(hù)的副本定位請(qǐng)求,查詢(xún)映射表,返回邏輯文件名對(duì)應(yīng)得物理地址集。1.4判斷這個(gè)數(shù)據(jù)文件是否是域敏感的,若是域敏感的,則獲取其邏輯域名,然后根據(jù)其邏輯域名創(chuàng)建一個(gè)本地副本映射;若不是域敏感的,則創(chuàng)建一個(gè)全局副本映射,不同之處在于用全局域名和副本邏輯文件名來(lái)創(chuàng)建全局副本映射。域敏感是指該副本中的邏輯文件名可能和其他域的副本中的邏輯文件名相同,即該邏輯文件名在全局邏輯域中不是唯一的,反之則是非域敏感的。如表一中的即將創(chuàng)建的副本邏輯文件名為T(mén)est.txt,邏輯域名為imageprocess.edu.cn,貝ll可以將Test.txt-imageprocess.edu.cn作為本地畐ij本映射。1.5利用邊界連接算法確定這個(gè)索引映射被存到哪個(gè)本地副本管理器索引;邊界連接的路由表分兩類(lèi),域內(nèi)路由表和域間路由表。域內(nèi)路由表存儲(chǔ)在所有的節(jié)點(diǎn)中,包含該節(jié)點(diǎn)所屬的域內(nèi)的鄰居節(jié)點(diǎn)信息、前序節(jié)點(diǎn)信息、域內(nèi)邊界節(jié)點(diǎn)信息(執(zhí)行時(shí)動(dòng)態(tài)添加)。域間路由表存在于邊界節(jié)點(diǎn)中,包含該邊界節(jié)點(diǎn)在域間環(huán)內(nèi)的鄰居節(jié)點(diǎn)信息和在該域間環(huán)中的前序節(jié)點(diǎn)信息。表2給出了域內(nèi)路由表的詳細(xì)描述信息,"RT—intra[k]"代表域內(nèi)路由表的第k條記錄,根據(jù)上文描述,邊界連接的路由表最多有m個(gè)鄰居節(jié)點(diǎn)的信息,其中m表示數(shù)字標(biāo)識(shí)符的位數(shù),所以lSk^m。"RT—intm[k].x"表示域內(nèi)路由表的第k條記錄的x屬性。"RTjntra.Predecesso"、"RT.Boundary—Max,,和"RT.Boundary—Min"是域內(nèi)路由表的額外屬性,分別表示該節(jié)點(diǎn)的前序節(jié)點(diǎn)信息,其邊界最大點(diǎn)和邊界最小點(diǎn)信息。表2域內(nèi)路由表表<table>tableseeoriginaldocumentpage9</column></row><table>域內(nèi)路由表鄰居節(jié)點(diǎn)由RTjntra[k]表示,如表2所示,路由表存儲(chǔ)了與鄰居節(jié)點(diǎn)相關(guān)的三類(lèi)屬性:"start","interval"和"node",它們的意義如下start是一個(gè)正整數(shù),表示與該節(jié)點(diǎn)的數(shù)字標(biāo)識(shí)符相距2k-l的數(shù)字標(biāo)識(shí)符,即start=(n+2k-l)mod2m,由于邊界連接中的節(jié)點(diǎn)數(shù)字標(biāo)識(shí)符是根據(jù)哈希算法生成的,所以start所代表的數(shù)字標(biāo)識(shí)符不一定為某一個(gè)節(jié)點(diǎn)所擁有,在邊界連接算法中,取與start最近的后續(xù)節(jié)點(diǎn)為相鄰節(jié)點(diǎn)。interval表示該相鄰節(jié)點(diǎn)和路由表的下一個(gè)相鄰節(jié)點(diǎn)的start值之間的距離,這個(gè)值從某種程度上表示了兩個(gè)相鄰節(jié)點(diǎn)間的距離,通過(guò)這個(gè)值,邊界連接算法可以判斷哪個(gè)相鄰節(jié)點(diǎn)是距離所需要査詢(xún)的數(shù)字標(biāo)識(shí)符最近的節(jié)點(diǎn),從而判斷是否需要查找下一個(gè)相鄰點(diǎn)。node表示與該節(jié)點(diǎn)距離2k-l到距離2k之間的鄰居節(jié)點(diǎn),即這個(gè)節(jié)點(diǎn)就是start對(duì)應(yīng)的最近的后續(xù)節(jié)點(diǎn),用successor(RT[k].start)表示。在這里,node的值是可以訪(fǎng)問(wèn)該相鄰節(jié)點(diǎn)的信息,如IP。在上述的路由表信息中給出的都是某一個(gè)節(jié)點(diǎn)對(duì)應(yīng)的前序相鄰節(jié)點(diǎn),在進(jìn)行拓?fù)涓碌臅r(shí)候,僅僅知道前序相鄰節(jié)點(diǎn)是不夠的,故在路由表中添加了額外屬性"RT—intra.Predecessor",表示與邊界連接拓?fù)渲信c離該節(jié)點(diǎn)最近的后續(xù)節(jié)點(diǎn)的信息。RT.Boundary—Max和RT.Boundary—Min是路由表中的另外兩個(gè)額外屬性,表示該節(jié)點(diǎn)所屬的域內(nèi)的邊界極大點(diǎn)和邊界極小點(diǎn)的信息,這些信息是在一個(gè)節(jié)點(diǎn)加入拓?fù)洳⑴c跨域訪(fǎng)問(wèn)后動(dòng)態(tài)生成的。除了域內(nèi)路由表外,還有一個(gè)域間路由表,域間路由表與域內(nèi)路由表的不同在于,域間路由表里沒(méi)有邊界點(diǎn)信息。表3給出了域間路由表的屬性。表3域間路由表表項(xiàng)定義RT一inter[k].start(n+2k-1)mod2m,l^kSmRT—inter[k].interval[RT—inter[k]start,RT—inter[k+1].start]RT_inter[k].nodesuccessor(RT—inter[k].start)RT—inter,predecessor該節(jié)點(diǎn)在域間環(huán)的前序鄰居本地副本管理器索引維護(hù)處于聯(lián)合路由查詢(xún)表中數(shù)據(jù)文件的邏輯文件名到該邏輯文件名對(duì)應(yīng)的本地副本管理器,即副本服務(wù)對(duì)的地址。該功能模塊建立的目的在于,當(dāng)副本數(shù)據(jù)成千萬(wàn)級(jí),億萬(wàn)級(jí)增長(zhǎng)時(shí),單個(gè)本地副本管理器將無(wú)法滿(mǎn)足存儲(chǔ)能力和服務(wù)能力的需求,所以需要通過(guò)本地副本管理器索引對(duì)用戶(hù)請(qǐng)求進(jìn)行一次過(guò)濾,將用戶(hù)的査詢(xún)分配到不同的本地副本管理器上。本地副本管理器索引的主要功能效果在創(chuàng)建副本時(shí),建立本地副本的邏輯文件名到本地副本管理器的映射表項(xiàng);在撤銷(xiāo)副本時(shí),刪除對(duì)應(yīng)的映射表項(xiàng);接收用戶(hù)的副本定位請(qǐng)求,査詢(xún)映射表,返回邏輯文件名對(duì)應(yīng)的副本管理器地址。圖5給出了分布式副本定位模型副本服務(wù)系統(tǒng)中副本索引與本地副本目錄之間的層次關(guān)系以及在整個(gè)模型中的情況。本圖從兩個(gè)方面闡述了分布式副本定位模型的層次結(jié)構(gòu),圖的上半部分描述的是副本定位模型副本服務(wù)系統(tǒng)的成員副本服務(wù)對(duì)在邏輯上的層次結(jié)構(gòu)關(guān)系,而下半部分是實(shí)際的副本服務(wù)對(duì)的拓?fù)浣Y(jié)構(gòu),兩部分通過(guò)箭頭相關(guān)。副本定位模型是一種邏輯上的層次結(jié)構(gòu),即本地副本管理器索引處于上層,是暴露給用戶(hù)的,本地副本管理器索引之間具備同級(jí)的通信關(guān)系,通過(guò)邊界連接算法可以相互認(rèn)知,達(dá)到聯(lián)合查詢(xún)的目的。本地副本管理器被本地副本管理器索引,處于本地副本管理器索引的下層。在進(jìn)行副本定位的時(shí)候首先査詢(xún)本地副本管理器索引,獲取所需要的數(shù)據(jù)文件的邏輯文件名對(duì)應(yīng)的本地副本管理器的地址,然后査詢(xún)本地副本管理器獲取該邏輯文件名對(duì)應(yīng)的副本的物理地址。這是在實(shí)際執(zhí)行中的層次關(guān)系。1.6將索引映射存儲(chǔ)到該本地副本管理器索引中;1.7完成副本定位信息的創(chuàng)建過(guò)程。為了保證安全機(jī)制,管理員擁有刪除所有副本的權(quán)限,副本創(chuàng)造者只可刪除自身副本。如圖6所示,副本定位信息的刪除流程為2.1首先獲取要?jiǎng)h除的副本的數(shù)據(jù)文件的邏輯文件名;2.2判斷若該副本是否域敏感,若該副本是域敏感的,則獲取該副本的邏輯域名,并組合邏輯域名和邏輯文件名,利用邊界連接算法確定該副本的索引映射所在的本地副本管理器索引;若該副本不是域敏感的,則獲取全局邏輯域名,并組合全局邏輯域名和邏輯文件名,利用邊界連接算法確定該副本的索引映射所在的本地副本管理器索引。2.3通過(guò)查詢(xún)本地副本管理索引確定該副本的物理映射所在的本地副本管理器;2.4調(diào)用副本管理器功能刪除該物理映射;2.5從本地副本索引刪除索引映射;2.6結(jié)束副本定位信息的刪除過(guò)程。如圖7所示,副本定位的具體流程如下3.1獲得待定位的副本對(duì)應(yīng)的數(shù)據(jù)文件的邏輯文件名;3.2判斷這個(gè)副本是否是域敏感的,若該副本是域敏感的,則獲取邏輯域名和邏輯文件名一起輸入邊界連接算法中;若這個(gè)副本不是域敏感的,則獲取一個(gè)全局共享邏輯域名,與數(shù)據(jù)文件的邏輯文件名一起組合輸入到邊界連接算法。如上述表一中的邏輯文件名為T(mén)est.txt,邏輯域名為imageprocess.edu.cn,則可以將imageprocess.edu.cnVTest.txt作為輸入。又如某一副本所在的全局共享域名為hust.edu.cn,該副本的非域敏感邏輯文件名為邏輯文件名為cs.edu.cn,貝ij可以4每hust.edu.cn\cs.edu.cn作為輸入。3.3利用邊界連接算法,確定副本對(duì)應(yīng)的本地副本管理器索引;3.4根據(jù)本地副本管理器索引查本地副本目錄管理器;副本定位的實(shí)質(zhì)是找到副本映射。副本映射的定義是副本對(duì)應(yīng)的數(shù)據(jù)文件的邏輯文件名與其對(duì)應(yīng)的副本定位信息之間的對(duì)應(yīng)關(guān)系。如圖8所示,在副本服務(wù)系統(tǒng)副本定位模型中,副本映射分兩類(lèi)物理映射和索引映射。物理映射是副本對(duì)應(yīng)數(shù)據(jù)文件的邏輯文件名與其實(shí)際存儲(chǔ)的物理地址之間的對(duì)應(yīng)關(guān)系。索引映射指副本對(duì)應(yīng)數(shù)據(jù)文件的邏輯文件名與存儲(chǔ)該副本的物理映射的本地副本管理器的物理地址的對(duì)應(yīng)關(guān)系。根據(jù)上文所述的副本定位模型的層次結(jié)構(gòu),副本定位的過(guò)程首先是根據(jù)副本對(duì)應(yīng)數(shù)據(jù)文件的邏輯文件名找到其索引映射,然后根據(jù)索引映射中的本地副本管理器的地址向本地副本管理器發(fā)送請(qǐng)求査詢(xún)物理映射,最后根據(jù)物理映射中的副本物理地址定位副本。本地副本管理器中副本定位示意圖如圖9所示,數(shù)據(jù)文件的邏輯域名和邏輯文件名作為輸入進(jìn)入本地副本管理器,本地副本管理器查詢(xún)本地副本目錄,獲取該"邏輯域名+邏輯文件名"對(duì)應(yīng)的副本物理地址信息,以圖9為例,該數(shù)據(jù)文件有三個(gè)副本,故會(huì)生成三個(gè)副本物理地址作為本地副本管理器的輸出。3.5根據(jù)本地副本目錄管理確定物理映射;3.6完成副本定位。權(quán)利要求1、一種用于數(shù)據(jù)網(wǎng)格的全分布式副本定位方法,首先判斷用戶(hù)命令是創(chuàng)建副本、查找副本還是刪除副本,再分別按照下述步驟(1)、(2)或(3)進(jìn)行對(duì)應(yīng)的操作,當(dāng)完成一次操作后接受用戶(hù)命令判斷是否結(jié)束,若需要繼續(xù)操作,則返回接受用戶(hù)命令,否則結(jié)束整個(gè)流程;(1)創(chuàng)建副本通過(guò)副本目錄管理器注冊(cè)物理映射,并將副本目錄管理器注冊(cè)到本地副本管理器索引中;(2)查找副本接收用戶(hù)的副本定位請(qǐng)求,查詢(xún)映射表,返回邏輯文件名對(duì)應(yīng)得物理地址集;(3)刪除副本副本通過(guò)查找對(duì)應(yīng)的本地副本目錄管理器索引和副本目錄管理器,完成在路由表上的副本撤銷(xiāo)。2、根據(jù)權(quán)利要求1所述的全分布式副本定位方法,其特征在于步驟(1)按照下述過(guò)程創(chuàng)建副本-(1.1)獲取待創(chuàng)建副本的邏輯文件名;(1.2)根據(jù)副本的邏輯文件名和物理位置創(chuàng)建該副本的物理映射;(1.3)將該副本的物理映射存入該副本的數(shù)據(jù)文件所屬的邏輯域內(nèi)的本地副本目錄管理器,形成索引映射;(1.4)判斷該副本的數(shù)據(jù)文件是否是域敏感的,若是域敏感的,則獲取其邏輯域名,然后根據(jù)其邏輯域名創(chuàng)建一個(gè)本地副本映射;若不是域敏感的,則采用全局域名和副本邏輯文件名來(lái)創(chuàng)建全局副本映射;(1.5)利用邊界連接算法確定上述索引映射被存到哪個(gè)本地副本管理器索引;(1.6)根據(jù)步驟(1.3)和(1.5)所獲取本地副本目錄管理器的內(nèi)容和本地副本管理器索引構(gòu)成域內(nèi)路由表和域間路由表,其中,域內(nèi)路由表存儲(chǔ)在所有的節(jié)點(diǎn)中,包含該節(jié)點(diǎn)所屬的域內(nèi)的鄰居節(jié)點(diǎn)信息、前序節(jié)點(diǎn)信息和域內(nèi)邊界節(jié)點(diǎn)信息;域間路由表存在于邊界節(jié)點(diǎn)中,包含該邊界節(jié)點(diǎn)在域間環(huán)內(nèi)的鄰居節(jié)點(diǎn)信息和在該域間環(huán)中的前序節(jié)點(diǎn)信息;(1.7)將索引映射存儲(chǔ)到該本地副本管理器索引中。3、根據(jù)權(quán)利要求1或2所述的全分布式副本定位方法,其特征在于步驟(2)按照下述過(guò)程?hào)苏腋北?2.1)獲得待定位的副本對(duì)應(yīng)的數(shù)據(jù)文件的邏輯文件名;(2.2)判斷這個(gè)副本是否是域敏感的,若該副本是域敏感的,則獲取邏輯域名和邏輯文件名一起輸入邊界連接算法中,轉(zhuǎn)入步驟(2.3);若這個(gè)副本不是域敏感的,則獲取一個(gè)全局共享邏輯域名,與數(shù)據(jù)文件的邏輯文件名一起組合輸入到邊界連接算法,進(jìn)入步驟(2.3);(2J)利用邊界連接算法,確定副本對(duì)應(yīng)的本地副本管理器索引;(2.4)根據(jù)本地副本管理器索引査找本地副本目錄管理器;(2.5)根據(jù)本地副本目錄管理確定該副本的物理映射。4、根據(jù)權(quán)利要求3所述的全分布式副本定位方法,其特征在于步驟(3)按照下述過(guò)程刪除副本(3.1)獲取要?jiǎng)h除的副本的數(shù)據(jù)文件的邏輯文件名;(3.2)判斷若該副本是否域敏感,若該副本是域敏感的,則獲取該副本的邏輯域名,并組合邏輯域名和邏輯文件名,利用邊界連接算法確定該副本的索引映射所在的本地副本管理器索引,轉(zhuǎn)入步驟(3.3);若該副本不是域敏感的,則獲取全局邏輯域名,并組合全局邏輯域名和邏輯文件名,利用邊界連接算法確定該副本的索引映射所在的本地副本管理器索引,進(jìn)入步驟(3.3);(3.3)通過(guò)查詢(xún)本地副本管理索引確定該副本的物理映射所在的本地副本管理器;(3.4)調(diào)用副本管理器功能刪除該物理映射;(3.5)從本地副本索引刪除索引映射。全文摘要本發(fā)明公開(kāi)了一種用于數(shù)據(jù)網(wǎng)格的全分布式副本定位方法,首先判斷用戶(hù)命令是創(chuàng)建副本、查找副本還是刪除副本,再分別按照下述步驟進(jìn)行對(duì)應(yīng)的操作,完成操作后判斷是否結(jié)束,若需要繼續(xù)操作,則返回接受用戶(hù)命令,否則結(jié)束整個(gè)流程;創(chuàng)建副本通過(guò)副本目錄管理器注冊(cè)物理映射,并將副本目錄管理器注冊(cè)到本地副本管理器索引中;查找副本接收用戶(hù)的副本定位請(qǐng)求,查詢(xún)映射表,返回邏輯文件名對(duì)應(yīng)得物理地址集;刪除副本副本通過(guò)查找對(duì)應(yīng)的本地副本目錄管理器索引和副本目錄管理器,完成在路由表上的副本撤銷(xiāo)。本方法與現(xiàn)有的副本定位方法相比,具有自適應(yīng)性,支持多應(yīng)用域數(shù)據(jù)網(wǎng)格的副本定位請(qǐng)求,可擴(kuò)展性,高可用性,高安全性等特點(diǎn)。文檔編號(hào)G06F17/30GK101251843SQ200710168428公開(kāi)日2008年8月27日申請(qǐng)日期2007年11月23日優(yōu)先權(quán)日2007年11月23日發(fā)明者松吳,杰戴,曾純強(qiáng),珂范,海金,力齊申請(qǐng)人:華中科技大學(xué)