張德海,張德剛,羅學禮,柳 青,李 勁
(1.云南大學軟件學院,云南昆明650091;2.云南電力試驗研究院(集團)有限公司電力研究院,云南昆明650217)
基于本體的電力系統異構數據查詢機制
張德海1,張德剛2,羅學禮2,柳 青1,李 勁1
(1.云南大學軟件學院,云南昆明650091;2.云南電力試驗研究院(集團)有限公司電力研究院,云南昆明650217)
摘要:隨著電力企業信息化進程的不斷推進,大量信息管理系統被應用于各種業務中,造成這些系統間存在異構數據,難以共享,甚至還存在各種語義沖突,影響數據的挖掘和分析.為此,提出了一種利用本體技術對電力企業內部的異構數據源進行融合的綜合查詢機制,可以有效解決電力企業內部數據源的語法和語義異構問題,把來自于各部門的多個數據源進行整合,為數據分析系統提供統一的數據查詢接口.實驗表明,該機制能夠有效消解異構數據源之間的語義沖突,為數據集成提供基礎.
關鍵詞:本體;異構數據;語義沖突;語義映射;查詢機制
數據分析已成為企業管理的主要決策依據,決策支持系統進行數據分析時,都需要把來自于多個異構數據源的數據進行集成.隨著電力企業信息化進程的不斷推進,大量信息管理系統被應用于各種業務中,不同業務部門在建設這些業務系統的時候,往往由不同的公司開發,所采用的技術和軟硬件平臺也可能不同.這樣就造成這些系統間的異構數據源很難共享,而且相互間還可能存在各種語義沖突,影響數據的挖掘和分析.
本體被廣泛應用于領域知識的建模,通常用于描述領域的概念及概念之間的關系,同時本體還具有語義推理能力,可以通過在本體層進行邏輯推理來發現領域概念之間的隱含關系,目前本體已被廣泛應用于領域異構數據的集成,以解決這些系統的語義沖突[1-4].本體的概念最早來源于哲學,后來被引入人工智能領域.Gruber于1993年提出的“本體是概念模型的明確的規范說明”是目前被廣泛認可的本體定義[5].該定義明確指出本體建立的目的是要給出領域概念的形式化描述,并對這些概念間的關系進行明確定義,類似于一個公共信息模型,以達成對領域概念的共同理解,這樣可以從邏輯上解決領域數據的語義異構問題.因此,本體可作為信息集成中的通用語義模型[6].
在利用本體對電力系統中的數據進行集成方面,已有一些研究.周偉等[7]提出利用本體消除來自不同信息系統數據的方法,但該方法未解決異構數據的問題.李佳珊、盧美蓮等[8]提出了一種基于本體的異構傳感器網絡數據融合結構,針對異構傳感器網絡的數據融合互操作問題提出一種解決方法,該方法主要面向傳感器網絡的數據.宋偉[9]提出了一種面向智能電網的異構數據集成模型,結合XML和本體對電力異構數據進行集成,該方法的測試數據采用的是IEC61970等電力行業理論信息模型中的數據,在實際應用中缺乏實例支撐.
本文在上述研究的基礎上,以電力企業主網、配網等實際運行信息系統中數據為實驗對象,針對電力企業的實際異構數據查詢需求,提出了一種利用本體技術對電力企業內部的異構數據源進行融合的綜合查詢機制,可以有效解決電力企業內部數據源的語法和語義異構問題,把來自于各部門的多個數據源進行整合,為數據分析系統提供統一的數據查詢接口.
現實世界中的對象在描述方式、結構和內容上的不同造成的語義不一致性稱為語義沖突[7].鐘將等[10]總結了電力數據中可能遇到的語義沖突包括物理沖突、表沖突、字段沖突、記錄沖突等4類,分別描述如下:
1)物理沖突指數據源的存儲格式不同引起的沖突.如非結構數據與結構化數據的沖突,例如SCADA系統的數據是采用TXT格式存儲的非結構化數據,電網模型數據是XML格式的半結構化數據,主網、配網等系統的數據是存儲于關系數據庫中的結構化數據.
2)表沖突是指相同的表名在不同的數據庫中表示2個不同的實體.例如,Location表在主網和配網中都有,但它們只有61個共同的字段,主網的Location表中有125個字段是配網中沒有的,而配網的Location表中,有91個字段是主網中沒有的.
3)字段沖突是最常見的沖突.字段沖突可進一步細分為命名沖突、類型沖突、長度沖突、精度沖突、單位沖突、表達方式沖突.命名沖突指相同的字段符號名不同、或者符號名相同的字段實際表達不同的屬性;類型沖突指相同字段在不同表中采用不同的數據類型;長度沖突指相同字段在不同表中的數據長度不一致;精度沖突指不同表中的相同字段采用不同數據精度的字段;單位沖突指相同字段在不同表中具有不同的計量單位;表達方式沖突指相同字段表示不一致,如有的采用英文縮寫,有的采用漢語拼音縮寫等.
例如,主網和配網中都有的asset表,但“施工單位”的字段名(英文)在2個表中不同,分別為YDTF_SGDW、YDPS_SGDW,而且在配網的asset表中,該字段出現了2次,長度一個為50,一個為80.
4)記錄沖突指描述同一對象的數據記錄在不同的系統中因所采用的計量單位不同引起的數值不一致.
除此之外,配網中的字段名,很多是漢語拼音的縮寫,但在主網中,這些字段是用不同的名字表示的,充分說明語義沖突的普遍存在,如果沒有綜合查詢器,會以為查出來的東西不是同一個字段的值.比如,現在需要統計電力系統資產的數據,那主網和配網的數據應該能夠集成,也就是放在一起統計,由于存在語義沖突,各自統計得到的數據有可能是不準確的,也就是有些資產可能被重復統計,也有些資產可能會被漏統計.
為了消解不同數據源之間存在的語義沖突,需要構建局部本體,在此基礎上建立全局本體,通過局部本體與全局本體之間的映射消解語義沖突.本體的自動構建是一個研究難點,目前相對成熟的本體自動構建方式是利用關系數據庫逆向工程[11],通過預先定義的映射規則,可以從關系數據庫、XML文檔或Excel表等異構數據源中自動獲取對象及其屬性的語義結構,在此基礎上自動構建本體.該方法已得到很多研究人員的關注,并形成了一些形式化方法[12].本文采用翟保榮、鐘志農等[13]提出的方法從關系數據庫中構建OWL本體.
根據該方法構建本體:電網項目管理數據庫中表PS_Project與其他幾個表之間的數據關系,在構建出來的OWL本體中,類PS_Project及其子類如圖1所示.

3.1 語義沖突檢測與消解框架
在構建局部本體后,為獲得全局視圖,需要構建全局本體,通過建立全局本體到各局部本體之間的語義映射,就可以進行語義沖突的發現與處理.其框架如圖2所示.

在圖2中,來自于不同數據源的數據被分別構建成多個局部本體,這些局部本體中包含了對應數據源的表、列等信息的映射.沖突檢測機制根據本體之間的映射關系發現局部本體之間的語義沖突,沖突消解機制通過添加局部本體與全局本體之間的映射來消解該沖突.例如,局部本體中的概念C1,C2,…,Cn是存在語義沖突的相同概念,則在全局本體中,可以創建一個公共的概念Cg,并在映射表中建立Cg與C1,C2,…,Cn之間的映射,如表1所示.

表1 全局本體與局部本體之間的概念映射
3.2 語義沖突的形式化描述
數據的語義沖突主要有物理沖突、表沖突、字段沖突和記錄沖突,物理沖突的解決方法一般采用格式轉換來解決.其余3種沖突對應為本體語義模型中的概念沖突、屬性(或關系)沖突和實例沖突.可形式化描述如下:
1)概念沖突:

式中,c1、c2為來自不同本體O1、O2的概念,tag為該概念的標簽,C_mapping是概念映射函數,可以判斷不同本體中的2個概念是否匹配.
2)屬性沖突:

式中,a1、a2為來自不同概念C1,C2的屬性,tag為該屬性的標簽,A_mapping是屬性映射函數,可以判斷不同概念中的2個屬性是否匹配.A_mapping又可定義如下:

其中,range為屬性的值域,length為屬性的長度,code為屬性的內部代碼(英文字段名).
3)實例沖突:

式中,ai,aj為來自不同概念C1、C2的對應屬性,在主鍵屬性值相同的情況下,存在非主鍵的屬性值不一樣,則這2個實例存在沖突.
3.3 本體映射
本文中,本體映射算法采用基于對2個本體間的名稱(className)、屬性(attribute)以及屬性類型(range)間的相似度進行評估從而實現全局本體到局部本體的映射.本體映射中的一個重要步驟是檢測2個本體中的相似概念,以便為合并或者映射提供可能的作用點.這里我們僅介紹概念映射的方法.
整體相似度S的計算公式可以表示為:

其中,Sn、Sα和Sr分別表示概念的名稱、屬性及屬性類型3個維度的相似度,α、β、γ分別表示三者的權重.
4.1 異構數據綜合查詢機制框架
設計綜合數據查詢器的目標,就是為用戶提供統一的查詢界面,使用戶不必考慮底層數據源結構等各方面的問題,也就是說底層數據庫對于用戶來說是透明的.在此基礎上用戶就好像在操作一個數據源.通過本體將各個數據源的數據用一種統一的數據模式進行描述,屏蔽數據源數據模式和語義的差異,從而實現數據的綜合查詢.利用本體對語義描述的優勢,通過構建語義映射關系設計語義沖突檢測和消解機制,從而解決電力系統數據集成中的語義異構問題,其體系結構如圖4所示.

該查詢框架由數據源層、中間層和應用層組成.應用層一般是用戶接口,如瀏覽器等.應用層接收到用戶的查詢請求后,交給中間層.在本體的支持下,進行查詢分解、語義沖突檢測及消解后,由查詢執行引擎將分解到不同數據源上的查詢要求提交到數據源層.數據層由不同來源的異構數據構成,分解后的查詢結果通過包裝器包裝后,提交給位于中間層的查詢結果合成引擎進行處理,得到合成后的查詢結果,最終通過后應用層返回給用戶.
4.2 結果演示
為驗證該查詢機制,我們設計了一個綜合查詢器如圖4所示.
可以看到,在這個界面中主要包含3部分界面:數據庫范圍選擇、查詢指令的輸入部分、查詢結果列表.
同時為了滿足高級用戶的查詢需求,同時提供了一個更自由、更簡潔的查詢界面,支持直接以原始SQL語句對數據庫的數據進行操作,完整支持SQL語句,并且對用戶輸入的SQL語句不加以任何干擾.例如,當勾選圖5中選項時,得到圖6的查詢結果.
從圖6可知,查詢的語句中,只有asset在2個數據庫的本體中的結果一致,所以只有合并asset了.



本文提出了一種基于本體的電力系統異構數據查詢機制.該機制通過從不同的異構數據源中構建領域局部本體,并在此基礎上建立全局本體.通過局部本體到全局本體的語義映射,消除來自不同數據源的語義沖突.最后設計并實現了該機制,為電力企業提供了一個統一的數據查詢接口.實驗結果表明,該方法是可行的.
參考文獻:
[1]BOURY-BRISSET A C.Ontology-based approach for information fusion[C]//Proceedings of the Sixth International Conference of Information Fusion.IEEE,2003,1:522-529.
[2]周剛,郭建勝.基于本體的異構數據集成系統分析與設計[J].計算機工程,2007,33(19):273-275.
[3]于琦,周勇.一種基于本體的異構數據源模式集成[J].計算機技術與發展,2008,18(2):35-36.
[4]李星毅,高文浩,施化吉.基于本體的異構數據集成方法[J].計算機工程與設計,2009,30(8):1931-1934.
[5]GRUBER T.A translation approach to portable ontology speci fications[J].Knowledge Acquisition,1993,5(2):199-220.
[6]CARBONELL J G,SIEKMANN J.Intelligent information integrationforthe semantic Web[J].Springer Science,2005(10):214-220.
[7]周偉,基于本體的電力系統中數據集成方法的研究[D].保定:華北電力大學,2012:1-28.
[8]李佳珊,盧美蓮,一種基于本體的異構傳感器網絡數據融合結構[EB/OL].[2013-10-10]http://www.paper.edu.cn.
[9]宋偉,面向智能電網的異構數據集成方法研究與應用[D].保定:華北電力大學,2011:1-16.
[10]鐘將,宋娟.基于本體的異構數據集成框架[J].計算機程.2011,37(14):44-46.
[11]ASTROVA I.Reverse engineering of relational databases to ontologies[C]//In:Proc of the 1st European Semantic Web Symposium1Berlin.Springer-Verlag,2004:327-341.
[12]瞿裕忠,胡偉,鄭東棟,等.關系數據庫模式和本體間映射的研究綜述[J].計算機研究與發展,2008,45(2):300-309
[13]翟保榮,鐘志農.一種基于關系數據庫提取OWL本體的方法[J].計算機與信息技術,2011(10):1-4.
(責任編輯 莊紅林)
中圖分類號:TP311
文獻標志碼:A
文章編號:1672-8513(2014)06-0451-05
收稿日期:2014-01-19.
基金項目:國家自然科學基金(61263043);云南省自然科學基金(2011FB020);云南省教育廳科學研究基金(2011Z020,2013Z049);云南省電力研究院科技項目(K-YDSY-K13019);云南省軟件工程重點實驗室科研基金(2012SE303);云南大學軟件學院學科建設基金(2012SE103).
作者簡介:張德海(1977-),男,博士,副教授.主要研究方向:知識工程、數據工程與大數據.
An ontology based heterogeneous data query mechanism for power system
ZHANG De-hai1,ZHANG De-gang2,LUO Xue-li2,LIU Qing1,LI Jin1
(1.School of Software,Yunnan University,Kunmin 650091,China;2.The Electric Power Research Institute,Yunnan Electric Power Test and Research Institute(Group)Co.,Ltd.Kunming 650217,China)
Abstract:In electricity enterprises,there are many heterogeneous databases developed in different times or by different sectors,and the data sources of these systems are independent of each other and difficult to be exchanged,shared or integratedbetween systems because of semantic conflicts.This paper presents a query mechanism for integrating heterogeneous data sources based on the ontological theory within the power enterprises.It provides a unified data query interface for decision-making.Experiments show that this mechanisms can effectively solve semantic conflicts between heterogeneous data sources,and improve the accuracy of the data analysis.
Keywords:ontology;heterogeneous data;semantic conflicts;semantic mapping;query mechanism