[摘要]分析食品安全信息資源整合的現(xiàn)狀及存在問題。根據(jù)食品信息資源分布的特點,借助本體(Ontology)在信息共享應(yīng)用中的優(yōu)勢,構(gòu)建一種新型的基于本體的食品信息資源整合模型。闡述該模型的思想及結(jié)構(gòu),在一定程度上解決食品信息系統(tǒng)“信息孤島”的問題。
[關(guān)鍵詞]食品安全信息 整合 本體
中圖分類號:Q50文獻標(biāo)識碼:A文章編號:1671-7597(2009)0810103-02
目前,我國已從解決溫飽型的社會向全面小康轉(zhuǎn)變,人民對食品關(guān)心的是“吃得好,吃的健康”的問題,但是近幾年來,食品安全事件頻繁發(fā)生,08年三鹿奶粉事件的發(fā)生,把人民群眾對食品安全的關(guān)注推到頂點,促進了食品安全法的誕生。
食品安全跟法律法規(guī)、科學(xué)技術(shù)和公民道德有關(guān),也跟監(jiān)管技術(shù)、力度等相關(guān)。作為一種監(jiān)管技術(shù),我國目前的食品安全信息管理系統(tǒng)由于系統(tǒng)建設(shè)的階段性、技術(shù)性和一些人為的因素,造成了在各行政部門和食品企業(yè)內(nèi)部積累著大量的采用不同方式存儲的業(yè)務(wù)數(shù)據(jù),形成了一個個信息孤島。近年來,源自哲學(xué)的本體論的研究日益成熟,已經(jīng)超過了哲學(xué)的范疇,本體論逐漸用于信息科學(xué)和知識工程等領(lǐng)域,在信息共享方面享有較大優(yōu)勢[1]。
一、目前食品安全信息整合的若干方案及存在問題
(一)定制轉(zhuǎn)換工具
在不同數(shù)據(jù)源之間定制專用的轉(zhuǎn)換工具,實現(xiàn)數(shù)據(jù)的交流與共享,例如使用各種電子數(shù)據(jù)交換(EDI)軟件進行數(shù)據(jù)交換。該方式技術(shù)較為簡單,但存在實現(xiàn)成本高,系統(tǒng)擴展性差,數(shù)據(jù)存在多個備份,難以保持一致性等不足,正在被新的數(shù)據(jù)集成方式逐步取代[2]。
(二)集中復(fù)制數(shù)據(jù)
以建立數(shù)據(jù)倉庫為典型,通過對異構(gòu)數(shù)據(jù)源中的數(shù)據(jù)進行分析、轉(zhuǎn)換和裝載,將各個數(shù)據(jù)源中的數(shù)據(jù)移入數(shù)據(jù)倉庫,實現(xiàn)異構(gòu)數(shù)據(jù)源中數(shù)據(jù)的集中式管理、集中式存儲,其優(yōu)點是原來分散的應(yīng)用系統(tǒng)仍然獨立運作,不會破壞原有的應(yīng)用架構(gòu);可以集成多種數(shù)據(jù)源和復(fù)雜的商業(yè)規(guī)則,數(shù)據(jù)集成質(zhì)量好。但是通過集中復(fù)制數(shù)據(jù)實現(xiàn)數(shù)據(jù)集成,只能定期更新數(shù)據(jù),無法實時變化,而且每當(dāng)現(xiàn)存的異構(gòu)數(shù)據(jù)源的數(shù)據(jù)庫模式發(fā)生變化或一個新的數(shù)據(jù)源加入到系統(tǒng)中,就必須重新生成一次全局模式,使得維護全局模式十分困難,系統(tǒng)可擴展性差。
(三)數(shù)據(jù)集成中間件
利用中間件集成異構(gòu)數(shù)據(jù)源。中間件作為一種基于分布式處理的獨立軟件成分或服務(wù)程序,具有標(biāo)準(zhǔn)的程序接口和協(xié)議,可實現(xiàn)不同軟硬件平臺上的數(shù)據(jù)共享和應(yīng)用互操作。負(fù)責(zé)數(shù)據(jù)集成的中間件系統(tǒng)位于異構(gòu)數(shù)據(jù)源(數(shù)據(jù)層)和應(yīng)用程序(應(yīng)用層)之間,向下協(xié)調(diào)各數(shù)據(jù)庫系統(tǒng),向上為訪問集成數(shù)據(jù)的應(yīng)用系統(tǒng)提供統(tǒng)一的全局?jǐn)?shù)據(jù)模式。中間件技術(shù)由于數(shù)據(jù)源自治性好、查詢實時、配置靈活等優(yōu)點,自出現(xiàn)以來被廣泛應(yīng)用,但還是面臨如何更好地解決語義異構(gòu)的問題[3]。
二、Ontology
Ontology(本體)最早是一個哲學(xué)概念,是對客觀存在的一個系統(tǒng)的解釋或說明,關(guān)心的是客觀現(xiàn)實的抽象本質(zhì)。近年來,許多計算機領(lǐng)域的專家和學(xué)者都應(yīng)用了這個概念。1998年,Studer等給出了一個廣為流行的定義,即“本體是共享概念模型的明確的形式化的規(guī)范說明”。這個定義包含四層含義:概念模型明確、形式化和共享。簡單的說,本體就是關(guān)于某個領(lǐng)域內(nèi)人們公認(rèn)的一個概念集,其中的概念含有公認(rèn)的語義,這些語義通過概念之間的各種聯(lián)系來體現(xiàn)。
三、異構(gòu)數(shù)據(jù)源整合模式
信息整合技術(shù)是信息資源分布式建設(shè)與集成應(yīng)用相互作用的產(chǎn)物[4]。
在信息資源海量化、信息渠道多元化、信息載體多樣化的互聯(lián)網(wǎng)時代,信息管理技術(shù)已經(jīng)歷了三個發(fā)展階段,目前已進入數(shù)據(jù)結(jié)構(gòu)多元化、存儲異構(gòu)化的時代。信息整合已經(jīng)成為信息管理技術(shù)的必然趨勢。它的目標(biāo)是通過一個公共的方法來訪問不同數(shù)據(jù)源[5]。
本體是共享概念的基礎(chǔ),反過來它又幫助我們實現(xiàn)對數(shù)據(jù)的一致性的解釋??梢圆捎萌直倔w庫的思想解決應(yīng)用系統(tǒng)的數(shù)據(jù)源異構(gòu)問題,其模型圖如圖1所示:
各個層次的功能說明如下:
1.數(shù)據(jù)源層:提供了各種不同存儲方式的數(shù)據(jù),來自于系統(tǒng)的各個應(yīng)用子系統(tǒng)。針對不同的數(shù)據(jù)源編寫不同的CORBA包裝器,無論是Windows下的數(shù)據(jù)源還是Linux下的數(shù)據(jù)源,都可以進行透明的連接。
2.網(wǎng)絡(luò)層:網(wǎng)絡(luò)層是基于已有的網(wǎng)絡(luò)通信協(xié)議,通過對等層之間的協(xié)商端口傳輸數(shù)據(jù),完成與上層之間接收和發(fā)送數(shù)據(jù)流,同時還要接收更底層的異常信息,來判斷是否發(fā)送、接收和保存數(shù)據(jù)流。
3.數(shù)據(jù)整合層:經(jīng)過包裝后的數(shù)據(jù),存儲在各個包裝器中,我們通過創(chuàng)建一個全局本體,將這些異構(gòu)的數(shù)據(jù)轉(zhuǎn)化成統(tǒng)一的數(shù)據(jù)模式,消除數(shù)據(jù)之間的語法和語義差異。
4.信息服務(wù)層:經(jīng)過整合后的數(shù)據(jù)具有一定的完整性、一致性和安全性,可以為高級應(yīng)用,諸如數(shù)據(jù)挖掘、高層決策等提供更為精確的服務(wù)。可以說大大提高了工作效率和決策的質(zhì)量,在一定程度上大大增加食品安全評估的科學(xué)性。
四、數(shù)據(jù)整合層的設(shè)計與實現(xiàn)
數(shù)據(jù)整合層為食品安全端提供一個統(tǒng)一的接口對數(shù)據(jù)源進行查詢,負(fù)責(zé)接收來自瀏覽器的全局查詢請求,再根據(jù)相應(yīng)的集成信息,將全局查詢請求分解為多個局部查詢請求傳遞給包裝器,最后將包裝器返回的結(jié)果進行處理后送回瀏覽器,同時還要維護
集成信息,保證全局事務(wù)執(zhí)行的正確性和一致性。數(shù)據(jù)整合層主要由查詢規(guī)劃模塊和結(jié)果合并過濾模塊構(gòu)成。
查詢規(guī)劃模塊的設(shè)計:
查詢規(guī)劃模塊負(fù)責(zé)將食品安全端提交的標(biāo)準(zhǔn)查詢分解成針對各個異構(gòu)數(shù)據(jù)庫的子查詢并提交到相應(yīng)的包裝器,涉及到請求的連接、排隊、轉(zhuǎn)發(fā)等方面的技術(shù)。圖2為本模塊的系統(tǒng)結(jié)構(gòu)。
1.查詢生成器
查詢生成器負(fù)責(zé)接收用戶由瀏覽器查詢界面提交的查詢請求,并根據(jù)本體庫中全局本體定義的概念信息將用戶請求實例化為內(nèi)部統(tǒng)一的可識別的全局查詢語句。
2.查詢分解引擎
查詢分解引擎的主要任務(wù)是進行查詢分解工作。它主要負(fù)責(zé)接收查詢生成器傳遞的全局查詢語句,分析局部本體定義信息,確定要查詢的局部數(shù)據(jù)源,并調(diào)用映射規(guī)則中全局本體和局部本體的對應(yīng)關(guān)系執(zhí)行分解算法,將全局查詢分解為對應(yīng)各局部數(shù)據(jù)源的子查詢。
3.查詢執(zhí)行引擎
查詢執(zhí)行引擎由隊列管理和調(diào)度策略子模塊組成。隊列設(shè)管理對生成的sq1子查詢進行數(shù)據(jù)的接收、排隊,再經(jīng)過調(diào)度管理子模塊發(fā)送到相應(yīng)的包裝器執(zhí)行。調(diào)度管理模塊采用基于FIFO調(diào)度策略的隊列管理機制,調(diào)度線程首先取隊列的頭元素,然后判斷其屬性參數(shù),最后發(fā)送到相應(yīng)包裝器執(zhí)行。
4.結(jié)果合并過濾模塊
模塊通過包裝器實現(xiàn)對各個異構(gòu)數(shù)據(jù)庫的查詢訪問,獲取結(jié)果集。此結(jié)果集包含了不同數(shù)據(jù)庫的查詢結(jié)果,由數(shù)據(jù)庫中的行數(shù)據(jù)構(gòu)成。對于該數(shù)據(jù)必須進行判斷,如果是重復(fù)的數(shù)據(jù),就要進行合并過濾,返回惟一值。對于2個行數(shù)據(jù)的集成,需要定義每個行數(shù)據(jù)的關(guān)鍵屬性組,這個關(guān)鍵屬性組(如食品名稱和出廠日期)用于判定2個同類的行數(shù)據(jù)是否為同一實體。當(dāng)2行數(shù)據(jù)的關(guān)鍵屬性組的值對應(yīng)相等時,并不能像標(biāo)識屬性值相等時那樣簡單地過濾掉其中一個信息對象,而是將2個信息對象集成為一個包含更大信息量的信息對象。集成的方法是:如果2行數(shù)據(jù)的同屬性取值相等,則集成信息對象中該屬性的值取任一行數(shù)據(jù)的對應(yīng)屬性值;如果2行數(shù)據(jù)除關(guān)鍵屬性組外的屬性取值不同,則刪除一行數(shù)據(jù)的相同屬性值,并把剩余的屬性值連接到另一行數(shù)據(jù)的末尾成為同一行數(shù)據(jù)輸出。
五、小結(jié)
當(dāng)一些數(shù)據(jù)分散在眾多的資源中,或者以多種形式存在,那么必然會有一個統(tǒng)一的系統(tǒng)來整合這些數(shù)據(jù)。本文分析了目前食品信息資源整合方法存在的一些問題,結(jié)合Ontology在知識表示、共享及推理方面的優(yōu)勢,提出了基于Ontology集成的信息整合方案,為解決食品安全信息資源整合指出了一條新思路。隨著本體表示、集成及推理技術(shù)的日益成熟,將會構(gòu)建一個更加智能的信息整合和綜合查詢系統(tǒng)來滿足食品安全信息化的需求。
參考文獻:
[1]郭浩軍、王海嬌,一種基于Ontology的電力信息資源整合模型,東北電力技術(shù),2008(7),17~18.
[2]周剛、郭建勝、石磊,基于本體的異構(gòu)數(shù)據(jù)源集成系統(tǒng)分析與設(shè)計,北京聯(lián)合大學(xué)學(xué)報(自然科學(xué)版),2007,21(1):45~46.
[3]婁雅斌、陶鳳梅、馬垣,基于“本體”的異構(gòu)數(shù)據(jù)源的集成方法研究,微計算機信息,2005,21(10):116~118.
[4]王冬云,關(guān)于數(shù)字圖書館信息整合的思考,現(xiàn)代情報,2007,7(7):
73~74.
作者簡介:
張玉學(xué)(1977-),女,江蘇江陰人,本科,講師,研究方向為:計算機科學(xué)與應(yīng)用。