放所述選定系統(tǒng)塊,可以使得系統(tǒng)塊中規(guī)劃的鍵值空間比與實(shí)際鍵值空間比一致。因?yàn)槿粝到y(tǒng)塊內(nèi)部劃分的鍵區(qū)和值區(qū)的比例不當(dāng),也就是劃分的鍵值空間比與實(shí)際存儲(chǔ)的數(shù)據(jù)的鍵值空間比不一致,會(huì)出現(xiàn)規(guī)劃的鍵區(qū)和值區(qū)中其中一個(gè)區(qū)已存儲(chǔ)滿,但另一個(gè)區(qū)還有空余的情況,會(huì)造成存儲(chǔ)空間的浪費(fèi)。故使得系統(tǒng)塊中規(guī)劃的鍵值空間比與實(shí)際鍵值空間比一致,可以節(jié)省數(shù)據(jù)庫的資源,提高資源利用率。
[0077]本發(fā)明實(shí)施例還提供一種數(shù)據(jù)庫操作裝置,結(jié)構(gòu)示意圖如圖2所示。
[0078]本發(fā)明實(shí)施例中的數(shù)據(jù)庫為非關(guān)系型鍵值數(shù)據(jù)庫,所述數(shù)據(jù)庫操作裝置包括:理想鍵值空間比計(jì)算單元21、鍵值區(qū)域劃分單元22、鍵值數(shù)據(jù)移動(dòng)單元23、標(biāo)識(shí)號(hào)更新單元24、指針更新單元25以及釋放單元26,其中:
[0079]所述理想鍵值空間比計(jì)算單元21,適于計(jì)算選定系統(tǒng)塊BI內(nèi)部的理想鍵值空間比,所述理想鍵值空間比為鍵區(qū)與值區(qū)實(shí)際存儲(chǔ)數(shù)據(jù)占用空間的比值;
[0080]所述鍵值區(qū)域劃分單元22,適于選取空閑系統(tǒng)塊B2,對(duì)該空閑系統(tǒng)塊B2按照理想鍵值空間比劃分鍵區(qū)和值區(qū);
[0081 ] 所述鍵值數(shù)據(jù)移動(dòng)單元23適于將所述選定系統(tǒng)塊BI存儲(chǔ)的鍵值數(shù)據(jù)復(fù)制到該空閑系統(tǒng)塊B2 ;
[0082]所述標(biāo)識(shí)號(hào)更新單元24,適于更新元信息中所述空閑系統(tǒng)塊B2的標(biāo)識(shí)號(hào)為所述選定系統(tǒng)塊BI的標(biāo)識(shí)號(hào);
[0083]所述指針更新單元25,適于將內(nèi)存中指向所述選定系統(tǒng)塊BI的指針指向所述空閑系統(tǒng)塊B2 ;
[0084]所述釋放單元26,適于釋放所述選定系統(tǒng)塊BI。
[0085]在具體實(shí)施中,數(shù)據(jù)庫操作裝置還可以包括:比較單元27 (參見圖3),適于確定所述選定系統(tǒng)塊內(nèi)部的鍵區(qū)空間與值區(qū)空間的比值不同于所述理想鍵值空間比。
[0086]在具體實(shí)施中,數(shù)據(jù)庫操作裝置還可以包括:讀鎖定單元28 (參見圖3),適于在所述將所述選定系統(tǒng)塊存儲(chǔ)的鍵值數(shù)據(jù)復(fù)制到該空閑系統(tǒng)塊時(shí),對(duì)所述選定系統(tǒng)塊讀鎖定。
[0087]在具體實(shí)施中,數(shù)據(jù)庫操作裝置還可以包括:讀寫鎖定單元29 (參見圖3),適于在所述將內(nèi)存中指向所述選定系統(tǒng)塊的指針指向所述空閑系統(tǒng)塊時(shí),對(duì)所述選定系統(tǒng)塊讀寫鎖定。
[0088]在具體實(shí)施中,數(shù)據(jù)庫操作裝置還可以包括:業(yè)務(wù)數(shù)據(jù)表存儲(chǔ)單元,適于在所述選定系統(tǒng)塊存儲(chǔ)的數(shù)據(jù)屬于某項(xiàng)業(yè)務(wù)數(shù)據(jù)表,且該業(yè)務(wù)數(shù)據(jù)表尚有待存入其他系統(tǒng)塊的數(shù)據(jù)時(shí),以所述理想鍵值空間比劃分所述其他系統(tǒng)塊的鍵區(qū)和值區(qū),將所述待存入其他系統(tǒng)塊的數(shù)據(jù)寫入對(duì)應(yīng)的鍵區(qū)和值區(qū)。
[0089]在具體實(shí)施中,所述數(shù)據(jù)庫可以存儲(chǔ)于固態(tài)硬盤;所述數(shù)據(jù)庫操作裝置還包括:單次寫入數(shù)據(jù)量控制單元,適于將待寫入的數(shù)據(jù)暫存于內(nèi)存,當(dāng)所述暫存于內(nèi)存的數(shù)據(jù)大小等于所述固態(tài)硬盤閃存塊的大小時(shí),將所述暫存于內(nèi)存的數(shù)據(jù)一次寫入所述固態(tài)硬盤的閃存塊。
[0090]在具體實(shí)施中,數(shù)據(jù)庫操作裝置還可以包括:系統(tǒng)塊索引單元,適于關(guān)聯(lián)鍵值和系統(tǒng)塊;所述選定系統(tǒng)塊為與同一所述系統(tǒng)塊索引關(guān)聯(lián)的兩個(gè)所述系統(tǒng)塊。
[0091 ] 在具體實(shí)施中,數(shù)據(jù)庫操作裝置還可以包括:數(shù)據(jù)庫狀態(tài)判斷單元,適于判斷數(shù)據(jù)庫狀態(tài),確認(rèn)所述數(shù)據(jù)庫處于非繁忙狀態(tài)。
[0092]在具體實(shí)施中,數(shù)據(jù)庫操作裝置還可以包括:定時(shí)選取單元,適于以固定的時(shí)間間隔計(jì)算選擇系統(tǒng)塊作為所述選定系統(tǒng)塊。
[0093]本領(lǐng)域普通技術(shù)人員可以理解上述實(shí)施例的各種方法中的全部或部分步驟是可以通過程序來指令相關(guān)的硬件來完成,該程序可以存儲(chǔ)于一計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,存儲(chǔ)介質(zhì)可以包括:R0M、RAM、磁盤或光盤等。
[0094]雖然本發(fā)明披露如上,但本發(fā)明并非限定于此。任何本領(lǐng)域技術(shù)人員,在不脫離本發(fā)明的精神和范圍內(nèi),均可作各種更動(dòng)與修改,因此本發(fā)明的保護(hù)范圍應(yīng)當(dāng)以權(quán)利要求所限定的范圍為準(zhǔn)。
【主權(quán)項(xiàng)】
1.一種數(shù)據(jù)庫操作方法,其特征在于,所述數(shù)據(jù)庫為非關(guān)系型鍵值數(shù)據(jù)庫; 所述數(shù)據(jù)庫操作方法包括: 計(jì)算選定系統(tǒng)塊內(nèi)部的理想鍵值空間比,所述理想鍵值空間比為鍵區(qū)與值區(qū)實(shí)際存儲(chǔ)數(shù)據(jù)占用空間的比值; 選取空閑系統(tǒng)塊,對(duì)該空閑系統(tǒng)塊按照理想鍵值空間比劃分鍵區(qū)和值區(qū); 將所述選定系統(tǒng)塊存儲(chǔ)的鍵值數(shù)據(jù)復(fù)制到該空閑系統(tǒng)塊; 更新元信息中所述空閑系統(tǒng)塊的標(biāo)識(shí)號(hào)為所述選定系統(tǒng)塊的標(biāo)識(shí)號(hào); 將內(nèi)存中指向所述選定系統(tǒng)塊的指針指向所述空閑系統(tǒng)塊; 釋放所述選定系統(tǒng)塊。2.根據(jù)權(quán)利要求1所述的數(shù)據(jù)庫操作方法,其特征在于,在所述選取空閑系統(tǒng)塊之前還包括:確定所述選定系統(tǒng)塊內(nèi)部的鍵區(qū)空間與值區(qū)空間的比值不同于所述理想鍵值空間比。3.根據(jù)權(quán)利要求1所述的數(shù)據(jù)庫操作方法,其特征在于,當(dāng)所述選定系統(tǒng)塊存儲(chǔ)的數(shù)據(jù)屬于某項(xiàng)業(yè)務(wù)數(shù)據(jù)表,且該業(yè)務(wù)數(shù)據(jù)表尚有待存入其他系統(tǒng)塊的數(shù)據(jù)時(shí),以所述理想鍵值空間比劃分所述其他系統(tǒng)塊的鍵區(qū)和值區(qū),將所述待存入其他系統(tǒng)塊的數(shù)據(jù)寫入對(duì)應(yīng)的鍵區(qū)和值區(qū)。4.根據(jù)權(quán)利要求3所述的數(shù)據(jù)庫操作方法,其特征在于,所述數(shù)據(jù)庫存儲(chǔ)于固態(tài)硬盤;所述將所述選定系統(tǒng)塊存儲(chǔ)的鍵值數(shù)據(jù)復(fù)制到該空閑系統(tǒng)塊對(duì)應(yīng)的寫操作,和所述將所述待存入其他系統(tǒng)塊的數(shù)據(jù)寫入對(duì)應(yīng)的鍵區(qū)和值區(qū)對(duì)應(yīng)的寫操作,均以如下方式完成:將待寫入的數(shù)據(jù)暫存于內(nèi)存,當(dāng)所述暫存于內(nèi)存的數(shù)據(jù)大小等于所述固態(tài)硬盤閃存塊的大小時(shí),將所述暫存于內(nèi)存的數(shù)據(jù)一次寫入所述固態(tài)硬盤的閃存塊。5.根據(jù)權(quán)利要求1所述的數(shù)據(jù)庫操作方法,其特征在于,在所述計(jì)算選定系統(tǒng)塊內(nèi)部的理想鍵值空間比之前還包括:以固定的時(shí)間間隔計(jì)算選擇系統(tǒng)款作為所述選定系統(tǒng)塊。6.一種數(shù)據(jù)庫操作裝置,其特征在于,所述數(shù)據(jù)庫為非關(guān)系型鍵值數(shù)據(jù)庫,所述數(shù)據(jù)庫操作裝置包括:理想鍵值空間比計(jì)算單元、鍵值區(qū)域劃分單元、鍵值數(shù)據(jù)移動(dòng)單元、標(biāo)識(shí)號(hào)更新單元、指針更新單元以及釋放單元;其中: 所述理想鍵值空間比計(jì)算單元,適于計(jì)算選定系統(tǒng)塊內(nèi)部的理想鍵值空間比,所述理想鍵值空間比為鍵區(qū)與值區(qū)實(shí)際存儲(chǔ)數(shù)據(jù)占用空間的比值; 所述鍵值區(qū)域劃分單元,適于選取空閑系統(tǒng)塊,對(duì)該空閑系統(tǒng)塊按照理想鍵值空間比劃分鍵區(qū)和值區(qū); 所述鍵值數(shù)據(jù)移動(dòng)單元適于將所述選定系統(tǒng)塊存儲(chǔ)的鍵值數(shù)據(jù)復(fù)制到該空閑系統(tǒng)塊; 所述標(biāo)識(shí)號(hào)更新單元,適于更新元信息中所述空閑系統(tǒng)塊的標(biāo)識(shí)號(hào)為所述選定系統(tǒng)塊的標(biāo)識(shí)號(hào); 所述指針更新單元,適于將內(nèi)存中指向所述選定系統(tǒng)塊的指針指向所述空閑系統(tǒng)塊; 所述釋放單元,適于釋放所述選定系統(tǒng)塊。7.根據(jù)權(quán)利要求6所述的數(shù)據(jù)庫操作裝置,其特征在于,還包括:業(yè)務(wù)數(shù)據(jù)表存儲(chǔ)單元,適于在所述選定系統(tǒng)塊存儲(chǔ)的數(shù)據(jù)屬于某項(xiàng)業(yè)務(wù)數(shù)據(jù)表,且該業(yè)務(wù)數(shù)據(jù)表尚有待存入其他系統(tǒng)塊的數(shù)據(jù)時(shí),以所述理想鍵值空間比劃分所述其他系統(tǒng)塊的鍵區(qū)和值區(qū),將所述待存入其他系統(tǒng)塊的數(shù)據(jù)寫入對(duì)應(yīng)的鍵區(qū)和值區(qū)。8.根據(jù)權(quán)利要求7所述的數(shù)據(jù)庫操作裝置,其特征在于,所述數(shù)據(jù)庫存儲(chǔ)于固態(tài)硬盤;所述數(shù)據(jù)庫操作裝置還包括:單次寫入數(shù)據(jù)量控制單元,適于將待寫入的數(shù)據(jù)暫存于內(nèi)存,當(dāng)所述暫存于內(nèi)存的數(shù)據(jù)大小等于所述固態(tài)硬盤閃存塊的大小時(shí),將所述暫存于內(nèi)存的數(shù)據(jù)一次寫入所述固態(tài)硬盤的閃存塊。9.根據(jù)權(quán)利要求6所述的數(shù)據(jù)庫操作裝置,其特征在于,還包括:定時(shí)選取單元,適于以固定的時(shí)間間隔計(jì)算選擇系統(tǒng)塊作為所述選定系統(tǒng)塊。
【專利摘要】一種數(shù)據(jù)庫操作方法及裝置,所述數(shù)據(jù)庫為非關(guān)系型鍵值數(shù)據(jù)庫;所述方法包括:計(jì)算選定系統(tǒng)塊內(nèi)部的理想鍵值空間比,所述理想鍵值空間比為鍵區(qū)與值區(qū)實(shí)際存儲(chǔ)數(shù)據(jù)占用空間的比值;選取空閑系統(tǒng)塊,對(duì)該空閑系統(tǒng)塊按照理想鍵值空間比劃分鍵區(qū)和值區(qū);將所述選定系統(tǒng)塊存儲(chǔ)的鍵值數(shù)據(jù)復(fù)制到該空閑系統(tǒng)塊;更新元信息中所述空閑系統(tǒng)塊的標(biāo)識(shí)號(hào)為所述選定系統(tǒng)塊的標(biāo)識(shí)號(hào);將內(nèi)存中指向所述選定系統(tǒng)塊的指針指向所述空閑系統(tǒng)塊;釋放所述選定系統(tǒng)塊。所述方法及裝置可以高效利用資源。
【IPC分類】G06F17/30
【公開號(hào)】CN105224677
【申請(qǐng)?zhí)枴緾N201510673209
【發(fā)明人】湯奇峰, 粟超, 李飛
【申請(qǐng)人】上海晶贊科技發(fā)展有限公司
【公開日】2016年1月6日
【申請(qǐng)日】2015年10月16日