国产精品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>

      分布式數(shù)據(jù)存儲(chǔ)系統(tǒng)、方法和裝置的制造方法_3

      文檔序號:9754825閱讀:來源:國知局
      以使用鍵的CRC16編碼對16384取模來計(jì)算一個(gè)指定鍵值信息所屬的哈希槽。
      [0054]步驟203,根據(jù)鍵值信息,將待存儲(chǔ)數(shù)據(jù)存儲(chǔ)到第一數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)。
      [0055]在本實(shí)施例中,上述電子設(shè)備基于步驟202獲取的上述鍵值信息對應(yīng)的哈希槽和該哈希槽所在的第一數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn),之后將上述待存儲(chǔ)數(shù)據(jù)存儲(chǔ)到其鍵值信息所對應(yīng)的哈希槽所在的第一數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)。
      [0056]本申請的上述實(shí)施例所提供的分布式數(shù)據(jù)存儲(chǔ)方法,通過計(jì)算待存儲(chǔ)數(shù)據(jù)的鍵值信息所屬的哈希槽,而后從中心管理節(jié)點(diǎn)的記錄信息獲取該哈希槽所在的第一數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn),最后完成數(shù)據(jù)存儲(chǔ),該方法使得數(shù)據(jù)存儲(chǔ)更為簡便、準(zhǔn)確。
      [0057]進(jìn)一步參考圖3,其示出了根據(jù)本申請的分布式數(shù)據(jù)存儲(chǔ)方法的又一個(gè)實(shí)施例的流程300。該分布式數(shù)據(jù)存儲(chǔ)方法的流程300,包括以下步驟:
      [0058]步驟301,接收客戶端發(fā)送的待存儲(chǔ)數(shù)據(jù)。
      [0059]在本實(shí)施例中,分布式數(shù)據(jù)存儲(chǔ)方法運(yùn)行于其上的電子設(shè)備(例如圖1所示的代理節(jié)點(diǎn))可以接收客戶端發(fā)送的待存儲(chǔ)數(shù)據(jù),其中,待存儲(chǔ)數(shù)據(jù)包括鍵值信息和數(shù)據(jù)信息。在實(shí)施例中,上述待存儲(chǔ)數(shù)據(jù)可以為key-value數(shù)據(jù),而其所包括鍵值信息和數(shù)據(jù)信息可以分別對應(yīng)其中的key和value。
      [0060]步驟302,判斷各數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)的負(fù)載量是否在預(yù)設(shè)的閾值范圍內(nèi)。
      [0061]在本實(shí)施例中,上述電子設(shè)備可以預(yù)先給數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)設(shè)置一個(gè)閾值范圍。上述電子設(shè)備從中心管理節(jié)點(diǎn)獲取各數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)的負(fù)載量,之后將各數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)的負(fù)載量與上述閾值范圍相比較,若存在負(fù)載量不在上述閾值范圍內(nèi)的數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn),則轉(zhuǎn)到步驟303,若各數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)的負(fù)載量均在上述閾值范圍內(nèi),則轉(zhuǎn)到步驟304。
      [0062]步驟303,增加/移除數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn),重新分配各數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)的哈希槽,并更新記錄信息O
      [0063]在本實(shí)施例中,基于步驟302判斷的存在負(fù)載量不在上述閾值范圍內(nèi)的數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn),表明上述集群中數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)不足或多余,則需要增加或移除至少一個(gè)數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)。進(jìn)一步的,當(dāng)數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)的數(shù)目發(fā)生改變時(shí),由數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)構(gòu)成的集群的網(wǎng)絡(luò)拓?fù)潢P(guān)系、哈希槽在各數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)的分布以及各數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)的負(fù)載量均會(huì)發(fā)生改變,這時(shí)中心管理節(jié)點(diǎn)可以根據(jù)上述改變更新其存儲(chǔ)的記錄信息。
      [0064]在本實(shí)施例中,本步驟可以通過如下步驟確定是移除數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn),還是增加數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn):
      [0065]首先,如果確定存在負(fù)載量大于閾值范圍的最大值的數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn),表明上述集群中數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)不足,則可以增加數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)。進(jìn)一步的,還可以根據(jù)當(dāng)前數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)的負(fù)載量和上述閾值范圍的最大值與最小值等,確定最后需要增加的數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)的數(shù)量。并且,當(dāng)增加了數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)以后,上述電子設(shè)備將原數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)的部分哈希槽迀移到新增加的數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)中,以使哈希槽在各數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)中平均分配,之后將中心管理節(jié)點(diǎn)的記錄信息更新為增加數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)后的記錄信息。需要說明的是,這里的平均不是絕對的平均,而是在一定程度上地平均,例如,如果上述集群是由1000個(gè)數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)構(gòu)成,那么各數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)中的哈希槽可以為16或17個(gè)。
      [0066]其次,如果確定存在負(fù)載量小于閾值范圍最小值的數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn),表明上述集群中數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)過多,則可以移除部分?jǐn)?shù)據(jù)存儲(chǔ)節(jié)點(diǎn)。進(jìn)一步的,還可以根據(jù)當(dāng)前數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)的負(fù)載量和上述閾值范圍的最大值與最小值等,確定最后需要移除的數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)的數(shù)量。并且,當(dāng)移除了數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)以后,上述電子設(shè)備將移除的數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)的全部哈希槽迀移到上述集群中剩余的數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)中,并且確定哈希槽在各數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)中平均分配,之后將中心管理節(jié)點(diǎn)的記錄信息更新為移除數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)后的記錄信息。需要說明的是,這里的平均不是絕對的平均,而是在一定程度上地平均。
      [0067]步驟304,保持?jǐn)?shù)據(jù)存儲(chǔ)節(jié)點(diǎn)數(shù)目不變。
      [0068]在本實(shí)施例中,基于步驟302判斷的各數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)的負(fù)載量均在上述閾值范圍內(nèi),則上述電子設(shè)備可以保持?jǐn)?shù)據(jù)存儲(chǔ)節(jié)點(diǎn)數(shù)目不變,中心管理節(jié)點(diǎn)存儲(chǔ)的記錄信息也不變。
      [0069]步驟305,根據(jù)中心管理節(jié)點(diǎn)存儲(chǔ)的記錄信息,確定與鍵值信息對應(yīng)的哈希槽和該哈希槽所在的第一數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)。
      [0070]在本實(shí)施例中,上述電子設(shè)備根據(jù)中心管理節(jié)點(diǎn)所存儲(chǔ)的哈希槽在各數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)的分布情況等記錄信息可以確定與上述待存儲(chǔ)數(shù)據(jù)的鍵值信息所對應(yīng)的哈希槽,以及該哈希槽所在的第一數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn),以便于將上述待存儲(chǔ)數(shù)據(jù)存儲(chǔ)到上述第一數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)。[0071 ]步驟306,根據(jù)鍵值信息,將待存儲(chǔ)數(shù)據(jù)存儲(chǔ)到第一數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)。
      [0072]在本實(shí)施例中,上述電子設(shè)備可以根據(jù)待存儲(chǔ)數(shù)據(jù)的鍵值信息將其存儲(chǔ)到步驟305所確定的第一數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)。
      [0073]從圖3中可以看出,與圖2對應(yīng)的實(shí)施例相比,本實(shí)施例中的分布式數(shù)據(jù)存儲(chǔ)方法的流程300突出了增加/移除數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)并更新記錄信息的步驟。由此,本實(shí)施例描述的方案在增加/移除數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)時(shí),可以通過轉(zhuǎn)移哈希槽來確保數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)中存儲(chǔ)的數(shù)據(jù)不被丟失。
      [0074]進(jìn)一步參考圖4,作為對上述各圖所示方法的實(shí)現(xiàn),本申請?zhí)峁┝艘环N分布式數(shù)據(jù)存儲(chǔ)裝置的一個(gè)實(shí)施例,該裝置實(shí)施例與圖2所示的方法實(shí)施例相對應(yīng),該裝置具體可以應(yīng)用于各種電子設(shè)備中。
      [0075]如圖4所示,本實(shí)施例所述的分布式數(shù)據(jù)存儲(chǔ)裝置400包括:接收模塊401、確定模塊402和存儲(chǔ)模塊403。其中,接收模塊401配置用于接收客戶端發(fā)送的待存儲(chǔ)數(shù)據(jù),其中,上述待存儲(chǔ)數(shù)據(jù)包括鍵值信息和數(shù)據(jù)信息;確定模塊402配置用于根據(jù)中心管理節(jié)點(diǎn)存儲(chǔ)的記錄信息,確定與上述鍵值信息對應(yīng)的哈希槽和該哈希槽所在的第一數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn),其中,上述記錄信息包括各數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)所構(gòu)成的集群的網(wǎng)絡(luò)拓?fù)潢P(guān)系、哈希槽在各數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)的分布情況以及各數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)的負(fù)載量,各數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)包括多個(gè)用于映射鍵值信息的哈希槽;存儲(chǔ)模塊403配置用于根據(jù)上述鍵值信息,將上述待存儲(chǔ)數(shù)據(jù)存儲(chǔ)到上述第一數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)。
      [0076]在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,上述分布式數(shù)據(jù)存儲(chǔ)裝置400還包括:判斷模塊(圖中未示出),配置用于根據(jù)上述記錄信息中的各數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)的負(fù)載量,判斷各數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)的負(fù)載量是否在預(yù)設(shè)的閾值范圍內(nèi);若是,則保持?jǐn)?shù)據(jù)存儲(chǔ)節(jié)點(diǎn)數(shù)目不變;若否,則增加/移除數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn),重新分配各數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)的哈希槽,并更新上述記錄信息。
      [0077]在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,上述判斷模塊(圖中未示出)進(jìn)一步配置用于:當(dāng)存在負(fù)載量大于上述閾值范圍的最大值的數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)時(shí),則增加至少一個(gè)數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn);當(dāng)存在負(fù)載量小于上述閾值范圍的最小值的數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)時(shí),則移除至少一個(gè)數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)。
      [0078]在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,上述判斷模塊(圖中未示出)具體配置用于:當(dāng)增加至少一個(gè)數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)時(shí),則將原數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)中的部分哈希槽轉(zhuǎn)移到新增加的數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)中,使得哈希槽在各數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)中平均分配,并更新上述記錄信息;當(dāng)移除至少一個(gè)數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)時(shí),則將移除的數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)中的哈希槽轉(zhuǎn)移到剩余的數(shù)據(jù)節(jié)點(diǎn)中,使得哈希槽在各數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)中平均分配,并更新上述記錄信息。
      [0079]在本實(shí)施例的一些可選的實(shí)現(xiàn)方式中,當(dāng)上述分布式數(shù)據(jù)存儲(chǔ)裝置400用于云計(jì)算環(huán)境時(shí),該裝置還包括:獲取模塊(圖中未示出),配置用于從資源管理節(jié)點(diǎn)獲取云計(jì)算資源。
      [0080]本領(lǐng)域技術(shù)人員可以理解,上述分布式數(shù)據(jù)存儲(chǔ)裝置400還包括一些其他公知結(jié)構(gòu),例如處理器、存儲(chǔ)器等,為了不必要地模糊本公開的實(shí)施例,這些公知的結(jié)構(gòu)在圖4中未示出。
      [0081]下面參考圖5,其示出了適于用來實(shí)現(xiàn)本申請實(shí)施例的終端設(shè)備或服務(wù)器的計(jì)算機(jī)系統(tǒng)500的結(jié)構(gòu)示意圖。
      [0082]如圖5所示,計(jì)算機(jī)系統(tǒng)500包括中央處理單元(CPU)501,其可以根據(jù)存儲(chǔ)在只讀存儲(chǔ)器(R0M)502中的程序或者從存儲(chǔ)部分508加載到隨機(jī)訪問存儲(chǔ)器(RAM)503中的程序而執(zhí)行各種適當(dāng)?shù)膭?dòng)作和處理。在RAM 503中,還存儲(chǔ)有系統(tǒng)500操作所需的各種程序和數(shù)據(jù)。CPU 50KROM 502以及RAM 503通過總線504彼此相連。輸入/輸出(I/O)接口505也連接至總線 504。
      [0083]以下部件連接至I/O接口505:包括鍵盤、鼠標(biāo)等的輸入部分506 ;包括諸如陰極射線管(CRT)、液晶顯示器(LCD)等的輸出部分507;包括硬盤等的存儲(chǔ)部分508;以及包括諸如LAN卡、調(diào)制解調(diào)器等的網(wǎng)絡(luò)接口卡的通信部分509。通信部分509經(jīng)由諸如因特網(wǎng)的網(wǎng)絡(luò)執(zhí)行通信處理。驅(qū)動(dòng)器510也根據(jù)需要連接至I/O接口 505??刹鹦督橘|(zhì)511,諸如磁盤、光盤、磁光盤、半導(dǎo)體存儲(chǔ)器等等,根據(jù)需要安裝在驅(qū)動(dòng)器510上,以便于從其上讀出的計(jì)算機(jī)程序根據(jù)需要被安裝入存儲(chǔ)部分508。
      [0084]特別地,根據(jù)本公開的實(shí)施例,上文參考流程圖描述的過程可以被實(shí)現(xiàn)為計(jì)算機(jī)軟件程序。例如,本公開的實(shí)施例包括一種計(jì)算機(jī)程序產(chǎn)品,其包括有形地包含在機(jī)器可讀介質(zhì)上的計(jì)算機(jī)程序,所述計(jì)算機(jī)程序包含用于執(zhí)行流程圖所示的方法的程序代碼。在這樣的實(shí)施例中,該計(jì)算機(jī)程序可以通過通信部分509從網(wǎng)絡(luò)上被下載和安裝,和/或從可拆卸介質(zhì)511被安裝。
      當(dāng)前第3頁1 2 3 4 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
      1