[發明專利]一種數據分頁檢索的方法、裝置、電子設備及存儲介質有效
| 申請號: | 201911050559.4 | 申請日: | 2019-10-31 |
| 公開(公告)號: | CN110825742B | 公開(公告)日: | 2022-09-06 |
| 發明(設計)人: | 王鵬亮 | 申請(專利權)人: | 北京東方通科技股份有限公司 |
| 主分類號: | G06F16/22 | 分類號: | G06F16/22;G06F16/242 |
| 代理公司: | 北京路浩知識產權代理有限公司 11002 | 代理人: | 馬瑞 |
| 地址: | 100080 北京市豐臺*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 數據 分頁 檢索 方法 裝置 電子設備 存儲 介質 | ||
本發明實施例提供了一種數據分頁檢索的方法、裝置、電子設備及存儲介質,預先對符合檢索條件的檢索數據建立索引表,當需要對檢索數據分頁檢索時,只需要根據檢索表確定符合檢索參數的目標索引。通過目標索引從數據文件中讀取的內容塊即為符合檢索參數的目標內容塊。在檢索時,只需要將檢索參數與檢索表進行匹配,不需要逐條將內容塊與檢索條件匹配,避免了重復讀取數據文件中的內容塊。且在檢索過程中,僅需從檢索表檢索符合檢索參數的目標索引,不需要在內容中存儲所有檢索數據,避免造成內存溢出。
技術領域
本發明涉及計算機技術領域,尤其是涉及一種數據分頁檢索的方法、裝置、電子設備及存儲介質。
背景技術
文件內容的檢索是一種很高頻的計算機應用場景,例如從一篇文章中找出包含某個詞語的所有句子,或者從軟件系統的日志文件中檢索出所有的錯誤級別的日志等。以行式日志文件為例,行式表示每一行即是一個完整的內容單元,在日志文件中,一行內容通常包含了本條日志的發生時間戳、事件源、信息級別、所屬模塊、摘要內容等,文件中每一行內容都是一個完整的內容塊,即具有業務意義的一段數據。若對該日志文件進行分頁檢索,如分頁檢索出信息級別為“警告”的所有日志,首先便是整體載入和讀取文件,依次讀取完畢整個文件的所有行,并判斷出每行數據是否符合條件,即是否是信息級別為“警告”,若是,則結果集計數加1,最終得到并記錄的結果集計數即為總匹配的行數,該結果集計數用于后續的分頁內容提取。如果要隨機讀取某頁的數據,則需要根據上述結果集計數計算出該頁的計數范圍,進而再次從文件開頭依次讀入每行內容,對每行內容除了判斷是否符合檢測條件外,還要判斷是否處于該頁的計數范圍,當該頁的所有內容都提取到后即為檢索結束。
然而,在進行完整體文件讀取后,內存中不能存儲所有的匹配行,原因是匹配行可能會很多,存儲所有的匹配行會有內存溢出風險,因此在提取具體頁的數據時,仍然需要再次對文件內容進行順序讀取和檢索條件判斷,在匹配到目標頁的行數之前,讀入的每行內容都是無效的并會直接丟棄,這就造成了不必要的讀取操作,在極端的情況下,如目標頁的數據位于文件的末尾,性能受影響很大。
由此,在實際應用過程中,對數據進行檢索時,逐個將內容塊與檢索條件進行匹配,將所有匹配行存儲到內存中,容易造成內存溢出且內容塊中數據的讀取過于頻繁。
發明內容
本發明實施例提供一種數據分頁檢索的方法、裝置、電子設備及存儲介質,用以解決現有技術中的對數據進行檢索時,逐個將內容塊與檢索條件進行匹配,將所有匹配行存儲到內存中,容易造成內存溢出且內容塊中數據的讀取過于頻繁的問題。
針對以上技術問題,第一方面,本發明的實施例提供了一種數據分頁檢索的方法,包括:
對檢索數據分頁檢索時,接收檢索參數,所述檢索參數包括需檢索的目標內容塊所在頁的頁碼和預設頁容量;
獲取對所述檢索數據創建的索引表,所述索引表中包括所述檢索數據中每一內容塊在數據文件中的位置;
確定所述索引表中符合所述檢索參數的目標索引,將根據目標索引從所述數據文件中檢索的內容塊,作為所述目標內容塊,返回所述目標內容塊;
其中,所述檢索數據由所述數據文件中符合檢索條件的內容塊組成;所述預設頁容量為頁面容納內容塊的最大值。
可選地,還包括:
循環執行索引追加操作,直到遍歷所述數據文件中的每一內容塊,得到對所述檢索數據創建的所述索引表;
所述索引追加包括:按照預設順序每次從所述數據文件中加載至少一個內容塊,對每一所加載內容塊,判斷所述所加載內容塊是否符合所述檢索條件,若是,構建所述所加載內容塊的索引對,將所述索引對追加到索引表的末尾后,移出所述所加載內容塊,否則,移出所述所加載內容塊;
其中,所述索引對包括所述所加載內容塊占用的存儲空間,和相對于所述數據文件中某一預設位置處的內容塊的偏移量。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京東方通科技股份有限公司,未經北京東方通科技股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201911050559.4/2.html,轉載請聲明來源鉆瓜專利網。
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





