[發(fā)明專利]內(nèi)存數(shù)據(jù)庫(kù)管理裝置有效
| 申請(qǐng)?zhí)枺?/td> | 201310707164.3 | 申請(qǐng)日: | 2013-12-20 |
| 公開(kāi)(公告)號(hào): | CN104731799B | 公開(kāi)(公告)日: | 2018-09-04 |
| 發(fā)明(設(shè)計(jì))人: | 胡天一;孫戰(zhàn)平;夏智;佟志臣;楊欣郁;馮敏 | 申請(qǐng)(專利權(quán))人: | 中國(guó)銀聯(lián)股份有限公司 |
| 主分類(lèi)號(hào): | G06F17/30 | 分類(lèi)號(hào): | G06F17/30 |
| 代理公司: | 中國(guó)專利代理(香港)有限公司 72001 | 代理人: | 方世棟;湯春龍 |
| 地址: | 200135 上海*** | 國(guó)省代碼: | 上海;31 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 內(nèi)存 數(shù)據(jù)庫(kù) 管理 裝置 | ||
1.一種內(nèi)存數(shù)據(jù)庫(kù)管理裝置,所述內(nèi)存數(shù)據(jù)庫(kù)管理裝置包括:
數(shù)據(jù)存儲(chǔ)單元,所述數(shù)據(jù)存儲(chǔ)單元用于接收來(lái)自外部應(yīng)用的數(shù)據(jù)記錄存儲(chǔ)請(qǐng)求并將所述數(shù)據(jù)記錄存儲(chǔ)請(qǐng)求中所包含的待存儲(chǔ)數(shù)據(jù)記錄以哈希結(jié)構(gòu)的方式存儲(chǔ)到由內(nèi)存池管理單元所分配的內(nèi)存空間中;
數(shù)據(jù)查詢單元,所述數(shù)據(jù)查詢單元用于接收來(lái)自外部應(yīng)用的數(shù)據(jù)記錄查詢請(qǐng)求,并基于所述數(shù)據(jù)記錄查詢請(qǐng)求執(zhí)行查詢操作,隨之將查詢結(jié)果傳送回所述外部應(yīng)用;
內(nèi)存池管理單元,所述內(nèi)存池管理單元用于根據(jù)來(lái)自所述數(shù)據(jù)存儲(chǔ)單元的內(nèi)存分配指令分配內(nèi)存空間,并將所分配的內(nèi)存空間的地址傳送回所述數(shù)據(jù)存儲(chǔ)單元,其中,所分配的小塊內(nèi)存空間具有如下層級(jí)結(jié)構(gòu):內(nèi)存簇、內(nèi)存桶和內(nèi)存塊,每個(gè)內(nèi)存簇包含若干內(nèi)存桶,每個(gè)內(nèi)存桶包含若干內(nèi)存塊,
所述哈希結(jié)構(gòu)包括哈希數(shù)組和使用情況鏈表,
在接收到所述數(shù)據(jù)記錄查詢請(qǐng)求后,所述數(shù)據(jù)查詢單元以如下方式執(zhí)行查詢操作:(1)計(jì)算待查詢的數(shù)據(jù)記錄的哈希值;(2)訪問(wèn)以所述哈希值作為數(shù)組下標(biāo)的所述哈希數(shù)組中對(duì)應(yīng)的數(shù)組單元,并隨之遍歷該數(shù)組單元中的入口指針?biāo)赶虻臄?shù)據(jù)記錄鏈表以查找出目標(biāo)數(shù)據(jù)記錄,并將查詢結(jié)果傳送回所述外部應(yīng)用;(3)將所述使用情況鏈表中與所訪問(wèn)的數(shù)組單元相對(duì)應(yīng)的節(jié)點(diǎn)移動(dòng)至所述使用情況鏈表的尾部。
2.根據(jù)權(quán)利要求1所述的內(nèi)存數(shù)據(jù)庫(kù)管理裝置,其特征在于,當(dāng)接收到所述數(shù)據(jù)記錄存儲(chǔ)請(qǐng)求后,所述數(shù)據(jù)存儲(chǔ)單元基于所述數(shù)據(jù)記錄存儲(chǔ)請(qǐng)求中所包含的待存儲(chǔ)的數(shù)據(jù)記錄的大小構(gòu)造內(nèi)存分配指令,隨之將所述內(nèi)存分配指令傳送到內(nèi)存池管理單元,其中,所述內(nèi)存分配指令包含待分配的內(nèi)存空間的大小。
3.根據(jù)權(quán)利要求2所述的內(nèi)存數(shù)據(jù)庫(kù)管理裝置,其特征在于,所述小塊內(nèi)存空間是小于1M的內(nèi)存空間,并且同一個(gè)內(nèi)存簇中的所有內(nèi)存塊的大小均相同,而所有內(nèi)存簇中的每個(gè)內(nèi)存桶的大小均為1M。
4.根據(jù)權(quán)利要求3所述的內(nèi)存數(shù)據(jù)庫(kù)管理裝置,其特征在于,不同內(nèi)存簇中的內(nèi)存塊的大小依次按照增長(zhǎng)因子呈倍數(shù)增長(zhǎng)。
5.根據(jù)權(quán)利要求4所述的內(nèi)存數(shù)據(jù)庫(kù)管理裝置,其特征在于,每個(gè)內(nèi)存簇具有與其相關(guān)聯(lián)的空閑鏈表,所述空閑鏈表保存該內(nèi)存簇中已被釋放的內(nèi)存塊的地址。
6.根據(jù)權(quán)利要求5所述的內(nèi)存數(shù)據(jù)庫(kù)管理裝置,其特征在于,當(dāng)所述內(nèi)存分配指令指示待分配的內(nèi)存空間是大塊內(nèi)存空間時(shí),所述內(nèi)存池管理單元直接從內(nèi)存中分配相應(yīng)大小的內(nèi)存空間,并且將所分配的內(nèi)存空間的地址傳送回所述數(shù)據(jù)存儲(chǔ)單元,其中,所述相應(yīng)大小的內(nèi)存空間是待分配的內(nèi)存空間的大小+4個(gè)字節(jié)。
7.根據(jù)權(quán)利要求6所述的內(nèi)存數(shù)據(jù)庫(kù)管理裝置,其特征在于,當(dāng)所述內(nèi)存分配指令指示待分配的內(nèi)存空間是小塊內(nèi)存空間時(shí),所述內(nèi)存池管理單元以如下方式分配內(nèi)存空間,并且將所分配的內(nèi)存空間的地址傳送回所述數(shù)據(jù)存儲(chǔ)單元:(A1)查找包含與待分配的內(nèi)存空間的大小相匹配的內(nèi)存塊的內(nèi)存簇;(A2)如果不存在包含與待分配的內(nèi)存空間的大小相匹配的內(nèi)存塊的內(nèi)存簇,則創(chuàng)建相應(yīng)的內(nèi)存簇、內(nèi)存桶和內(nèi)存塊,并將所創(chuàng)建的內(nèi)存塊的地址傳送回所述數(shù)據(jù)存儲(chǔ)單元;(A3)如果存在包含與待分配的內(nèi)存空間的大小相匹配的內(nèi)存塊的內(nèi)存簇,則確定與該內(nèi)存簇相關(guān)聯(lián)的空閑鏈表是否為空,如果所述空閑鏈表不為空,則進(jìn)入步驟(A4),而如果所述空閑鏈表為空,則進(jìn)入步驟(A5);(A4)將該空閑鏈表中第一個(gè)節(jié)點(diǎn)所指示的內(nèi)存塊的地址傳送回所述數(shù)據(jù)存儲(chǔ)單元;(A5)確定該內(nèi)存簇的當(dāng)前使用的內(nèi)存桶是否已滿,并且如果該內(nèi)存簇的當(dāng)前使用的內(nèi)存桶未滿,則進(jìn)入步驟(A6),否則,進(jìn)入步驟(A7);(A6)將該當(dāng)前使用的內(nèi)存桶中的一個(gè)空閑的內(nèi)存塊的地址傳送回所述數(shù)據(jù)存儲(chǔ)單元;(A7)在內(nèi)存中創(chuàng)建該內(nèi)存簇的一個(gè)新的內(nèi)存桶,并將該新的內(nèi)存桶中的一個(gè)空閑的內(nèi)存塊的地址傳送回所述數(shù)據(jù)存儲(chǔ)單元。
8.根據(jù)權(quán)利要求7所述的內(nèi)存數(shù)據(jù)庫(kù)管理裝置,其特征在于,當(dāng)確定需要釋放大塊內(nèi)存空間時(shí),所述內(nèi)存池管理單元獲取當(dāng)前待釋放大塊內(nèi)存空間的地址,并基于該地址直接從內(nèi)存中釋放該大塊內(nèi)存空間。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中國(guó)銀聯(lián)股份有限公司,未經(jīng)中國(guó)銀聯(lián)股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310707164.3/1.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 同類(lèi)專利
- 專利分類(lèi)
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F17-00 特別適用于特定功能的數(shù)字計(jì)算設(shè)備或數(shù)據(jù)處理設(shè)備或數(shù)據(jù)處理方法
G06F17-10 .復(fù)雜數(shù)學(xué)運(yùn)算的
G06F17-20 .處理自然語(yǔ)言數(shù)據(jù)的
G06F17-30 .信息檢索;及其數(shù)據(jù)庫(kù)結(jié)構(gòu)
G06F17-40 .數(shù)據(jù)的獲取和記錄
G06F17-50 .計(jì)算機(jī)輔助設(shè)計(jì)
- 數(shù)據(jù)庫(kù)
- 數(shù)據(jù)庫(kù)管理系統(tǒng)及數(shù)據(jù)庫(kù)
- 數(shù)據(jù)庫(kù)構(gòu)筑裝置、數(shù)據(jù)庫(kù)檢索裝置、數(shù)據(jù)庫(kù)裝置、數(shù)據(jù)庫(kù)構(gòu)筑方法、以及數(shù)據(jù)庫(kù)檢索方法
- 數(shù)據(jù)庫(kù)和數(shù)據(jù)庫(kù)處理方法
- 數(shù)據(jù)庫(kù)系統(tǒng)、數(shù)據(jù)庫(kù)更新方法、數(shù)據(jù)庫(kù)以及數(shù)據(jù)庫(kù)更新程序
- 容器數(shù)據(jù)庫(kù)
- 數(shù)據(jù)庫(kù)同步方法及數(shù)據(jù)庫(kù)
- 一種MongoDB數(shù)據(jù)庫(kù)對(duì)象復(fù)制延遲監(jiān)控方法和裝置
- 數(shù)據(jù)分布式存儲(chǔ)方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)
- 數(shù)據(jù)庫(kù)語(yǔ)句執(zhí)行方法及裝置





