[發(fā)明專利]內(nèi)存緩存數(shù)據(jù)系統(tǒng)和數(shù)據(jù)索引方法在審
| 申請(qǐng)?zhí)枺?/td> | 201910397340.5 | 申請(qǐng)日: | 2019-05-14 |
| 公開(公告)號(hào): | CN111949648A | 公開(公告)日: | 2020-11-17 |
| 發(fā)明(設(shè)計(jì))人: | 胡蓉 | 申請(qǐng)(專利權(quán))人: | 北京沃東天駿信息技術(shù)有限公司 |
| 主分類號(hào): | G06F16/22 | 分類號(hào): | G06F16/22 |
| 代理公司: | 中原信達(dá)知識(shí)產(chǎn)權(quán)代理有限責(zé)任公司 11219 | 代理人: | 張一軍;張效榮 |
| 地址: | 100176 北京市北京經(jīng)濟(jì)技術(shù)*** | 國(guó)省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 內(nèi)存 緩存 數(shù)據(jù) 系統(tǒng) 索引 方法 | ||
本發(fā)明公開了一種內(nèi)存緩存數(shù)據(jù)系統(tǒng)和數(shù)據(jù)索引方法,涉及計(jì)算機(jī)技術(shù)領(lǐng)域。該系統(tǒng)的一具體實(shí)施方式包括:存儲(chǔ)在內(nèi)存緩存中預(yù)設(shè)的數(shù)據(jù)容器中的多個(gè)目標(biāo)的原始數(shù)據(jù);其中,所述原始數(shù)據(jù)包括至少一個(gè)索引維度的數(shù)據(jù);所述多個(gè)目標(biāo)中每一目標(biāo)的原始數(shù)據(jù)作為所述數(shù)據(jù)容器的一個(gè)元素,每一目標(biāo)具有所述數(shù)據(jù)容器的唯一下標(biāo);所述系統(tǒng)進(jìn)一步包括:用于對(duì)所述原始數(shù)據(jù)進(jìn)行索引的、對(duì)應(yīng)于所述索引維度的每一子維度的位圖數(shù)據(jù);其中,每一位圖數(shù)據(jù)中包含按照基于所述下標(biāo)的預(yù)設(shè)順序排列的所述多個(gè)目標(biāo)在該位圖數(shù)據(jù)對(duì)應(yīng)的子維度的取值。該實(shí)施方式能夠存儲(chǔ)目標(biāo)的多維度數(shù)據(jù)并使用Bitmap算法構(gòu)建索引結(jié)構(gòu),實(shí)現(xiàn)內(nèi)存緩存數(shù)據(jù)的多維度高效索引。
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,尤其涉及一種內(nèi)存緩存數(shù)據(jù)系統(tǒng)和數(shù)據(jù)索引方法。
背景技術(shù)
在現(xiàn)有的緩存技術(shù)中,一般基于哈希表結(jié)構(gòu)存儲(chǔ)數(shù)據(jù),索引數(shù)據(jù)時(shí),根據(jù)哈希表中的Key(鍵)查找對(duì)應(yīng)的Value(值)。在這種數(shù)據(jù)結(jié)構(gòu)中,僅能進(jìn)行Key與Value的一對(duì)一索引,不具備根據(jù)多個(gè)數(shù)據(jù)維度索引的能力,無法支撐高維度數(shù)據(jù)結(jié)構(gòu)和復(fù)雜業(yè)務(wù)需求。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明實(shí)施例提供一種內(nèi)存緩存數(shù)據(jù)系統(tǒng)和數(shù)據(jù)索引方法,能夠存儲(chǔ)目標(biāo)的多維度數(shù)據(jù)并使用Bitmap算法構(gòu)建索引結(jié)構(gòu),實(shí)現(xiàn)內(nèi)存緩存數(shù)據(jù)的多維度高效索引。
為實(shí)現(xiàn)上述目的,根據(jù)本發(fā)明的一個(gè)方面,提供了一種內(nèi)存緩存數(shù)據(jù)系統(tǒng)。
本發(fā)明實(shí)施例的內(nèi)存緩存數(shù)據(jù)系統(tǒng)可包括:存儲(chǔ)在內(nèi)存緩存中預(yù)設(shè)的數(shù)據(jù)容器中的多個(gè)目標(biāo)的原始數(shù)據(jù);其中,所述原始數(shù)據(jù)包括至少一個(gè)索引維度的數(shù)據(jù);所述多個(gè)目標(biāo)中每一目標(biāo)的原始數(shù)據(jù)作為所述數(shù)據(jù)容器的一個(gè)元素,每一目標(biāo)具有所述數(shù)據(jù)容器的唯一下標(biāo);所述系統(tǒng)可進(jìn)一步包括:用于對(duì)所述原始數(shù)據(jù)進(jìn)行索引的、對(duì)應(yīng)于所述索引維度的每一子維度的位圖數(shù)據(jù);其中,每一位圖數(shù)據(jù)中包含按照基于所述下標(biāo)的預(yù)設(shè)順序排列的所述多個(gè)目標(biāo)在該位圖數(shù)據(jù)對(duì)應(yīng)的子維度的取值。
可選地,所述系統(tǒng)可進(jìn)一步包括哈希表,用于存儲(chǔ)所述索引維度的每一子維度的哈希值以及該子維度對(duì)應(yīng)的位圖數(shù)據(jù)的存儲(chǔ)位置標(biāo)記。
可選地,所述原始數(shù)據(jù)可進(jìn)一步包括:至少一個(gè)非索引維度的數(shù)據(jù)。
可選地,所述順序?yàn)樗鱿聵?biāo)的升序,所述多個(gè)目標(biāo)中的任一目標(biāo)在位圖數(shù)據(jù)中的序號(hào)與該目標(biāo)的數(shù)據(jù)容器下標(biāo)相同。
可選地,所述數(shù)據(jù)容器為動(dòng)態(tài)數(shù)組。
為實(shí)現(xiàn)上述目的,根據(jù)本發(fā)明的另一方面,提供了一種基于上述內(nèi)存緩存數(shù)據(jù)系統(tǒng)的數(shù)據(jù)索引方法。
本發(fā)明實(shí)施例的數(shù)據(jù)索引方法包括:接收索引請(qǐng)求,獲取所述索引請(qǐng)求中攜帶的至少一個(gè)索引條件;在內(nèi)存緩存中確定所述索引條件對(duì)應(yīng)的至少一個(gè)位圖數(shù)據(jù),利用所述位圖數(shù)據(jù)或者針對(duì)所述位圖數(shù)據(jù)的位運(yùn)算結(jié)果確定符合所述索引條件的至少一個(gè)目標(biāo)的序號(hào);依據(jù)所述序號(hào)獲取所述目標(biāo)在數(shù)據(jù)容器的下標(biāo);其中,所述位運(yùn)算由所述索引請(qǐng)求中索引條件的邏輯狀態(tài)決定;響應(yīng)于所述索引請(qǐng)求,將數(shù)據(jù)容器中所述下標(biāo)指向的原始數(shù)據(jù)返回。
可選地,所述方法進(jìn)一步包括:在所述索引請(qǐng)求的請(qǐng)求數(shù)據(jù)未存儲(chǔ)在內(nèi)存緩存中時(shí),依據(jù)獲取的目標(biāo)在數(shù)據(jù)容器的下標(biāo)從磁盤或者第三方存儲(chǔ)系統(tǒng)中確定所述請(qǐng)求數(shù)據(jù)返回。
可選地,所述位運(yùn)算包括以下至少一種:或運(yùn)算、與運(yùn)算、非運(yùn)算、異或運(yùn)算。
為實(shí)現(xiàn)上述目的,根據(jù)本發(fā)明的又一方面,提供了一種電子設(shè)備。
本發(fā)明的一種電子設(shè)備包括:一個(gè)或多個(gè)處理器;存儲(chǔ)裝置,用于存儲(chǔ)一個(gè)或多個(gè)程序,當(dāng)所述一個(gè)或多個(gè)程序被所述一個(gè)或多個(gè)處理器執(zhí)行,使得所述一個(gè)或多個(gè)處理器實(shí)現(xiàn)本發(fā)明所提供的數(shù)據(jù)索引方法。
為實(shí)現(xiàn)上述目的,根據(jù)本發(fā)明的再一方面,提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京沃東天駿信息技術(shù)有限公司,未經(jīng)北京沃東天駿信息技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910397340.5/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 逐出高速緩存的行的電路布置、數(shù)據(jù)處理系統(tǒng)和方法
- 共享緩存管理系統(tǒng)及方法
- 分布式緩存系統(tǒng)、數(shù)據(jù)的緩存方法及緩存數(shù)據(jù)的查詢方法
- 一種緩存替換方法;裝置和系統(tǒng)
- 加速引擎及處理器
- 一種日志緩存方法、系統(tǒng)、設(shè)備及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 緩存控制方法、裝置和計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 至少具有三個(gè)緩存級(jí)別的緩存層級(jí)的混合低級(jí)緩存包含策略
- 基于雙緩存區(qū)的緩存方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)
- 緩存預(yù)載方法、裝置、處理器芯片及服務(wù)器
- 數(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)裝置





