• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    實現文件動態副本的鍵值文件系統及方法技術方案

    技術編號:8594078 閱讀:177 留言:0更新日期:2013-04-18 07:17
    本發明專利技術公開了一種在鍵值文件系統中實現文件動態副本的方法,用于針對特定文件進行動態副本的管理,該方法包括:由客戶端定位特定文件的靜態副本所在的第一子卷;從第一子卷讀取特定文件的擴展屬性,擴展屬性中包括特定文件已有的動態副本所在的動態子卷集合;對動態子卷集合進行動態副本的增加、刪除或瀏覽操作;以及根據增加或刪除動態副本后的動態子卷集合更新擴展屬性。本發明專利技術相應還公開了一種實現文件動態副本的鍵值文件系統。本發明專利技術的實施例基于鍵值文件系統實現了文件的動態副本,從而能夠針對文件訪問頻度的變化來及時調整存儲文件副本的子卷數量,達到提高存儲資源的利用效率和響應速度的效果。

    【技術實現步驟摘要】

    本申請涉及存儲
    ,尤其涉及一種在鍵值文件系統中實現文件動態副本的 方法及實現文件動態副本的鍵值文件系統。
    技術介紹
    隨著大數據時代的到來,業界對信息的存儲和訪問的需求越來越苛刻,傳統的文 件系統如Lustre、Panfs、GPFS等在可擴展性、可靠性和可用性等方面受到了復雜語義和中 心元數據服務器架構的制約,已經難以滿足搜索引擎、社交網絡、在線游戲和視頻等這些存 儲量和訪問量都十分巨大的互聯網應用的需求。相比之下,鍵值(Key-Value,k_v)文件系 統在大數據時代得到了越來越廣泛的應用。在鍵值文件系統中,信息數據為值(Value),被 賦予唯一的鍵(Key),客戶端通過對鍵(Key)的哈希(HASH)來定位值(Value)的存儲位置。 與傳統文件系統相比,鍵值文件系統擺脫了對中心元數據服務器的依賴,可擴展性大大提 聞。在鍵值文件系統中,系統的管理客戶端以存儲卷為單位對物理存儲于數據服務器 上的文件數據進行管理,每個存儲卷對應多個子卷。在客戶端裝載(mount)鍵值文件系統 的初始階段,通常會設定多種類型的子卷,例如包括普通子卷、復制子卷、和分條子卷等,其 中,普通子卷僅對應單個子卷,而復制子卷和分條子卷都分別對應于多個子卷。對于普通子 卷而言,數據的寫入和讀取操作都針對所述單個子卷進行。對于復制子卷而言,寫入的數據 會在其所包含的多個子卷之間進行同步(復制),而讀取數據則在響應速度最快的子卷上 完成。對于分條子卷而言,寫入的數據會分成多條并分別存儲到其所包含的多個子卷上,而 讀取數據則由這多個子卷共同響應完成,從而提高并發讀件的效率。在Glusterfs等典型 的鍵值文件系統中,每個子卷的冗余度(可由該子卷所對應的復制子卷中所包含的子卷數 量表示)和分條度(可由該子卷所對應的分條子卷中所包含的子卷數量表示)一旦確定就 很難再加以調整,而且所有存放于同一個存儲卷的文件必須按照相同的規則存放。然而,在 目前日趨流行的視頻點播、在線游戲等網絡應用中,經常會出現特定時間段內訪問量突然 劇增的文件,這種局部熱點文件的數目往往不多,但由于直接影響到網絡應用的用戶體驗, 因此其訪問性能不容忽視。為了改善局部熱點文件的訪問性能,最優選的方式是實時調整 其所在子卷的冗余度,但這顯然與鍵值文件系統的上述特點相悖;而如果在系統裝載之初 就預先針對這種不定期出現的少數文件創建一個冗余度很高的存儲子卷,顯然又會造成存 儲資源的浪費。
    技術實現思路
    本申請的實施例旨在提供一種在鍵值文件系統中實現文件動態副本的方法及實 現文件動態副本的鍵值文件系統,以解決上述現有技術中鍵值文件系統針對局部熱點文件 不能實現動態副本的問題。為實現上述目的,本申請的實施例提供了一種在鍵值文件系統中實現文件動態副本的方法,用于針對特定文件進行動態副本的管理,所述鍵值文件系統包括客戶端,用于 分多個子卷來管理文件,發起文件的寫入和讀取請求;以及服務器,用于根據所述客戶端的 操作分成多個子卷來存儲所述客戶端寫入的文件并響應所述客戶端的文件讀取請求;所述 方法包括以下步驟由所述客戶端定位所述特定文件的靜態副本所在的第一子卷;從所述第一子卷讀取所述特定文件的擴展屬性,所述擴展屬性中包括所述特定文 件已有的動態副本所在的動態子卷集合;對所述動態子卷集合進行動態副本的增加、刪除或瀏覽操作;以及根據增加或刪除動態副本后的動態子卷集合更新所述擴展屬性。相應地,本申請的實施例還提供一種實現文件動態副本的鍵值文件系統,用于針 對特定文件進行動態副本的管理,所述鍵值文件系統包括客戶端,用于分多個子卷來管理 文件,發起文件的寫入和讀取請求;以及服務器,用于根據所述客戶端的操作分成多個子 卷來存儲所述客戶端寫入的文件并響應所述客戶端的文件讀取請求;其中,所述客戶端包 括靜態定位單元,用于定位所述特定文件的靜態副本所在的第一子卷;屬性操作單元,用于從所述第一子卷讀取所述特定文件的擴展屬性,所述擴展屬 性中包括所述特定文件已有的動態副本所在的動態子卷集合;以及副本操作單元,用于對所述動態子卷集合進行動態副本的增加、刪除或瀏覽操作; 并且所述屬性操作單元根據所述副本操作單元增加或刪除動態副本后的動態子卷集 合更新所述擴展屬性。由上述技術方案可知,本申請的實施例基于鍵值文件系統實現了文件的動態副 本,從而能夠針對文件訪問頻度的變化來及時調整存儲文件副本的子卷數量,達到提高存 儲資源的利用效率和響應速度的效果。附圖說明圖1為鍵值文件系統的實現原理框圖2為本申請在鍵值文件系統中實現文件動態副本的方法實施例一流程圖3為本申請在鍵值文件系統中實現文件動態副本的方法實施例二流程圖4為本申請在鍵值文件系統中實現文件動態副本的方法中文件查找(lookup) 操作的實施例流程圖5為本申請實現文件動態副本的鍵值文件系統的實施例框圖6為本申請鍵值文件系統改進后的實現原理框圖。具體實施方式在描述本申請的實施例之前,下文將首先對鍵值文件系統的基本實現原理加以簡 單介紹。圖1示出鍵值文件系統的實現原理。如圖所示,客戶端11以存儲卷為單位裝載 (mount)鍵值文件系統,每個存儲卷(如圖中卷A-C)包含多個存儲子卷(如圖中子卷1_6)。服務器(集群)中的各個子卷服務器121-122將一個本地文件系統分區作為一個子卷加入 存儲卷,如圖中子卷服務器121將分區/datal作為子卷I加入存儲卷A。子卷服務器為每 個子卷運行一個后臺進程,處理客戶端請求,由客戶端11的業務邏輯層111發起的讀寫請 求被子卷后臺進程映射成對相應服務器上本地文件系統的讀寫請求。相同存儲卷的存儲子 卷對應的本地文件系統具有相同的目錄結構,該目錄結構與客戶端看到的目錄結構完全一 致,并且新加入的存儲子卷,會自動同步這一目錄結構。所有子卷服務器上都啟動了管理后 臺進程,該進程負責接收處理卷配置的修改和同步。在客戶端11,文件根據HASH(哈希)計算在子卷之間的分布。具體而言,每個文件 名通過HASH計算可以得到一個對應的整數,該整數即為鍵(Key);文件的上層目錄的擴展 屬性中記錄了該目錄中文件的layout (數據分布)規則,即每個子卷服務器對應的Key值 范圍,從而通過查找和比較可以找到文件所在的子卷序號,該序號即為值(Value)。客戶端 11對每個子卷啟動一個連接(如圖中通信層112中的連接C1-C6),用來與服務器上的子卷 后臺進程通信。子卷還可以組合成復制卷和分條卷,在創建新子卷時,通過指定副本數量R 和分條數量S可以分別構造出復制卷和分條卷。如
    技術介紹
    部分所述的,復制卷中所有的 內容需要寫同步,如圖1中,復制卷B包含了 2個子卷2、3,所有復制卷B的寫操作需要同步 到兩個子卷2、3才算成功,而讀操作則選擇到最先響應的子卷完成;分條卷將文件分成多 條,分別存儲到多個子卷上,從而提高并發讀文件的效率,如圖1中的分條卷C會將寫入的 文件分成三條分別存儲到三個子卷4、5、6上。下面將詳細描述本申請的具體實施例。應當注意,這里描述的實施例只用于舉例 說明,并不用于限制本申請。本申請在鍵值文件系統中實現文件動態副本的方法是用于針對特定文件進行動 態副本的管理。這里,上述的鍵值文件系統包括客戶端,用于分多個子卷來管理文件,發本文檔來自技高網
    ...

    【技術保護點】
    一種在鍵值文件系統中實現文件動態副本的方法,用于針對特定文件進行動態副本的管理,所述鍵值文件系統包括:客戶端,用于分多個子卷來管理文件,發起文件的寫入和讀取請求;以及服務器,用于根據所述客戶端的操作分成多個子卷來存儲所述客戶端寫入的文件并響應所述客戶端的文件讀取請求;所述方法包括以下步驟:由所述客戶端定位所述特定文件的靜態副本所在的第一子卷;從所述第一子卷讀取所述特定文件的擴展屬性,所述擴展屬性中包括所述特定文件已有的動態副本所在的動態子卷集合;對所述動態子卷集合進行動態副本的增加、刪除或瀏覽操作;以及根據增加或刪除動態副本后的動態子卷集合更新所述擴展屬性。

    【技術特征摘要】
    1.一種在鍵值文件系統中實現文件動態副本的方法,用于針對特定文件進行動態副本的管理,所述鍵值文件系統包括客戶端,用于分多個子卷來管理文件,發起文件的寫入和讀取請求;以及服務器,用于根據所述客戶端的操作分成多個子卷來存儲所述客戶端寫入的文件并響應所述客戶端的文件讀取請求;所述方法包括以下步驟 由所述客戶端定位所述特定文件的靜態副本所在的第一子卷; 從所述第一子卷讀取所述特定文件的擴展屬性,所述擴展屬性中包括所述特定文件已有的動態副本所在的動態子卷集合; 對所述動態子卷集合進行動態副本的増加、刪除或瀏覽操作;以及 根據增加或刪除動態副本后的動態子卷集合更新所述擴展屬性。2.如權利要求1所述的在鍵值文件系統中實現文件動態副本的方法,其中還包括 在所述服務器上獲取子卷的負載信息,并發送給所述客戶端;以及 所述客戶端根據收集到的所有子卷的負載信息進行排序以得到全局負載排序列表;并且 所述客戶端使用所述全局負載排序列表作為所述動態副本的増加和刪除操作的依據。3.如權利要求2所述的在鍵值文件系統中實現文件動態副本的方法,其中所述動態副本的増加操作包括以下步驟 遍歷所述全局負載排序列表,選取若干個負載最輕且不屬于所述動態子卷集合的子卷加入第一集合; 根據所述全局負載排序列表選取所述動態子卷集合中負載最輕的第二子卷;以及將所述特定文件的動態副本從所述第二子卷上同步到所述第一集合中的所有子卷上,并將所述第一集合中的所有子卷加入所述動態子卷集合中。4.如權利要求2所述的在鍵值文件系統中實現文件動態副本的方法,其中所述動態副本的刪除操作包括以下步驟 遍歷所述全局負載排序列表,選取若干個負載最重且屬于所述動態子卷集合的子卷加入第二集合;以及 從所述動態子卷集合中刪除所述第二集合中的所有子卷,并從所述第二集合中的所有子卷上刪除所述特定文件的動態副本。5.如權利要求2所述的在鍵值文件系統中實現文件動態副本的方法,其中更新所述擴展屬性后還包括 將所述第一子卷的相關信息存入所述特定文件的索引節點inode緩存; 通過所述客戶端向所述第一子卷發起查找lookup操作請求,該lookup操作請求中包括獲取所述擴展屬性的請求; 根據所述第一子卷針對所述lookup操作請求所回復的擴展屬性獲取所述動態子卷集合; 將所述第一子卷與所述動態子卷集合中的所有子卷加入第三集合,根據所述全局負載排序列表選取所述第三集合中負載最輕的第三子卷;以及 用所述第三子卷的相關信息代替所述特定文件的inode緩存中所述第一子卷的相關信息。6.一種實現文件動態副本的鍵值文件系統,用于針對特定文件進行動態副本的管理,所述鍵值文件系統包括客戶端...

    【專利技術屬性】
    技術研發人員:汪璐程耀東黃秋蘭
    申請(專利權)人:中國科學院高能物理研究所
    類型:發明
    國別省市:

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 久久Av无码精品人妻系列| 18禁无遮挡无码网站免费| 亚洲?V无码成人精品区日韩 | 97久久精品无码一区二区| 国产精品无码免费播放 | 人妻无码一区二区三区四区| 亚洲高清无码综合性爱视频| 熟妇人妻系列aⅴ无码专区友真希 熟妇人妻系列av无码一区二区 | 国产成年无码久久久久毛片| 精品三级AV无码一区| heyzo专区无码综合| 亚洲爆乳无码一区二区三区| 亚洲6080yy久久无码产自国产| 国产麻豆天美果冻无码视频| 精品久久久久久无码专区不卡| 国产成人无码精品久久久免费 | 国产乱人伦中文无无码视频试看 | 国产无遮挡无码视频免费软件| 久久久久久AV无码免费网站 | 久久人妻av无码中文专区| 亚洲aⅴ天堂av天堂无码麻豆| 国产精品无码a∨精品| 四虎成人精品国产永久免费无码 | 久久久无码精品人妻一区| 亚洲精品无码久久千人斩| 国产av无码久久精品| 伊人久久一区二区三区无码| 亚洲AV无码乱码在线观看富二代 | 亚洲午夜无码AV毛片久久| 亚洲精品无码专区在线播放| 无码国产福利av私拍| 亚洲一区AV无码少妇电影☆| 无码精品蜜桃一区二区三区WW | av无码人妻一区二区三区牛牛| 西西大胆无码视频免费| 亚洲中文无码亚洲人成影院| 免费A级毛片无码A∨免费| 无码专区中文字幕无码| 亚洲中文久久精品无码| 无码人妻久久久一区二区三区| 亚洲AV无码成人专区片在线观看 |