一種云存儲(chǔ)系統(tǒng)中的冷數(shù)據(jù)文件重分布方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開(kāi)了一種云存儲(chǔ)系統(tǒng)中的冷數(shù)據(jù)文件重分布方法及系統(tǒng),在系統(tǒng)各個(gè)應(yīng)用服務(wù)器上收集云存儲(chǔ)系統(tǒng)中用戶文件的應(yīng)用信息,即溯源信息;根據(jù)溯源信息得到文件之間的溯源關(guān)系;通過(guò)文件之間的溯源關(guān)系表征文件之間更加緊密而精確的相關(guān)性;利用溯源關(guān)系建立溯源圖;當(dāng)云存儲(chǔ)系統(tǒng)接收到需要重新進(jìn)行分布的文件,通過(guò)這些文件的唯一標(biāo)識(shí)符在溯源圖中查詢其所在的溯源組,根據(jù)溯源組中文件的存儲(chǔ)分布狀態(tài)確定文件被重分布到哪些數(shù)據(jù)服務(wù)器中;并根據(jù)重分布的情況更新元數(shù)據(jù)和溯源圖;本發(fā)明充分地利用溯源圖中同溯源組文件的精確相關(guān)性的特點(diǎn),提高云存儲(chǔ)系統(tǒng)中的冷數(shù)據(jù)的訪問(wèn)效率,并減少了云存儲(chǔ)系統(tǒng)的運(yùn)行開(kāi)銷。
【專利說(shuō)明】
一種云存儲(chǔ)系統(tǒng)中的冷數(shù)據(jù)文件重分布方法及系統(tǒng)
技術(shù)領(lǐng)域
[0001 ]本發(fā)明屬于計(jì)算機(jī)數(shù)據(jù)云存儲(chǔ)技術(shù)領(lǐng)域,更具體地,涉及一種云存儲(chǔ)系統(tǒng)中的冷 數(shù)據(jù)文件重分布方法及系統(tǒng)。
【背景技術(shù)】
[0002] 隨著云存儲(chǔ)服務(wù)的快速發(fā)展,越來(lái)越多的云存儲(chǔ)服務(wù)平臺(tái)不僅能夠提供上傳數(shù)據(jù) 的存儲(chǔ),還能夠提供數(shù)據(jù)的在線處理,譬如視頻或文檔的在線創(chuàng)建與編輯。隨著各種終端設(shè) 備的廣泛應(yīng)用,用戶為增加數(shù)據(jù)的一致性和可靠性,將各種數(shù)據(jù)上傳到云存儲(chǔ)系統(tǒng)中,并進(jìn) 行在線處理;然而,這些數(shù)據(jù)中的絕大部分在經(jīng)過(guò)一段時(shí)間后變成冷數(shù)據(jù)。有研究表明,這 些冷數(shù)據(jù)在一些備份系統(tǒng)、社交媒體的后臺(tái)存儲(chǔ)系統(tǒng)中占到90%以上。大量的冷數(shù)據(jù)不能 被丟棄,又占用了很大的存儲(chǔ)空間。云服務(wù)供應(yīng)商為了保證存儲(chǔ)的有效性,將這些數(shù)據(jù)盡量 的存放在較便宜、性能較差的存儲(chǔ)介質(zhì)上,然而在某些場(chǎng)景中,這些數(shù)據(jù)即使在冷數(shù)據(jù)狀態(tài) 下也必須保證一定的讀寫(xiě)性能。因此,需要將一些相關(guān)性強(qiáng)的數(shù)據(jù)存放在一起,一方面加快 用戶讀取的速度,另一方面減少云存儲(chǔ)服務(wù)供應(yīng)商的運(yùn)營(yíng)開(kāi)銷。
[0003] 現(xiàn)有技術(shù)中對(duì)于冷數(shù)據(jù)的相關(guān)性處理,主要在于挖掘文件元數(shù)據(jù)之間的相似性, 存在以下問(wèn)題:
[0004] (1)某些系統(tǒng)利用文件的訪問(wèn)局部性設(shè)置文件的相關(guān)性,文件的訪問(wèn)局部性對(duì)于 單個(gè)用戶的訪問(wèn)序列具有很強(qiáng)的相關(guān)性,但在云存儲(chǔ)平臺(tái),多個(gè)用戶并行的文件操作會(huì)減 少文件的訪問(wèn)局部性。因此,單獨(dú)的基于文件的訪問(wèn)局部性來(lái)對(duì)文件進(jìn)行分布的劃分方式 很難提高云存儲(chǔ)系統(tǒng)的效率;
[0005] (2)某些系統(tǒng)利用文件相關(guān)的元數(shù)據(jù)的多維屬性,如創(chuàng)建者、創(chuàng)建時(shí)間、修改時(shí)間 等靜態(tài)屬性反映的相關(guān)性來(lái)度量文件的相關(guān)性,但這種相似性的挖掘方法不適合云存儲(chǔ)中 冷數(shù)據(jù),也僅僅只能反映元數(shù)據(jù)的某些靜態(tài)特征所表現(xiàn)相關(guān)性,隨著應(yīng)用的變化,這種相關(guān) 性會(huì)發(fā)生變化,不能有效的表現(xiàn)文件真正的內(nèi)在聯(lián)系。
【發(fā)明內(nèi)容】
[0006] 針對(duì)現(xiàn)有技術(shù)的以上缺陷或改進(jìn)需求,本發(fā)明提供了一種云存儲(chǔ)系統(tǒng)中的冷數(shù)據(jù) 文件重分布方法及系統(tǒng),其目的在于利用溯源信息對(duì)文件進(jìn)行聚集,提高冷數(shù)據(jù)存儲(chǔ)系統(tǒng) 的吞吐率,并降低存儲(chǔ)器能耗。
[0007] 為實(shí)現(xiàn)上述目的,按照本發(fā)明的一個(gè)方面,提供了一種云存儲(chǔ)系統(tǒng)中的冷數(shù)據(jù)文 件重分布方法,具體如下:
[0008] (1)通過(guò)云存儲(chǔ)系統(tǒng)中用戶文件的歷史應(yīng)用信息,獲取初始溯源信息;根據(jù)初始溯 源信息,獲取用戶文件之間的相關(guān)性信息;
[0009] 該相關(guān)性信息表征用戶文件之間的溯源關(guān)系,體現(xiàn)了用戶文件之間的相關(guān)性;
[0010] (2)根據(jù)上述相關(guān)性信息形成溯源圖;該溯源圖為無(wú)向圖,溯源圖中的節(jié)點(diǎn)代表文 件,邊代表文件相關(guān)性;
[0011] 其中,文件是指云存儲(chǔ)系統(tǒng)內(nèi)的用戶文件,文件相關(guān)性是指云存儲(chǔ)系統(tǒng)內(nèi)的用戶 文件之間的溯源關(guān)系;
[0012] (3)當(dāng)接收到數(shù)據(jù)重分布請(qǐng)求,根據(jù)溯源圖進(jìn)行查詢,獲得數(shù)據(jù)所在溯源組的其它 文件的存儲(chǔ)分布信息;根據(jù)該分布信息確定迀移的目的數(shù)據(jù)服務(wù)器。
[0013] 優(yōu)選地,上述云存儲(chǔ)系統(tǒng)中基于溯源關(guān)系的冷數(shù)據(jù)文件重分布方法,其步驟(1)具 體如下:
[0014] (1-1)在云存儲(chǔ)的應(yīng)用服務(wù)器集群的每臺(tái)服務(wù)器上添加溯源信息收集模塊;
[0015] (1-2)設(shè)置溯源信息收集模塊收集溯源信息的范圍,對(duì)系統(tǒng)文件和應(yīng)用層配置文 件(如各種動(dòng)態(tài)鏈接庫(kù)文件)的信息進(jìn)行過(guò)濾,獲取本系統(tǒng)存儲(chǔ)的用戶文件的應(yīng)用信息,即 溯源信息;
[0016] (1-3)對(duì)所述溯源信息進(jìn)行預(yù)處理,以去除其中的錯(cuò)誤信息以及重復(fù)信息,并獲取 用戶文件之間的相關(guān)性信息;
[0017] (1-4)判斷所述存儲(chǔ)系統(tǒng)的元數(shù)據(jù)服務(wù)器上的緩沖區(qū)是否有足夠的空閑空間保存 所述相關(guān)性信息,若是,則直接存儲(chǔ)所述相關(guān)性信息;若否,則進(jìn)入步驟(2)。
[0018] 優(yōu)選地,上述云存儲(chǔ)系統(tǒng)中基于溯源關(guān)系的冷數(shù)據(jù)文件重分布方法,其步驟(2)具 體如下:
[0019] (2-1)判斷溯源圖是否為空,若是,則先建立空溯源圖,將該溯源圖設(shè)置為無(wú)向圖, 再將相關(guān)性信息添加進(jìn)溯源圖;若否,則直接將相關(guān)性信息添加到溯源圖;
[0020] (2-2)根據(jù)文件相關(guān)項(xiàng)中包含的URI(統(tǒng)一資源標(biāo)識(shí)符,Uniform Resource Identifier),判斷URI對(duì)應(yīng)的兩個(gè)文件是否包含在溯源圖中,若否,則進(jìn)入步驟(2-3),若 是,則進(jìn)入步驟(2_4);
[0021] (2-3)在溯源圖中添加代表文件的節(jié)點(diǎn)以及代表文件相互關(guān)系的邊;
[0022] (2-4)判定溯源圖是否只包含一個(gè)文件,若是,則在溯源圖中添加代表不包含在溯 源圖中的文件的節(jié)點(diǎn)以及代表文件相互關(guān)系的邊;若否,表明URI對(duì)應(yīng)的兩個(gè)文件均包含在 溯源圖中,則刪除這條文件相關(guān)項(xiàng)。
[0023] 優(yōu)選地,上述云存儲(chǔ)系統(tǒng)中基于溯源關(guān)系的冷數(shù)據(jù)文件重分布方法,其步驟(3)具 體如下:
[0024] (3-1)當(dāng)存儲(chǔ)系統(tǒng)的元數(shù)據(jù)服務(wù)器接收到數(shù)據(jù)重分布請(qǐng)求,獲取擬迀移的數(shù)據(jù)所 包含的文件的URI集合;
[0025] (3-2)判斷擬迀移文件的URI集合是否為空,若否,則從該URI集合中選取一個(gè)文件 的URI,進(jìn)入步驟(3-3);若是,則結(jié)束本次數(shù)據(jù)迀移操作,返回提示信息;
[0026] (3-3)根據(jù)被選取的URI在溯源圖中進(jìn)行查詢,獲得該文件所在溯源組的其它成員 的存儲(chǔ)分布信息;根據(jù)溯源組的節(jié)點(diǎn)存儲(chǔ)的分布信息選擇迀移的目標(biāo)數(shù)據(jù)服務(wù)器;進(jìn)行被 選取文件的數(shù)據(jù)迀移操作。
[0027] 優(yōu)選地,上述云存儲(chǔ)系統(tǒng)中基于溯源關(guān)系的冷數(shù)據(jù)文件重分布方法,其步驟(3) 中,確定迀移的目標(biāo)服務(wù)器的方法,具體如下:
[0028] (a)當(dāng)數(shù)據(jù)所在溯源組內(nèi)部分節(jié)點(diǎn)已被迀移到下一層數(shù)據(jù)服務(wù)器集群,則將擬迀 移的數(shù)據(jù)迀移到相同的數(shù)據(jù)服務(wù)器,并更新該溯源組信息;
[0029] (b)當(dāng)數(shù)據(jù)所在溯源組內(nèi)所有節(jié)點(diǎn)均未被迀移到下一層數(shù)據(jù)服務(wù)器集群,則在下 一層數(shù)據(jù)服務(wù)器集群中選擇負(fù)載較輕的服務(wù)器作為迀移的目的數(shù)據(jù)服務(wù)器,并進(jìn)行數(shù)據(jù)迀 移,并更新該溯源組信息;其中,負(fù)載包括服務(wù)器空間負(fù)載、訪問(wèn)負(fù)載。
[0030] 優(yōu)選地,上述云存儲(chǔ)系統(tǒng)中基于溯源關(guān)系的冷數(shù)據(jù)文件重分布方法,其步驟(a)具 體如下:
[0031] (a-1)獲取溯源組內(nèi)文件被迀移到的目標(biāo)服務(wù)器的網(wǎng)絡(luò)地址;
[0032] (a-2)與目標(biāo)服務(wù)器建立聯(lián)系,將擬迀移的文件從原存儲(chǔ)位置迀移動(dòng)到目標(biāo)服務(wù) 器;
[0033] (a-3)更新被迀移文件所在的溯源組信息以及代表該文件的節(jié)點(diǎn)的信息。
[0034] 優(yōu)選地,上述云存儲(chǔ)系統(tǒng)中基于溯源關(guān)系的冷數(shù)據(jù)文件重分布方法,其步驟(b)具 體如下:
[0035] (b_l)根據(jù)下一層數(shù)據(jù)服務(wù)器集群的負(fù)載量,選擇負(fù)載較輕的服務(wù)器作為目標(biāo)數(shù) 據(jù)服務(wù)器;
[0036] (b_2)獲取組內(nèi)文件被迀移到的目標(biāo)數(shù)據(jù)服務(wù)器的網(wǎng)絡(luò)地址;
[0037] (b_3)更新被迀移文件所在的溯源組信息以及代表該文件的節(jié)點(diǎn)的信息。
[0038] 為實(shí)現(xiàn)本發(fā)明目的,按照本發(fā)明的另一個(gè)方面,提供了一種云存儲(chǔ)系統(tǒng)中的冷數(shù) 據(jù)文件重分布系統(tǒng),包括溯源信息收集模塊、溯源圖存儲(chǔ)和維護(hù)模塊、溯源圖查詢模塊、元 數(shù)據(jù)管理模塊、元數(shù)據(jù)索引與存儲(chǔ)模塊、數(shù)據(jù)迀移控制模塊、數(shù)據(jù)迀移執(zhí)行模塊以及數(shù)據(jù)存 儲(chǔ)與管理模塊;
[0039] 其中,溯源信息收集模塊用于收集云系統(tǒng)存儲(chǔ)里用戶文件的歷史應(yīng)用信息,獲取 初始溯源信息,根據(jù)初始溯源信息獲得用戶文件之間的溯源關(guān)系;溯源關(guān)系信息保存到存 儲(chǔ)系統(tǒng)的元數(shù)據(jù)服務(wù)器的非易失存儲(chǔ)介質(zhì)上的緩沖區(qū)中;
[0040] 溯源圖存儲(chǔ)和維護(hù)模塊用于根據(jù)溯源關(guān)系生成溯源圖,并完成對(duì)溯源圖中節(jié)點(diǎn)和 邊的添加、刪除以及更新;
[0041 ] 溯源圖是一張關(guān)系表,該表保存文件_? I、溯源組_ID、文件_L0CAT 10N、文件_ FREQUENCY;其中,文件_URI是指文件的全球資源定位符,用來(lái)唯一標(biāo)識(shí)各個(gè)文件;溯源組_ ID是指本臺(tái)元數(shù)據(jù)服務(wù)器為該溯源組唯一指定的序列號(hào);文件_L0CATI0N是指該文件存儲(chǔ) 的具體路徑,包括設(shè)備號(hào)、文件路徑以及文件名;文件_FREQUENCY是統(tǒng)計(jì)的該文件的訪問(wèn)頻 率;
[0042]溯源圖查詢模塊用于根據(jù)文件ID查找到文件所在溯源組的文件分布情況,即同溯 源組中各文件的文件_L0CATI0N信息;
[0043]元數(shù)據(jù)管理模塊用于對(duì)云存儲(chǔ)系統(tǒng)中所有用戶文件的元數(shù)據(jù)進(jìn)行訪問(wèn)、添加、更 新以及刪除操作;
[0044] 元數(shù)據(jù)索引與存儲(chǔ)模塊用于對(duì)云存儲(chǔ)系統(tǒng)中所有的元數(shù)據(jù)信息進(jìn)行索引與存儲(chǔ), 以滿足用戶的元數(shù)據(jù)訪問(wèn)與查詢的請(qǐng)求;
[0045] 數(shù)據(jù)迀移控制模塊用于根據(jù)溯源組內(nèi)文件的分布情況,確定文件迀移的目標(biāo)服務(wù) 器,并根據(jù)數(shù)據(jù)迀移模塊的反饋實(shí)時(shí)更新元數(shù)據(jù)與溯源圖;
[0046] 數(shù)據(jù)迀移執(zhí)行模塊用于根據(jù)數(shù)據(jù)迀移請(qǐng)求,將數(shù)據(jù)迀移到目標(biāo)服務(wù)器,并在數(shù)據(jù) 迀移過(guò)程進(jìn)行流程控制和參數(shù)更新;
[0047] 數(shù)據(jù)存儲(chǔ)與管理模塊用于存儲(chǔ)數(shù)據(jù),并進(jìn)行數(shù)據(jù)的添加、刪除以及更新。
[0048]優(yōu)選的,上述云存儲(chǔ)系統(tǒng)中基于溯源關(guān)系的冷數(shù)據(jù)文件重分布系統(tǒng),其溯源信息 收集模塊具體包括文件應(yīng)用監(jiān)聽(tīng)模塊、溯源信息處理模塊、溯源信息分析模塊以及文件相 關(guān)性信息緩沖模塊;
[0049]其中,文件應(yīng)用監(jiān)聽(tīng)模塊用于監(jiān)聽(tīng)用戶或系統(tǒng)管理員對(duì)云存儲(chǔ)系統(tǒng)中各個(gè)文件在 應(yīng)用服務(wù)器中的操作,獲取初始溯源信息;
[0050] 溯源信息處理模塊用于對(duì)初始溯源信息進(jìn)行過(guò)濾,包括對(duì)溯源信息進(jìn)行去重、糾 錯(cuò)和規(guī)整;
[0051] 溯源信息分析模塊用于對(duì)初始溯源信息進(jìn)行分析,獲取用戶文件的相關(guān)性信息; 其中,每一條文件關(guān)系項(xiàng)中包含能夠唯一標(biāo)識(shí)兩個(gè)用戶文件的文件1JJRI、文件2JJRI; [0052]文件相關(guān)性信息緩沖模塊設(shè)置在元數(shù)據(jù)服務(wù)器的非易失性存儲(chǔ)介質(zhì)上,用于保存 文件的相關(guān)性信息。
[0053]總體而言,通過(guò)本發(fā)明所構(gòu)思的以上技術(shù)方案與現(xiàn)有技術(shù)相比,能夠取得下列有 益效果:
[0054] (1)本發(fā)明提供的云存儲(chǔ)系統(tǒng)中的冷數(shù)據(jù)文件重分布方法及系統(tǒng),基于溯源關(guān)系, 采用溯源關(guān)系表征用戶文件之間的相關(guān)性,同一個(gè)溯源組里的文件在文件訪問(wèn)的特征上具 有相似性;這種相似性與訪問(wèn)的時(shí)間局部性體現(xiàn)的相似性比較而言,與實(shí)際情況的匹配度 更高;當(dāng)把屬于同一個(gè)溯源組的文件存儲(chǔ)在同一個(gè)數(shù)據(jù)節(jié)點(diǎn)時(shí),對(duì)這些文件的連續(xù)訪問(wèn)不 用等待數(shù)據(jù)節(jié)點(diǎn)的重新啟動(dòng),達(dá)到提高冷數(shù)據(jù)訪問(wèn)效率的目的;
[0055] (2)本發(fā)明提供的云存儲(chǔ)系統(tǒng)中的冷數(shù)據(jù)文件重分布方法及系統(tǒng),把具有相關(guān)性 的文件聚集在一起,對(duì)這些文件的訪問(wèn)不需要涉及到其它的數(shù)據(jù)節(jié)點(diǎn);由此在保證用戶訪 問(wèn)性能的基礎(chǔ)上,減少數(shù)據(jù)節(jié)點(diǎn)的啟動(dòng)次數(shù),后者減少并行運(yùn)行的數(shù)據(jù)節(jié)點(diǎn)的數(shù)目,進(jìn)一步 減少了云存儲(chǔ)供應(yīng)商的運(yùn)營(yíng)開(kāi)銷,由此提高了云存儲(chǔ)系統(tǒng)中的冷數(shù)據(jù)存儲(chǔ)的節(jié)能效率。
【附圖說(shuō)明】
[0056] 圖1為本發(fā)明實(shí)施例中的數(shù)據(jù)重分布的整體流程圖;
[0057] 圖2為本發(fā)明實(shí)施例中收集溯源信息步驟的細(xì)化流程圖;
[0058]圖3為本發(fā)明實(shí)施例中的冷數(shù)據(jù)文件重分布系統(tǒng)的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0059] 為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì) 本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并 不用于限定本發(fā)明。此外,下面所描述的本發(fā)明各個(gè)實(shí)施方式中所涉及到的技術(shù)特征只要 彼此之間未構(gòu)成沖突就可以相互組合。
[0060] 本發(fā)明提供的基于溯源關(guān)系的云存儲(chǔ)系統(tǒng)中的冷數(shù)據(jù)文件重分布方法及系統(tǒng),在 各個(gè)應(yīng)用服務(wù)器上收集云存儲(chǔ)系統(tǒng)中用戶文件的應(yīng)用信息,即溯源信息;通過(guò)分析溯源信 息獲得文件之間的溯源關(guān)系;文件之間的溯源關(guān)系體現(xiàn)了文件之間緊密而精確的相關(guān)性; 利用溯源關(guān)系建立文件的溯源圖;當(dāng)云存儲(chǔ)系統(tǒng)接收到文件的重新分布請(qǐng)求時(shí),通過(guò)文件 的唯一標(biāo)識(shí)符在溯源圖中查詢其所在的溯源組,根據(jù)溯源組中文件的存儲(chǔ)分布狀態(tài)來(lái)決定 這些文件被重分布到哪些數(shù)據(jù)服務(wù)器中;然后根據(jù)重分布的情況來(lái)更新相關(guān)的元數(shù)據(jù)和溯 源圖。該方法及系統(tǒng)充分地利用溯源圖中同溯源組文件的精確相關(guān)性的特點(diǎn),提高冷數(shù)據(jù) 的訪問(wèn)效率,并減少云存儲(chǔ)系統(tǒng)的運(yùn)行開(kāi)銷。
[0061] 圖1所示,為實(shí)施例提供的云存儲(chǔ)系統(tǒng)中的冷數(shù)據(jù)文件重分布方法的流程圖,具體 如下:
[0062] (1)在系統(tǒng)各個(gè)應(yīng)用服務(wù)器上收集云存儲(chǔ)系統(tǒng)中用戶文件的應(yīng)用信息,即溯源信 息;根據(jù)溯源信息分析獲取文件之間的溯源關(guān)系;根據(jù)溯源關(guān)系建立文件的溯源圖;并對(duì)這 張溯源圖進(jìn)行維護(hù);
[0063] (3)當(dāng)云存儲(chǔ)系統(tǒng)接收數(shù)據(jù)重分布請(qǐng)求,通過(guò)文件的唯一標(biāo)識(shí)符在溯源圖中查詢 期所在的溯源組,根據(jù)溯源組中文件的存儲(chǔ)分布狀態(tài)確定文件被重分布到哪些數(shù)據(jù)服務(wù)器 中;
[0064] 若該數(shù)據(jù)所在的溯源組中的部分?jǐn)?shù)據(jù)已經(jīng)被重分布,則將該數(shù)據(jù)迀移到組內(nèi)部分 數(shù)據(jù)所在的數(shù)據(jù)服務(wù)器;否則,就在數(shù)據(jù)服務(wù)器中選擇負(fù)載較輕的服務(wù)器進(jìn)行迀移,然后根 據(jù)重分布的情況更新相關(guān)的元數(shù)據(jù)和溯源圖。
[0065] 圖2所示是實(shí)施例中步驟(1)的細(xì)化流程圖,具體如下:
[0066] (1-1)在云存儲(chǔ)系統(tǒng)中的每一臺(tái)應(yīng)用服務(wù)器上安裝溯源收集工具模塊;設(shè)置溯源 收集工具收集對(duì)象的范圍以及應(yīng)用信息的范圍,前一項(xiàng)規(guī)定只收集用戶文件的信息,后一 項(xiàng)規(guī)定只收集可提取文件相關(guān)性的信息;
[0067] (1-2)監(jiān)聽(tīng)用戶對(duì)文件在云存儲(chǔ)系統(tǒng)中的所有編輯操作;
[0068] (1-3)將在收集到的溯源信息進(jìn)行過(guò)濾和去重;
[0069] (1-4)分析溯源信息得到文件關(guān)系項(xiàng);其中,每條文件關(guān)系項(xiàng)包含能夠唯一標(biāo)識(shí)兩 個(gè)用戶文件的文件:1_URI、2_URI;
[0070] (1-5)將上述文件關(guān)系項(xiàng)發(fā)送到對(duì)應(yīng)的元數(shù)據(jù)服務(wù)器。
[0071]圖3所示,是實(shí)施例提供的云存儲(chǔ)系統(tǒng)中的冷數(shù)據(jù)文件重分布系統(tǒng)的模塊示意圖; 包括溯源信息收集模塊、溯源圖存儲(chǔ)和維護(hù)模塊、溯源圖查詢模塊、元數(shù)據(jù)管理模塊、元數(shù) 據(jù)索引與存儲(chǔ)模塊、數(shù)據(jù)迀移控制模塊、數(shù)據(jù)存儲(chǔ)與管理模塊以及數(shù)據(jù)迀移執(zhí)行模塊;
[0072] 其中,溯源信息收集模塊用于收集云系統(tǒng)存儲(chǔ)里用戶文件的歷史應(yīng)用信息,獲取 初始溯源信息,根據(jù)初始溯源信息獲得用戶文件之間的溯源關(guān)系;溯源關(guān)系信息保存到存 儲(chǔ)系統(tǒng)的元數(shù)據(jù)服務(wù)器的非易失存儲(chǔ)介質(zhì)上的緩沖區(qū)中;
[0073] 溯源圖存儲(chǔ)和維護(hù)模塊用于根據(jù)溯源關(guān)系生成溯源圖,并完成對(duì)溯源圖中節(jié)點(diǎn)和 邊的添加、刪除以及更新;
[0074] 溯源圖保存文件_現(xiàn)1、溯源組_ID、文件_L0CATI0N、文件_FREQUENCY;
[0075]其中,文件_URI是指文件的全球資源定位符,用來(lái)唯一標(biāo)識(shí)各個(gè)文件;溯源組_ID 是指本臺(tái)元數(shù)據(jù)服務(wù)器為該溯源組唯一指定的序列號(hào);文件LOCATION是指該文件存儲(chǔ)的 具體路徑,包括設(shè)備號(hào)、文件路徑以及文件名;文件_FREQUENCY是統(tǒng)計(jì)的該文件的訪問(wèn)頻 率;
[0076]溯源圖查詢模塊用于根據(jù)文件ID查找到文件所在溯源組的文件分布情況,即同溯 源組中各文件的文件_L0CATI0N信息;
[0077]元數(shù)據(jù)管理模塊用于對(duì)云存儲(chǔ)系統(tǒng)中所有用戶文件的元數(shù)據(jù)進(jìn)行訪問(wèn)、添加、更 新以及刪除操作;
[0078] 元數(shù)據(jù)索引與存儲(chǔ)模塊用于對(duì)云存儲(chǔ)系統(tǒng)中所有的元數(shù)據(jù)信息進(jìn)行索引與存儲(chǔ);
[0079] 數(shù)據(jù)迀移控制模塊用于根據(jù)溯源組內(nèi)文件的分布情況,確定文件迀移的目標(biāo)服務(wù) 器,并根據(jù)數(shù)據(jù)迀移模塊的反饋實(shí)時(shí)更新元數(shù)據(jù)與溯源圖;
[0080] 數(shù)據(jù)迀移執(zhí)行模塊用于根據(jù)數(shù)據(jù)迀移請(qǐng)求,將數(shù)據(jù)迀移到目標(biāo)服務(wù)器,并在數(shù)據(jù) 迀移過(guò)程進(jìn)行流程控制和參數(shù)更新;
[0081] 數(shù)據(jù)存儲(chǔ)與管理模塊用于存儲(chǔ)數(shù)據(jù),并進(jìn)行數(shù)據(jù)的添加、刪除以及更新。
[0082]為驗(yàn)證本發(fā)明提供的云存儲(chǔ)系統(tǒng)中的冷數(shù)據(jù)文件重分布方法及系統(tǒng),在實(shí)際應(yīng)用 環(huán)境下配置本實(shí)施例提供的冷數(shù)據(jù)文件重分布系統(tǒng),并進(jìn)行相關(guān)查詢操作來(lái)驗(yàn)證其效果。 [0083]實(shí)施例中,進(jìn)行系統(tǒng)測(cè)試的硬件與軟件系統(tǒng)參數(shù)如表1所示:
[0084] 表1測(cè)試系統(tǒng)參數(shù)列表
[0086]測(cè)試系統(tǒng)的配置過(guò)程如下:
[0087] (1)將測(cè)試的trace文件分發(fā)到每個(gè)節(jié)點(diǎn);
[0088] (2)各節(jié)點(diǎn)運(yùn)行元數(shù)據(jù)索引結(jié)構(gòu)的建立模塊和關(guān)系圖生成模塊;在本測(cè)試中,25個(gè) 節(jié)點(diǎn)分成3個(gè)分組,3個(gè)分組中的節(jié)點(diǎn)數(shù)目分別為3,2,20;第一個(gè)分組模擬用戶對(duì)文件的應(yīng) 用,運(yùn)行溯源信息收集模塊;第二個(gè)分組用于存儲(chǔ)用戶文件的元數(shù)據(jù),運(yùn)行溯源圖存儲(chǔ)和維 護(hù)模塊、溯源圖查詢模塊、元數(shù)據(jù)管理模塊、元數(shù)據(jù)索引與存儲(chǔ)模塊、數(shù)據(jù)迀移控制模塊;第 三分組存儲(chǔ)數(shù)據(jù),運(yùn)行數(shù)據(jù)存儲(chǔ)與管理模塊以及數(shù)據(jù)迀移執(zhí)行模塊;限制每次可并行運(yùn)行 的數(shù)據(jù)點(diǎn)的個(gè)數(shù)。
[0089] 測(cè)試所獲得的結(jié)果及數(shù)據(jù)分析如表2及表3所示;其中,表2為本實(shí)施例提供的系統(tǒng) 及方法與現(xiàn)有技術(shù)基于訪問(wèn)的時(shí)間局部性的重分布方法的平均時(shí)間開(kāi)銷對(duì)比列表;表3為 本實(shí)施例提供的系統(tǒng)及方法與只區(qū)分?jǐn)?shù)據(jù)冷熱的重分布方法的平均時(shí)間開(kāi)銷對(duì)比列表。
[0090] 表2測(cè)試結(jié)果及對(duì)比列表1
[0092] 表3測(cè)試結(jié)果及對(duì)比列表2
[0094]通過(guò)本實(shí)施例提供的系統(tǒng)及方法的單條訪問(wèn)時(shí)間開(kāi)銷的平均值,與基于訪問(wèn)的時(shí) 間局部性的重分布方法的單條訪問(wèn)時(shí)間開(kāi)銷平均對(duì)比分析,以及與只區(qū)分?jǐn)?shù)據(jù)冷熱的重分 布方法的平均時(shí)間開(kāi)銷對(duì)比分析,分析結(jié)果表明本實(shí)施例提供的方法及系統(tǒng),其單條訪問(wèn) 的時(shí)間比上述兩種方法的單條訪問(wèn)時(shí)間都短,從加速比這項(xiàng)數(shù)據(jù)可以很直觀地看出,本實(shí) 施例所提供的冷數(shù)據(jù)文件重分布方法及系統(tǒng),在單條數(shù)據(jù)訪問(wèn)速度上具有絕對(duì)優(yōu)勢(shì);本發(fā) 明與現(xiàn)有的兩種技術(shù)相比,在根據(jù)溯源關(guān)系對(duì)冷數(shù)據(jù)進(jìn)行重分布之后,冷數(shù)據(jù)存儲(chǔ)系統(tǒng)能 夠減少用戶訪問(wèn)冷數(shù)據(jù)文件的等待時(shí)間,并相應(yīng)地減少云存儲(chǔ)服務(wù)供應(yīng)商的運(yùn)營(yíng)開(kāi)銷。 [0095]本領(lǐng)域的技術(shù)人員容易理解,以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以 限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含 在本發(fā)明的保護(hù)范圍之內(nèi)。
【主權(quán)項(xiàng)】
1. 一種云存儲(chǔ)系統(tǒng)中的冷數(shù)據(jù)文件重分布方法,其特征在于,具體如下: (1) 通過(guò)云存儲(chǔ)系統(tǒng)中用戶文件的歷史應(yīng)用信息,獲取初始溯源信息;根據(jù)所述初始溯 源信息,獲取用戶文件之間的相關(guān)性信息; (2) 根據(jù)所述相關(guān)性信息形成溯源圖;所述溯源圖為無(wú)向圖,溯源圖中的節(jié)點(diǎn)代表文 件,邊代表文件相關(guān)性; (3) 當(dāng)接收到數(shù)據(jù)重分布請(qǐng)求,根據(jù)所述溯源圖進(jìn)行查詢,獲得數(shù)據(jù)所在溯源組的其它 文件的存儲(chǔ)分布信息;根據(jù)所述存儲(chǔ)分布信息確定迀移的目標(biāo)服務(wù)器。2. 如權(quán)利要求1所述的冷數(shù)據(jù)文件重分布方法,其特征在于,所述步驟(1)具體如下: (1-1)在云存儲(chǔ)的應(yīng)用服務(wù)器集群的每臺(tái)服務(wù)器上添加溯源信息收集模塊; (1-2)設(shè)置溯源信息收集模塊收集溯源信息的范圍,對(duì)系統(tǒng)文件以及應(yīng)用層配置文件 的信息進(jìn)行過(guò)濾,獲取本系統(tǒng)存儲(chǔ)的用戶文件的應(yīng)用信息; (1-3)對(duì)所述溯源信息進(jìn)行預(yù)處理,以去除其中的錯(cuò)誤信息以及重復(fù)信息,并獲取用戶 文件之間的相關(guān)性信息; (1-4)判斷云存儲(chǔ)系統(tǒng)的元數(shù)據(jù)服務(wù)器上的緩沖區(qū)是否有足夠的空閑空間保存所述相 關(guān)性信息,若是,則直接存儲(chǔ)所述相關(guān)性信息;若否,則進(jìn)入步驟(2)。3. 如權(quán)利要求1或2所述的冷數(shù)據(jù)文件重分布方法,其特征在于,所述步驟(2)具體如 下: (2-1)判斷溯源圖是否為空,若是,則先建立空溯源圖,再將所述相關(guān)性信息添加到所 述溯源圖;若否,則直接將所述相關(guān)性信息添加到溯源圖; (2-2)根據(jù)文件相關(guān)項(xiàng)中包含的URI,判斷URI對(duì)應(yīng)的兩個(gè)文件是否包含在溯源圖中,若 否,則進(jìn)入步驟(2-3 ),若是,則進(jìn)入步驟(2-4); (2-3)在溯源圖中添加代表文件的節(jié)點(diǎn)以及代表文件相互關(guān)系的邊; (2-4)判定溯源圖是否只包含一個(gè)文件,若是,則在溯源圖中添加代表不包含在溯源圖 中的文件的節(jié)點(diǎn)以及代表文件相互關(guān)系的邊;若否,則刪除這條文件相關(guān)項(xiàng)。4. 如權(quán)利要求1或2所述的冷數(shù)據(jù)文件重分布方法,其特征在于,所述步驟(3)具體如 下: (3-1)當(dāng)接收到數(shù)據(jù)重分布請(qǐng)求,獲取擬迀移的數(shù)據(jù)所包含的文件的URI集合; (3-2)判斷擬迀移文件的URI集合是否為空,若否,則從該URI集合中選取一個(gè)文件的 URI,進(jìn)入步驟(3-3);若是,則結(jié)束本次數(shù)據(jù)迀移操作,返回提示信息; (3-3)根據(jù)被選取的URI在溯源圖中進(jìn)行查詢,獲得該文件所在溯源組的其它成員的存 儲(chǔ)分布信息;根據(jù)溯源組的節(jié)點(diǎn)存儲(chǔ)的分布信息選擇迀移的目標(biāo)數(shù)據(jù)服務(wù)器;進(jìn)行數(shù)據(jù)迀 移操作。5. 如權(quán)利要求1所述的冷數(shù)據(jù)文件重分布方法,其特征在于,所述步驟(3)中,確定迀移 的目標(biāo)服務(wù)器的方法,具體如下: (a) 當(dāng)數(shù)據(jù)所在溯源組內(nèi)部分節(jié)點(diǎn)已被迀移到下一層數(shù)據(jù)服務(wù)器集群,則將擬迀移的 數(shù)據(jù)迀移到相同的數(shù)據(jù)服務(wù)器,并更新該溯源組信息; (b) 當(dāng)數(shù)據(jù)所在溯源組內(nèi)所有節(jié)點(diǎn)均未被迀移到下一層數(shù)據(jù)服務(wù)器集群,則在下一層 數(shù)據(jù)服務(wù)器集群中選擇負(fù)載輕的服務(wù)器作為迀移的目的數(shù)據(jù)服務(wù)器,并更新該溯源組信 息。6. 如權(quán)利要求5所述的冷數(shù)據(jù)文件重分布方法,其特征在于,所述步驟(a)具體如下: (a-Ι)獲取溯源組內(nèi)文件被迀移到的目標(biāo)服務(wù)器的網(wǎng)絡(luò)地址; (a-2)與目標(biāo)服務(wù)器建立聯(lián)系,將擬迀移的文件從原存儲(chǔ)位置迀移動(dòng)到目標(biāo)服務(wù)器; (a-3)更新被迀移文件所在的溯源組信息以及代表該文件的節(jié)點(diǎn)的信息。7. 如權(quán)利要求5所述的冷數(shù)據(jù)文件重分布方法,其特征在于,所述步驟(b)具體如下: (b-Ι)根據(jù)下一層數(shù)據(jù)服務(wù)器集群的負(fù)載量,選擇負(fù)載輕的服務(wù)器作為目標(biāo)服務(wù)器; (b-2)獲取組內(nèi)文件被迀移到的目標(biāo)數(shù)據(jù)服務(wù)器的網(wǎng)絡(luò)地址; (b-3)更新被迀移文件所在的溯源組信息以及代表該文件的節(jié)點(diǎn)的信息。8. -種云存儲(chǔ)系統(tǒng)中的冷數(shù)據(jù)文件重分布系統(tǒng),其特征在于,包括溯源信息收集模塊、 溯源圖存儲(chǔ)和維護(hù)模塊、溯源圖查詢模塊、元數(shù)據(jù)管理模塊、元數(shù)據(jù)索引與存儲(chǔ)模塊、數(shù)據(jù) 迀移控制模塊、數(shù)據(jù)迀移執(zhí)行模塊以及數(shù)據(jù)存儲(chǔ)與管理模塊; 所述溯源信息收集模塊用于收集用戶文件的歷史應(yīng)用信息,根據(jù)所述歷史應(yīng)用信息獲 取初始溯源信息,并根據(jù)初始溯源信息獲得用戶文件之間的溯源關(guān)系; 所述溯源圖存儲(chǔ)和維護(hù)模塊用于根據(jù)溯源關(guān)系生成溯源圖,并完成對(duì)溯源圖中節(jié)點(diǎn)和 邊的添加、刪除以及更新的操作; 所述溯源圖查詢模塊用于根據(jù)文件URI查找到文件所在溯源組的文件分布情況; 所述元數(shù)據(jù)管理模塊用于對(duì)云存儲(chǔ)系統(tǒng)中所有用戶文件的元數(shù)據(jù)進(jìn)行訪問(wèn)、添加、更 新以及刪除操作; 所述元數(shù)據(jù)索引與存儲(chǔ)模塊用于對(duì)云存儲(chǔ)系統(tǒng)中所有的元數(shù)據(jù)信息進(jìn)行索引與存儲(chǔ); 所述數(shù)據(jù)迀移控制模塊用于根據(jù)溯源組內(nèi)文件的分布情況,確定文件迀移的目標(biāo)服務(wù) 器,并根據(jù)數(shù)據(jù)迀移模塊的反饋實(shí)時(shí)更新元數(shù)據(jù)與溯源圖; 所述數(shù)據(jù)迀移執(zhí)行模塊用于根據(jù)數(shù)據(jù)迀移請(qǐng)求,將數(shù)據(jù)迀移到目標(biāo)服務(wù)器,并在數(shù)據(jù) 迀移過(guò)程進(jìn)行流程控制和參數(shù)更新; 所述數(shù)據(jù)存儲(chǔ)與管理模塊用于存儲(chǔ)數(shù)據(jù),并進(jìn)行數(shù)據(jù)的添加、刪除以及更新。9. 如權(quán)利要求8所述的冷數(shù)據(jù)文件重分布系統(tǒng),其特征在于,所述溯源信息收集模塊包 括文件應(yīng)用監(jiān)聽(tīng)模塊、溯源信息處理模塊、溯源信息分析模塊以及文件相關(guān)性信息緩沖模 塊; 所述文件應(yīng)用監(jiān)聽(tīng)模塊用于監(jiān)聽(tīng)用戶或系統(tǒng)管理員對(duì)云存儲(chǔ)系統(tǒng)中各個(gè)文件在應(yīng)用 服務(wù)器中的操作,獲取初始溯源信息; 所述溯源信息處理模塊用于對(duì)所述初始溯源信息進(jìn)行過(guò)濾,包括對(duì)溯源信息進(jìn)行去 重、糾錯(cuò)和規(guī)整; 所述溯源信息分析模塊用于對(duì)所述初始溯源信息進(jìn)行分析,獲取用戶文件的相關(guān)性信 息; 所述文件相關(guān)性信息緩沖模塊設(shè)置在元數(shù)據(jù)服務(wù)器的非易失性存儲(chǔ)介質(zhì)上,用于保存 所述的相關(guān)性信息。
【文檔編號(hào)】G06F17/30GK105893542SQ201610197281
【公開(kāi)日】2016年8月24日
【申請(qǐng)日】2016年3月31日
【發(fā)明人】馮丹, 劉進(jìn)軍, 華宇, 彭斌, 左鵬飛, 孫園園, 操順德, 陽(yáng)玲
【申請(qǐng)人】華中科技大學(xué)