[發(fā)明專利]一種分布式文件系統(tǒng)中文件布局的更新方法在審
| 申請?zhí)枺?/td> | 201410421947.X | 申請日: | 2014-08-25 |
| 公開(公告)號: | CN104158898A | 公開(公告)日: | 2014-11-19 |
| 發(fā)明(設(shè)計)人: | 郭照斌;季旻;姜國梁;馬振杰;楊鵬 | 申請(專利權(quán))人: | 曙光信息產(chǎn)業(yè)股份有限公司 |
| 主分類號: | H04L29/08 | 分類號: | H04L29/08;G06F17/30 |
| 代理公司: | 北京安博達(dá)知識產(chǎn)權(quán)代理有限公司 11271 | 代理人: | 徐國文 |
| 地址: | 300384 天津市西青區(qū)華*** | 國省代碼: | 天津;12 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 分布式 文件系統(tǒng) 文件 布局 更新 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及一種更新方法,具體涉及一種分布式文件系統(tǒng)中文件布局的更新方法。
背景技術(shù)
分布式文件系統(tǒng)一般包含客戶端,元數(shù)據(jù)服務(wù)器和數(shù)據(jù)服務(wù)器,客戶端負(fù)責(zé)文件數(shù)據(jù)的訪問接口制定,元數(shù)據(jù)服務(wù)器處理文件的布局及屬性,數(shù)據(jù)服務(wù)器存儲文件的數(shù)據(jù)內(nèi)容。
對于分布式文件系統(tǒng),多個客戶端同時訪問一個文件時,為了保證其訪問數(shù)據(jù)的一致性,該文件的元數(shù)據(jù)更新時必須有一種方法使得訪問該元數(shù)據(jù)的客戶端都感知到,傳統(tǒng)的做法是通過元數(shù)據(jù)的分布式鎖來實(shí)現(xiàn),大致過程為,客戶端訪問文件時必須先申請該文件的分布式鎖,更新元數(shù)據(jù)時也需要在鎖的保護(hù)內(nèi)進(jìn)行,而該方法的缺點(diǎn)有二,一是分布式鎖實(shí)現(xiàn)難度很大,且維護(hù)起來很不方便,部分分布式文件系統(tǒng)沒有分布式鎖,二是每次訪問元數(shù)據(jù)時都需要加鎖,降低了元數(shù)據(jù)訪問的效率,增加了訪問元數(shù)據(jù)的時延和開銷。
發(fā)明內(nèi)容
為了克服上述現(xiàn)有技術(shù)的不足,本發(fā)明提供一種分布式文件系統(tǒng)中文件布局的更新方法,只需要在訪問文件的第一次時,由元數(shù)據(jù)服務(wù)器將文件的打開狀態(tài)記錄下來,而更新文件布局時只需要通知指定的記錄中的客戶端即可,該發(fā)明減少了元數(shù)據(jù)訪問頻繁加鎖的開銷,并且可以保證文件布局的一致性更新。
為了實(shí)現(xiàn)上述發(fā)明目的,本發(fā)明采取如下技術(shù)方案:
本發(fā)明提供一種分布式文件系統(tǒng)中文件布局的更新方法,所述方法包括以下步驟:
步驟1:元數(shù)據(jù)服務(wù)器記錄文件的打開狀態(tài);
步驟2:元數(shù)據(jù)服務(wù)器刪除客戶端打開文件的打開狀態(tài);
步驟3:元數(shù)據(jù)服務(wù)器保存更新后的文件布局。
所述步驟1包括以下步驟:
步驟1-1:客戶端向元數(shù)據(jù)服務(wù)器發(fā)起打開文件的請求;
步驟1-2:元數(shù)據(jù)服務(wù)器判斷是否已記錄該文件的打開狀態(tài),若未記錄則記錄該文件被該客戶端打開的打開狀態(tài)。
元數(shù)據(jù)服務(wù)器記錄文件被該客戶端打開的打開狀態(tài)有以下方式:
方式1:記錄到文件的擴(kuò)展屬性上;
方式2:統(tǒng)一記錄到指定的元數(shù)據(jù)文件夾中。
所述步驟2包括以下步驟:
步驟2-1:客戶端操作完文件后,向元數(shù)據(jù)服務(wù)器發(fā)送關(guān)閉文件的請求;
步驟2-2:元數(shù)據(jù)服務(wù)器刪除該客戶端的打開文件的打開狀態(tài)。
所述步驟3包括以下步驟:
步驟3-1:文件布局有改動需要更新時,元數(shù)據(jù)服務(wù)器根基文件打開狀態(tài)的記錄,向記錄的客戶端發(fā)送更新文件布局的請求;
步驟3-2:所有客戶端完成文件布局更新后,將更新后的文件布局保存。
與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果在于:
本發(fā)明提供了一種分布式文件系統(tǒng)中文件布局的更新方法,在沒有分布式鎖的分布式文件系統(tǒng)中,當(dāng)客戶端向元數(shù)據(jù)服務(wù)器打開文件時,元數(shù)據(jù)服務(wù)器記錄下該文件被該客戶端打開的打開狀態(tài),當(dāng)客戶端完成數(shù)據(jù)訪問向元數(shù)據(jù)服務(wù)器關(guān)閉文件時,元數(shù)據(jù)服務(wù)器刪除該客戶端打開該文件的記錄。當(dāng)文件的元數(shù)據(jù)布局有改動,需要更新時,元數(shù)據(jù)服務(wù)器根據(jù)其記錄的文件打開記錄,先向記錄的客戶端發(fā)送更新文件布局的請求,等所有客戶端完成更新后,將更新后的元數(shù)據(jù)保存。本發(fā)明在不需要分布式鎖的情況下,完成了元數(shù)據(jù)布局的一致性更新,保證了元數(shù)據(jù)在多客戶端間的一致性訪問,并且減少了申請分布式鎖的開銷。
附圖說明
圖1是分布式文件系統(tǒng)中文件布局的更新方法流程圖;
圖2是文件打開記錄在內(nèi)存中保存形式示意圖。
具體實(shí)施方式
下面結(jié)合附圖對本發(fā)明作進(jìn)一步詳細(xì)說明。
如圖1,本發(fā)明提供一種分布式文件系統(tǒng)中文件布局的更新方法,所述方法包括以下步驟:
步驟1:元數(shù)據(jù)服務(wù)器記錄文件的打開狀態(tài);
步驟2:元數(shù)據(jù)服務(wù)器刪除客戶端打開文件的打開狀態(tài);
步驟3:元數(shù)據(jù)服務(wù)器保存更新后的文件布局。
所述步驟1包括以下步驟:
步驟1-1:客戶端向元數(shù)據(jù)服務(wù)器發(fā)起打開文件的請求;
步驟1-2:元數(shù)據(jù)服務(wù)器判斷是否已記錄該文件的打開狀態(tài),若未記錄則記錄該文件被該客戶端打開的打開狀態(tài)。
元數(shù)據(jù)服務(wù)器記錄文件被該客戶端打開的打開狀態(tài)有以下方式:
方式1:記錄到文件的擴(kuò)展屬性上;
方式2:統(tǒng)一記錄到指定的元數(shù)據(jù)文件夾中。
所述步驟2包括以下步驟:
步驟2-1:客戶端操作完文件后,向元數(shù)據(jù)服務(wù)器發(fā)送關(guān)閉文件的請求;
步驟2-2:元數(shù)據(jù)服務(wù)器刪除該客戶端的打開文件的打開狀態(tài)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于曙光信息產(chǎn)業(yè)股份有限公司,未經(jīng)曙光信息產(chǎn)業(yè)股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410421947.X/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





