亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種數(shù)據(jù)處理方法及裝置的制造方法_4

文檔序號:9687520閱讀:來源:國知局
,用于將所述第一數(shù)據(jù)重新寫入所述存儲系統(tǒng)的內(nèi)存空間。
[0166]具體的,所述熱數(shù)據(jù)確定單元603具體用于:
[0167]在哈希鏈表查找所述第一 key值,所述哈希鏈表用于根據(jù)接收的目標數(shù)據(jù)記錄并維護所述第一 key值的熱度值,所述目標數(shù)據(jù)包括key值為所述第一 key值的數(shù)據(jù);
[0168]若在所述哈希鏈表中所述第一 key值對應的序列號與所述第一數(shù)據(jù)的序列號相等,則確定所述第一數(shù)據(jù)最近接收的熱數(shù)據(jù),其中,所述哈希鏈表中所述第一 key值對應的序列號為最近接收的具有第一 key值的數(shù)據(jù)的序列號。
[0169]進一步的,所述裝置還包括:
[0170]熱數(shù)據(jù)篩選單元607,用于通過為所述存儲系統(tǒng)建立的數(shù)據(jù)過濾器確定所述目標數(shù)據(jù)為熱數(shù)據(jù),其中,所述目標數(shù)據(jù)的訪問熱度達到預設(shè)的熱度閾值;將所述第一 key值記錄在所述哈希鏈表中,所述哈希鏈表中包括第一 key值、序列號以及熱度值,所述熱度值用于記錄所述第一 key值的訪問熱度;
[0171]維護單元608,用于根據(jù)所述目標數(shù)據(jù)的訪問記錄維護所述哈希鏈表中所述第一key值的熱度值以及序列號。
[0172]具體的額,所述維護單元608具體用于:
[0173]若所述存儲系統(tǒng)中產(chǎn)生一次所述目標數(shù)據(jù)的訪問記錄,則將所述哈希鏈表中第一key值的熱度值加一;所述訪問記錄包括:讀取記錄或?qū)懭胗涗洠?br>[0174]若所述存儲系統(tǒng)中產(chǎn)生一次所述目標數(shù)據(jù)的寫入記錄,則更新所述哈希鏈表中第一 key值的序列號。
[0175]每隔單位時間,將所述目標數(shù)據(jù)的熱度值減一;
[0176]當所述目標數(shù)據(jù)的熱度值小于預設(shè)閾值時,在所述哈希鏈表中刪除與所述第一key值相關(guān)的信息。
[0177]具體的,所述重分布單元606具體用于:
[0178]當所述第一目標層的層級低于level N時,將所述第一數(shù)據(jù)重新寫入所述存儲系統(tǒng)的內(nèi)存空間,所述N為不小于4的整數(shù)。
[0179]下面對上述各個單元的具體操作過程進行描述:
[0180]首先,鍵值確定單元601在LSM Tree的第一目標層對應的存儲空間中確定待合并的第一數(shù)據(jù),具體的,所述第一目標層為LSM Tree中當前正在進行數(shù)據(jù)合并的目標層,所述第一數(shù)據(jù)為所述第一目標層中待合并數(shù)據(jù)。
[0181]再由查找單元602在與所述LSM Tree的第二目標層對應的存儲空間中確定key值為所述第一 key值的第二數(shù)據(jù),其中在所述LSM Tree結(jié)構(gòu)中,所述第二目標層的層級低于所述第一目標層的層級,所述第一目標層對應的存儲空間的訪問速度不低于所述第二目標層對應的存儲空間的訪問速度。
[0182]所述第二數(shù)據(jù)為所述第二目標層中的數(shù)據(jù);需要說明的是,所述“第一”和“第二”僅是用于區(qū)分兩個不同層次的存儲空間,或兩個具有不同value的數(shù)據(jù),不代表具體實現(xiàn)中的名稱或物理層次。
[0183]其中,目標數(shù)據(jù)篩選和維護的過程包括:
[0184]熱數(shù)據(jù)篩選單元607篩選出熱度達到熱度閾值的數(shù)據(jù)。具體的,所述熱度值為根據(jù)所述數(shù)據(jù)的訪問次數(shù)而統(tǒng)計得到的數(shù)值;所述熱度閾值可以為技術(shù)人員根據(jù)經(jīng)驗和實際需求確定的一個數(shù)值。所述數(shù)據(jù)的訪問次數(shù)可以為數(shù)據(jù)的寫入次數(shù),也可以為數(shù)據(jù)的讀取次數(shù);進一步的,所述數(shù)據(jù)的訪問次數(shù)還可以同時包括數(shù)據(jù)的寫入次數(shù)和讀取次數(shù)。
[0185]維護單元608在哈希鏈表中記錄所述數(shù)據(jù)過濾器篩選出的數(shù)據(jù),進一步的,根據(jù)所述目標數(shù)據(jù)的訪問記錄維護所述哈希鏈表中第一 key值的熱度值以及序列號。
[0186]在本發(fā)明實施例中,第一數(shù)據(jù)的key值為第一 key值,包括key值為所述第一 key值的數(shù)據(jù)為目標數(shù)據(jù);數(shù)據(jù)處理裝置通過為所述存儲系統(tǒng)建立的數(shù)據(jù)過濾器確定所述目標數(shù)據(jù)為熱數(shù)據(jù),其中,所述目標數(shù)據(jù)的訪問熱度達到預設(shè)的熱度閾值;將所述第一 key值記錄在所述哈希鏈表中,所述哈希鏈表中包括第一 key值、序列號以及熱度值,所述熱度值用于記錄所述第一 key值的訪問熱度;
[0187]在所述數(shù)據(jù)過濾器篩選出所述目標數(shù)據(jù)時,所述哈希鏈表則接收所述數(shù)據(jù)過濾器選出的所述目標數(shù)據(jù)的記錄,并維護所述第一 key值的熱度值。
[0188]示例性的,所述哈希鏈表可以為動態(tài)擴展的哈希鏈表(Internal Key List),用以繼續(xù)統(tǒng)計由所述數(shù)據(jù)過濾器篩選出的熱數(shù)據(jù)的熱度值。
[0189]如圖5所示,數(shù)據(jù)過濾器對數(shù)據(jù)的訪問操作進行統(tǒng)計,當key值相同的數(shù)據(jù)的熱度值達到所述數(shù)據(jù)過濾器中設(shè)置的熱度閾值時,就會在所述哈希鏈表中建立一組元素,其中,每組元素中記錄有一個key值,該key值對應的序列號,以及該key值對應的熱度值計數(shù)器。所述哈希鏈表中可以包括有多組元素。所述序列號用于表示一個key值對應的數(shù)據(jù)在所述存儲系統(tǒng)的寫入順序,所述熱度值計數(shù)器用于統(tǒng)計所述key值對應的數(shù)據(jù)的熱度值。
[0190]可以理解的是,本發(fā)明實施例的僅對第一 key值以及目標數(shù)據(jù)在數(shù)據(jù)過濾器和哈希鏈表中的處理進行描述,在實際應用中數(shù)據(jù)過濾器和哈希鏈表還可以同時對其它key值及其相應的數(shù)據(jù)進行處理,此處不再贅述。
[0191]若所述存儲系統(tǒng)中產(chǎn)生一次所述目標數(shù)據(jù)的訪問記錄,則將所述哈希鏈表中第一key值的熱度值加一;
[0192]若所述存儲系統(tǒng)中產(chǎn)生一次所述目標數(shù)據(jù)的寫入記錄,則更新所述哈希鏈表中第一 key值的序列號。
[0193]進一步的,每隔單位時間,將所述目標數(shù)據(jù)的熱度值減一;
[0194]當所述目標數(shù)據(jù)的熱度值小于預設(shè)閾值時,在所述哈希鏈表中刪除與所述第一key值相關(guān)的信息。可選的,停止維護所述熱數(shù)據(jù)的熱度值計數(shù)器的預設(shè)閾值可以設(shè)置為
v=j=,
ο
[0195]可選的,在對哈希鏈表所述目標數(shù)據(jù)進行維護的過程中,若在所述存儲系統(tǒng)中再產(chǎn)生一次所述目標數(shù)據(jù)的訪問記錄,則在一段預置時長內(nèi),可以對所述目標數(shù)據(jù)不執(zhí)行所述將所述熱度值計數(shù)器減一的步驟。具體的,對目標數(shù)據(jù)的維護方法可以根據(jù)實際需求而定,此處不作限定。
[0196]示例性的,在確定某數(shù)據(jù)為熱數(shù)據(jù)(即數(shù)據(jù)過濾器篩選出的熱度達到熱度閾值的數(shù)據(jù))之后,所述目標數(shù)據(jù)每被被訪問到一次,則在熱度維護的過程中就會相應的增加一次該熱數(shù)據(jù)的熱度值;進一步的,由于熱度會隨時間的流逝而冷卻,因此,在時間的維度上,該目標數(shù)據(jù)的熱度值也會根據(jù)單位時間遞減;若目標數(shù)據(jù)的熱度值被減為零,則表示所述目標數(shù)據(jù)長時間沒有被訪問(即已經(jīng)不是熱數(shù)據(jù)了),數(shù)據(jù)處理裝置可以停止對所述目標數(shù)據(jù)的維護(即在熱度維護記錄中刪除所述熱數(shù)據(jù))。具體的,所述熱度維護的方法可以通過特定函數(shù)的實現(xiàn)。
[0197]具體的,本發(fā)明實施例中所指的目標數(shù)據(jù)為熱度達到某一個熱度閾值的數(shù)據(jù);在實際應用中,可以設(shè)置兩個熱度閾值,第一熱度閾值用于數(shù)據(jù)過濾器篩選熱數(shù)據(jù),第二熱度閾值用于在目標數(shù)據(jù)進行維護時判斷是否仍為熱數(shù)據(jù)。示例性的,若第一熱度閾值為3,則在對所述目標數(shù)據(jù)進行熱度維護時,所述目標數(shù)據(jù)的初始值為3,第二熱度閾值若設(shè)為1,則當所述熱數(shù)據(jù)的熱度值小于1時,則當前的目標數(shù)據(jù)不再為熱數(shù)據(jù)。
[0198]可以理解的是,對熱數(shù)據(jù)的判定,以及熱度閾值數(shù)量的設(shè)定,可以根據(jù)實際應用中對熱數(shù)據(jù)的定義而確定,以上例子不應理解為對本發(fā)明實施例中熱數(shù)據(jù)以及熱度閾值的限定。
[0199]熱數(shù)據(jù)確定單元603確定所述第一數(shù)據(jù)為最近接收的熱數(shù)據(jù),具體的為:
[0200]在哈希鏈表查找所述第一 key值,所述哈希鏈表用于根據(jù)接收的目標數(shù)據(jù)記錄并維護所述第一 key值的熱度值,所述目標數(shù)據(jù)包括key值為所述第一 key值的數(shù)據(jù)。
[0201]在所述哈希鏈表中所述第一 key值對應的序列號與所述第一數(shù)據(jù)的序列號是否相等,若是,則確定所述第一數(shù)據(jù)最近接收的熱數(shù)據(jù);若否,則確定所述第一數(shù)據(jù)不是最近接收的熱數(shù)據(jù)。其中,所述哈希鏈表中所述第一 key值對應的序列號為最近接收的具有第一 key值的數(shù)據(jù)的序列號。
[0202]在執(zhí)行數(shù)據(jù)合并時,
[0203]刪除單元604從所述第二目標層對應的存儲空間中刪除所述第二數(shù)據(jù),節(jié)省存儲系統(tǒng)中的存儲空間。
[0204]遷移單元605將所述第一數(shù)據(jù)從所述第一目標層對應的存儲空間遷移到所述第二目標層對應的存儲空間中,為新寫入所述存儲系統(tǒng)中的數(shù)據(jù)騰出上層的存儲空間。
[0205]重分布單元606將所述第一數(shù)據(jù)重新寫入所述存儲系統(tǒng)的內(nèi)存空間。
[0206]當確認所述第一數(shù)據(jù)確定為熱數(shù)據(jù)之后,說明所述第一數(shù)據(jù)會被經(jīng)常使用到,若被LSM Tree的數(shù)據(jù)合并機制寫入到較低層次的存儲空間中,讀取速度將受到很大影響,因此,在本發(fā)明實施例中,將所述第一數(shù)據(jù)重新寫入所述存儲系統(tǒng)的內(nèi)存空間,以便于熱數(shù)據(jù)能被快速讀取到。
[0207]可選的,在實際應用中,在由于數(shù)據(jù)在較高層次的讀取速度并不慢,因此,可以當所述第一目標層的層級低于level N時,才執(zhí)行將所述第一數(shù)據(jù)重新寫入所述存儲系統(tǒng)的內(nèi)存空間的步驟,所述N為不小于4的整數(shù)。當所述第一目標層的層級高于level N時,則不執(zhí)行將所述第一數(shù)據(jù)重新寫入所述存儲系統(tǒng)的內(nèi)存空間的步驟。具體的,所述N可以由技術(shù)人員根據(jù)實際需求設(shè)定。
[0208]下面對實現(xiàn)本發(fā)明實施例中數(shù)據(jù)處理方法的計算機裝置進行描述:
[0209]處理器730控制業(yè)務調(diào)度的裝置70的操作,處理器730還可以稱為CPU (CentralProcessing Unit,中央處理單元)。存儲器740可以包括只讀存儲器和隨機存取存儲器,并向處理器730提供指令和數(shù)據(jù)。存儲器740的一部分還可以包括非易失性隨機存取存儲器(NVRAM)。具體的應用中,業(yè)務調(diào)度的裝置70的各個組件通過總線系統(tǒng)750耦合在一起,其中總線系統(tǒng)750除包括數(shù)據(jù)總線之外,還可以包括電源總線、控制總線和狀態(tài)信號總線等。但是為了清楚說明起見,在圖中將各種總線都標為總線系統(tǒng)750。
[0210]上述本發(fā)明實施例揭示的方法可以應用于處理器730中,或者由處理器730實現(xiàn)。處理器730可能是一種集成電路芯片,具有信號的處理能力。在實現(xiàn)過程中,上述方法的各步驟可以通過處理器730中的硬件的集成邏輯電路或者軟件形式的指令完成。上述的處理器730可以是通用處理器、數(shù)字信號處理器(DSP)、專用集成電路(ASIC)、現(xiàn)成可編程門陣列(FPGA)或者其他可編程邏輯器件、分立門或者晶體管邏輯器件、分立硬件組件??梢詫崿F(xiàn)或者執(zhí)行本發(fā)明實施例中的公開的各方法、步驟及邏輯框圖。通用處理器可以是微處理器或者該處理器也可以是任何常規(guī)的處理器等。結(jié)合本發(fā)明實施例所公開的方法的步驟可以直接體現(xiàn)為硬件譯碼處理器執(zhí)行完成,或者用譯碼處理器中的硬件及軟件模塊組合執(zhí)行完成。軟件模塊可以位于隨機存儲器,閃存、只讀存儲器,可編程只讀存儲器或者電可擦寫可編程存儲器、寄存器等本領(lǐng)域成熟的存儲介質(zhì)中。該存儲介質(zhì)位于存儲器740,處理器730讀取存儲器740中的信息,結(jié)合其硬件完成上述方法的步驟。
[0211]具體的,所述處理器730用于在與所述LSM Tree的第一目標層對應的存儲空間中確定待合并的第一數(shù)據(jù),所述第一數(shù)據(jù)的鍵key值為第一 key值;在與所述LSM Tree的第二目標層對應
當前第4頁1 2 3 4 5 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1