欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種高速對象并行存儲系統目錄復制方法

文檔序號:6435512閱讀:311來源:國知局
專利名稱:一種高速對象并行存儲系統目錄復制方法
技術領域
本發(fā)明涉及對象并行存儲系統的性能優(yōu)化方法,尤其是高速目錄復制方法。
背景技術
并行存儲系統是大規(guī)模并行計算機系統中的重要組成部分,對象并行存儲系統是一種并行存儲結構。如圖1所示,對象并行存儲系統由一個元數據服務器(簡稱MDS)、多個對象存儲服務器(簡稱0ST)和多個客戶結點(簡稱CN)通過網絡互連構成。元數據服務器和多個對象存儲服務器為客戶結點提供數據讀寫、數據存儲等文件訪問服務。元數據服務器為客戶結點提供元數據服務,是對象存儲系統所特有的。元數據描述每個文件的所有者、創(chuàng)建時間、修改時間、文件大小以及文件在對象存儲系統上的分布等信息。對象存儲服務器負責保存文件的具體數據,并在元數據服務器的管理下向客戶結點提供文件訪問服務??蛻艚Y點的文件訪問請求首先提交給元數據服務器,獲取文件分布信息,然后根據分布信息向相關的對象存儲服務器提交訪問請求,完成數據讀寫過程。對象存儲系統充分利用高帶寬網絡以及存儲訪問的并發(fā)性,為并行應用提供較高的數據訪問帶寬,已廣泛應用于世界超級計算機排名前十的計算機系統中。目錄復制是并行存儲系統為客戶結點提供的基本功能之一,客戶結點將文件目錄及目錄下的所有文件從并行存儲系統的一個位置復制到另外一個位置。目前通常的對象并行存儲系統目錄復制方法是集中式方法,客戶結點管理所有的復制過程。用戶在客戶結點提交操作系統的標準目錄復制命令cp,客戶結點從源對象存儲服務器逐個讀取目錄下的文件到本地內存,然后將文件寫入目標對象存儲服務器。所有的復制過程都經過客戶結點,客戶結點成為性能瓶頸。沒有其它公開文獻涉及對象并行存儲文件系統的目錄復制方法。當前的對象并行存儲系統的存儲容量達數百T以上,文件的數量達數百萬以上, 同時在線的文件系統客戶端達數千。集中目錄復制方法的時間和通信開銷很大,新型的高速目錄復制方法是本領域技術人員極為關注的技術問題。

發(fā)明內容
本發(fā)明要解決的技術問題在于針對對象并行存儲系統的目錄復制集中在客戶結點實施,串行化過程導致時間開銷大,數據復制過程需經過客戶結點中轉導致客戶結點成為通信瓶頸等問題,提出并行化的高速目錄復制方法。為了解決上述技術問題,本發(fā)明的技術方案為構建目錄復制系統,將目錄復制任務分解為多個文件的復制任務,然后將文件復制任務分發(fā)到多個對象存儲服務器并行執(zhí)行,文件直接從源對象存儲服務器復制到目的對象存儲服務器,無需客戶結點中轉。具體技術方案為第一步,構建目錄復制系統,目錄復制系統是部署在對象存儲系統上的目錄復制軟件。目錄復制系統由目錄復制任務管理模塊、負載分配模塊、文件復制執(zhí)行模塊組成,其中目錄復制任務管理模塊和負載分配模塊部署在客戶結點上,文件復制執(zhí)行模塊部署在所有的對象存儲服務器上。目錄復制任務管理模塊負責接收目錄復制命令,遞歸解析目錄復制命令為普通目錄復制命令,創(chuàng)建目標目錄,向負載分配模塊下達普通目錄復制命令。負載分配模塊負責接收普通目錄復制命令,根據普通目錄復制命令生成文件復制命令,檢索源文件所在的對象存儲服務器,將文件復制命令下達給源文件所在的對象存儲服務器上的文件復制執(zhí)行模塊。文件復制執(zhí)行模塊接收文件復制命令,確定目標文件所在的對象存儲服務器,執(zhí)行文件復制操作。目錄復制命令為操作系統提供的基本文件操作命令,將源目錄下的所有文件和子目錄均復制到目標目錄,命令格式為CP srcdirA destdirB。一個文件目錄包括文件和子目錄,子目錄下也可以包含文件和下級子目錄。普通目錄復制命令是本發(fā)明定義的特有文件操作命令,僅將源目錄A下的所有文件復制到目標目錄B,不復制源目錄A 下的子目錄,命令格式為localcp srcdirA srcdirB。 srcdirA禾口 srcdirB均為絕對路徑。 絕對路徑指文件系統中訪問目錄或者文件的完整路徑。第二步,目錄復制任務管理模塊部署在客戶結點,接收用戶提交的目錄復制命令 cp srcdirA destdirB。設定輸入參數為srcdirA和srcdirB,調用目錄復制過程DirCopy 進行目錄復制。目錄復制過程DirCopy為一個遞歸調用過程。輸入參數為SRCWR和DESTDIR,其中SRCWR為源目錄,DESTWR為目標目錄。目錄復制過程DirCopy的流程如下2. 1、如果目標目錄不存在,則創(chuàng)建目標目錄DESTDIR。2. 2、向負載分配模塊下達普通目錄復制命令localcp SRCDIR DESTDIR,,2. 3、讀取源目錄SRCWR下的所有子目錄名,每個子目錄名為一個字符串,存入 dirlist隊列中。dirlist隊列中每個單元為一個子目錄名稱的字符串。2. 4、如果dirlist隊列為空,則停止DirCopy的遞歸調用,轉2. 6步。2. 5、從dirlist隊列頭開始逐個讀取隊列中的每個字符串,對每個字符串做以下處理將該字符串賦值給workdir。構造源目錄的絕對路徑字符串Asrcdir,絕對路徑字符串為SRCDIR、目錄間隔符號 “/” 以及 workdir 三個字符串的合并,即 Asrcdir = SRCDIR+ “/”+workdir。構造目標目錄的絕對路徑字符串Adestdir,絕對路徑字符串為DESTDIR、目錄間隔符號“/”以及workdir三個字符串的合并,即Adestdir = DESTDIR+ “/”+workdir。向元數據服務器MDS檢索絕對路徑為Adestdir的目標目錄是否存在。如果目標目錄Adestdir不存在,則向MDS申請創(chuàng)建目標目錄Adestdir。遞歸調用目錄復制過程DirCopy (Asrcdir, Adestdir)。2. 6、目錄復制過程DirCopy結束。第三步,部署在客戶結點上的負載分配模塊接收目錄復制任務管理模塊下達的普通目錄復制命令localcp SRCDIR DESTDIR。將普通目錄復制命令分解為多個文件復制命令,并向源文件所在的對象存儲服務器上的文件復制執(zhí)行模塊下達文件復制命令,執(zhí)行步驟如下3. 1、讀取源目錄SI^WR下的所有文件名,每個文件名作為一個字符串,存入 filelist隊列中。filerlist隊列中每個單元為一個文件名稱的字符串。
3. 2、如果filelist隊列為空,則轉第四步。3. 3、從filelist隊列頭開始逐個讀取隊列中的每個字符串,對每個字符串做以下處理將該字符串賦值給workfile。構造源文件的絕對路徑字符串Asrcfile,絕對路徑為SRCDIR、目錄間隔符號“/” 以及 workfile 三個字符串的合并,即 Asrcfile = SRCDIR+ "/"+Workfile0構造目標文件的絕對路徑字符串Adestfile,絕對路徑為DESTDIR、目錄間隔符號 “/” 以及 workfile 三個字符串的合并,即 Adestfile = DESTDIR+ “/”+workfile。向MDS檢索絕對路徑為Asrcfile的源文件所在的對象存儲服務器,記為srcOST。向srcOST上的文件復制執(zhí)行模塊下達文件復制命令filecp Asrcfile Adestfile。第四步,文件復制執(zhí)行模塊接收負載分配模塊下達的文件復制命令filecp Asrcfile Adestfile,多個文件復制執(zhí)行模塊并行執(zhí)行文件復制操作。文件復制操作執(zhí)行步驟如下4. 1、向MDS申請創(chuàng)建目標文件Adestfile,根據文件屬性讀取目標文件所在的 destOST。一般的對象并行存儲文件系統中,多個文件的創(chuàng)建請求將被MDS輪流分配存儲到不同的OST上,所以同一文件的多次重復創(chuàng)建也會分配到不同的OST上。4. 2、如果destOST為文件復制執(zhí)行模塊所在的0ST,則刪除destfile,轉4. 1步。4. 3、執(zhí)行文件復制操作,將文件Asrcfile從本地OST復制到destOST。與現有技術相比,采用本發(fā)明可達到以下技術效果1.本發(fā)明第三步將目錄復制任務分布到多個對象存儲服務器上并發(fā)執(zhí)行,大幅度減少復制時間;2.本發(fā)明第四步將文件直接從源對象存儲服務器復制到目的對象存儲服務器,無需通過客戶結點中轉,避免了客戶結點成為通信瓶頸;3.本發(fā)明第四步在復制過程中確保源文件和目標文件不在同一個對象存儲服務器,避免了單點失效。


圖1是對象并行存儲系統的結構圖。圖2為目錄復制系統的結構圖。圖3為本發(fā)明總體流程圖。
具體實施例方式圖1是對象并行存儲系統的結構圖。對象并行存儲系統由一個元數據服務器(簡稱MDS)、多個對象存儲服務器(簡稱0ST)和多個客戶結點(簡稱CN)通過網絡互連構成。元數據服務器和多個對象存儲服務器為客戶結點提供數據讀寫、數據存儲等文件訪問服務。圖2為目錄復制系統的結構圖。目錄復制系統由目錄復制任務管理模塊、負載分配模塊、文件復制執(zhí)行模塊組成,其中目錄復制任務管理模塊和負載分配模塊部署在客戶結點上,文件復制執(zhí)行模塊部署在所有的對象存儲服務器上。目錄復制任務管理模塊解析目錄復制命令,向負載分配模塊下達普通目錄復制命令。負載分配模塊解析普通目錄復制命令,向文件復制執(zhí)行模塊下達文件復制命令。文件復制執(zhí)行模塊執(zhí)行文件復制操作。圖3為本發(fā)明總體流程圖。第一步,構建目錄復制系統。目錄復制系統是部署在對象存儲系統上的目錄復制軟件,由目錄復制任務管理模塊、負載分配模塊、文件復制執(zhí)行模塊組成。目錄復制任務管理模塊負責接收目錄復制命令,遞歸解析目錄復制命令為普通目錄復制命令,創(chuàng)建目標目錄,向負載分配模塊下達普通目錄復制命令。負載分配模塊負責接收普通目錄復制命令,根據普通目錄復制命令生成文件復制命令,檢索源文件所在的對象存儲服務器,將文件復制命令下達給文件復制執(zhí)行模塊。文件復制執(zhí)行模塊接收文件復制命令,確定目標文件所在的對象存儲服務器,執(zhí)行文件復制操作。第二步,目錄復制任務管理模塊接收目錄復制命令,創(chuàng)建目標目錄,向負載分配模塊下達普通目錄復制命令。第三步,復制分配模塊接收普通目錄復制命令,向文件復制執(zhí)行模塊下達文件復制命令。第四步,文件復制執(zhí)行模塊接收文件復制命令,并行執(zhí)行文件復制操作。
權利要求
1.一種高速對象并行存儲系統目錄復制方法,其特征在于包括以下步驟第一步,構建目錄復制系統,目錄復制系統是部署在對象存儲系統上的目錄復制軟件, 由目錄復制任務管理模塊、負載分配模塊、文件復制執(zhí)行模塊組成;目錄復制任務管理模塊和負載分配模塊部署在客戶結點上,文件復制執(zhí)行模塊部署在所有的對象存儲服務器上; 目錄復制任務管理模塊負責接收目錄復制命令,遞歸解析目錄復制命令為普通目錄復制命令,創(chuàng)建目標目錄,向負載分配模塊下達普通目錄復制命令;負載分配模塊負責接收普通目錄復制命令,根據普通目錄復制命令生成文件復制命令,檢索源文件所在的對象存儲服務器,將文件復制命令下達給源文件所在的對象存儲服務器上的文件復制執(zhí)行模塊;文件復制執(zhí)行模塊接收文件復制命令,確定目標文件所在的對象存儲服務器,執(zhí)行文件復制操作; 目錄復制命令為操作系統提供的基本文件操作命令,將源目錄下的所有文件和子目錄均復制到目標目錄,命令格式為cp srcdirA destdirB ;—個文件目錄包括文件和子目錄,子目錄下也可以包含文件和下級子目錄;普通目錄復制命令是文件操作命令,僅將源目錄A下的所有文件復制到目標目錄B,不復制源目錄A下的子目錄,命令格式為localcp srcdirA srcdirB ;srcdirA和srcdirB均為絕對路徑,絕對路徑指文件系統中訪問目錄或者文件的完整路徑;第二步,目錄復制任務管理模塊部署在客戶結點,接收用戶提交的目錄復制命令CP srcdirA destdirB,設定輸入參數為srcdirA和srcdirB,調用目錄復制過程DirCopy進行目錄復制;目錄復制過程DirCopy為一個遞歸調用過程,輸入參數為SRCDIR和DESTDIR,其中 SRCDIR為源目錄,DESTDIR為目標目錄,目錄復制過程DirCopy的流程如下、2.1、如果目標目錄不存在,則創(chuàng)建目標目錄DESTDIR ;、2. 2、向負載分配模塊下達普通目錄復制命令localcp SRCDIR DESTDIR ; 2. 3、讀取源目錄SRCDIR下的所有子目錄名,每個子目錄名為一個字符串,存入 dirlist隊列中,dirlist隊列中每個單元為一個子目錄名稱的字符串; 2. 4、如果dirlist隊列為空,則停止DirCopy的遞歸調用,轉2. 6步; 2. 5、從dirlist隊列頭開始逐個讀取隊列中的每個字符串,對每個字符串做以下處理將該字符串賦值給workdir ;構造源目錄的絕對路徑字符串Asrcdir,絕對路徑字符串為SRCDIR、目錄間隔符號“/” 以及 workdir 三個字符串的合并,即 Asrcdir = SRCDIR+ "/"+workdir ;構造目標目錄的絕對路徑字符串Adestdir,絕對路徑字符串為DESTDIR、目錄間隔符號 “/” 以及 workdir 三個字符串的合并,即 Adestdir = DESTDIR+ "/"+workdir ;向元數據服務器MDS檢索絕對路徑為Adestdir的目標目錄是否存在。如果目標目錄 Adestdir不存在,則向MDS申請創(chuàng)建目標目錄Adestdir ; 遞歸調用目錄復制過程DirCopy (Asrcdir,Adestdir); 2. 6、目錄復制過程DirCopy結束;第三步,部署在客戶結點上的負載分配模塊接收目錄復制任務管理模塊下達的普通目錄復制命令localcp SRCDIR DESTDIR,將普通目錄復制命令分解為多個文件復制命令, 并向源文件所在的對象存儲服務器上的文件復制執(zhí)行模塊下達文件復制命令,執(zhí)行步驟如下.3. 1、讀取源目錄SRCWR下的所有文件名,每個文件名作為一個字符串,存入filelist 隊列中,filerlist隊列中每個單元為一個文件名稱的字符串; .3. .2、如果filelist隊列為空,則轉第四步;.3.3、從filelist隊列頭開始逐個讀取隊列中的每個字符串,對每個字符串做以下處理將該字符串賦值給workfile ;構造源文件的絕對路徑字符串Asrcfile,絕對路徑為SRCWR、目錄間隔符號“/”以及 workfile 三個字符串的合并,即 Asrcfile = SRCDIR+ “/”+workfile ;構造目標文件的絕對路徑字符串Adestfile,絕對路徑為DESTDIR、目錄間隔符號“/” 以及 workfile 三個字符串的合并,即 Adestfile = DESTDIR+ “/”+workfile ;向MDS檢索絕對路徑為Asrcfile的源文件所在的對象存儲服務器,記為srcOST ; 向srcOST上的文件復制執(zhí)行模塊下達文件復制命令filecp Asrcfile Adestfile ; 第四步,文件復制執(zhí)行模塊接收負載分配模塊下達的文件復制命令filecp Asrcfile Adestfile,多個文件復制執(zhí)行模塊并行執(zhí)行文件復制操作。文件復制操作執(zhí)行步驟如下.4.1、向MDS申請創(chuàng)建目標文件Adestfile,根據文件屬性讀取目標文件所在的 destOST ;.4. 2、如果destOST為文件復制執(zhí)行模塊所在的0ST,則刪除destfile,轉4. 1步; 4. 3、執(zhí)行文件復制操作,將文件Asrcfile從本地OST復制到destOST。
全文摘要
本發(fā)明公開了一種高速對象并行存儲系統目錄復制方法,目的是解決對象并行存儲系統的目錄復制集中在客戶結點實施,串行化過程導致時間開銷大,數據復制過程需經過客戶結點中轉導致客戶結點成為通信瓶頸等問題。技術方案為構建目錄復制系統,將目錄復制任務分解為多個文件的復制任務,然后將文件復制任務分發(fā)到多個對象存儲服務器并行執(zhí)行,文件直接從源對象存儲服務器復制到目的對象存儲服務器,無需客戶結點中轉。采用本發(fā)明可大幅度減少復制時間,無需通過客戶結點中轉,避免了客戶結點成為通信瓶頸,在復制過程中確保源文件和目標文件不在同一個對象存儲服務器,避免了單點失效。
文檔編號G06F17/30GK102360382SQ201110310368
公開日2012年2月22日 申請日期2011年10月13日 優(yōu)先權日2011年10月13日
發(fā)明者盧宇彤, 周恩強, 宋飛, 張偉, 張曉明, 田寶華, 肖婧, 陳海濤 申請人:中國人民解放軍國防科學技術大學
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
仁化县| 维西| 静海县| 敦煌市| 琼海市| 惠州市| 博客| 庆云县| 板桥市| 兴义市| 轮台县| 乌恰县| 泽普县| 灌阳县| 云霄县| 屏山县| 乐昌市| 玉龙| 海宁市| 安义县| 昌吉市| 成都市| 济宁市| 宜昌市| 尤溪县| 北碚区| 响水县| 翁牛特旗| 舒城县| 台江县| 林州市| 北安市| 武城县| 高邮市| 华宁县| 扶沟县| 佛教| 肥乡县| 沈丘县| 西宁市| 隆昌县|