王穎 李建敏
[摘 要] 本文從非結(jié)構(gòu)化數(shù)據(jù)庫技術出發(fā),分析了網(wǎng)絡環(huán)境下數(shù)據(jù)庫應用現(xiàn)狀,探討了網(wǎng)絡數(shù)據(jù)庫的建設、非結(jié)構(gòu)化數(shù)據(jù)的分析,并以一個具體應用實例進行了說明。
[關鍵詞] 網(wǎng)絡;非結(jié)構(gòu)化數(shù)據(jù)庫;應用
[中圖分類號] G434 ? ? [文獻標識碼] A ? 文章編號:1671-0037(2015)06-68-3
Application Research on Unstructured Database in the Network
Wang Ying1 ?Li Jianmin2
(1. Management Service Center of Henan Research and Production and Test Base, Zhengzhou 450008; 2. Changyuan Science &Technology and Industrial Informatization Bureau in Henan Province, Changyuan ?Henan 453400)
Abstract:Based on unstructured database technology, this paper analyzes the current situation of database application in the network environment, discusses the construction of network databases, analysis of unstructured data, and an application example is used for explanation.
Keywords:network;unstructured database;application
1 引言
非結(jié)構(gòu)化數(shù)據(jù)庫和傳統(tǒng)的結(jié)構(gòu)化數(shù)據(jù)庫相比,其字段長度可變,字段記錄又可以包含重復或不可重復的子字段。非結(jié)構(gòu)化數(shù)據(jù)庫不僅可以處理諸如數(shù)字、符號等信息,而且更適合處理全文本、圖像、聲音、影視、超媒體等信息。它突破了關系數(shù)據(jù)庫結(jié)構(gòu)定義相對固定、字段長度受限等缺陷,具有字段重復、變長字段的特點,對變長數(shù)據(jù)可以進行有效管理,在處理連續(xù)信息和非結(jié)構(gòu)信息中有著傳統(tǒng)關系型數(shù)據(jù)庫所無法比擬的優(yōu)勢。
同時,網(wǎng)絡技術的快速發(fā)展與應用,使得網(wǎng)絡環(huán)境中的數(shù)據(jù)量飛速增長,這些數(shù)據(jù)有兩個特點,一是類型復雜多變、除傳統(tǒng)的文本信息外,還包含各種超文本文檔以及多媒體信息;二是數(shù)據(jù)量極大,從存儲空間看,已從TB級向PB級發(fā)展。對這些信息資源的處理問題,已成為網(wǎng)絡環(huán)境下數(shù)據(jù)庫技術新的應用點。
2 網(wǎng)絡環(huán)境數(shù)據(jù)庫應用分析
2.1 結(jié)構(gòu)化數(shù)據(jù)庫的局限性
隨著網(wǎng)絡的發(fā)展,各種新的應用模式,如網(wǎng)絡搜索、云服務等不斷涌現(xiàn),對網(wǎng)絡數(shù)據(jù)處理提出了更多的需求,如對海量數(shù)據(jù)的高效存儲與訪問、高可用性和高擴展性、非結(jié)構(gòu)化數(shù)據(jù)以及高并發(fā)的數(shù)據(jù)處理等,基于結(jié)構(gòu)化數(shù)據(jù)的傳統(tǒng)關系,數(shù)據(jù)庫呈現(xiàn)出越來越大的局限性和不足。由于傳統(tǒng)結(jié)構(gòu)化數(shù)據(jù)庫結(jié)構(gòu)模型和技術基礎等原因,結(jié)構(gòu)化數(shù)據(jù)庫與網(wǎng)絡結(jié)合的問題一直沒有得到有效的解決,多數(shù)情況下需要采用在網(wǎng)絡與數(shù)據(jù)庫之間加入中間件的解決方案,由此帶來的是由于頻繁交互,出現(xiàn)在應用服務器端與數(shù)據(jù)庫之間的網(wǎng)絡瓶頸,使得系統(tǒng)應用整體上效率降低、應用服務器端產(chǎn)生阻塞、難度加大、成本增加。同時,對于網(wǎng)絡環(huán)境下的大量非結(jié)構(gòu)化信息和多媒體資源,結(jié)構(gòu)化數(shù)據(jù)庫也無法完成分析和檢索需求。雖然隨著網(wǎng)絡應用需求的快速增長和數(shù)據(jù)庫技術的進步,關系數(shù)據(jù)庫也做出了一些改進,如為了復雜的數(shù)據(jù)類型,增加對象成分。但是,網(wǎng)絡環(huán)境下最為重要的檢索效率和全文檢索問題一直沒有得到解決[1-2],非結(jié)構(gòu)化數(shù)據(jù)庫的應用已成為網(wǎng)絡數(shù)據(jù)處理發(fā)展的必然。
2.2 非結(jié)構(gòu)化數(shù)據(jù)庫的優(yōu)勢和特點
結(jié)構(gòu)化數(shù)據(jù)庫的建立是基于數(shù)據(jù)表,要求有固定的表結(jié)構(gòu),數(shù)據(jù)庫模型相對來說,比較簡單,對于復雜的嵌套問題,表達困難。而非結(jié)構(gòu)化數(shù)據(jù)庫的基礎是基于數(shù)據(jù)建立的模型,支持子字段、多值字段,而且字段長度可變,字段格式、類型也可根據(jù)需要設置和調(diào)整;在底層存儲機制上,比起結(jié)構(gòu)化數(shù)據(jù)庫有了根本的變革。
非結(jié)構(gòu)化數(shù)據(jù)庫的索引技術以倒排檔技術為基礎,因而對于海量文獻,可以快速實現(xiàn)全文檢索,同時支持多種字段限定檢索。對于網(wǎng)絡環(huán)境下大量的多媒體信息,在存儲和管理方面,非結(jié)構(gòu)化數(shù)據(jù)庫系統(tǒng)采用外部文件技術,和結(jié)構(gòu)化數(shù)據(jù)庫二進制字段存儲的方式相比,效率提高而且管理方便[3]。
2.2.1 數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)類型的優(yōu)化
傳統(tǒng)結(jié)構(gòu)化數(shù)據(jù)庫的基礎是包含若干字段、固定格式的二維表,這些二維表中的每個字段屬性需要事先定義,字段中不支持子字段。表中的每一行對應著一條數(shù)據(jù)記錄,每一記錄中的字段名不能重復,數(shù)據(jù)以一條條記錄的方式存儲,表和表之間的關系通過關系連接體現(xiàn)。
非結(jié)構(gòu)化數(shù)據(jù)庫也定義了二維表,但非結(jié)構(gòu)化數(shù)據(jù)庫中,表的概念已經(jīng)不能用關系數(shù)據(jù)庫的范式來描述。其中,表的結(jié)構(gòu)以及每個列的內(nèi)容是可變的,它支持重復字段,字段內(nèi)部可以包含下級層次的子字段。這種支持重復字段、子字段的多值和包含子項的特性使得非結(jié)構(gòu)化數(shù)據(jù)庫可以在記錄中實現(xiàn)二維嵌套,一個非結(jié)構(gòu)化數(shù)據(jù)庫字段可以包含結(jié)構(gòu)化數(shù)據(jù)庫的一張數(shù)據(jù)表,從而避免了結(jié)構(gòu)化數(shù)據(jù)庫中由于表之間的關系鏈接引起的性能下降。
早期的結(jié)構(gòu)化數(shù)據(jù)庫的支持的數(shù)據(jù)類型是字符型和數(shù)值型數(shù)據(jù),在數(shù)據(jù)庫中可以對這兩類數(shù)據(jù)直接進行讀寫和檢索。隨著數(shù)據(jù)庫技術的發(fā)展,結(jié)構(gòu)化數(shù)據(jù)庫開始逐漸支持超長文本、圖像、聲音等多媒體等數(shù)據(jù),但是,不能在數(shù)據(jù)庫中對這些數(shù)據(jù)直接操作。
非結(jié)構(gòu)化數(shù)據(jù)庫擴充了數(shù)據(jù)類型,支持網(wǎng)絡環(huán)境下的各種文件類型,如超長文本、圖像、聲音等,同時采用外部文件技術,使得可以處理的數(shù)據(jù)覆蓋了多類型文檔應用領域內(nèi)幾乎所有的文獻數(shù)據(jù)類型。
2.2.2 強大、高效的檢索功能
數(shù)據(jù)庫系統(tǒng)核心的問題之一是數(shù)據(jù)檢索,而檢索的基礎是建立嚴密、完備的索引機制,在此基礎上,數(shù)據(jù)庫的檢索功能才能充分體現(xiàn)。數(shù)據(jù)庫的索引建立機制往往決定著數(shù)據(jù)庫檢索的效率、實用性和準確性。各種數(shù)據(jù)庫的檢索方式和檢索能力的高低是由數(shù)據(jù)庫索引機制決定。對于結(jié)構(gòu)化數(shù)據(jù)庫來說,索引機制只限于單字段和復合索引,檢索一般用基于結(jié)構(gòu)化查詢語言(SQL)來實現(xiàn)。需要檢索數(shù)據(jù)時,用戶在其構(gòu)造的SQL查詢表達式中根據(jù)需要,具體設置查詢條件,實現(xiàn)檢索。由于結(jié)構(gòu)化數(shù)據(jù)庫的索引機制受限,在處理較為復雜的數(shù)據(jù)類型時,其檢索能力和效率比較低。
網(wǎng)絡環(huán)境下的數(shù)據(jù)有兩個基本特點,一是和傳統(tǒng)計算機應用相比,有大量用戶群;二是瞬時產(chǎn)生的大量并發(fā)數(shù)據(jù)。這些特點對數(shù)據(jù)查詢和檢索效率提出了更高的要求
非結(jié)構(gòu)化數(shù)據(jù)庫由于其數(shù)據(jù)結(jié)構(gòu)和索引方式的特點,完全可以滿足網(wǎng)絡環(huán)境的檢索要求。非結(jié)構(gòu)化數(shù)據(jù)庫除支持結(jié)構(gòu)化數(shù)據(jù)庫字段索引外,還支持子字段索引、全文索引,還可以實現(xiàn)人工標引索引和中、英文混合索引。外部文件支持能力使非結(jié)構(gòu)化數(shù)據(jù)庫對于二次文獻,也可實現(xiàn)掛接全文的功能。
非結(jié)構(gòu)化數(shù)據(jù)庫基于倒排檔索引技術,使其支持的檢索方式大大高于結(jié)構(gòu)化數(shù)據(jù)庫。除字段查詢外,還支持子字段、全文任意詞的組配檢索。由于其內(nèi)嵌的全文檢索技術,非結(jié)構(gòu)化數(shù)據(jù)庫對中文的全文檢索效率有了質(zhì)的飛躍。同時,由于對于基于人工智能的自然語言處理技術的采用,非結(jié)構(gòu)化數(shù)據(jù)庫大大提高了系統(tǒng)的查全率和查準率[4]。
2.2.3 對大數(shù)據(jù)環(huán)境的支持
傳統(tǒng)的結(jié)構(gòu)化數(shù)據(jù)庫的檢索速度會隨著數(shù)據(jù)量的增加而下降,而非結(jié)構(gòu)化數(shù)據(jù)庫檢索速度則不受影響,因此,非常適合網(wǎng)絡環(huán)境下的海量數(shù)據(jù)。以某一非結(jié)構(gòu)化數(shù)據(jù)庫為例,數(shù)據(jù)庫支持的記錄數(shù)在1 000萬條以上,記錄長度可達32 000個漢字,可包含800個字段。
3 網(wǎng)絡數(shù)據(jù)庫建設方案
網(wǎng)絡的迅猛發(fā)展使數(shù)據(jù)庫應用環(huán)境發(fā)生了巨大的變化。網(wǎng)絡上各類應用一般都以數(shù)據(jù)庫為基礎,都需要數(shù)據(jù)庫技術的支持。
網(wǎng)絡數(shù)據(jù)庫建設有各種形式,但大多采用三種方案:一是傳統(tǒng)的結(jié)構(gòu)化數(shù)據(jù)庫建設方案;二是非結(jié)構(gòu)化網(wǎng)絡數(shù)據(jù)庫建設方案;三是二者的結(jié)合,即結(jié)構(gòu)化數(shù)據(jù)庫和非結(jié)構(gòu)化網(wǎng)絡數(shù)據(jù)庫融合方案。傳統(tǒng)的結(jié)構(gòu)化數(shù)據(jù)庫技術成熟,應用經(jīng)驗豐富,在事務處理和數(shù)值計算仍有一席之地。但是,其數(shù)據(jù)結(jié)構(gòu)單一,檢索方式簡單,網(wǎng)絡應用時需要加入中間件,所以結(jié)構(gòu)化數(shù)據(jù)庫方案不適合大型網(wǎng)絡應用系統(tǒng)。
非結(jié)構(gòu)化數(shù)據(jù)庫的網(wǎng)絡應用是建立在基于因特網(wǎng)的數(shù)據(jù)庫結(jié)構(gòu)模型之上。一般在單一平臺上融合數(shù)據(jù)庫服務器和應用服務器,使二者緊密結(jié)合。系統(tǒng)架構(gòu)也在傳統(tǒng)的客戶機/服務器擴展,結(jié)合網(wǎng)絡特點,形成瀏覽器/Web服務器+應用服務器/數(shù)據(jù)庫服務的三層或多層體系架構(gòu)。這種架構(gòu)的優(yōu)勢在于數(shù)據(jù)庫系統(tǒng)不是作為獨立于網(wǎng)絡之外的組件,而是網(wǎng)絡應用的組成部分,而且,由于這種架構(gòu)減少了硬件投入和中間件以及系統(tǒng)集成的支出,大大提高了開發(fā)效率,節(jié)約了硬件成本和開發(fā)成本。在全文檢索方面,非結(jié)構(gòu)化數(shù)據(jù)庫方案由于其高效的全文檢索技術,也具有結(jié)構(gòu)化數(shù)據(jù)不可比擬的優(yōu)勢。因此,對于大型網(wǎng)絡應用,應把非結(jié)構(gòu)化網(wǎng)絡數(shù)據(jù)庫列為建設方案的首選方案。
網(wǎng)絡應用千差萬別,對于那些以結(jié)構(gòu)化數(shù)據(jù)為基礎,不需要全文檢索或僅僅需要部分非結(jié)構(gòu)化數(shù)據(jù)庫功能的網(wǎng)絡應用,可以采用二者結(jié)合的建設方案,在同一系統(tǒng)中集成結(jié)構(gòu)化數(shù)據(jù)庫和非結(jié)構(gòu)化數(shù)據(jù)庫,充分發(fā)揮各自的優(yōu)勢,實現(xiàn)優(yōu)劣互補。
4 應用實例
以某公司的基于云服務的養(yǎng)老信息管理平臺為例,說明非結(jié)構(gòu)化數(shù)據(jù)庫的應用。該項目以方便老齡人群,提高民政管理部門工作效率為出發(fā)點,對老人服務申請辦理業(yè)務進行流程優(yōu)化,形成省、市老齡辦、鄉(xiāng)(鎮(zhèn)、辦事處)、村(居)民委員會各層次的老年人口動態(tài)管理數(shù)據(jù)庫,為養(yǎng)老機構(gòu)的動態(tài)管理、各級政府部門養(yǎng)老事務管理與資金管理、老齡人群的養(yǎng)老服務等提供一個云服務平臺。
該數(shù)據(jù)庫兼容各種主流結(jié)構(gòu)化數(shù)據(jù)庫的格式,共支持8種索引方式,包括結(jié)構(gòu)化數(shù)據(jù)庫所提供的所有檢索方式,以及非結(jié)構(gòu)化數(shù)據(jù)庫獨具的檢索方式。該數(shù)據(jù)庫不僅可以處理TXT類型的文本、Office辦公軟件的字處理DOC文檔、電子表格的EXCEL文檔、幻燈片PPT文檔以及電子閱讀PDF文檔等類型數(shù)據(jù),還可以對各類多媒體資源進行編目和數(shù)字化處理。項目開發(fā)實踐表明,采用非結(jié)構(gòu)化數(shù)據(jù)庫,大大降低了開發(fā)成本,高效解決了各類復雜數(shù)據(jù)的檢索問題,完全達到了設計目標。
參考文獻:
[1] 吳建新.淺議網(wǎng)絡環(huán)境下檔案信息資源的開發(fā)利用[J].科技情報開發(fā)與經(jīng)濟,2011(26).
[2] 李曉葉.論網(wǎng)絡環(huán)境下檔案信息資源的開發(fā)利用[J].信息系統(tǒng)工程,2011(7).
[3] 李珊珊.檔案信息資源價值實現(xiàn)的基本路徑[J].黑龍江檔案,2011(4).
[4] 楊芳.高校檔案信息資源的開發(fā)利用[J].河南科技,2011(13).
[5] 孫治國,李令臣.基于XML的非結(jié)構(gòu)化數(shù)據(jù)管理[J].中小企業(yè)管理與科技(下旬刊),2011(9).
[6] 曹金山,張澤濱.非結(jié)構(gòu)化數(shù)據(jù)的ETL設計[J].現(xiàn)代電子技術,2011(4).
[7] 呂元智.國家檔案信息資源“云”共享服務模式研究[J].檔案學研究,2011(3).