[發明專利]一種嵌入式數據庫的檢索及存儲方法有效
| 申請號: | 201210061827.4 | 申請日: | 2012-03-09 |
| 公開(公告)號: | CN102629269A | 公開(公告)日: | 2012-08-08 |
| 發明(設計)人: | 林嘉順;黃強 | 申請(專利權)人: | 深圳市民德電子科技有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 深圳市順天達專利商標代理有限公司 44217 | 代理人: | 易釗 |
| 地址: | 518057 廣東省深圳市南山區*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 嵌入式 數據庫 檢索 存儲 方法 | ||
技術領域
本發明涉及嵌入式系統的數據處理技術,尤其涉及一種嵌入式數據庫的檢索及存儲方法。
背景技術
隨著數字信息技術的發展與嵌入式產品的廣泛應用,現代辦公和生活已經越來越離不開對大量信息的實時管理,嵌入式設備作為信息交互的終端載體已經成為一種趨勢。
嵌入式系統是軟件和硬件的綜合體,也是一種以應用為中心、以計算機技術為基礎,軟、硬件都具有可裁剪性的專用“計算機”系統。受功能需求、系統成本、硬件尺寸大小等方面因素的影響,嵌入式系統的軟硬件配置都會受到一定的限制。在條件受限的嵌入式系統中,例如一些只有幾十KB或者幾百KB內存的嵌入式設備,想要實現對大量數據的處理和管理,并且實現嵌入式設備實時性反應的要求,則需要根據數據來源的特點,對數據進行有效地組織和存儲,來減少系統軟件運行的時間開銷,達到系統實時反映的要求。數據庫為一種常用的技術手段。目前得到較多應用的數據管理方法包括有層次、網狀和關系數據庫等方式,如MS?SQL、DB?II和Oracle等,對于小型數據應用單位來說,建立和使用常用的商用數據庫存在一定的缺陷和不足,比如,數據庫使用成本較高,需要在高速系統、大容量硬盤、內存及并行機制基礎上建立,顯然不能將這些成熟的商用數據庫很好地移植到受條件限制的嵌入式系統中。如上所述,在軟硬件配置都受到一定的限制的嵌入式系統中,則需要建立一種輕量級的嵌入式數據庫,并能滿足系統實時反應的要求。
因此,需要根據數據本身的特點以及嵌入式系統的軟硬件環境,綜合評價檢索與更新效率、內存和存儲空間的開銷等因素,選擇合適的索引技術,設計一種對資源消耗少、檢索效率高的輕量級嵌入式數據庫,以實現數據存儲及其檢索的方法。
發明內容
本發明要解決的技術問題在于針對現有技術的上述缺陷,提供一種嵌入式數據庫的檢索及存儲方法。
本發明解決其技術問題所采用的技術方案是:
一種嵌入式數據庫的檢索及存儲方法,建立數據文件和索引文件以存儲數據信息,索引文件包括頭文件信息、散列表以及AVL樹和索引信息,當嵌入式系統處于離線狀態時,數據的存儲過程包括:
S1、嵌入式設備與外部高速設備通信連接,外部高速設備對數據進行分析和組織;
S2、將記錄保存到數據文件;
S3、建立索引信息并保存到索引文件中;
S4、嵌入式數據庫建立后,將其下載至嵌入式設備中;當嵌入式系統處于在線狀態時,數據的檢索和存儲過程包括:
T1、打開嵌入式數據庫文件,包括數據文件和索引文件;
T2、通過關鍵字在索引文件中查找索引信息;
T3、獲取數據文件中的記錄、插入或更新數據文件中的記錄。
該方法的步驟S1進一步包括:指定標識記錄的數據項為關鍵字,規劃散列表的大小,從散列函數集合中選取散列函數對關鍵字進行探測,確定一個待用的散列函數和索引文件的頭文件信息,頭文件信息包括記錄總量、散列函數序號、散列表大小以及表單元長度。
在該方法中,散列函數包括:BKDRHash、DJBHash、APHash、RSHash、SDBMHash和JSHash。
該方法的步驟S3進一步包括:根據散列函數計算關鍵字的散列值,將該散列值映射到散列表中。
該方法的步驟S3進一步包括:獲取散列表的數據,判斷散列表是否為空,當散列表為空時,建立AVL樹根節點,填入該根節點的索引信息,其中根節點的索引信息包括:左子樹入口地址、右子樹入口地址、關鍵字、記錄在數據文件的偏移地址、記錄長度,當散列表為非空時,新建一個樹葉子節點插入AVL樹中,填入該樹葉子節點的索引信息,其中樹葉子節點的索引信息包括:左子樹入口地址、右子樹入口地址、關鍵字、記錄在數據文件的偏移地址、記錄長度。
該方法的步驟S3進一步包括:判斷上述步驟的數據存儲是否結束,如果繼續進行數據存儲,則返回步驟S2。
在該方法中,當嵌入式系統處于在線狀態時,數據的檢索和存儲過程還包括:
T0、判斷嵌入式系統中是否存在數據庫文件,如果存在,則將其打開,如果不存在,則建立一個新的數據庫文件并打開。
該方法的步驟T2進一步包括:獲取索引文件的頭文件信息,從散列函數集合中確定一待用的散列函數,利用該散列函數計算關鍵字的散列值,通過散列值與散列表的映射關系,獲取散列表中的數據,作為AVL樹根節點入口地址。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深圳市民德電子科技有限公司,未經深圳市民德電子科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210061827.4/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:逆變器
- 下一篇:可信消息存儲和傳輸協議和系統





