亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

并行文件系統(tǒng)的元數(shù)據(jù)文件布局管理方法

文檔序號(hào):7657905閱讀:163來(lái)源:國(guó)知局
專利名稱:并行文件系統(tǒng)的元數(shù)據(jù)文件布局管理方法
技術(shù)領(lǐng)域
并行文件系統(tǒng)的元數(shù)據(jù)文件布局管理方法屬于文件系統(tǒng)領(lǐng)域,尤其涉及其 中的元數(shù)據(jù)管理領(lǐng)域。
背景技術(shù)
隨著信息技術(shù)的飛速發(fā)展,人們要處理的數(shù)據(jù)量不斷增加,造成了對(duì)存儲(chǔ) 系統(tǒng)容量和性能的巨大需求,傳統(tǒng)的存儲(chǔ)方式已經(jīng)無(wú)法滿足用戶的需要。 一般 情況下,每臺(tái)主機(jī)都帶有自己的存儲(chǔ)設(shè)備,這使得信息分散在各個(gè)主機(jī)上,形 成信息孤島,不利于信息整合。網(wǎng)絡(luò)存儲(chǔ)可以提供共享的信息存取服務(wù),并具 有超大容量和優(yōu)秀的性能,因此成為存儲(chǔ)系統(tǒng)發(fā)展的趨勢(shì)。存儲(chǔ)區(qū)域網(wǎng)絡(luò)
(Storage Area Network, S AN)是一種專門的存儲(chǔ)網(wǎng)絡(luò),它可以把各種存儲(chǔ)設(shè)備 連接在一起,組成統(tǒng)一管理的存儲(chǔ)資源,而主機(jī)可以通過(guò)光纖或IP網(wǎng)絡(luò)來(lái)訪問(wèn) 這些資源。在這種存儲(chǔ)體系結(jié)構(gòu)中,資源的配置是不斷變化的,新的設(shè)備可以 不斷地加入到系統(tǒng)中,以滿足用戶對(duì)存儲(chǔ)容量或性能的需求。
傳統(tǒng)的分布式文件系統(tǒng)如NFS、 AFS等已經(jīng)無(wú)法滿足大規(guī)模網(wǎng)絡(luò)存儲(chǔ)系統(tǒng) 的高可擴(kuò)展性要求;基于對(duì)象的文件系統(tǒng)如Lustre、 PanFS等不能滿足SAN應(yīng) 用環(huán)境;近來(lái)出現(xiàn)的SAN文件系統(tǒng),如GPFS等,其空間管理采用基于塊的分 配方式。實(shí)驗(yàn)證明基于擴(kuò)展塊(extent)的分配方式較基于塊的分配方式,減少 了磁盤尋道時(shí)間,有利于將一大批數(shù)據(jù)一次性寫到存儲(chǔ)設(shè)備中的連續(xù)位置,縮 短寫數(shù)據(jù)的時(shí)間。采用基于擴(kuò)展塊分配方式的并行文件系統(tǒng)在讀取文件的時(shí)候 有很好的性能,因?yàn)槲募K都是成組連續(xù)分配的。若并行文件系統(tǒng)采用基于擴(kuò) 展塊的分配方式,服務(wù)器如何將文件布局(layout)劃分為擴(kuò)展塊的集合,為SAN環(huán)境下的應(yīng)用提供靈活的、高效的服務(wù),同時(shí)滿足多用戶對(duì)同一文件的并行操 作,是本發(fā)明需要解決的重要問(wèn)題。

發(fā)明內(nèi)容
本發(fā)明的目的是將并行文件系統(tǒng)中基于擴(kuò)展塊的文件布局劃分為擴(kuò)展塊集 合,對(duì)用戶請(qǐng)求做出合理響應(yīng),并向磁盤空間管理模塊請(qǐng)求分配或釋放相應(yīng)的 空間。
本發(fā)明的特征在于,所述方法是在由客戶機(jī)、元數(shù)據(jù)服務(wù)器和存儲(chǔ)設(shè)備構(gòu) 成的并行文件系統(tǒng)中依次按以下步驟完成的
步驟(1) 在所述系統(tǒng)中的元數(shù)據(jù)服務(wù)器之上加載一個(gè)文件布局管理模

所述文件管理模塊含有的數(shù)據(jù)結(jié)構(gòu)為
blocklayout—extent:記錄文件的擴(kuò)展塊的屬性,包括長(zhǎng)度、狀態(tài)、在文件中 的起始位置、所屬磁盤的ID及在磁盤中的起始位置,其中狀態(tài)可能有讀寫、讀、 無(wú)效、空四種,
allocator—segment:記錄向磁盤空間管理模塊申請(qǐng)的文件的擴(kuò)展塊的屬性, 包括長(zhǎng)度、在文件中的起始位置、所屬磁盤的ID及在磁盤中的起始位置,
bes—node:記錄文件的擴(kuò)展塊,包含blocklayout—extent結(jié)構(gòu),作為節(jié)點(diǎn)加 入文件擴(kuò)展塊鏈表,
blocklayout—layout:記錄文件的擴(kuò)展塊的節(jié)點(diǎn)的總數(shù),同時(shí)作為文件擴(kuò)展鏈 表的表頭,
所述文件布局的數(shù)據(jù)結(jié)構(gòu)組織方式為所述blocklayout—layout作為鏈表頭, 所述bes—node作為鏈表節(jié)點(diǎn)的雙向鏈表,該bes—node中的blocklayout—extent
是所述文件的擴(kuò)展塊,所述文件的所有擴(kuò)展塊組成所述的文件布局的邏輯結(jié)構(gòu), 所述文件布局管理模塊設(shè)有與用戶請(qǐng)求處理模塊的接口,以及與磁盤空間管理模塊的接口,其中
與用戶請(qǐng)求處理模塊的接口,有下述三個(gè)
layout—get:用于獲取文件的布局,來(lái)自所述用戶請(qǐng)求處理模塊的請(qǐng)求輸入 參數(shù)包括指定文件的索引節(jié)點(diǎn)inode及所述指定文件的起始位置和長(zhǎng)度,經(jīng)過(guò)所 述文件布局管理模塊處理后,向所述用戶請(qǐng)求處理模塊返回對(duì)應(yīng)于所述起始位 置和長(zhǎng)度的文件的擴(kuò)展塊集合,
layout—commit:用于提交文件的布局,來(lái)自所述用戶請(qǐng)求處理模塊的請(qǐng)求 輸入?yún)?shù)包括指定文件的索引節(jié)點(diǎn)inode及提交給所述指定文件的擴(kuò)展塊的集 合,經(jīng)過(guò)所述文件布局管理模塊處理后,向所述用戶請(qǐng)求處理模塊返回所述文 件的布局提交是否成功的標(biāo)志,
layout—adjust:用于調(diào)整文件的布局,來(lái)自所述用戶請(qǐng)求處理模塊的請(qǐng)求輸 入?yún)?shù)包括指定文件的索引節(jié)點(diǎn)inode及所述指定文件的大小,經(jīng)過(guò)文件布局管 理模塊處理后,向所述用戶請(qǐng)求處理模塊返回所述文件的布局按照指定大小修 改是否成功的標(biāo)志,
與磁盤空間管理模塊的接口,有下述兩個(gè)
get—space—from—allocator:用于向所述磁盤空間管理模塊請(qǐng)求分配新的磁盤
空間,向所述磁盤空間管理模塊輸入的參數(shù)為所述指定擴(kuò)展塊的最佳的磁盤
ID和該磁盤起始位置及長(zhǎng)度,經(jīng)所述磁盤空間管理模塊處理后,向所述文件布 局管理模塊返回的是實(shí)際提供給該指定擴(kuò)展塊的磁盤ID和磁盤起始位置,
free—space—to—allocator:用于向所述磁盤空間管理模塊釋放空閑的磁盤空 間,向所述磁盤空間管理模塊輸入的是指定擴(kuò)展塊的磁盤ID、磁盤起始位置及 長(zhǎng)度,經(jīng)所述磁盤空間管理模塊處理后,向所述文件布局管理模塊返回實(shí)際釋 放是否成功的標(biāo)志,
在所述文件布局管理模塊中設(shè)定所述擴(kuò)展塊的屬性包括長(zhǎng)度、狀態(tài)、在文件中的起始位置、所屬磁盤的ID 及在磁盤中的起始位置,所述的長(zhǎng)度、狀態(tài)、在文件中的起始位置、所屬磁盤
的ID及在磁盤中的起始位置都以非負(fù)整數(shù)表示,其中所述長(zhǎng)度表示該擴(kuò)展塊的 字節(jié)數(shù),所述文件的起始位置表示該擴(kuò)展塊中第一個(gè)字節(jié)距文件第一個(gè)字節(jié)的 字節(jié)數(shù),
待處理的文件布局為S, SH竭,^2,…,促J, 5^,eS,l&、m,促,是該文件布 局中包含的第/個(gè)擴(kuò)展塊,m為集合S的大小,
若所述文件布局S中擴(kuò)展塊i^對(duì)應(yīng)的長(zhǎng)度為",則所述擴(kuò)展塊S^包含的文 件布局區(qū)間是
]></math> id="icf0001" file="A2009100854820004C1.tif" wi="22" he="4" top= "184" left = "18" img-content="drawing" img-format="tif" orientation="portrait" inline="yes"/></maths>有brj-1+lrj-1≤brj,所述文件布局S={SE1,SE2,...,SEm}中與所述來(lái)自用戶請(qǐng)求處理模塊的請(qǐng)求對(duì)應(yīng)的子集為P={PE1,PE2,...,PEt},<maths id="math0002" num="0002" ><math><![CDATA[ <mrow><msub> <mi>PE</mi> <mi>k</mi></msub><mo>&Element;</mo><mi>P</mi><mo>,</mo><mi>P</mi><mo>&Subset;</mo><mi>S</mi><mo>,</mo><mn>1</mn><mo>&le;</mo><mi>k</mi><mo>&le;</mo><mi>t</mi><mo>,</mo> </mrow>]]></math> id="icf0002" file="A2009100854820004C2.tif" wi="43" he="4" top= "204" left = "89" img-content="drawing" img-format="tif" orientation="portrait" inline="yes"/></maths>PEk是對(duì)應(yīng)用戶請(qǐng)求的文件布局中的擴(kuò)展塊,t為集合P的大小,若所述擴(kuò)展塊集合P中擴(kuò)展塊PEk對(duì)應(yīng)的文件起始位置是bpk,長(zhǎng)度是lpk,則所述擴(kuò)展塊PE1包含的文件布局區(qū)間是[bp1,bp1+lp1),RE2包含的文件布局區(qū)間是[bp2,bp2+lp2),……,REt包含的文件的布局區(qū)間是[bpt,bpt+lpt),所述擴(kuò)展塊集合P是以擴(kuò)展塊在文件的起始位置的小于等于關(guān)系為偏序關(guān)系的偏序集,且所述P中任意兩個(gè)擴(kuò)展塊的文件布局區(qū)間無(wú)互相覆蓋部分,即對(duì)<maths id="math0003" num="0003" ><math><![CDATA[ <mrow><mo>&ForAll;</mo><mi>k</mi><mo>,</mo><mn>1</mn><mo>&lt;</mo><mi>k</mi><mo>&le;</mo><mi>t</mi><mo>,</mo> </mrow>]]></math> id="icf0003" file="A2009100854820005C1.tif" wi="22" he="3" top= "30" left = "19" img-content="drawing" img-format="tif" orientation="portrait" inline="yes"/></maths>有bpk-1+lpk-1≤bpk,在所述文件布局管理模塊中,對(duì)于所述文件布局S中包含的連續(xù)兩個(gè)擴(kuò)展塊E1和擴(kuò)展塊E2能夠合并作如下定義所述擴(kuò)展塊E1與所述擴(kuò)展塊E2能夠合并是指所述E1和E2的狀態(tài)相同、所屬磁盤的ID相同,所述E1在文件中的起始位置與長(zhǎng)度的和等于所述E2在文件中的起始位置,所述E1在磁盤中的起始位置與長(zhǎng)度的和等于所述E2在磁盤中的起始位置,合并后的擴(kuò)展塊在狀態(tài)、所屬磁盤的ID與合并前的所述E1、E2的相同,該合并后的擴(kuò)展塊的長(zhǎng)度是合并前的所述擴(kuò)展塊E1與E2長(zhǎng)度之和,該合并后的擴(kuò)展塊在文件中的起始位置及在磁盤中的起始位置與所述E1相同,在所述文件布局管理模塊中,對(duì)于屬于所述擴(kuò)展塊集合P的擴(kuò)展塊E與另一個(gè)屬于所述擴(kuò)展塊集合R的擴(kuò)展塊E′之間的關(guān)系作如下定義所述擴(kuò)展塊E′與所述擴(kuò)展塊E的內(nèi)容相同兩者在擴(kuò)展塊的文件長(zhǎng)度、狀態(tài)、在文件中的起始位置、所屬磁盤的ID及在磁盤中的起始位置均相同,所述兩個(gè)擴(kuò)展塊E與E′的內(nèi)容能做差運(yùn)算,其條件為所述E′在文件中的起始位置大于或等于所述E在文件中的起始位置,所述E′在文件中的起始位置與長(zhǎng)度之和小于或等于所述E在文件中的起始位置與長(zhǎng)度之和,所述兩個(gè)擴(kuò)展塊E與E′內(nèi)容之差的頭部定義為擴(kuò)展塊E頭,符合以下條件所述擴(kuò)展塊E頭的狀態(tài)、所屬磁盤的ID均與所述E相同,該擴(kuò)展塊E頭的長(zhǎng)度是所述E′在文件中的起始位置減去所述E在文件中的起始位置,該擴(kuò)展塊E頭在文件中的起始位置是所述E在文件中的起始位置,該擴(kuò)展塊E頭在磁盤中的起始位置是所述E在磁盤中的起始位置,所述兩個(gè)擴(kuò)展塊E與E′內(nèi)容之差的尾部定義為擴(kuò)展塊E尾,符合以下條件所述擴(kuò)展塊E尾的狀態(tài)、所屬磁盤的ID均與所述E相同,該擴(kuò)展塊E尾的長(zhǎng)度是所述E的長(zhǎng)度減去所述E′的長(zhǎng)度,該擴(kuò)展塊E尾在文件中的起始位置是所述E在文件中的起始位置加上所述E′的長(zhǎng)度,該擴(kuò)展塊E尾在磁盤中的起始位置是所述E在磁盤中的起始位置加上所述E′的長(zhǎng)度;步驟(2)在步驟(1)所述的系統(tǒng)中,所述文件布局管理模塊依次按以下步驟執(zhí)行并行文件系統(tǒng)的文件布局管理方法步驟(2.1)獲取文件布局所述用戶請(qǐng)求處理模塊向所述文件布局管理模塊發(fā)送獲取文件布局的請(qǐng)求,該請(qǐng)求的輸入?yún)?shù)包括指定文件的索引節(jié)點(diǎn)inode及所述指定文件的起始位置和長(zhǎng)度,所述文件布局管理模塊找到相應(yīng)的文件布局,把組成文件布局的擴(kuò)展塊根據(jù)所述請(qǐng)求的起始位置和長(zhǎng)度,進(jìn)行劃分與合并,返回給所述請(qǐng)求相應(yīng)的擴(kuò)展塊集合,并告知所述文件系統(tǒng),其步驟如下步驟(2.1.1)從用戶請(qǐng)求處理模塊傳來(lái)的請(qǐng)求中的索引節(jié)點(diǎn)inode結(jié)構(gòu)獲取對(duì)應(yīng)的file結(jié)構(gòu),找到由file結(jié)構(gòu)指向的元數(shù)據(jù)文件,步驟(2.1.2)若用戶請(qǐng)求處理模塊發(fā)來(lái)的是讀請(qǐng)求,則從所述元數(shù)據(jù)文件中讀取對(duì)應(yīng)的文件布局S,S={SE1,SE2,...,SEm},根據(jù)所述請(qǐng)求的文件的起始位置B,長(zhǎng)度L,獲取相應(yīng)的擴(kuò)展塊集合R={RE1,RE2,...,REn},并返回給所述用戶請(qǐng)求處理模塊,步驟(2.1.3)若用戶請(qǐng)求處理模塊發(fā)來(lái)的是寫請(qǐng)求,則首先,根據(jù)所述元數(shù)據(jù)文件是否為空,判斷該請(qǐng)求的文件是否存在,若文件不存在 id="icf0004" file="A2009100854820006C1.tif" wi="12" he="3" top= "204" left = "39" img-content="drawing" img-format="tif" orientation="portrait" inline="yes"/>則所述文件布局管理模塊創(chuàng)建文件布局S={SE1},否則從所述元數(shù)據(jù)文件中讀取對(duì)應(yīng)的文件布局S,S={SE1,SE2,...,SEm},其次,若所述文件布局S={SE1,SE2,...,SEm}中對(duì)應(yīng)用戶請(qǐng)求的起始位置B,長(zhǎng)度L的片段中包含尚未在磁盤上分配空間的擴(kuò)展塊時(shí),先向所述磁盤空間管理模塊申請(qǐng)空間,最后,若所述文件布局S發(fā)生改變,則告知系統(tǒng)新的文件布局S′={SE1′,SE2′,...,SEm′},并寫入所述元數(shù)據(jù)文件中,根據(jù)所述請(qǐng)求的文件的起始位置B,長(zhǎng)度L,獲取相應(yīng)的擴(kuò)展塊集合R={RE1,RE2,...,REn},并返回給所述用戶請(qǐng)求處理模塊,步驟(2.2)提交文件布局所述用戶請(qǐng)求處理模塊向所述文件布局管理模塊發(fā)送提交文件布局的請(qǐng)求,該請(qǐng)求的輸入?yún)?shù)包括指定文件的索引節(jié)點(diǎn)inode及提交給所述指定文件的擴(kuò)展塊的集合,所述文件布局管理模塊將該文件布局中的擴(kuò)展塊與該用戶請(qǐng)求處理模塊傳來(lái)的擴(kuò)展塊依次比較,找到對(duì)應(yīng)部分后,進(jìn)行劃分與合并操作,答復(fù)用戶請(qǐng)求處理模塊,并告知所述文件系統(tǒng),其步驟如下步驟(2.2.1)再次執(zhí)行步驟(2.1.1),由所述元數(shù)據(jù)文件中讀取對(duì)應(yīng)的文件布局S,S={SE1,SE2,...,SEm},步驟(2.2.2)在步驟(2.2.1)得到的所述文件布局S={SE1,SE2,...,SEm}中檢索到與該用戶請(qǐng)求處理模塊請(qǐng)求的擴(kuò)展塊集合R={RE1,RE2,...,REn}對(duì)應(yīng)的文件擴(kuò)展塊集合P={PE1,PE2,...,PEt},區(qū)別以下兩種情況,分別對(duì)所述P中的擴(kuò)展塊PEk作劃分若所述R={RE1,RE2,...,REn}中的擴(kuò)展塊REj與相應(yīng)的P={PE1,PE2,...,PEt}擴(kuò)展塊PEk起始位置匹配,且結(jié)束位置也匹配,則不需劃分,如果結(jié)束位置不匹配,則從所述S中劃分出一個(gè)新的擴(kuò)展塊PEk′,與所述REj內(nèi)容相同,劃分后,所述PEk的內(nèi)容發(fā)生改變,改變?yōu)閯澐智八鯬Ek與所述REj內(nèi)容之差的尾部,若所述R={RE1,RE2,...,REn}中的擴(kuò)展塊REj與相應(yīng)的P={PE1,PE2,...,PEt}擴(kuò)展塊PEk起始位置不匹配,則從所述S中劃分一個(gè)新的擴(kuò)展塊PEk′,其內(nèi)容是所述PEk與所述REj內(nèi)容之差的頭部,劃分后,所述PEk的內(nèi)容發(fā)生改變,改變?yōu)閯澐智八鯬Ek與所述PEk′內(nèi)容之差的尾部,再按REj與PEk起始位置匹配的情況處理,步驟(2.2.3)判斷步驟(2.2.2)得到的文件擴(kuò)展塊集合中是否有能合并的擴(kuò)展塊,若有,則合并相應(yīng)的擴(kuò)展塊,步驟(2.2.4)若所述文件布局S={SE1,SE2,...,SEm}發(fā)生改變,則告知系統(tǒng)新的文件布局S′={SE1′,SE2′,...,SEm′},并寫入所述元數(shù)據(jù)文件,答復(fù)所述用戶請(qǐng)求處理模塊步驟(2.3)調(diào)整文件布局所述用戶請(qǐng)求處理模塊向所述文件布局管理模塊發(fā)送調(diào)整文件布局的請(qǐng)求,該請(qǐng)求的輸入?yún)?shù)包括指定文件的索引節(jié)點(diǎn)inode及所述指定文件的大小,所述文件布局管理模塊通過(guò)刪除擴(kuò)展塊或減少擴(kuò)展塊長(zhǎng)度的方式裁剪文件布局以減小文件,或者通過(guò)增加擴(kuò)展塊或增大擴(kuò)展塊長(zhǎng)度的方式以增大文件,答復(fù)該用戶請(qǐng)求處理模塊的請(qǐng)求,并告知所述文件系統(tǒng),其步驟如下步驟(2.3.1)重復(fù)步驟(2.1.1),由所述元數(shù)據(jù)文件中讀取對(duì)應(yīng)的文件布局S,S={SE1,SE2,...,SEm},步驟(2.3.2)按以下步驟處理擴(kuò)展塊,滿足用戶調(diào)整文件大小的請(qǐng)求第一步,判斷是否文件大小調(diào)整為0,如果是,則刪除所有的擴(kuò)展塊,新的文件布局 id="icf0005" file="A2009100854820008C1.tif" wi="13" he="3" top= "173" left = "38" img-content="drawing" img-format="tif" orientation="portrait" inline="yes"/>否則進(jìn)行下一步,第二步,判斷調(diào)整的大小是否小于文件已有大小,如果是,刪除超出部分的擴(kuò)展塊P={PE1,PE2,...,PEt},新的文件布局S′=S-P,否則進(jìn)行下一步,第三步,判斷調(diào)整的大小是否超出文件已有大小,如果是,創(chuàng)建一個(gè)新的擴(kuò)展塊SEm+1,新的文件布局S′=S+{SEm+1},否則結(jié)束,步驟(2.3.3)判斷文件的擴(kuò)展塊集合中是否有能合并的擴(kuò)展塊,如果有,則合并相應(yīng)的擴(kuò)展塊,步驟(2.3.4)若所述文件布局S={SE1,SE2,...,Sem}發(fā)生改變,則告知系統(tǒng)新的文件布局S′={SE1′,SE2′,...,SEm′},將其寫入所述元數(shù)據(jù)文件,并答復(fù)所述用戶請(qǐng)求處理模塊。
全文摘要
并行文件系統(tǒng)的元數(shù)據(jù)文件布局管理方法屬于文件系統(tǒng)領(lǐng)域,其特征在于文件系統(tǒng)采用擴(kuò)展塊分配方式對(duì)文件進(jìn)行組織;元數(shù)據(jù)服務(wù)器接收到用戶請(qǐng)求后,對(duì)相應(yīng)文件布局中的擴(kuò)展塊進(jìn)行快速分配、劃分、合并及釋放等操作,達(dá)到文件布局的獲取、提交或調(diào)整的要求,實(shí)現(xiàn)對(duì)文件布局的優(yōu)化管理。本方法采用滿足最低要求原則,應(yīng)答請(qǐng)求對(duì)應(yīng)的最小擴(kuò)展塊集合,因而最大程度滿足多用戶同時(shí)對(duì)同一文件的操作,提高了系統(tǒng)的并行性;同時(shí)采用擴(kuò)展塊實(shí)時(shí)合并策略以保證文件布局最大程度連續(xù),優(yōu)化存儲(chǔ),減少文件布局尋道時(shí)間,提高了文件系統(tǒng)性能。
文檔編號(hào)H04L29/08GK101567001SQ20091008548
公開日2009年10月28日 申請(qǐng)日期2009年5月22日 優(yōu)先權(quán)日2009年5月22日
發(fā)明者易樂(lè)天, 亮 耿, 舒繼武, 巍 薛 申請(qǐng)人:清華大學(xué)
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1