本申請涉及網(wǎng)絡(luò)系統(tǒng)技術(shù)領(lǐng)域,特別地,涉及一種數(shù)據(jù)緩存方法和裝置。
背景技術(shù):
隨著互聯(lián)網(wǎng)的快速發(fā)展,智能電視的普及,網(wǎng)絡(luò)數(shù)據(jù)流量成倍增長,會出現(xiàn)網(wǎng)絡(luò)擁塞并出現(xiàn)影響業(yè)務(wù)應(yīng)用體驗的情況。
以內(nèi)容分發(fā)網(wǎng)絡(luò)(cdn,contentdeliverynetwork)為例,cdn作為一種能夠提高互聯(lián)網(wǎng)內(nèi)容傳輸效率的系統(tǒng),特別針對視頻等多媒體內(nèi)容傳輸?shù)姆?wù)質(zhì)量效率能得到很大提升,得到越來越廣泛的應(yīng)用。cdn是基于網(wǎng)絡(luò)和部署在各地的邊緣服務(wù)器,利用中心平臺的負(fù)載均衡、內(nèi)容分發(fā)、調(diào)度等功能模塊,使用戶就近獲取所需內(nèi)容,從而降低網(wǎng)絡(luò)擁塞,提高用戶訪問的響應(yīng)速度和命中率。
在現(xiàn)有cdn系統(tǒng)中,為了降低各邊緣服務(wù)器的回源下載造成的中心平臺的存儲壓力和帶寬問題,在各地的邊緣服務(wù)器中都設(shè)置有緩存空間。但cdn系統(tǒng)面對的往往都是數(shù)據(jù)量龐大的視頻數(shù)據(jù),因此為節(jié)約成本,邊緣服務(wù)器一般配置成本相對較低的機械硬盤(如ide、scsi、pata、sata硬盤等)作為緩存空間,機械硬盤由于需要通過轉(zhuǎn)動盤片實現(xiàn)定位讀取數(shù)據(jù),因此其數(shù)據(jù)讀取速度相對較慢,在一定程度上會影響介質(zhì)數(shù)據(jù)的下載速度,用戶使用體驗不好。
技術(shù)實現(xiàn)要素:
本申請?zhí)峁┮环N數(shù)據(jù)緩存方法和裝置,能夠利用較小的成本解決現(xiàn)有緩存空間反饋速度較低而影響客戶使用體驗的問題。
本申請公開的一種數(shù)據(jù)緩存方法,用于緩存數(shù)據(jù)的介質(zhì)緩存節(jié)點設(shè)置有固態(tài)硬盤和機械硬盤,緩存在介質(zhì)緩存節(jié)點中的介質(zhì)數(shù)據(jù)設(shè)置有熱度值,所述方法包括:將熱度值高的介質(zhì)數(shù)據(jù)優(yōu)先緩存在固態(tài)硬盤中,剩余的介質(zhì)數(shù)據(jù)緩存在機械硬盤中;或,將熱度值大于或等于預(yù)設(shè)熱度閾值的介質(zhì)數(shù)據(jù)緩存在固態(tài)硬盤,熱度值小于預(yù)設(shè)熱度閾值的介質(zhì)數(shù)據(jù)緩存在機械硬盤中;按預(yù)設(shè)的時間周期統(tǒng)計所述介質(zhì)緩存節(jié)點中所有介質(zhì)數(shù)據(jù)的訪問次數(shù),并根據(jù)所述訪問次數(shù)更新所述介質(zhì)數(shù)據(jù)的熱度值;根據(jù)更新后的熱度值調(diào)整固態(tài)硬盤和機械硬盤中緩存的介質(zhì)數(shù)據(jù)。
優(yōu)選的,還包括:將每次客戶端的訪問都需要傳輸?shù)牧斜砦募退饕募彺嬖诮橘|(zhì)緩存節(jié)點的內(nèi)存中。
優(yōu)選的,根據(jù)更新后的熱度值調(diào)整固態(tài)硬盤和機械硬盤中緩存的介質(zhì)數(shù)據(jù),具體包括:重復(fù)判斷固態(tài)硬盤中熱度值最低的介質(zhì)數(shù)據(jù)的熱度值是否小于機械硬盤中熱度值最高的介質(zhì)數(shù)據(jù)的熱度值,若是,將固態(tài)硬盤中熱度值最低的介質(zhì)數(shù)據(jù)遷移到機械硬盤中,將機械硬盤中熱度值最高的介質(zhì)數(shù)據(jù)遷移到固態(tài)硬盤中;否則,結(jié)束數(shù)據(jù)遷移過程。
優(yōu)選的,根據(jù)更新后的熱度值調(diào)整固態(tài)硬盤和機械硬盤中緩存的介質(zhì)數(shù)據(jù),具體包括:將固態(tài)硬盤中熱度值小于預(yù)設(shè)熱度閾值的介質(zhì)數(shù)據(jù)遷移到機械硬盤中,以及將機械硬盤中熱度值大于或等于熱度閾值的介質(zhì)數(shù)據(jù)遷移到固態(tài)硬盤中。
優(yōu)選的,所述介質(zhì)緩存節(jié)點有多個,所述介質(zhì)數(shù)據(jù)在介質(zhì)緩存節(jié)點的緩存方式具體包括:將所述介質(zhì)數(shù)據(jù)以預(yù)設(shè)的數(shù)據(jù)塊大小劃分為多個數(shù)據(jù)塊;根據(jù)所述介質(zhì)緩存節(jié)點的個數(shù)和數(shù)據(jù)塊的編號,采用一致性哈希算法計算所述介質(zhì)數(shù)據(jù)的各數(shù)據(jù)塊與介質(zhì)緩存節(jié)點的內(nèi)存、固態(tài)硬盤和/或機械硬盤的緩存映射關(guān)系。
優(yōu)選的,所述機械硬盤為ide接口硬盤、scsi接口硬盤、sata串口硬盤、sas接口硬盤或光纖通道接口硬盤。
本申請公開的一種數(shù)據(jù)緩存裝置,用于緩存數(shù)據(jù)的介質(zhì)緩存節(jié)點設(shè)置有固態(tài)硬盤和機械硬盤,緩存在介質(zhì)緩存節(jié)點中的介質(zhì)數(shù)據(jù)設(shè)置有熱度值,所述裝置包括:存儲分配模塊,用于將熱度值高的介質(zhì)數(shù)據(jù)優(yōu)先緩存在固態(tài)硬盤中,剩余的介質(zhì)數(shù)據(jù)緩存在機械硬盤中;或?qū)岫戎荡笥诨虻扔陬A(yù)設(shè)熱度閾值的介質(zhì)數(shù)據(jù)緩存在固態(tài)硬盤,熱度值小于預(yù)設(shè)熱度閾值的介質(zhì)數(shù)據(jù)緩存在機械硬盤中;熱度統(tǒng)計模塊,用于按預(yù)設(shè)的時間周期統(tǒng)計所述介質(zhì)緩存節(jié)點中所有介質(zhì)數(shù)據(jù)的訪問次數(shù),并根據(jù)所述訪問次數(shù)更新所述介質(zhì)數(shù)據(jù)的熱度值;存儲遷移模塊,用于根據(jù)更新后的所述介質(zhì)數(shù)據(jù)的熱度值調(diào)整固態(tài)硬盤和機械硬盤中緩存的介質(zhì)數(shù)據(jù)。
優(yōu)選的,所述存儲分配模塊還用于將每次客戶端的訪問都需要傳輸?shù)牧斜砦募退饕募彺嬖诮橘|(zhì)緩存節(jié)點的內(nèi)存中。
優(yōu)選的,所述存儲遷移模塊采用如下方式調(diào)整固態(tài)硬盤和機械硬盤中緩存的介質(zhì)數(shù)據(jù):重復(fù)判斷固態(tài)硬盤中熱度值最低的介質(zhì)數(shù)據(jù)的熱度值是否小于機械硬盤中熱度值最高的介質(zhì)數(shù)據(jù)的熱度值,當(dāng)固態(tài)硬盤中熱度值最低的介質(zhì)數(shù)據(jù)的熱度值小于機械硬盤中熱度值最高的介質(zhì)數(shù)據(jù)的熱度值時,將固態(tài)硬盤中熱度值最低的介質(zhì)數(shù)據(jù)遷移到機械硬盤中,將機械硬盤中熱度值最高的介質(zhì)數(shù)據(jù)遷移到固態(tài)硬盤中;或,將固態(tài)硬盤中熱度值小于預(yù)設(shè)熱度閾值的介質(zhì)數(shù)據(jù)遷移到機械硬盤中,以及將機械硬盤中熱度值大于或等于熱度閾值的介質(zhì)數(shù)據(jù)遷移到固態(tài)硬盤中。
優(yōu)選的,所述介質(zhì)緩存節(jié)點有多個,所述介質(zhì)數(shù)據(jù)在介質(zhì)緩存節(jié)點的緩存方式具體為:將所述介質(zhì)數(shù)據(jù)以預(yù)設(shè)的數(shù)據(jù)塊大小劃分為多個數(shù)據(jù)塊;根據(jù)所述介質(zhì)緩存節(jié)點的個數(shù)和數(shù)據(jù)塊的編號,采用一致性哈希算法計算所述介質(zhì)數(shù)據(jù)的各數(shù)據(jù)塊與介質(zhì)緩存節(jié)點的內(nèi)存、固態(tài)硬盤和/或機械硬盤的緩存映射關(guān)系。
與現(xiàn)有技術(shù)相比,本申請具有以下優(yōu)點:
本申請優(yōu)選實施例根據(jù)介質(zhì)數(shù)據(jù)的熱度進行分類存儲,將請求訪問次數(shù)多的介質(zhì)數(shù)據(jù)集中緩存在固態(tài)硬盤(ssd)中,可充分發(fā)揮ssd數(shù)據(jù)讀取性能高的優(yōu)點,有效提升系統(tǒng)的服務(wù)性能;將訪問率低的介質(zhì)數(shù)據(jù)緩存在機械硬盤(如sata接口硬盤)上,實現(xiàn)分級存儲,能夠在降低系統(tǒng)成本的同時保證用戶請求數(shù)據(jù)的完整性。
附圖說明
圖1為本申請數(shù)據(jù)緩存方法第一實施例的流程圖;
圖2為本申請數(shù)據(jù)緩存方法第二實施例的流程圖;
圖3為圖2所示的方法實施例中更新所述介質(zhì)數(shù)據(jù)的狀態(tài)的具體流程圖;
圖4為本申請數(shù)據(jù)緩存裝置一實施例的結(jié)構(gòu)示意圖。
具體實施方式
為使本申請的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和具體實施方式對本申請作進一步詳細(xì)的說明。
參照圖1,示出了本申請數(shù)據(jù)緩存方法第一實施例的流程,本優(yōu)選實施例執(zhí)行所述緩存數(shù)據(jù)方法的介質(zhì)緩存節(jié)點設(shè)置有固態(tài)硬盤(ssd,solidstatedriver)和機械硬盤(hdd,harddiskdriver),該方法實施例包括:
步驟s101:將列表文件和索引文件等熱度值最高的小文件緩存在內(nèi)存中,將熱度值高的介質(zhì)數(shù)據(jù)優(yōu)先緩存在固態(tài)硬盤中,剩余的介質(zhì)數(shù)據(jù)緩存在機械硬盤中。
本優(yōu)選實施例緩存在介質(zhì)緩存節(jié)點中的介質(zhì)數(shù)據(jù)設(shè)置有熱度值,并按照熱度值進行分級緩存,其中,在內(nèi)存中緩存訪問率高的小文件(如列表文件、索引文件等),在硬盤中緩存實際的介質(zhì)數(shù)據(jù)。
在實際實施過程中,介質(zhì)播放一般是以列表文件(如m3u8文件)進行傳輸?shù)?,m3u8文件、索引(index)文件等小文件是每次播放必傳的文件,優(yōu)選在內(nèi)存中緩存,以減少磁盤操作的次數(shù),提高服務(wù)性能。
hdd是一種采用磁性碟片作為存儲介質(zhì)的存儲器,數(shù)據(jù)讀取性能相對較低,用于存儲熱度值相對較低的介質(zhì)數(shù)據(jù)。hdd的接口類型可以為電子集成驅(qū)動接口(ide,integrateddriveelectronics)、小型計算機系統(tǒng)接口(scsi,smallcomputersysteminterface)、串行接口(sata,serialata)、串行scsi接口(sas,serialattachedscsi)或光纖通道接口(fc,fibrechannel)等。
ssd是一種以閃存顆粒作為存儲介質(zhì)的存儲器,由于數(shù)據(jù)存放在半導(dǎo)體內(nèi)存上,能夠在低于1毫秒的時間內(nèi)對任意位置的存儲單元完成i/o(輸入/輸出)操作,因此其最為關(guān)鍵的i/o性能指標(biāo)iops(即每秒io操作的次數(shù))上,ssd可以達到hdd的50倍以上;本優(yōu)選實施例中用于緩存熱度值相對較高的介質(zhì)數(shù)據(jù)。
具體實施時,可以在ssd中緩存熱度值大的介質(zhì)數(shù)據(jù),剩余的介質(zhì)數(shù)據(jù)緩存在hdd中;即,按照ssd存儲能力的實際大小,將熱度值大的介質(zhì)數(shù)據(jù)優(yōu)先存儲到ssd中,直到ssd存滿;將ssd存不下的介質(zhì)數(shù)據(jù),全部緩存在hdd中,以充分發(fā)揮ssd性能,提升系統(tǒng)服務(wù)能力。
按照介質(zhì)數(shù)據(jù)的熱度值,將介質(zhì)數(shù)據(jù)分成hdd、ssd和內(nèi)存等三個級別進行緩存,可以極大的減小io壓力,提升系統(tǒng)吞吐量。
所述介質(zhì)緩存節(jié)點有多個,所述介質(zhì)數(shù)據(jù)在介質(zhì)緩存節(jié)點中可以采用整塊存儲的方式,也可以采用分片存儲的方式。
當(dāng)采用分片存儲方式時,具體可以包括:
(1)將介質(zhì)數(shù)據(jù)按預(yù)設(shè)的數(shù)據(jù)塊大?。ㄈ?4m)劃分為多個數(shù)據(jù)塊;
(2)根據(jù)所述介質(zhì)緩存節(jié)點的個數(shù)和數(shù)據(jù)塊的編號,采用一致性哈希算法計算所述介質(zhì)數(shù)據(jù)的各數(shù)據(jù)塊與介質(zhì)緩存節(jié)點的內(nèi)存、固態(tài)硬盤或機械硬盤的緩存映射關(guān)系;
即,對于要緩存在hdd中的介質(zhì)數(shù)據(jù),將其按預(yù)設(shè)的數(shù)據(jù)塊大小劃分為多個數(shù)據(jù)塊,采用一致性哈希算法計算劃分出的各數(shù)據(jù)塊與多個介質(zhì)緩存節(jié)點的hdd的緩存映射關(guān)系;
ssd和內(nèi)存緩存原理與hdd相同,采用一致性哈希分布,是分布式的緩存,在集群的介質(zhì)緩存節(jié)點間分享。
具體實施時,可以根據(jù)介質(zhì)數(shù)據(jù)文件的惟一標(biāo)識(fid,fileidentification)以及數(shù)據(jù)塊的編號計算出哈希(hash)值,然后根據(jù)預(yù)設(shè)的映射策略,建立該數(shù)據(jù)塊與某個介質(zhì)緩存節(jié)點的內(nèi)存、固態(tài)硬盤和/或機械硬盤的緩存映射關(guān)系。
上述fid可以通過對介質(zhì)數(shù)據(jù)文件的屬性值進行md5運算的方式獲得,存儲基于fid的文件索引,同樣的文件只會存一份,不僅能節(jié)省存儲空間,還可以方便對文件內(nèi)容進行校驗。
在具體實施時,可以判斷介質(zhì)緩存節(jié)點的可用數(shù)量是否出現(xiàn)變動(如某個介質(zhì)緩存節(jié)點宕機、添加一個新的介質(zhì)緩存節(jié)點等),若是,則采用一致性哈希算法重新計算所述緩存映射關(guān)系。
介質(zhì)數(shù)據(jù)在緩存節(jié)點中以預(yù)設(shè)的數(shù)據(jù)塊尺寸分片存儲,由于每一分片存儲在集群中不同的緩存節(jié)點上,可以避免大量熱點介質(zhì)訪問產(chǎn)生的單盤io性能瓶頸。
步驟s102:按預(yù)設(shè)的時間周期統(tǒng)計所述介質(zhì)緩存節(jié)點中所有介質(zhì)數(shù)據(jù)的訪問次數(shù),并根據(jù)所述訪問次數(shù)更新所述介質(zhì)數(shù)據(jù)的熱度值。
在具體實施時,可以根據(jù)需要定時統(tǒng)計(如可以每天統(tǒng)計)一次ssd和hdd中所有介質(zhì)數(shù)據(jù)(如視頻數(shù)據(jù))的點播次數(shù),如果hdd有點播次數(shù)超過ssd中的視頻,則把ssd中點播次數(shù)低的遷移到hdd中,把hdd中點播次數(shù)高的遷移到ssd中。
步驟s103:根據(jù)更新后的熱度值調(diào)整固態(tài)硬盤和機械硬盤中緩存的介質(zhì)數(shù)據(jù)。
本優(yōu)選實施例中上述根據(jù)更新后的熱度值調(diào)整固態(tài)硬盤和機械硬盤中緩存的介質(zhì)數(shù)據(jù),其方法具體可以為:重復(fù)判斷ssd中熱度值最低的介質(zhì)數(shù)據(jù)的熱度值是否小于hdd中熱度值最高的介質(zhì)數(shù)據(jù)的熱度值,若是,將ssd中熱度值最低的介質(zhì)數(shù)據(jù)遷移到hdd中,將hdd中熱度值最高的介質(zhì)數(shù)據(jù)遷移到sdd中;否則,結(jié)束數(shù)據(jù)遷移過程。
參照圖2,示出了本申請數(shù)據(jù)緩存方法第二實施例的流程,本方法實施例與上述第一方法實施例的主要區(qū)別在于,在本方法實施例中,將緩存在介質(zhì)緩存節(jié)點中的介質(zhì)數(shù)據(jù)劃分為熱點內(nèi)容和非熱點內(nèi)容,例如,可以根據(jù)預(yù)設(shè)時間內(nèi)被訪問的次數(shù)來確定哪些介質(zhì)數(shù)據(jù)是熱點內(nèi)容,哪些介質(zhì)數(shù)據(jù)是非熱點內(nèi)容。所述方法具體包括:
步驟s201:將熱度值大于或等于預(yù)設(shè)熱度閾值的介質(zhì)數(shù)據(jù)緩存在固態(tài)硬盤,熱度值小于預(yù)設(shè)熱度閾值的介質(zhì)數(shù)據(jù)緩存在機械硬盤中;
在具體實施時,可以將新發(fā)布的介質(zhì)數(shù)據(jù)根據(jù)預(yù)設(shè)的規(guī)則,將介質(zhì)數(shù)據(jù)設(shè)置為熱點內(nèi)容(可以將其熱度值設(shè)置為預(yù)設(shè)熱度閾值)或非熱點內(nèi)容(可以將其熱度值設(shè)置為0);并在初次緩存在介質(zhì)緩存節(jié)點時,將熱點內(nèi)容緩存在固態(tài)硬盤中,將非熱點內(nèi)容緩存在機械硬盤中。
步驟s202:按預(yù)設(shè)時間周期統(tǒng)計所述介質(zhì)緩存節(jié)點中所有介質(zhì)數(shù)據(jù)的訪問次數(shù),并根據(jù)所述訪問次數(shù)更新所述介質(zhì)數(shù)據(jù)的狀態(tài)。
在具體實施時,如圖3所示,具體可以包括:
步驟s202-1:收集預(yù)設(shè)時間周期內(nèi)客戶端的訪問請求;
客戶端的訪問請求被全局負(fù)載均衡器重定向至當(dāng)前介質(zhì)緩存節(jié)點中,該訪問請求中包括有相應(yīng)的介質(zhì)數(shù)據(jù)的信息,介質(zhì)緩存節(jié)點可以通過解析并統(tǒng)計預(yù)設(shè)時間內(nèi)接收的客戶端訪問請求,便可以獲取該訪問請求對應(yīng)的介質(zhì)數(shù)據(jù)信息。
在具體實施中,上述預(yù)設(shè)時間周期可以根據(jù)實際的需要進行設(shè)置,例如,可以設(shè)置為1天或者3天等。
步驟s202-2:判斷所收集的訪問請求中相同介質(zhì)數(shù)據(jù)的出現(xiàn)次數(shù)是否大于或等于預(yù)設(shè)熱度閾值;若是,轉(zhuǎn)步驟s202-3;否則,轉(zhuǎn)步驟s202-4;
在具體實施中,預(yù)設(shè)的熱度閾值可以根據(jù)實際的需要進行設(shè)置,例如,可以將所述熱度值設(shè)定為3次或者9次等。
步驟s202-3:將所述介質(zhì)數(shù)據(jù)設(shè)定為熱點內(nèi)容;轉(zhuǎn)步驟s203;
在具體實施中,當(dāng)在所述預(yù)設(shè)時間周期內(nèi)所收集的客戶端的訪問請求中,相同介質(zhì)數(shù)據(jù)出現(xiàn)的次數(shù)大于或等于預(yù)設(shè)的熱度閾值時,表明該介質(zhì)數(shù)據(jù)屬于客戶端頻繁訪問的內(nèi)容,可以將其設(shè)定為熱點內(nèi)容。
步驟s202-4:將所述介質(zhì)數(shù)據(jù)設(shè)定為非熱點內(nèi)容;轉(zhuǎn)步驟s203;
在具體實施中,當(dāng)在所述預(yù)設(shè)時間周期內(nèi)所收集的客戶端的訪問請求中,相同介質(zhì)數(shù)據(jù)出現(xiàn)的次數(shù)小于預(yù)設(shè)的熱度閾值時,表明該介質(zhì)數(shù)據(jù)不屬于客戶端頻繁訪問的內(nèi)容,可以將其設(shè)定為非熱點內(nèi)容。
步驟s203:將固態(tài)硬盤中的非熱點內(nèi)容遷移到機械硬盤,以及將機械硬盤中的熱點內(nèi)容遷移到固態(tài)硬盤。
本申請通過上述手段,可以有效提高熱點內(nèi)容的反饋速度,同時,還能夠通過在機械硬盤中緩存非熱點內(nèi)容的方式保證數(shù)據(jù)的完整性,從而可以從整體上滿足客戶的內(nèi)容分發(fā)需求,提高客戶的使用體驗。
需要說明的是,對于前述的各方法實施例,為了描述簡單,故將其都表述為一系列的動作組合,但是本領(lǐng)域的技術(shù)人員應(yīng)該知悉,本申請并不受所描述的動作順序的限制,因為根據(jù)本申請,某些步驟可以采用其他順序或同時執(zhí)行;其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,上述方法實施例均屬于優(yōu)選實施例,所涉及的動作和模塊并不一定是本申請所必須的。
參照圖4,示出了本申請數(shù)據(jù)緩存裝置一實施例的結(jié)構(gòu)示意圖,用于緩存數(shù)據(jù)的介質(zhì)緩存節(jié)點設(shè)置有固態(tài)硬盤和機械硬盤,緩存在介質(zhì)緩存節(jié)點中的介質(zhì)數(shù)據(jù)設(shè)置有熱度值,所述裝置包括:
存儲分配模塊41,用于將熱度值高的介質(zhì)數(shù)據(jù)優(yōu)先緩存在固態(tài)硬盤中,剩余的介質(zhì)數(shù)據(jù)緩存在機械硬盤中;或?qū)岫戎荡笥诨虻扔陬A(yù)設(shè)熱度閾值的介質(zhì)數(shù)據(jù)緩存在固態(tài)硬盤,熱度值小于預(yù)設(shè)熱度閾值的介質(zhì)數(shù)據(jù)緩存在機械硬盤中;
具體實施時,每次客戶端的訪問都需要傳輸?shù)牧斜砦募退饕募葻岫戎底罡叩男∥募梢跃彺嬖诠虘B(tài)硬盤中,也可以為進一步提高服務(wù)性能而將上述小文件緩存在系統(tǒng)內(nèi)存中。
另外,存儲分配模塊41可以采用分片存儲方式緩存數(shù)據(jù),也可以采用其他方式緩存數(shù)據(jù)。當(dāng)采用分片緩存方式時,具體可以采用如下方式實現(xiàn):將介質(zhì)數(shù)據(jù)按預(yù)設(shè)的數(shù)據(jù)塊大?。ㄈ?4m)劃分為多個數(shù)據(jù)塊;采用一致性哈希算法計算所述介質(zhì)數(shù)據(jù)的各數(shù)據(jù)塊與介質(zhì)緩存節(jié)點的內(nèi)存、固態(tài)硬盤和機械硬盤的緩存映射關(guān)系。
熱度統(tǒng)計模塊42,用于按預(yù)設(shè)的時間周期統(tǒng)計所述介質(zhì)緩存節(jié)點中所有介質(zhì)數(shù)據(jù)的訪問次數(shù),并根據(jù)所述訪問次數(shù)更新所述介質(zhì)數(shù)據(jù)的熱度值;
存儲遷移模塊43,用于根據(jù)更新后的所述介質(zhì)數(shù)據(jù)的熱度值調(diào)整固態(tài)硬盤和機械硬盤中緩存的介質(zhì)數(shù)據(jù)。
具體實施時,存儲遷移模塊43可以采用如下方式調(diào)整固態(tài)硬盤和機械硬盤中緩存的介質(zhì)數(shù)據(jù):
重復(fù)判斷固態(tài)硬盤中熱度值最低的介質(zhì)數(shù)據(jù)的熱度值是否小于機械硬盤中熱度值最高的介質(zhì)數(shù)據(jù)的熱度值,若是,將固態(tài)硬盤中熱度值最低的介質(zhì)數(shù)據(jù)遷移到機械硬盤中,將機械硬盤中熱度值最高的介質(zhì)數(shù)據(jù)遷移到固態(tài)硬盤中;否則,結(jié)束介質(zhì)數(shù)據(jù)的遷移工作;
或,將固態(tài)硬盤中熱度值小于預(yù)設(shè)熱度閾值的介質(zhì)數(shù)據(jù)遷移到機械硬盤中,以及將機械硬盤中熱度值大于或等于熱度閾值的介質(zhì)數(shù)據(jù)遷移到固態(tài)硬盤中。
需要說明的是,上述裝置實施例屬于優(yōu)選實施例,所涉及功能模塊并不一定是本申請所必須的。
本說明書中的各個實施例均采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。對于本申請的裝置實施例而言,由于其與方法實施例基本相似,所以描述的比較簡單,相關(guān)之處參見方法實施例的部分說明即可。
以上對本申請所提供的一種數(shù)據(jù)緩存方法和裝置,進行了詳細(xì)介紹,本文中應(yīng)用了具體個例對本申請的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本申請的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本申請的思想,在具體實施方式及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本申請的限制。