[發明專利]一種基于位管理的分布式文件系統節點編號分配方法有效
| 申請號: | 201210316061.X | 申請日: | 2012-08-31 |
| 公開(公告)號: | CN102867037A | 公開(公告)日: | 2013-01-09 |
| 發明(設計)人: | 張明富;顏秉珩 | 申請(專利權)人: | 浪潮電子信息產業股份有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30;H04L29/08 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 250014 山東*** | 國省代碼: | 山東;37 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 管理 分布式 文件系統 節點 編號 分配 方法 | ||
技術領域
本發明涉及云計算云存儲領域,具體為一種基于位管理的分布式文件系統節點編號分配方法。
技術背景
云存儲是在云計算(cloud?computing)基礎上延伸和發展出來的一個新概念,是指通過集群應用、網絡技術和分布式文件系統等技術,將網絡中大量不同類型的存儲設備進行整合利用,形成統一的存儲池對外提供存儲服務。
分布式文件系統作為云存儲的核心組成部分在近幾年中有了長足的發展。在分布式文件系統中對節點編號的分配與管理是一個很重要的問題。節點編號作為節點的標識必須是唯一的,它的分配與回收需要有一定的機制維護與管理。當前比較常見的分布式文件系統對節點編號的管理是基于某個全局變量線性增長的,每當需要分配一個新的節點編號時,就對這個全局變量加1然后返回該值,每當需要回收一個節點編號時則使用一個變量加以記錄,然后再有節點編號的分配需求時則首先查找這些變量記錄的編號進行返回。這種方式雖然效率很高,但需要額外的系統開銷來維護那些回收的節點編號。一般每一個節點編號會用4字節來表示,當刪除的節點很多時,會因此占用大量的內存資源。
發明內容
為了降低額外的內存消耗并兼顧執行效率,本發明提出了一種基于位管理的分布式文件系統節點編號分配方法。
本發明解決所述技術問題采用的方法內容包括:內容包括:將分布式文件系統中每一個節點編號的空閑或使用情況轉換為數組元素變量中的某一位來表示,用位值1或0來分別表示該節點編號占用或空閑狀態;當需要分配一個節點編號時,會從數組的搜索索引開始遍歷每個元素變量中的每個位,找到第一個為0的位,根據元素變量在數組中的索引和該位在元素變量中的索引計算出節點編號值進行返回,然后將該位設置為1;當需要釋放一個節點編號時,會根據節點編號值計算出數組索引和元素變量內的索引來確定對應的位將其清零,并根據數組索引來確定是否修改搜索索引,數組的長度在沒有空閑位時,允許動態擴充,當數組的搜索索引在分配節點編號時,作為數組的起始位置查找空閑位,并根據查找情況進行調整;在回收節點編號時,若對應的數組索引小于搜索索引,則重新設置搜索索引使其指向含有最小空閑節點編號的元素變量;
具體實現過程如下:
1)初始化階段:
(1)bitmasksize變量初始化為0x100,用以表示freebitmask數組的長度;
(2)freebitmask是一個含有bitmasksize個元素的數組,它的每一個元素都是一個4字節的變量,該數組中每個元素會被初始化為0;
(3)searchpos變量初始化為0,表示freebitmask數組的搜索索引;
2)分配節點編號過程:
(1)若searchpos小于bitmasksize并且freebitmask[searchpos]元素變量值等于0xFFFFFFFF,則searchpos自加1并返回步驟1),本步驟的作用是從searchpos位置開始在freebitmask數組中找到一個至少含有一個空閑位bit=0的元素變量;
(2)如果searchpos等于bitmasksize,則bitmasksize加上0x80,并根據新的bitmasksize值調整freebitmask數組長度,新申請的元素變量被初始化為0,本步驟的作用是若freebitmask數組中所有的元素變量的每一位都是占用位bit=1,則為freebitmask數組擴展新的元素變量并初始化為0表示所有位都是空閑位;
(3)根據freebitmask[searchpos]元素變量從低位到高位計算第一個空閑位的索引位置bitpos,將該位置1表示占用位;
(4)計算節點編號nodeid=?(searchpos<<5)+bitpos,并返回該值;
3)回收節點編號過程:
(1)根據節點編號nodeid計算出數組索引pos=nodeid>>5和位索引bitpos=nodeid&0x1F;
(2)根據數組索引pos和位索引bitpos將freebitmask數組中的對應元素的對應位清零,即設為空閑位;
(3)若pos<searchpos則searchpos=pos,本步驟的作用是重新設置searchpos變量,使它始終指向第一含有空閑位的freebitmask數組元素變量。
本發明的有益效果是:簡化了分布式文件系統中節點編號分配與回收的過程,降低了維護空閑節點編號的系統開銷,提高了節點編號分配效率。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浪潮電子信息產業股份有限公司,未經浪潮電子信息產業股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210316061.X/2.html,轉載請聲明來源鉆瓜專利網。





