国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種對(duì)象存儲(chǔ)設(shè)備上的放置組的統(tǒng)一管理方法

      文檔序號(hào):8339338閱讀:389來源:國知局
      一種對(duì)象存儲(chǔ)設(shè)備上的放置組的統(tǒng)一管理方法
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及一種對(duì)象存儲(chǔ)設(shè)備技術(shù)領(lǐng)域,具體地說是一種對(duì)象存儲(chǔ)設(shè)備上的放置組的統(tǒng)一管理方法。
      【背景技術(shù)】
      [0002]為了降低對(duì)象存儲(chǔ)系統(tǒng)的整體運(yùn)算量,提高系統(tǒng)性能。在建立存儲(chǔ)對(duì)象與對(duì)象存儲(chǔ)設(shè)備之間映射關(guān)系的過程中,引入了一個(gè)存儲(chǔ)對(duì)象與對(duì)象存儲(chǔ)設(shè)備之間的中間層,稱之為放置組。放置組是一個(gè)邏輯概念,同屬于一個(gè)放置組的存儲(chǔ)對(duì)象將采用同樣的放置規(guī)則,即分布到相同的對(duì)象存儲(chǔ)設(shè)備上。
      [0003]對(duì)象存儲(chǔ)設(shè)備(Object-Based Storage Device,OSD)是一個(gè)用來存儲(chǔ)對(duì)象的智能設(shè)備,具有獨(dú)立的存儲(chǔ)介質(zhì)、處理器、內(nèi)存以及網(wǎng)卡等,可以獨(dú)立管理其自身的安全、存儲(chǔ)和網(wǎng)絡(luò)通信。通常認(rèn)為一個(gè)對(duì)象存儲(chǔ)設(shè)備就是一臺(tái)完整的對(duì)象存儲(chǔ)設(shè)備或存儲(chǔ)服務(wù)器。
      [0004]在基于兩級(jí)哈希的對(duì)象存儲(chǔ)系統(tǒng)中,采用哈希和一致性哈希兩次哈希算法實(shí)現(xiàn)對(duì)象的定位。即對(duì)于給定的對(duì)象,通過其對(duì)象名稱的哈希結(jié)果先確定所在的放置組,然后再對(duì)放置組使用一致性哈希確定放置組所在的0SD。這種方法能夠降低對(duì)象定位過程中的運(yùn)算量,特別是在存儲(chǔ)節(jié)點(diǎn)發(fā)生宕機(jī)時(shí),只需要重新計(jì)算放置組的一致性哈希結(jié)果即可找到所在的OSD。
      [0005]綜上所述,對(duì)象存儲(chǔ)系統(tǒng)中OSD上的存儲(chǔ)對(duì)象分別歸屬于OSD上的不同的放置組。以放置組為單位對(duì)OSD上的存儲(chǔ)對(duì)象進(jìn)行處理,可以高效地實(shí)現(xiàn)OSD上對(duì)象的處理。OSD上放置組的管理效率與正確性,很容易成為系統(tǒng)的瓶頸、甚至影響系統(tǒng)的部分功能。

      【發(fā)明內(nèi)容】

      [0006]本發(fā)明的技術(shù)任務(wù)是提供一種對(duì)象存儲(chǔ)設(shè)備上的放置組的統(tǒng)一管理方法;使用帶有時(shí)間戳的放置組集合,來實(shí)現(xiàn)對(duì)象存儲(chǔ)設(shè)備上的放置組的正確有效地管理。
      [0007]本發(fā)明的技術(shù)任務(wù)是按以下方式實(shí)現(xiàn)的,一種對(duì)象存儲(chǔ)設(shè)備上的放置組的統(tǒng)一管理方法,使用帶有時(shí)間戳的放置組集合的方法實(shí)現(xiàn)對(duì)對(duì)象存儲(chǔ)設(shè)備上的放置組進(jìn)行正確有效地管理;在OSD啟動(dòng)時(shí),將歸屬于該OSD上的放置組依次打上時(shí)間戳插入到集合中;需要將OSD上存儲(chǔ)的對(duì)象進(jìn)行處理時(shí),按照時(shí)間順序依次遍歷集合中的放置組;取出一個(gè)放置組,處理完成后從集合中擦除,然后打上新的時(shí)間戳重新插入到集合中;放置組的增加或者減少,分別調(diào)用放置組注冊(cè)和注銷方法實(shí)現(xiàn)動(dòng)態(tài)的插入或者擦除。
      [0008]放置組注冊(cè):0SD初始化或者新增放置組時(shí),需要將放置組按照時(shí)間戳插入到集合中;放置組注銷:已經(jīng)處理完成的放置組從集合中擦除;放置組迭代:按照時(shí)間戳的順序依次處理集合中的放置組,處理完成的放置組需要從集合中擦除,然后打上新的時(shí)間戳之后,重新插入到集合中。
      [0009](I)、結(jié)構(gòu)體和集合的代碼如下: struct Flusher{; utime_t flush_reg_stamp; // 注冊(cè)時(shí)間戳;
      }flusher ;
      set< pair〈時(shí)間,放置組〉> last_flush_pg ;
      (2)、放置組注冊(cè)方法,偽代碼實(shí)現(xiàn)如下:
      void reg_last_pg_flush(spg_t pgid, utime_t t) {;last_flush_pg.1nsert(pair<utime_t, spg_t>(t, pgid));
      };
      (3)、放置組注銷方法,偽代碼實(shí)現(xiàn)如下:
      void unreg_last_pg_flush(spg_t pgid, utime_t t) {;pair<utime_t, spg_t> p(t, pgid);
      set〈pair〈utime_t, spg_t> >::1terator it = last_flush_pg.find(p);last_flush_pg.erase(it);
      }o
      [0010]本發(fā)明的一種對(duì)象存儲(chǔ)設(shè)備上的放置組的統(tǒng)一管理方法,有益效果為:實(shí)現(xiàn)對(duì)象存儲(chǔ)設(shè)備上放置組的統(tǒng)一管理,可以高效地實(shí)現(xiàn)OSD上對(duì)象的處理。
      【附圖說明】
      [0011]下面結(jié)合附圖對(duì)本發(fā)明進(jìn)一步說明。
      [0012]附圖1為一種對(duì)象存儲(chǔ)設(shè)備上的放置組的統(tǒng)一管理方法的放置組遍歷示意圖。
      【具體實(shí)施方式】
      [0013]參照說明書附圖和具體實(shí)施例對(duì)本發(fā)明的一種對(duì)象存儲(chǔ)設(shè)備上的放置組的統(tǒng)一管理方法作以下詳細(xì)地說明。
      [0014]實(shí)施例1:
      本發(fā)明的一種對(duì)象存儲(chǔ)設(shè)備上的放置組的統(tǒng)一管理方法,使用帶有時(shí)間戳的放置組集合的方法實(shí)現(xiàn)對(duì)對(duì)象存儲(chǔ)設(shè)備上的放置組進(jìn)行正確有效地管理;在OSD啟動(dòng)時(shí),將歸屬于該OSD上的放置組依次打上時(shí)間戳插入到集合中;需要將OSD上存儲(chǔ)的對(duì)象進(jìn)行處理時(shí),按照時(shí)間順序依次遍歷集合中的放置組;取出一個(gè)放置組,處理完成后從集合中擦除,然后打上新的時(shí)間戳重新插入到集合中;放置組的增加或者減少,分別調(diào)用放置組注冊(cè)和注銷方法實(shí)現(xiàn)動(dòng)態(tài)的插入或者擦除。
      [0015]實(shí)施例2:
      本發(fā)明的一種對(duì)象存儲(chǔ)設(shè)備上的放置組的統(tǒng)一管理方法,使用帶有時(shí)間戳的放置組集合的方法實(shí)現(xiàn)對(duì)對(duì)象存儲(chǔ)設(shè)備上的放置組進(jìn)行正確有效地管理;在OSD啟動(dòng)時(shí),將歸屬于該OSD上的放置組依次打上時(shí)間戳插入到集合中;需要將OSD上存儲(chǔ)的對(duì)象進(jìn)行處理時(shí),按照時(shí)間順序依次遍歷集合中的放置組;取出一個(gè)放置組,處理完成后從集合中擦除,然后打上新的時(shí)間戳重新插入到集合中;放置組的增加或者減少,分別調(diào)用放置組注冊(cè)和注銷方法實(shí)現(xiàn)動(dòng)態(tài)的插入或者擦除。
      [0016]放置組注冊(cè):0SD初始化或者新增放置組時(shí),需要將放置組按照時(shí)間戳插入到集合中;放置組注銷:已經(jīng)處理完成的放置組從集合中擦除;放置組迭代:按照時(shí)間戳的順序依次處理集合中的放置組,處理完成的放置組需要從集合中擦除,然后打上新的時(shí)間戳之后,重新插入到集合中。
      [0017](I)、結(jié)構(gòu)體和集合的代碼如下: struct Flusher{;
      utime—t flush—reg—stamp; // 注冊(cè)時(shí)間戳;
      }flusher ;
      set< pair〈時(shí)間,放置組〉> last—flush—pg ;
      (2)、放置組注冊(cè)方法,偽代碼實(shí)現(xiàn)如下:
      void reg—last—pg—flush (spg—t pgid, utime_t t) {;last_f lush—pg.1nsert (pair〈utime_t,spg—t> (t,pgid));
      };
      (3)、放置組注銷方法,偽代碼實(shí)現(xiàn)如下:
      void unreg—last—pg—flush (spg—t pgid, utime_t t) {;pair〈utime_t,spg—1> p(t,pgid);
      set〈pair〈utime_t,spg—1> >::1terator it = last_flush—pg.find(p);last_f lush—pg.erase (it);
      }o
      [0018]通過上面【具體實(shí)施方式】,所述技術(shù)領(lǐng)域的技術(shù)人員可容易的實(shí)現(xiàn)本發(fā)明。但是應(yīng)當(dāng)理解,本發(fā)明并不限于上述的【具體實(shí)施方式】。在公開的實(shí)施方式的基礎(chǔ)上,所述技術(shù)領(lǐng)域的技術(shù)人員可任意組合不同的技術(shù)特征,從而實(shí)現(xiàn)不同的技術(shù)方案。
      【主權(quán)項(xiàng)】
      1.一種對(duì)象存儲(chǔ)設(shè)備上的放置組的統(tǒng)一管理方法,其特征在于使用帶有時(shí)間戳的放置組集合的方法實(shí)現(xiàn)對(duì)對(duì)象存儲(chǔ)設(shè)備上的放置組進(jìn)行正確有效地管理;在OSD啟動(dòng)時(shí),將歸屬于該OSD上的放置組依次打上時(shí)間戳插入到集合中;需要將OSD上存儲(chǔ)的對(duì)象進(jìn)行處理時(shí),按照時(shí)間順序依次遍歷集合中的放置組;取出一個(gè)放置組,處理完成后從集合中擦除,然后打上新的時(shí)間戳重新插入到集合中;放置組的增加或者減少,分別調(diào)用放置組注冊(cè)和注銷方法實(shí)現(xiàn)動(dòng)態(tài)的插入或者擦除。
      2.根據(jù)權(quán)利要求1所述的一種對(duì)象存儲(chǔ)設(shè)備上的放置組的統(tǒng)一管理方法,其特征在于放置組注冊(cè):0SD初始化或者新增放置組時(shí),需要將放置組按照時(shí)間戳插入到集合中;放置組注銷:已經(jīng)處理完成的放置組從集合中擦除;放置組迭代:按照時(shí)間戳的順序依次處理集合中的放置組,處理完成的放置組需要從集合中擦除,然后打上新的時(shí)間戳之后,重新插入到集合中。
      3.根據(jù)權(quán)利要求1所述的一種對(duì)象存儲(chǔ)設(shè)備上的放置組的統(tǒng)一管理方法,其特征在于(I)、結(jié)構(gòu)體和集合的代碼如下:struct Flusher{; utime_t flush_reg_stamp; // 注冊(cè)時(shí)間戳;}flusher ; set< pair〈時(shí)間,放置組〉> last_flush_pg ; (2)、放置組注冊(cè)方法,偽代碼實(shí)現(xiàn)如下:void reg_last_pg_flush(spg_t pgid, utime_t t) {;last_flush_pg.1nsert(pair<utime_t, spg_t>(t, pgid));}; (3)、放置組注銷方法,偽代碼實(shí)現(xiàn)如下:void unreg_last_pg_flush(spg_t pgid, utime_t t) {;pair<utime_t, spg_t> p(t, pgid);set〈pair〈utime_t, spg_t> >::1terator it = last_flush_pg.find(p);last_flush_pg.erase(it); }o
      【專利摘要】本發(fā)明公開了一種對(duì)象存儲(chǔ)設(shè)備上的放置組的統(tǒng)一管理方法,屬于對(duì)象存儲(chǔ)設(shè)備技術(shù)領(lǐng)域,技術(shù)方案為:使用帶有時(shí)間戳的放置組集合的方法實(shí)現(xiàn)對(duì)對(duì)象存儲(chǔ)設(shè)備上的放置組進(jìn)行正確有效地管理;在OSD啟動(dòng)時(shí),將歸屬于該OSD上的放置組依次打上時(shí)間戳插入到集合中;需要將OSD上存儲(chǔ)的對(duì)象進(jìn)行處理時(shí),按照時(shí)間順序依次遍歷集合中的放置組;取出一個(gè)放置組,處理完成后從集合中擦除,然后打上新的時(shí)間戳重新插入到集合中;放置組的增加或者減少,分別調(diào)用放置組注冊(cè)和注銷方法實(shí)現(xiàn)動(dòng)態(tài)的插入或者擦除。本發(fā)明使用帶有時(shí)間戳的放置組集合,來實(shí)現(xiàn)對(duì)象存儲(chǔ)設(shè)備上的放置組的正確有效地管理。
      【IPC分類】G06F3-06, G06F9-44
      【公開號(hào)】CN104657089
      【申請(qǐng)?zhí)枴緾N201510109078
      【發(fā)明人】于濤, 魏盟
      【申請(qǐng)人】浪潮集團(tuán)有限公司
      【公開日】2015年5月27日
      【申請(qǐng)日】2015年3月13日
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1