[發明專利]數據查尋方法無效
| 申請號: | 01103695.8 | 申請日: | 2001-02-09 |
| 公開(公告)號: | CN1368697A | 公開(公告)日: | 2002-09-11 |
| 發明(設計)人: | 劉小鵬;陳玄同;林光信 | 申請(專利權)人: | 英業達股份有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 北京市柳沈律師事務所 | 代理人: | 馬瑩 |
| 地址: | 臺灣省*** | 國省代碼: | 臺灣;71 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 數據 查尋 方法 | ||
本發明涉及一種數據查尋方法。
現有技術中,在數據結構中查尋數據時,通常有兩種實現方式:
一種方式是利用B樹數據結構進行數據查尋,先訪問根節點,然后經過左子樹及右子樹,如此雖然可以達到數據查尋的目的,但是卻無法實現數據索引操作。
另一種方式是利用B+樹結構進行數據查尋,雖然能夠通過數據庫底層的線性鏈表,實現線性索引方式,但是由于在數據結構中的某些節點為僅有名稱、沒有數據的空節點,因此會影響查尋數據的速度,并在數據存放空間上有一定程度的浪費。
再者,現有技術情況下,當需要在數據庫中查尋字符串時,傳統的B樹結構和B+樹結構中,都是以所要查尋的字符串中的關鍵字作為標準,逐一比對,是這種方法勢必會導致查尋過程中時間的浪費。
為了解決上述問題,本發明的目的在于提供一種數據查尋方法,當使用者需要在容量大的數據庫中查尋字符串時,利用多線程比對技術,可同時對字符串中的多個關鍵字進行快速查詢,提高了字符串比較的效率,并且提高了準確度。
本發明所提供的數據查尋方法,集合了上述兩種現有技術的優點,不僅能夠實現線性索引,而且不會影響數據查尋的速度以及占用多余的儲存空間,并且對于字符串的查尋則采用多線程比對的方式,更可提高查尋的速度和準確度。例如,對于一個N階的數據庫,如果要進行數據索引,就須對每個節點進行N-1的字符串比較,方可實現完整的數據查尋過程。而利用本發明所提供的方法,則只需針對這個N階的數據,設定N-1個線程,即可快速完成對數據庫中節點字符串進行匹配的過程。
根據本發明,一種數據查尋方法,適用于一數據庫,包括下列步驟:輸入一數據;進入該數據庫的根節點;調用一字符串匹配模塊,判斷當前節點中是否有與所要查尋的關鍵字相匹配的信息;以及判斷字符串匹配操作是否成功。
為了讓本發明分上述和其他目的、特征、及優點能更明顯易懂,下文特舉出優選實施例,并結合附圖,作詳細說明如下:
附圖的簡單說明:
圖1是顯示本發明的功能模塊示意圖;
圖2顯示索引控制模塊的控制流程圖;
圖3顯示字符串匹配模塊的控制流程圖;
圖4顯示字符串比較流程的控制流程圖。
優選實施例
本發明將配合附圖作詳細說明,本發明的功能模塊示意圖如圖1所示,當數據輸入后(101),調用索引控制模塊(102),對該數據庫中的數據進行索引操作,在索引控制模塊中,對于數據庫中每個節點的操作則采用字符串匹配模塊(103)所包含的多線程控制程序,為每個節點的關鍵字分配線程,可針對節點中每個字符串進行快速字符串匹配的操作,在數據庫容量很大的情況下,本發明的效果更為顯著。
本發明的一種數據查尋方法,適用于一數據庫,其操作流程詳細說明如下。首先,輸入一數據。之后,調用一索引控制模塊,對該數據庫中的數據進行索引操作,索引控制模塊的控制流程,如圖2所示。
請參閱圖2,進行索引操作,首先設當前指針指向數據庫根(root)節點,進入待查尋數據庫的根節點(201);調用字符串匹配模塊,判斷待查數據是否在當前的節點中,判斷當前節點中是否有與所要查尋的關鍵字相匹配的信息(202),請參閱圖3及后續說明;字符串匹配操作是否成功(203);若是,則表示當前數據查尋成功(204),程序結束;若否,則判斷當前的數據查尋操作是否已到達葉節點(205);若已到達葉節點,則表示所要查尋的數據不在該數據庫中,查尋失敗(206),程序結束;若當前的數據查尋操作未到達葉節點,則進入被索引數據庫的下一個節點(207);再重復前述操作。
請參閱圖3,當需要在數據庫中查尋節點的字符串匹配情況時。其流程如下,首先根據數據庫中某節點的字符串長度,對該字符串進行分段(301);之后,對每一段的內容分配一獨立線程,與該段內容相匹配(302);各線程進行比較(303),請參閱圖4及后續說明;判斷此時是否有線程返回字符不匹配信息(304);若是,則表示所要查尋的字符串與數據庫中的原始字符串不匹配(305),查尋失敗(306);若無返回字符不匹配信息,則判斷當前所有線程的比較操作是否完畢(307);若是,則表示所要查尋的字符串與數據庫中的原始字符串匹配,查尋成功(308);若各線程的比較操作還沒完畢,則返回(304),繼續進行各線程的比較。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于英業達股份有限公司,未經英業達股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/01103695.8/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:以動態超文本標記語言技術實現數據續傳的方法
- 下一篇:半導體晶圓干燥方法
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





