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