[發(fā)明專利]一種數(shù)據(jù)更新方法及裝置有效
| 申請?zhí)枺?/td> | 201310671693.2 | 申請日: | 2013-12-10 |
| 公開(公告)號: | CN103678577B | 公開(公告)日: | 2017-10-24 |
| 發(fā)明(設計)人: | 黃旭 | 申請(專利權)人: | 新浪網(wǎng)技術(中國)有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 北京同達信恒知識產(chǎn)權代理有限公司11291 | 代理人: | 郭潤湘 |
| 地址: | 100080 北京市海淀*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 數(shù)據(jù) 更新 方法 裝置 | ||
技術領域
本發(fā)明涉及計算機領域,尤其涉及一種數(shù)據(jù)更新方法及裝置。
背景技術
訂閱/更新(Pub/Sub)模型是如何向一個內容節(jié)點發(fā)布和訂閱消息的模型,消息發(fā)布者將消息發(fā)布到內容節(jié)點,消息訂閱者從內容節(jié)點訂閱消息。訂閱/更新的消息由消息關鍵字(key)和該消息對應的數(shù)據(jù)值(value)組成,一般該消息key不變,與該消息對應的value是頻繁變化的,因此需要及時的更新value值,使得消息訂閱者能夠及時準確地讀取所訂閱的消息內容。
目前,現(xiàn)有的Pub/Sub模型中的KV(key-value)數(shù)據(jù)更新的主要方法為:將多個消息各自的key和value存儲到數(shù)據(jù)表1中,并為該數(shù)據(jù)表1分配一個入口指針,訪問者在該入口指針指向的數(shù)據(jù)表中獲取數(shù)據(jù)信息,將數(shù)據(jù)表1復制(n-1)份,復制表記為數(shù)據(jù)表2、數(shù)據(jù)表3……數(shù)據(jù)表n,當有消息的數(shù)據(jù)值變化需要更新數(shù)據(jù)時,在數(shù)據(jù)表2-數(shù)據(jù)表n中將待更新數(shù)據(jù)進行更新,在數(shù)據(jù)表2-數(shù)據(jù)表n中的數(shù)據(jù)進行更新時,此時訪問者通過入口指針獲取數(shù)據(jù)表1中的數(shù)據(jù)。當數(shù)據(jù)表2-數(shù)據(jù)表n中的數(shù)據(jù)更新完成后,將該入口指針指向數(shù)據(jù)表2,當有新的訪問者時,該新的訪問者通過入口指針獲取數(shù)據(jù)表2中的數(shù)據(jù),此時數(shù)據(jù)表1中仍有部分原訪問者在讀取未更新的數(shù)據(jù)。當再次有消息的數(shù)據(jù)值變化需要更新數(shù)據(jù)時,在數(shù)據(jù)表3-數(shù)據(jù)表n中將待更新數(shù)據(jù)進行更新,重復上述數(shù)據(jù)更新過程。
上述現(xiàn)有的KV數(shù)據(jù)更新方法,由于在更新數(shù)據(jù)時,需要將數(shù)據(jù)表復制多份進行更新,數(shù)據(jù)表占用了大量的內存空間,造成了系統(tǒng)資源的浪費。
發(fā)明內容
本發(fā)明實施例提供一種數(shù)據(jù)更新方法及裝置,用以解決現(xiàn)有技術中存在系統(tǒng)資源的浪費的問題。
本發(fā)明實施例提供一種數(shù)據(jù)更新方法,包括:
當有數(shù)據(jù)需要更新時,將更新數(shù)據(jù)存儲到數(shù)據(jù)表中的空閑存儲空間中;
將所述更新數(shù)據(jù)對應的數(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ù)表復制多份,占用的內存空間小,節(jié)省了系統(tǒng)資源。
進一步的,上述方法,還包括:
當有新數(shù)據(jù)需要存儲時,將新數(shù)據(jù)存儲到所述數(shù)據(jù)表中的空閑存儲空間中;
將所述新數(shù)據(jù)對應的數(shù)據(jù)索引和所述新數(shù)據(jù)在所述數(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ù)據(jù)表中讀取數(shù)據(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ù)據(jù)對應的數(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ù)表復制多份,占用的內存空間小,節(jié)省了系統(tǒng)資源。
進一步的,上述裝置,還包括:
第三存儲單元,用于當有新數(shù)據(jù)需要存儲時,將新數(shù)據(jù)存儲到所述數(shù)據(jù)表中的空閑存儲空間中;
第四存儲單元,用于將所述新數(shù)據(jù)對應的數(shù)據(jù)索引和所述新數(shù)據(jù)在所述數(shù)據(jù)表中的存儲地址對應存儲到所述更新隊列中;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于新浪網(wǎng)技術(中國)有限公司,未經(jīng)新浪網(wǎng)技術(中國)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310671693.2/2.html,轉載請聲明來源鉆瓜專利網(wǎng)。
- 上一篇:一種手機殼噴漆治具結構
- 下一篇:一種檢具上使用的夾緊定位銷機構
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設備和數(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ù)結構
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設備、數(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ù)據(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)裝置





