[發(fā)明專利]數(shù)據(jù)存儲方法及數(shù)據(jù)存儲裝置有效
| 申請?zhí)枺?/td> | 201210418838.3 | 申請日: | 2012-10-26 |
| 公開(公告)號: | CN103793329B | 公開(公告)日: | 2017-12-22 |
| 發(fā)明(設(shè)計)人: | 李鐘偉;田明 | 申請(專利權(quán))人: | 騰訊科技(北京)有限公司 |
| 主分類號: | G06F12/02 | 分類號: | G06F12/02;G06F17/30 |
| 代理公司: | 深圳翼盛智成知識產(chǎn)權(quán)事務(wù)所(普通合伙)44300 | 代理人: | 歐陽啟明,李捷 |
| 地址: | 100000 北京市海淀區(qū)海淀*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 數(shù)據(jù) 存儲 方法 裝置 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及計算機技術(shù)領(lǐng)域,特別是涉及一種高效的數(shù)據(jù)存儲方法及裝置。
背景技術(shù)
隨著計算機硬件技術(shù)的發(fā)展,特別是內(nèi)存容量的增加,系統(tǒng)希望可以將全部用戶的數(shù)據(jù)都加載在到內(nèi)存中,以提高系統(tǒng)的讀寫訪問性能。
現(xiàn)有的內(nèi)存數(shù)據(jù)存儲方法可分為兩種:普通哈希表(Hash)以及索引鏈表(Index+Link)。兩種存儲方法都可提供高性能的數(shù)據(jù)訪問能力。在數(shù)據(jù)存儲上,普通哈希表通常要求某個用戶的存儲數(shù)據(jù)是定長的,對于非定長的存儲數(shù)據(jù),普通哈希表也以存儲數(shù)據(jù)的最大長度分配存儲空間;這樣如非定長的存儲數(shù)據(jù)過多,會在一定程度上降低內(nèi)存的有效使用率。索引鏈表能夠以可變的存儲空間存儲非定長的存儲數(shù)據(jù),提高了內(nèi)存的有效使用率,但在讀取索引鏈表中的任何存儲數(shù)據(jù)時,通常需要完整的讀取整個鏈表結(jié)構(gòu)并進行解析;這樣在進行索引鏈表中存儲數(shù)據(jù)的讀取和解析時,會涉及到內(nèi)存中大量存儲數(shù)據(jù)的拷貝,從而影響系統(tǒng)的讀取性能。
故,有必要提供一種數(shù)據(jù)存儲方法及裝置,以解決現(xiàn)有技術(shù)所存在的問題。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種提高內(nèi)存有效使用率和系統(tǒng)讀取性能的數(shù)據(jù)存儲方法及裝置。解決了現(xiàn)有的數(shù)據(jù)存儲方法及裝置的內(nèi)存有效使用率較低或系統(tǒng)讀取性能較低的技術(shù)問題。
為解決上述問題,本發(fā)明提供的技術(shù)方案如下:
本發(fā)明涉及一種數(shù)據(jù)存儲方法,其包括步驟:
根據(jù)存儲數(shù)據(jù)的訪問頻率將每個用戶的存儲數(shù)據(jù)劃分為高訪問率數(shù)據(jù)和低訪問率數(shù)據(jù);以及
采用普通哈希表方式存儲所述高訪問率數(shù)據(jù),采用索引鏈表方式存儲所述低訪問率數(shù)據(jù)。
在本發(fā)明所述的數(shù)據(jù)存儲方法中,所述根據(jù)存儲數(shù)據(jù)的訪問頻率將每個用戶的存儲數(shù)據(jù)劃分為高訪問率數(shù)據(jù)和低訪問率數(shù)據(jù)的步驟具體為:
將所述訪問頻率大于所有存儲數(shù)據(jù)的平均訪問頻率的存儲數(shù)據(jù)設(shè)定為所述高訪問率數(shù)據(jù),將所述訪問頻率小于所有存儲數(shù)據(jù)的平均訪問頻率的存儲數(shù)據(jù)設(shè)定為所述低訪問率數(shù)據(jù)。
在本發(fā)明所述的數(shù)據(jù)存儲方法中,所述數(shù)據(jù)存儲方法還包括步驟:
在所述高訪問率數(shù)據(jù)中設(shè)置指向相應(yīng)用戶的所述低訪問率數(shù)據(jù)的指針。
在本發(fā)明所述的數(shù)據(jù)存儲方法中,所述指針設(shè)置在所述高訪問率數(shù)據(jù)的尾部。
在本發(fā)明所述的數(shù)據(jù)存儲方法中,每個用戶的所述高訪問率數(shù)據(jù)為定長數(shù)據(jù),每個用戶的所述低訪問率數(shù)據(jù)為非定長數(shù)據(jù)。
本發(fā)明還涉及一種數(shù)據(jù)存儲裝置,其包括:
數(shù)據(jù)劃分模塊,用于根據(jù)存儲數(shù)據(jù)的訪問頻率將每個用戶的存儲數(shù)據(jù)劃分為高訪問率數(shù)據(jù)和低訪問率數(shù)據(jù);以及
數(shù)據(jù)存儲模塊,用于采用普通哈希表方式存儲所述高訪問率數(shù)據(jù),采用索引鏈表方式存儲所述低訪問率數(shù)據(jù)。
在本發(fā)明所述的數(shù)據(jù)存儲裝置中,所述數(shù)據(jù)劃分模塊具體用于將所述訪問頻率大于所有存儲數(shù)據(jù)的平均訪問頻率的存儲數(shù)據(jù)設(shè)定為所述高訪問率數(shù)據(jù),將所述訪問頻率小于所有存儲數(shù)據(jù)的平均訪問頻率的存儲數(shù)據(jù)設(shè)定為所述低訪問率數(shù)據(jù)。
在本發(fā)明所述的數(shù)據(jù)存儲裝置中,所述數(shù)據(jù)存儲裝置還包括:
關(guān)聯(lián)模塊,用于在所述高訪問率數(shù)據(jù)中設(shè)置指向相應(yīng)用戶的所述低訪問率數(shù)據(jù)的指針。
在本發(fā)明所述的數(shù)據(jù)存儲裝置中,所述關(guān)聯(lián)模塊用于在所述高訪問率數(shù)據(jù)的尾部設(shè)置指向相應(yīng)用戶的所述低訪問率數(shù)據(jù)的指針。
在本發(fā)明所述的數(shù)據(jù)存儲裝置中,每個用戶的所述高訪問率數(shù)據(jù)為定長數(shù)據(jù),每個用戶的所述低訪問率數(shù)據(jù)為非定長數(shù)據(jù)。
相較于現(xiàn)有技術(shù),本發(fā)明的數(shù)據(jù)存儲方法及裝置根據(jù)存儲數(shù)據(jù)的訪問頻率采用不同的方式進行存儲,從而提高了內(nèi)存有效使用率和系統(tǒng)讀取性能。解決了現(xiàn)有的數(shù)據(jù)存儲方法及裝置的內(nèi)存有效使用率較低或系統(tǒng)讀取性能較低的技術(shù)問題。
為讓本發(fā)明的上述內(nèi)容能更明顯易懂,下文特舉優(yōu)選實施例,并配合所附圖式,作詳細說明如下:
附圖說明
圖1為本發(fā)明所述的數(shù)據(jù)存儲方法的優(yōu)選實施例的流程圖;
圖2為本發(fā)明所述的數(shù)據(jù)存儲方法的優(yōu)選實施例中的存儲數(shù)據(jù)的存儲方式的示意圖;
圖3為本發(fā)明所述的數(shù)據(jù)存儲裝置的優(yōu)選實施例的結(jié)構(gòu)示意圖;
其中,附圖標記說明如下:
31、數(shù)據(jù)劃分模塊;
32、數(shù)據(jù)存儲模塊;
33、關(guān)聯(lián)模塊。
具體實施方式
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于騰訊科技(北京)有限公司,未經(jīng)騰訊科技(北京)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210418838.3/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設(shè)備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設(shè)備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置





