[發(fā)明專利]一種數(shù)據(jù)庫查詢方法和裝置在審
| 申請?zhí)枺?/td> | 201810529930.4 | 申請日: | 2018-05-29 |
| 公開(公告)號: | CN108763469A | 公開(公告)日: | 2018-11-06 |
| 發(fā)明(設(shè)計(jì))人: | 王文慶 | 申請(專利權(quán))人: | 鄭州云海信息技術(shù)有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 北京安信方達(dá)知識產(chǎn)權(quán)代理有限公司 11262 | 代理人: | 李紅爽;解婷婷 |
| 地址: | 450018 河南省鄭州市*** | 國省代碼: | 河南;41 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 查詢模式 數(shù)據(jù)庫查詢 方法和裝置 記錄數(shù)據(jù)量 查詢結(jié)果 跳過 篩選 數(shù)據(jù)庫技術(shù) 查詢 查詢處理 分頁顯示 目標(biāo)結(jié)果 全面性 預(yù)設(shè) 數(shù)據(jù)庫 統(tǒng)計(jì) | ||
本發(fā)明公開了一種數(shù)據(jù)庫查詢方法和裝置。涉及數(shù)據(jù)庫技術(shù);解決了數(shù)據(jù)庫查詢時無法兼顧查詢結(jié)果全面性與查詢處理速度的問題。該方法包括:針對當(dāng)前查詢?nèi)蝿?wù),統(tǒng)計(jì)多個預(yù)設(shè)的查詢模式中各個查詢模式對應(yīng)的跳過記錄數(shù)據(jù)量;選擇所述跳過記錄數(shù)據(jù)量較小的查詢模式,在所述查詢模式下從查詢結(jié)果集中篩選目標(biāo)。本發(fā)明提供的技術(shù)方案適用于數(shù)據(jù)庫分頁顯示,實(shí)現(xiàn)了最快速的對全量查詢結(jié)合集進(jìn)行篩選從而得到目標(biāo)結(jié)果。
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)庫技術(shù),尤指一種數(shù)據(jù)庫查詢方法和裝置。
背景技術(shù)
互聯(lián)網(wǎng)時代實(shí)際上是數(shù)據(jù)的時代,構(gòu)建Web2.0應(yīng)用必然要涉及到海量數(shù)據(jù)的顯示,數(shù)據(jù)分頁顯示技術(shù)是開發(fā)過程中經(jīng)常使用的數(shù)據(jù)顯示方法,數(shù)據(jù)分頁效率也是系統(tǒng)性能好壞的重要評價指標(biāo)。MongoDB由于具有快速、可擴(kuò)展性,豐富的編程接口及運(yùn)維方便等特點(diǎn),使其在大數(shù)據(jù)時代異軍突起,為Web2.0應(yīng)用提供可擴(kuò)展的高性能存儲解決方案。MongoDB中使用limit函數(shù)限制返回的結(jié)果數(shù),使用skip函數(shù)跳過指定條數(shù)的記錄,所以使用limit函數(shù)并結(jié)合skip函數(shù)能夠方便的實(shí)現(xiàn)數(shù)據(jù)分頁顯示。此種方法當(dāng)數(shù)據(jù)量和并發(fā)訪問量均較小時能夠很好的發(fā)揮作用。但是當(dāng)數(shù)據(jù)量很大時,skip函數(shù)的操作會變得很慢,所以有必要對MongoDB分頁技術(shù)進(jìn)行改進(jìn)和優(yōu)化,使得其在大數(shù)據(jù)查詢和顯示方面表現(xiàn)的更好。
目前,針對MongoDB分頁技術(shù)的改進(jìn)方法主要有以下幾種:
第一種方法:限定結(jié)果集的頁數(shù),類似于搜索引擎結(jié)果分頁策略,如:百度、谷歌的方法。雖然,顯示查找得到的結(jié)果數(shù)據(jù)量巨大,但用戶能查看的只能是前50-80頁的數(shù)據(jù),這種方法由于限定結(jié)果記錄在萬條以下,所以,獲取頁面數(shù)據(jù)速度快,但顯示的數(shù)據(jù)不全。
第二種方法:把所有符合條件的數(shù)據(jù)放在數(shù)組中,由于也是一次查詢數(shù)據(jù)庫,且放在內(nèi)存中,所以,提高了數(shù)據(jù)分頁的速度。但是,隨著結(jié)果集數(shù)據(jù)的增大,對主機(jī)物理內(nèi)存要求過大,容易造成內(nèi)存溢出,Web應(yīng)用穩(wěn)定性受到影響,同時一次性返回所有記錄,網(wǎng)絡(luò)數(shù)據(jù)傳輸量較大,系統(tǒng)首次查詢速度過慢。
綜上,現(xiàn)有的數(shù)據(jù)庫查詢分頁方法存在無法兼顧查詢結(jié)果全面性與查詢處理速度的問題。
發(fā)明內(nèi)容
為了解決上述技術(shù)問題,本發(fā)明提供了一種數(shù)據(jù)庫查詢方法和裝置,通過比較不同的查詢模式進(jìn)而選擇當(dāng)前查詢?nèi)蝿?wù)所使用的查詢模式,以實(shí)現(xiàn)最快速的對全量查詢結(jié)合集進(jìn)行篩選從而得到目標(biāo)結(jié)果,解決了現(xiàn)有的數(shù)據(jù)庫查詢分頁方法存在無法兼顧查詢結(jié)果全面性與查詢處理速度的問題。
為了達(dá)到本發(fā)明目的,本發(fā)明提供了一種數(shù)據(jù)庫查詢方法,該方法包括:
針對當(dāng)前查詢?nèi)蝿?wù),統(tǒng)計(jì)多個預(yù)設(shè)的查詢模式中各個查詢模式對應(yīng)的跳過記錄數(shù)據(jù)量;
選擇所述跳過記錄數(shù)據(jù)量較小的查詢模式,在所述查詢模式下從查詢結(jié)果集中篩選目標(biāo)。
優(yōu)選的,所述多個預(yù)設(shè)的查詢模式至少包含第一查詢模式和第二查詢模式,該方法還包括:
配置所述第一查詢模式和所述第二查詢模式,所述第一查詢模式指示正序查詢,所述第二查詢模式指示反向查詢。
優(yōu)選的,所述統(tǒng)計(jì)多個預(yù)設(shè)的查詢模式中各個查詢模式對應(yīng)的跳過記錄數(shù)據(jù)量的步驟具體為:
統(tǒng)計(jì)所述跳過記錄數(shù)據(jù)量在所述當(dāng)前查詢?nèi)蝿?wù)請求的查詢結(jié)果集中所占的百比分。
優(yōu)選的,所述跳過記錄數(shù)據(jù)量具體為跳過的所述查詢結(jié)果集中的數(shù)據(jù)頁數(shù)。
優(yōu)選的,針對當(dāng)前查詢?nèi)蝿?wù),統(tǒng)計(jì)多個預(yù)設(shè)的查詢模式中各個查詢模式對應(yīng)的跳過記錄數(shù)據(jù)量的步驟之前,還包括:
計(jì)算數(shù)據(jù)庫中的總記錄數(shù),并計(jì)算對所述數(shù)據(jù)庫中的記錄進(jìn)行分頁后得到的數(shù)據(jù)頁數(shù)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于鄭州云海信息技術(shù)有限公司,未經(jīng)鄭州云海信息技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810529930.4/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
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 .處理自然語言數(shù)據(jù)的
G06F17-30 .信息檢索;及其數(shù)據(jù)庫結(jié)構(gòu)
G06F17-40 .數(shù)據(jù)的獲取和記錄
G06F17-50 .計(jì)算機(jī)輔助設(shè)計(jì)
- 證照信息的查詢方法和查詢系統(tǒng)
- 數(shù)據(jù)庫查詢方法及裝置
- 數(shù)據(jù)庫轉(zhuǎn)換的同步系統(tǒng)及其方法
- 一種醫(yī)療數(shù)據(jù)庫查詢方法、裝置及車載醫(yī)療系統(tǒng)
- 一種選擇數(shù)據(jù)庫的方法和裝置
- 一種數(shù)據(jù)查詢方法、裝置及系統(tǒng)
- 一種異構(gòu)數(shù)據(jù)庫的查詢方法、裝置、介質(zhì)、設(shè)備及系統(tǒng)
- 基于異構(gòu)數(shù)據(jù)庫的存儲查詢方法和裝置
- 一種數(shù)據(jù)庫訪問方法、裝置及電子設(shè)備
- 數(shù)據(jù)存儲方法、存儲調(diào)度服務(wù)器、電子設(shè)備及存儲介質(zhì)
- 記錄控制裝置和方法、程序以及記錄介質(zhì)
- 數(shù)據(jù)存取方法,執(zhí)行數(shù)據(jù)存取方法的器件及記錄介質(zhì)
- 數(shù)字?jǐn)?shù)據(jù)的記錄裝置及記錄方法
- 行車記錄儀用存儲卡的數(shù)據(jù)保護(hù)方法及其裝置
- 固態(tài)存儲設(shè)備的垃圾回收方法與固態(tài)存儲設(shè)備
- 記錄裝置、控制方法和存儲介質(zhì)
- 一種測試異常斷電丟失數(shù)據(jù)量的方法及系統(tǒng)
- 一種帶寬計(jì)算的方法和裝置
- 一種數(shù)據(jù)索引處理方法、裝置、設(shè)備及存儲介質(zhì)
- 數(shù)據(jù)管理系統(tǒng)、數(shù)據(jù)管理方法和記錄有數(shù)據(jù)管理程序的記錄介質(zhì)





