两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

基于緩存表的數(shù)據(jù)查詢方法

文檔序號(hào):6384371閱讀:289來(lái)源:國(guó)知局
專利名稱:基于緩存表的數(shù)據(jù)查詢方法
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)查詢方法,尤其涉及一種基于緩存表的數(shù)據(jù)查詢方法。
背景技術(shù)
現(xiàn)有技術(shù)中,是通過(guò)查詢條線生成SQL直接進(jìn)行數(shù)據(jù)庫(kù)表查詢來(lái)獲取數(shù)據(jù),由于渠道查詢并發(fā)大,數(shù)據(jù)多,大量查詢導(dǎo)致的查詢效率低。

發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問(wèn)題是提供一種基于緩存表的數(shù)據(jù)查詢方法,提高多用戶、高并發(fā)的聯(lián)機(jī)查詢服務(wù),保證每次網(wǎng)銀查詢時(shí)間控制在最優(yōu)時(shí)間內(nèi)。
為了解決上述技術(shù)問(wèn)題,本發(fā)明提供了一種基于緩存表的數(shù)據(jù)查詢方法,用于金融交易數(shù)據(jù)的查詢,包括以下步驟SI :接收數(shù)據(jù)查詢請(qǐng)求,并根據(jù)所述查詢請(qǐng)求中的查詢條件求得哈希值;S2 :根據(jù)查詢條件判斷該請(qǐng)求查詢的數(shù)據(jù)是否為首次查詢,如果是,則執(zhí)行步驟S3,如果否,則執(zhí)行步驟S4 ;S3 :從交易表中讀取請(qǐng)求查詢的數(shù)據(jù),并將所述求得的哈希值以及該數(shù)據(jù)或者該數(shù)據(jù)在交易表中的ROWID值插入到緩存表的當(dāng)前緩存區(qū)內(nèi)緩存一段預(yù)定時(shí)間,返回請(qǐng)求查詢的數(shù)據(jù);S4:判斷對(duì)請(qǐng)求查詢的數(shù)據(jù)的本次查詢距上次查詢是否超過(guò)所述一段預(yù)定時(shí)間,如果是,則執(zhí)行步驟S3,如果否,則執(zhí)行步驟S5 ;S5:根據(jù)所述求得的哈希值查詢所述緩存表的當(dāng)前緩存區(qū),從中讀取并返回請(qǐng)求查詢的數(shù)據(jù)或者根據(jù)該數(shù)據(jù)在交易表中的ROWID值從交易表中返回請(qǐng)求查詢的數(shù)據(jù)。作為優(yōu)選,所述緩存表為一個(gè)或多個(gè)作為優(yōu)選,每個(gè)所述緩存表除包括所述當(dāng)前緩存區(qū)外,還包括一個(gè)或多個(gè)其他緩存區(qū),所述其他緩存區(qū)選擇性地存儲(chǔ)所述一段預(yù)定時(shí)間之前的數(shù)據(jù)信息。作為優(yōu)選,在步驟SI中,所述查詢請(qǐng)求包括翻頁(yè)操作,所述查詢條件包括借貸標(biāo)識(shí)、金額、所有帳號(hào)信息。作為優(yōu)選,所述一段預(yù)定時(shí)間為30分鐘。與現(xiàn)有技術(shù)相比,本發(fā)明的基于緩存表的數(shù)據(jù)查詢方法的有益效果在于I、通過(guò)設(shè)置緩存表,提高多用戶、高并發(fā)的聯(lián)機(jī)查詢服務(wù),保證每次網(wǎng)銀查詢時(shí)間控制在最優(yōu)時(shí)間內(nèi)。2、建立多個(gè)緩存表、采用按時(shí)分區(qū)等技術(shù)提高并行多表下的緩解堵塞問(wèn)題,使用多緩存表的方式降低緩存表的數(shù)據(jù)量級(jí);通過(guò)指定分區(qū)進(jìn)行查詢,從而進(jìn)一步減少了返查時(shí)的數(shù)據(jù)量。


圖I為本發(fā)明的實(shí)施例的基于緩存表的數(shù)據(jù)查詢方法的流程圖。
具體實(shí)施例方式下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明的實(shí)施例的基于緩存表的數(shù)據(jù)查詢方法作進(jìn)一步詳細(xì)描述,但不作為對(duì)本發(fā)明的限定。圖I為本發(fā)明的實(shí)施例的基于緩存表的數(shù)據(jù)查詢方法的流程圖。如圖I所示,本發(fā)明的實(shí)施例的基于緩存表的數(shù)據(jù)查詢方法,用于金融交易數(shù)據(jù)的查詢,包括以下步驟SI :接收數(shù)據(jù)查詢請(qǐng)求,并根據(jù)所述查詢請(qǐng)求中的查詢條件求得哈希值。通過(guò)哈希算法(一種散列算法)求得哈希值,哈希值是一段數(shù)據(jù)唯一且極其緊湊的數(shù)值表示形式。如果散列一段明文而且哪怕只更改該段落的一個(gè)字母,隨后的哈希都將產(chǎn)生不同的值。因此每一個(gè)數(shù)據(jù)的哈希值是唯一的。 S2:根據(jù)查詢條件判斷該請(qǐng)求查詢的數(shù)據(jù)是否為首次查詢,如果是,則執(zhí)行步驟S3,如果否,則執(zhí)行步驟S4??梢酝ㄟ^(guò)任何現(xiàn)有的算法進(jìn)行該判斷。S3 :從交易表中讀取請(qǐng)求查詢的數(shù)據(jù),并將所述求得的哈希值以及該數(shù)據(jù)或者該數(shù)據(jù)在交易表中的ROWID值插入到緩存表的當(dāng)前緩存區(qū)內(nèi)緩存一段預(yù)定時(shí)間,返回請(qǐng)求查詢的數(shù)據(jù)。ROWID就是唯一標(biāo)志記錄物理位置的一個(gè)標(biāo)識(shí),在交易表中對(duì)數(shù)據(jù)起到快速索弓丨、定位的作用,非常有利于對(duì)包含海量數(shù)據(jù)的數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)操作。S4:判斷對(duì)請(qǐng)求查詢的數(shù)據(jù)的本次查詢距上次查詢是否超過(guò)所述一段預(yù)定時(shí)間,如果是,則執(zhí)行步驟S3,如果否,則執(zhí)行步驟S5 ;S5:根據(jù)所述求得的哈希值查詢所述緩存表的當(dāng)前緩存區(qū),從中讀取并返回請(qǐng)求查詢的數(shù)據(jù)或者根據(jù)該數(shù)據(jù)在交易表中的ROWID值從交易表中返回請(qǐng)求查詢的數(shù)據(jù)。針對(duì)不同的數(shù)據(jù)查詢請(qǐng)求,尤其針對(duì)金融交易類海量數(shù)據(jù)查詢請(qǐng)求,需要處理不同種類的數(shù)據(jù)。當(dāng)從交易表中讀取的查詢數(shù)據(jù)相對(duì)簡(jiǎn)單的時(shí)候,可以將哈希值以及該數(shù)據(jù)一并插入到當(dāng)前緩存區(qū),便于此后發(fā)生相同查詢時(shí)直接從緩存表中讀取并返回請(qǐng)求查詢的數(shù)據(jù);當(dāng)從交易表中讀取的查詢數(shù)據(jù)相對(duì)復(fù)雜的時(shí)候,可以選擇將哈希值以及該數(shù)據(jù)在交易表中的ROWID值插入到當(dāng)前緩存區(qū),此后發(fā)生相同查詢時(shí),根據(jù)哈希值查詢到緩存表當(dāng)前緩存區(qū)中相關(guān)數(shù)據(jù)信息,然后通過(guò)ROWID值快速準(zhǔn)確地訪問(wèn)交易表中完整數(shù)據(jù)內(nèi)容,從交易表中返回請(qǐng)求查詢的數(shù)據(jù)。所述一段預(yù)定時(shí)間可以根據(jù)不同的需要進(jìn)行設(shè)定,例如可以設(shè)定為30分鐘,所述當(dāng)前緩存區(qū)存儲(chǔ)30分鐘內(nèi)的查詢信息。對(duì)于一般的數(shù)據(jù)查詢請(qǐng)求,當(dāng)前緩存區(qū)存儲(chǔ)30分鐘內(nèi)的查詢信息可最大程度滿足數(shù)據(jù)查詢的快速要求,并且占有系統(tǒng)資源最少,達(dá)到最優(yōu)配置。作為一種改進(jìn),緩存表為多個(gè),將查詢的數(shù)據(jù)、該數(shù)據(jù)哈希值以及ROWID值插入到多個(gè)緩存表中的一張中,通過(guò)這樣多緩存表的方式可以降低緩存表的數(shù)據(jù)量級(jí)。作為本實(shí)施例的優(yōu)選方案,每個(gè)所述緩存表除包括所述當(dāng)前緩存區(qū)外,還包括一個(gè)或多個(gè)其他緩存區(qū),所述其他緩存區(qū)選擇性地存儲(chǔ)所述一段預(yù)定時(shí)間之前的數(shù)據(jù)信息。當(dāng)前緩存區(qū)緩存預(yù)定時(shí)間內(nèi)(例如30分鐘)的數(shù)據(jù),其他緩存區(qū)可以根據(jù)需要,例如針對(duì)特定時(shí)期滿足大量或者少量查詢請(qǐng)求時(shí),存儲(chǔ)預(yù)定時(shí)間之前的數(shù)據(jù)信息,并可以動(dòng)態(tài)的將更早期的數(shù)據(jù)進(jìn)行清理。舉例說(shuō)明,其他緩存區(qū)可以包括隔離緩存區(qū)和清理區(qū),針對(duì)當(dāng)前緩存區(qū)緩存30分鐘內(nèi)的數(shù)據(jù),隔離緩存區(qū)可以存儲(chǔ)這30分鐘之前一段時(shí)間(例如也是30分鐘)的數(shù)據(jù)作為查詢請(qǐng)求的備用,清理區(qū)則是存儲(chǔ)有再早期的數(shù)據(jù)并且經(jīng)過(guò)清理后的緩存表的一部分。這種按時(shí)分區(qū)的方式,通過(guò)對(duì)當(dāng)前緩存區(qū)這樣的一個(gè)指定分區(qū)進(jìn)行查詢,從而進(jìn)一步減少了返查時(shí)的數(shù)據(jù)量,提高并行多表下的緩解堵塞問(wèn)題。作為另一種改進(jìn),在步驟SI中,所述查詢請(qǐng)求包括翻頁(yè)操作,所述查詢條件包括借貸標(biāo)識(shí)、金額、所有帳號(hào)信息。為了更好地說(shuō)明本發(fā)明的實(shí)施例的基于緩存表的數(shù)據(jù)查詢方法,這里以網(wǎng)銀當(dāng)日查詢?yōu)槔M(jìn)一步說(shuō)明。計(jì)算機(jī)化試驗(yàn)信息臺(tái)(CTIS)接收前端發(fā)起的當(dāng)日交易查詢請(qǐng)求,將請(qǐng)求中的查詢條件(可以是包括借貸標(biāo)識(shí)、金額、所有賬號(hào)信息)求得哈希值(hash),根據(jù)請(qǐng)求條件判斷是否為首次查詢。若不是首次查詢,將直接根據(jù)哈希碼(hashcode)查詢緩存表中的對(duì)應(yīng)分區(qū),若在半小時(shí)內(nèi)有匹配的查詢記錄,則關(guān)聯(lián)對(duì)應(yīng)的緩存表查詢結(jié)果將交易數(shù)據(jù)返回給計(jì)算機(jī)化試驗(yàn)信息臺(tái)(CTIS)接收前端;若是首次查詢或上次查詢時(shí)間已超過(guò) 半小時(shí),則根據(jù)查詢條件,則關(guān)聯(lián)交易表讀取交易數(shù)據(jù),并將交易數(shù)據(jù)或者ROWID以及主要交易數(shù)據(jù)的哈希值插入到緩存表中返回給計(jì)算機(jī)化試驗(yàn)信息臺(tái)(CTIS)接收前端。以上實(shí)施例僅為本發(fā)明的示例性實(shí)施例,不用于限制本發(fā)明,本發(fā)明的保護(hù)范圍由權(quán)利要求書(shū)限定。本領(lǐng)域技術(shù)人員可以在本發(fā)明的實(shí)質(zhì)和保護(hù)范圍內(nèi),對(duì)本發(fā)明做出各種修改或等同替換,這種修改或等同替換也應(yīng)視為落在本發(fā)明的保護(hù)范圍內(nèi)。
權(quán)利要求
1.一種基于緩存表的數(shù)據(jù)查詢方法,用于金融交易數(shù)據(jù)的查詢,其特征在于,包括以下步驟 51:接收數(shù)據(jù)查詢請(qǐng)求,并根據(jù)所述查詢請(qǐng)求中的查詢條件求得哈希值; 52:根據(jù)查詢條件判斷該請(qǐng)求查詢的數(shù)據(jù)是否為首次查詢,如果是,則執(zhí)行步驟S3,如果否,則執(zhí)行步驟S4; 53:從交易表中讀取請(qǐng)求查詢的數(shù)據(jù),并將所述求得的哈希值以及該數(shù)據(jù)或者該數(shù)據(jù)在交易表中的ROWID值插入到緩存表的當(dāng)前緩存區(qū)內(nèi)緩存一段預(yù)定時(shí)間,返回請(qǐng)求查詢的數(shù)據(jù); S4:判斷對(duì)請(qǐng)求查詢的數(shù)據(jù)的本次查詢距上次查詢是否超過(guò)所述一段預(yù)定時(shí)間,如果是,則執(zhí)行步驟S3,如果否,則執(zhí)行步驟S5 ; S5 :根據(jù)所述求得的哈希值查詢所述緩存表的當(dāng)前緩存區(qū),從中讀取并返回請(qǐng)求查詢的數(shù)據(jù)或者根據(jù)該數(shù)據(jù)在交易表中的ROWID值從交易表中返回請(qǐng)求查詢的數(shù)據(jù)。
2.根據(jù)權(quán)利要求I所述的基于緩存表的數(shù)據(jù)查詢方法,其特征在于,所述緩存表為一個(gè)或多個(gè)。
3.根據(jù)權(quán)利要求2所述的基于緩存表的數(shù)據(jù)查詢方法,其特征在于,每個(gè)所述緩存表除包括所述當(dāng)前緩存區(qū)外,還包括一個(gè)或多個(gè)其他緩存區(qū),所述其他緩存區(qū)選擇性地存儲(chǔ)所述一段預(yù)定時(shí)間之前的數(shù)據(jù)信息。
4.根據(jù)權(quán)利要求I所述的基于緩存表的數(shù)據(jù)查詢方法,其特征在于,在步驟SI中,所述查詢請(qǐng)求包括翻頁(yè)操作,所述查詢條件包括借貸標(biāo)識(shí)、金額、所有帳號(hào)信息。
5.根據(jù)權(quán)利要求I至4中任一項(xiàng)所述的基于緩存表的數(shù)據(jù)查詢方法,其特征在于,所述一段預(yù)定時(shí)間為30分鐘。
全文摘要
本發(fā)明公開(kāi)了一種基于緩存表的數(shù)據(jù)查詢方法,包括以下步驟S1接收數(shù)據(jù)查詢請(qǐng)求,求得哈希值;S2判斷該數(shù)據(jù)是否為首次查詢,是則執(zhí)行步驟S3,否則執(zhí)行步驟S4;S3從交易表中讀取請(qǐng)求查詢的數(shù)據(jù),并將哈希值以及該數(shù)據(jù)或者該數(shù)據(jù)ROWID值插入到緩存表的當(dāng)前緩存區(qū)內(nèi)緩存一段預(yù)定時(shí)間,返回?cái)?shù)據(jù);S4判斷距上次查詢是否超過(guò)所述一段預(yù)定時(shí)間,是則執(zhí)行步驟S3,否則執(zhí)行步驟S5;S5根據(jù)哈希值查詢當(dāng)前緩存區(qū),從中讀取并返回請(qǐng)求查詢的數(shù)據(jù)或者根據(jù)該數(shù)據(jù)ROWID值從交易表中返回?cái)?shù)據(jù)。本發(fā)明的基于緩存表的數(shù)據(jù)查詢方法,提高多用戶、高并發(fā)的聯(lián)機(jī)查詢服務(wù),保證每次網(wǎng)銀查詢時(shí)間控制在最優(yōu)時(shí)間內(nèi)。
文檔編號(hào)G06F17/30GK102968507SQ20121054510
公開(kāi)日2013年3月13日 申請(qǐng)日期2012年12月14日 優(yōu)先權(quán)日2012年12月14日
發(fā)明者劉英碩, 張巖, 李軍超, 劉其平, 方禮蓉 申請(qǐng)人:中國(guó)銀行股份有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
灵璧县| 大新县| 芜湖市| 铜川市| 修武县| 武邑县| 荣昌县| 杭锦后旗| 平陆县| 卢龙县| 扎囊县| 边坝县| 梓潼县| 瓦房店市| 崇左市| 临邑县| 庆元县| 永州市| 金溪县| 南华县| 清水河县| 资源县| 阿克苏市| 新干县| 永丰县| 乃东县| 新巴尔虎左旗| 汉沽区| 凌源市| 宁津县| 罗源县| 昂仁县| 龙海市| 鲁甸县| 萝北县| 衡阳市| 盘山县| 萍乡市| 米脂县| 本溪市| 五寨县|