[發明專利]一種基于內存的快速關系檢索方法在審
| 申請號: | 202010050321.8 | 申請日: | 2020-01-17 |
| 公開(公告)號: | CN111291134A | 公開(公告)日: | 2020-06-16 |
| 發明(設計)人: | 李立亞;閭立新;吳麗 | 申請(專利權)人: | 無錫科技職業學院 |
| 主分類號: | G06F16/28 | 分類號: | G06F16/28;G06F16/2458 |
| 代理公司: | 無錫盛陽專利商標事務所(普通合伙) 32227 | 代理人: | 顧吉云;黃瑩 |
| 地址: | 214028 *** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 內存 快速 關系 檢索 方法 | ||
本發明提供一種基于內存的快速關系檢索方法,其可以快速的實現面向多對多關系的查詢,且方案簡單易于理解,適于實際應用。本發明的技術方案中,將實體間的多對多的關系轉換為二元關系,每兩個實體間的二元關系為一項,某實體與其它實體間的直接聯系用鏈表指針串起來,表示了所有的實體間的二元關系;檢索時,放在內存中的二元關系項作為關鍵索引,詳細信息放在磁盤上,基于內存進行檢索,在磁盤上獲取詳細信息。
技術領域
本發明涉及數據處理技術領域,具體為一種基于內存的快速關系檢索方法。
背景技術
隨著社會的發展,對商品質量要求的提高,對于流通商品,通常會被要求提供商品回溯信息,以供消費者對商品進行防偽驗證、溯源等操作;例如商品生產商在商品出場的時候提供唯一的識別碼,該識別碼與商品一一對應,消費者可以通過電話、手機短消息、互聯網等渠道查詢識別碼,以查詢商品的商品信息。
然而在生產分工細化的現代社會中,任何一個簡單的商品都涉及到很多生產環節,比如:比如飯店的一只烤鴨,其相關的信息包括:產地信息、父母信息、孵化信息、飼養信息、用藥信息、收貨商信息、物流運送信息、屠宰信息、冷鏈配送信息、飯店接收時間、大廚信息、制作過程信息等等,這些信息都涉及到大量的數據需要存儲;現有技術中,通常這些數據都以數據表的形式分別存儲在數據庫中;以烤鴨為例,溯源環節的每項基本信息至少都需要一張表,導致表單總數量非常龐大;進行數據查詢的時候,數據庫表間聯合查詢比較費時,需要大量的CPU計算、以及磁盤I/O操作;如果顧客對收貨商信息、物流公司信息、屠宰廠信息、藥品信息感興趣,又對商人、物流員工、屠宰員工、獸醫等感興趣,一一進行溯源查詢,那么相關表格數量將更加龐大,技術人員設計能表示這么多關系的表本身就比較困難,設計出來的表單結構也非常復雜,基于這些復雜的表單進行查詢,會導致查詢效率并不理想。
發明內容
為了解決現有技術中基于數據庫的表單實現數據查詢時,因為涉及的數據之間存在比較復雜的多對多關系,導致表單結構比較復雜,且查詢效率不好的問題,本發明提供一種基于內存的快速關系檢索方法,其可以快速的實現面向多對多關系的查詢,且方案簡單易于理解,適于實際應用。
本發明的技術方案是這樣的:一種基于內存的快速關系檢索方法,其包括以下步驟:
S1:確定需要檢索信息的對象作為待檢索實體;
其特征在于,還包括以下步驟:
S2:找到所有的與所述待檢索實體有關系的抽象實體、實物實體,都將其歸類為關系實體;
S3:確認所有的所述關系實體之間、所述關系實體與所述待檢索實體之間的關系,作為待溯源關系;
S4:構建一維關系表,所述關系表的尺寸為TAB_SIZE:
TAB_SIZE=M*(1+N%);
式中:M為所述待溯源關系的數量,N%為預留量;
S5:基于TAB_SIZE,在內存中為所述一維關系表分配內存,以數組方式組織內存空間;
所述一維關系表中的每一項為一個二元關系項,用來存儲兩個實體之間的關系;
S6:初始化所述二元關系項的各個字段的值,使其表示未使用:
所述二元關系項包括字段:
KEY_A、KEY_B、NEXT_A、NEXT_B、P_COM、P_ORD、P_REV的值;
其中:
KEY_A、KEY_B分別是兩個有關系實體的唯一身份標識;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于無錫科技職業學院,未經無錫科技職業學院許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.17sss.com.cn/pat/books/202010050321.8/2.html,轉載請聲明來源鉆瓜專利網。





