[發(fā)明專利]一種數(shù)據(jù)存儲(chǔ)、還原方法、裝置及計(jì)算機(jī)設(shè)備有效
| 申請(qǐng)?zhí)枺?/td> | 201711039087.3 | 申請(qǐng)日: | 2017-10-30 |
| 公開(公告)號(hào): | CN110019205B | 公開(公告)日: | 2021-02-23 |
| 發(fā)明(設(shè)計(jì))人: | 周勝凱 | 申請(qǐng)(專利權(quán))人: | 杭州海康威視數(shù)字技術(shù)股份有限公司 |
| 主分類號(hào): | G06F16/22 | 分類號(hào): | G06F16/22 |
| 代理公司: | 北京柏杉松知識(shí)產(chǎn)權(quán)代理事務(wù)所(普通合伙) 11413 | 代理人: | 馬敬;項(xiàng)京 |
| 地址: | 310051 浙*** | 國省代碼: | 浙江;33 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 數(shù)據(jù) 存儲(chǔ) 還原 方法 裝置 計(jì)算機(jī) 設(shè)備 | ||
本發(fā)明實(shí)施例提供了一種數(shù)據(jù)存儲(chǔ)、還原方法、裝置及計(jì)算機(jī)設(shè)備,其中,數(shù)據(jù)存儲(chǔ)方法包括:獲取待存儲(chǔ)數(shù)據(jù)的基本值及擾動(dòng)值;利用預(yù)設(shè)散列算法,對(duì)擾動(dòng)值進(jìn)行換算,得到擾動(dòng)值對(duì)應(yīng)的隨機(jī)值;對(duì)隨機(jī)值進(jìn)行映射,得到隨機(jī)值在預(yù)設(shè)范圍內(nèi)的映射結(jié)果;根據(jù)基本值及映射結(jié)果,通過預(yù)設(shè)散列值運(yùn)算公式,確定待存儲(chǔ)數(shù)據(jù)對(duì)應(yīng)的散列值;基于散列值所處的預(yù)設(shè)值范圍,存儲(chǔ)待存儲(chǔ)數(shù)據(jù)的基本值及擾動(dòng)值至預(yù)設(shè)值范圍的任一端點(diǎn)預(yù)設(shè)值對(duì)應(yīng)的服務(wù)器節(jié)點(diǎn),其中,各服務(wù)器節(jié)點(diǎn)預(yù)先配置有對(duì)應(yīng)的預(yù)設(shè)值。通過本方案可以使得數(shù)據(jù)均勻存儲(chǔ)至各服務(wù)器節(jié)點(diǎn)。
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)庫技術(shù)領(lǐng)域,特別是涉及一種數(shù)據(jù)存儲(chǔ)、還原方法、裝置及計(jì)算機(jī)設(shè)備。
背景技術(shù)
針對(duì)云計(jì)算對(duì)于大規(guī)模分布式服務(wù)和分布式存儲(chǔ)的需求,特別是在超大規(guī)模和高并發(fā)的應(yīng)用場(chǎng)景下,使用傳統(tǒng)的關(guān)系數(shù)據(jù)庫來存儲(chǔ)和查詢用戶動(dòng)態(tài)數(shù)據(jù)已經(jīng)暴露出很多難以克服的問題,例如需要很高的實(shí)時(shí)插入性能;需要海量的數(shù)據(jù)存儲(chǔ)能力,同時(shí)還需要非常快的查詢檢索速度;需要將數(shù)據(jù)存儲(chǔ)無縫擴(kuò)展到整個(gè)群集環(huán)境下,并且能夠在線擴(kuò)展等等。這樣的背景下,非關(guān)系型數(shù)據(jù)庫NoSQL應(yīng)運(yùn)而生。
NoSQL用于超大規(guī)模數(shù)據(jù)的存儲(chǔ),具有高可擴(kuò)展性、分布式計(jì)算、低成本等特點(diǎn)。NoSQL主要可以分為列存儲(chǔ)、文檔存儲(chǔ)和圖形存儲(chǔ)等類型。其中,列存儲(chǔ)類型,如Cassandra、HBase、Riak等,以擁有非常靈活的數(shù)據(jù)模型和彈性集群擴(kuò)展能力等優(yōu)勢(shì)在網(wǎng)絡(luò)社交云計(jì)算方面得以廣泛應(yīng)用。
列存儲(chǔ)類型的NoSQL,通過對(duì)具有相同字段的數(shù)據(jù)聚合存儲(chǔ),將不同的數(shù)據(jù)分布在服務(wù)器集群中的不同服務(wù)器節(jié)點(diǎn)上。該類型的NoSQL的數(shù)據(jù)模型包括列、行,其中,列是數(shù)據(jù)模型中最基本的單元,每一個(gè)列包括一個(gè)名稱、一個(gè)值和一個(gè)時(shí)間戳;行是具有相同字段的列的集合。每一個(gè)服務(wù)器節(jié)點(diǎn)上存儲(chǔ)至少一行數(shù)據(jù),每一行數(shù)據(jù)通過一個(gè)主鍵唯一標(biāo)識(shí),主鍵中包括用于代表數(shù)據(jù)屬性的基本值和用于代表數(shù)據(jù)屬性取值的擾動(dòng)值,基本值具體用于確定數(shù)據(jù)存儲(chǔ)在哪個(gè)服務(wù)器節(jié)點(diǎn)上。
具有相同基本值的數(shù)據(jù)存儲(chǔ)在同一個(gè)服務(wù)器節(jié)點(diǎn)上,并且如果大量數(shù)據(jù)的基本值相對(duì)集中,則一個(gè)服務(wù)器節(jié)點(diǎn)上可能存儲(chǔ)多個(gè)基本值的數(shù)據(jù),由于數(shù)據(jù)的屬性取值很多,因此,極易導(dǎo)致部分服務(wù)器節(jié)點(diǎn)上存儲(chǔ)的數(shù)據(jù)量集中的情況,造成數(shù)據(jù)存儲(chǔ)的負(fù)載不均衡。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例的目的在于提供一種數(shù)據(jù)存儲(chǔ)、還原方法、裝置及計(jì)算機(jī)設(shè)備,以實(shí)現(xiàn)數(shù)據(jù)均勻存儲(chǔ)至服務(wù)器集群中各服務(wù)器節(jié)點(diǎn)上。具體技術(shù)方案如下:
第一方面,本發(fā)明實(shí)施例提供了一種數(shù)據(jù)存儲(chǔ)方法,所述方法包括:
獲取待存儲(chǔ)數(shù)據(jù)的基本值及擾動(dòng)值;
利用預(yù)設(shè)散列算法,對(duì)所述擾動(dòng)值進(jìn)行換算,得到所述擾動(dòng)值對(duì)應(yīng)的隨機(jī)值;
對(duì)所述隨機(jī)值進(jìn)行映射,得到所述隨機(jī)值在預(yù)設(shè)范圍內(nèi)的映射結(jié)果;
根據(jù)所述基本值、所述映射結(jié)果及所述預(yù)設(shè)范圍,通過預(yù)設(shè)散列值運(yùn)算公式,確定所述待存儲(chǔ)數(shù)據(jù)對(duì)應(yīng)的散列值;
基于所述散列值所處的預(yù)設(shè)值范圍,存儲(chǔ)所述待存儲(chǔ)數(shù)據(jù)的基本值及擾動(dòng)值至所述預(yù)設(shè)值范圍的任一端點(diǎn)預(yù)設(shè)值對(duì)應(yīng)的服務(wù)器節(jié)點(diǎn),其中,各服務(wù)器節(jié)點(diǎn)預(yù)先配置有對(duì)應(yīng)的預(yù)設(shè)值。
第二方面,本發(fā)明實(shí)施例提供了一種數(shù)據(jù)還原方法,所述方法包括:
獲取待還原數(shù)據(jù)對(duì)應(yīng)的散列值;
基于預(yù)設(shè)數(shù)據(jù)組裝協(xié)議,從所述散列值中,提取多個(gè)指定數(shù)值段的數(shù)值;
還原所述多個(gè)指定數(shù)值段中的第一指定數(shù)值段的數(shù)值為所述待還原數(shù)據(jù)的擾動(dòng)值;
利用預(yù)設(shè)散列算法,對(duì)所述擾動(dòng)值進(jìn)行換算,得到所述擾動(dòng)值對(duì)應(yīng)的隨機(jī)值;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于杭州海康威視數(shù)字技術(shù)股份有限公司,未經(jīng)杭州海康威視數(shù)字技術(shù)股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711039087.3/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(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)裝置
- 動(dòng)態(tài)存儲(chǔ)管理裝置及方法
- 一種存儲(chǔ)方法、服務(wù)器及存儲(chǔ)控制器
- 一種基于存儲(chǔ)系統(tǒng)的控制方法及裝置
- 一種信息的存儲(chǔ)控制方法
- 一種數(shù)據(jù)存儲(chǔ)方法及裝置
- 數(shù)據(jù)存儲(chǔ)方法、裝置、計(jì)算機(jī)設(shè)備以及存儲(chǔ)介質(zhì)
- 一種數(shù)據(jù)存儲(chǔ)控制方法及裝置
- 存儲(chǔ)設(shè)備、存儲(chǔ)系統(tǒng)及存儲(chǔ)方法
- 物料存儲(chǔ)方法及系統(tǒng)
- 基于雙芯智能電表的數(shù)據(jù)分類存儲(chǔ)方法和裝置
- 一種數(shù)據(jù)庫讀寫分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





