何淑娟 【關鍵詞】非結構化;數(shù)據(jù)庫;多類型文檔 1 非結構化數(shù)據(jù)庫的基本概念 所謂非結構化數(shù)據(jù)庫,是指其字段長度可變,并且每個字段的記錄又可以由可重復或不可重復的子字段構成的數(shù)據(jù)庫。它從數(shù)據(jù)模型入手,采用子字段、多值字段以及變長字段的機制,允許創(chuàng)建許多不同類型的非結構化或任意格式的字段,從而突破了關系數(shù)據(jù)庫嚴格的表結構,解決了關系數(shù)據(jù)庫模型過于簡單、不便表達復雜嵌套的問題;在其底層存儲機制的變革基礎上,采用先進的倒排檔索引技術,從而實現(xiàn)了對于海量文獻信息的快速全文檢索的功能,并同時支持多種字段限定檢索。對于多媒體信息的存儲和管理,非結構化數(shù)據(jù)庫系統(tǒng)采用外部文件方式,擯棄了傳統(tǒng)關系型數(shù)據(jù)庫采用二進制字段存儲的方式,實現(xiàn)了對于圖形、聲音等多媒體信息的高效管理[1]。 其高效性具體表現(xiàn)在: (1)在數(shù)據(jù)庫結構定義上 非結構化數(shù)據(jù)庫系統(tǒng)實現(xiàn)了對于變長字段、重復字段和子字段的定義、存儲和管理,并且記錄的數(shù)目、長度,字段數(shù)目與長度以及字段可重復次數(shù)均可不受限制,允許數(shù)據(jù)項具有多值性和可包含子字段,充分滿足了圖書館建立文獻數(shù)據(jù)庫的特殊管理要求。 (3)在信息檢索查詢方面 非結構化數(shù)據(jù)庫內(nèi)嵌全文檢索引擎,采用倒排檔索引技術,不僅能夠?qū)φ麄€字段進行查詢,而且可以提供子字段、關鍵詞、自由詞、標引詞、位置詞和全文任意詞的單項及組配檢索。而且速度也非???,一般不受文獻量(上千萬條記錄)的影響,滿足海量數(shù)據(jù)檢索的需要。 (5)非結構化數(shù)據(jù)庫提供了后控制詞表檢索系統(tǒng)。后控制詞表系統(tǒng)是提高自然語言全文檢索效率,減輕用戶負擔的有效途徑。該系統(tǒng)對于后控制詞表采取數(shù)據(jù)庫管理方式,與全文檢索的檢索式構造相連接。對每一個檢索詞提供用(UF)、代(USE)、屬(BT)、分(NT)、參(RT)等關系詞,用戶可根據(jù)具體檢索需求選取關系詞,并將之增加到檢索表達式中,從而實現(xiàn)檢索表達式的優(yōu)化,提高全文檢索的效率,降低用戶負擔 [2]。 2 非結構化數(shù)據(jù)庫的應用 關系數(shù)據(jù)庫從設計之初并沒有也不可能考慮到以HTTP為基礎、HTML為文件格式的因特網(wǎng)的需求,只是在因特網(wǎng)出現(xiàn)后才作出相應的調(diào)整,因此關系數(shù)據(jù)庫在基于網(wǎng)絡應用時由于結構模型等原因的限制,不能與網(wǎng)絡完全融合,需在網(wǎng)絡與數(shù)據(jù)庫之間加入大量的中間件,從而在無形中加大了數(shù)據(jù)庫基于網(wǎng)絡應用的難度。并且對于網(wǎng)絡環(huán)境下網(wǎng)絡應用,如各種非結構化文檔信息、多媒體信息以及全文檢索需求顯得力不從心。雖然后來關系數(shù)據(jù)庫對于這些需求作出了一些適應性調(diào)整,但對于網(wǎng)絡環(huán)境下網(wǎng)絡應用不可或缺的檢索效率、全文檢索能力等卻無法解決[3] [4]。同時,關系數(shù)據(jù)庫的基于中間件的解決方案又給網(wǎng)絡應用帶來了新的網(wǎng)絡瓶頸,應用服務器端由于與數(shù)據(jù)庫頻繁交互,因其本身的效率和數(shù)據(jù)庫檢索的效率造成網(wǎng)絡應用在應用服務器端的阻塞。 (1)文檔型和多媒體數(shù)據(jù)類型的支持問題 在網(wǎng)絡應用中,存在大量的復雜數(shù)據(jù)類型,如各種超文本文檔信息,各種圖片、聲音等多媒體信息資源,如何對這些信息資源進行有效的存儲、管理、檢索,是網(wǎng)絡數(shù)據(jù)庫必須解決的問題,iBASE非結構化網(wǎng)絡數(shù)據(jù)庫系統(tǒng)通過其外部文件數(shù)據(jù)類型,可以管理各種文檔信息、多媒體信息,并且,對于各種具有檢索意義的文檔信息資源,如HTML、DOC、RTF、TXT等還提供了強大的全文檢索能力。 (2)數(shù)據(jù)庫的全文檢索問題 在網(wǎng)絡應用中,如何從浩瀚的信息海洋中查找到所需的信息,如何保證所查詢信息的全面性和準確性,也是一個網(wǎng)絡數(shù)據(jù)庫應用必須解決的問題。非結構化網(wǎng)絡數(shù)據(jù)庫系統(tǒng)通過其獨特的索引技術和基于布爾檢索表達式的查詢檢索算法,解決了基于字段級和數(shù)據(jù)庫級的全文檢索問題,用戶可以針對數(shù)據(jù)庫中特定的字段也可針對整個數(shù)據(jù)庫進行全文檢索,從而從數(shù)據(jù)庫中檢索出感興趣的內(nèi)容 [5]。 (3)網(wǎng)絡數(shù)據(jù)庫應用中的查詢和檢索效率問題 作為網(wǎng)絡應用,由于需要面對大量的用戶群和大量的瞬時并發(fā)數(shù)據(jù)庫查詢檢索,其數(shù)據(jù)庫查詢和檢索效率就是一個極其關鍵的問題。iBASE非結構化網(wǎng)絡數(shù)據(jù)庫系統(tǒng)主要通過重復字段和子字段來保證數(shù)據(jù)庫查詢和檢索的效率,實現(xiàn)了數(shù)據(jù)庫的一條記錄中一維表和二維表嵌套,從而避免了關系數(shù)據(jù)庫在大數(shù)據(jù)量時由于表連接查詢而導致的查詢檢索性能的急劇降低。 (4)對現(xiàn)有網(wǎng)絡應用的全文檢索支持問題 非結構化網(wǎng)絡數(shù)據(jù)庫系統(tǒng)不僅能夠支持iBASE非結構化數(shù)據(jù)庫的直接上網(wǎng)發(fā)布和全文檢索,對于傳統(tǒng)關系型數(shù)據(jù)庫,如Oracle、SYBASE、SQL Server、DB2、Informix等,也提供了導入和鏈結的支持能力,用戶可以采用導入方式,將傳統(tǒng)關系數(shù)據(jù)庫轉換為非結構化數(shù)據(jù)庫,再進行網(wǎng)上發(fā)布和開發(fā)全文檢索應用;用戶也可采用鏈結方式,對傳統(tǒng)關系數(shù)據(jù)庫構建本地化索引,從而通過本地化索引實現(xiàn)對關系數(shù)據(jù)庫的全文檢索支持,iBASE非結構化網(wǎng)絡數(shù)據(jù)庫系統(tǒng)充當關系數(shù)據(jù)庫應用服務器,系統(tǒng)的檢索效率也將受關系數(shù)據(jù)庫自身檢索效率和應用服務器交互效率的影響[6]。 3 非結構化數(shù)據(jù)庫應用分析 網(wǎng)絡數(shù)據(jù)庫建設到底采用何種數(shù)據(jù)庫,擺在用戶面前的至少有三種方案:關系數(shù)據(jù)庫建設方案、非結構化網(wǎng)絡數(shù)據(jù)庫建設方案、關系數(shù)據(jù)庫和非結構化網(wǎng)絡數(shù)據(jù)庫共存方案[7]。 在事務處理和數(shù)值計算方面,由于關系數(shù)據(jù)庫經(jīng)過了多年的發(fā)展,其在事務處理、數(shù)值計算方面具有強大的能力并已被證實。但對于超文本、文檔信息管理和數(shù)據(jù)庫全文檢索方面,關系數(shù)據(jù)庫通過其MEMO或TEXT字段等也能實現(xiàn)這種信息的存儲,而對于這些信息或數(shù)據(jù)庫的全文檢索,關系數(shù)據(jù)庫則顯得捉襟見肘[8]。 非結構化網(wǎng)絡數(shù)據(jù)庫系統(tǒng)則完全解決了網(wǎng)上數(shù)據(jù)庫的全文檢索問題,通過其獨特的單漢字、單英文詞、英文字母的索引方式及樹索引算法,能夠高效地解決數(shù)據(jù)庫的網(wǎng)上全文檢索問題,構造出強大的網(wǎng)上全文搜索引擎。因此,在對于超文本、文檔信息管理和數(shù)據(jù)庫全文檢索方面,非結構化網(wǎng)絡數(shù)據(jù)庫建設方案應為首選。 然而,網(wǎng)絡數(shù)據(jù)庫建設并不能從嚴格意義上按以上兩種情況進行區(qū)分,但有一點可以肯定的是,大多數(shù)網(wǎng)絡應用都會有全文檢索或構建搜索引擎的需求,從理論上講,除事務處理能力外,非結構化網(wǎng)絡數(shù)據(jù)庫能夠處理所有關系數(shù)據(jù)庫支持的網(wǎng)絡應用方式,并能對數(shù)據(jù)庫進行全文檢索擴展,也就是說,完全可以利用非結構化網(wǎng)絡數(shù)據(jù)庫構建獨立的網(wǎng)絡應用。 對于一些特殊的網(wǎng)絡應用,我們也可以采用關系數(shù)據(jù)庫和非結構化網(wǎng)絡數(shù)據(jù)庫兩者共存的建設方案,實現(xiàn)兩者的無縫集成,以發(fā)揮兩者各自的長處。 主要參考文獻: |