《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于PROV的大洋樣品數(shù)據(jù)溯源
基于PROV的大洋樣品數(shù)據(jù)溯源
2016年微型機(jī)與應(yīng)用第16期
劉兵,徐建良
中國(guó)海洋大學(xué) 信息科學(xué)與工程學(xué)院,山東 青島 266100
摘要: PROV模型是W3C推薦的數(shù)據(jù)溯源模型,擁有豐富的語義詞匯和數(shù)據(jù)模型。結(jié)合大洋樣品領(lǐng)域知識(shí),從溯源信息的描述、溯源信息的存儲(chǔ)和溯源信息的查詢?nèi)矫娼榻BPROV模型在大洋樣品領(lǐng)域的應(yīng)用過程和技術(shù)路線。
Abstract:
Key words :

  劉兵,徐建良
 ?。ㄖ袊?guó)海洋大學(xué) 信息科學(xué)與工程學(xué)院,山東 青島 266100)

       摘要:PROV模型是W3C推薦的數(shù)據(jù)溯源模型,擁有豐富的語義詞匯和數(shù)據(jù)模型。結(jié)合大洋樣品領(lǐng)域知識(shí),從溯源信息的描述、溯源信息的存儲(chǔ)和溯源信息的查詢?nèi)矫娼榻BPROV模型在大洋樣品領(lǐng)域的應(yīng)用過程和技術(shù)路線。
  關(guān)鍵詞:PROV;大洋樣品;數(shù)據(jù)溯源  

0引言
  大洋樣品館的主要職能為樣品的收集、整理、保存、分配,屬性數(shù)據(jù)提取[1],而為了能夠更好地實(shí)現(xiàn)信息化,為樣品管理工作提供更強(qiáng)大的信息支持,樣品館設(shè)計(jì)并開發(fā)了大洋樣品管理系統(tǒng),該系統(tǒng)主要負(fù)責(zé)對(duì)入館樣品從入館交接到樣品分配出庫之間的信息管理工作。
  目前,隨著數(shù)據(jù)量的增加,以及對(duì)樣品信息可靠性要求的提高,管理系統(tǒng)漸漸暴露出一些問題,隨著樣品數(shù)據(jù)的變遷很難保證樣品信息的可靠性。這個(gè)問題隨著數(shù)據(jù)量與業(yè)務(wù)的不斷增長(zhǎng),變得愈發(fā)嚴(yán)重。
  近幾年數(shù)據(jù)溯源技術(shù)的流行,為解決大洋樣品管理系統(tǒng)產(chǎn)生的問題提供了比較合適的解決方案。數(shù)據(jù)溯源的研究最早可追溯到20世紀(jì)90年代,它的名稱是從“data provenance”翻譯過來的,意思是對(duì)數(shù)據(jù)來源進(jìn)行追蹤然后將數(shù)據(jù)的歷史狀態(tài)重現(xiàn)出來。
  目前國(guó)內(nèi)數(shù)據(jù)溯源的研究還比較少,將數(shù)據(jù)溯源應(yīng)用到大洋樣品管理中的也較為少見。國(guó)外這方面的研究比較流行,數(shù)據(jù)溯源模型也很多,較為流行的有OPM模型和PROV模型。
1PROV模型
  PROV是一個(gè)由W3C定義的有關(guān)溯源的標(biāo)準(zhǔn)文檔集合(PROV Family),目前共由11個(gè)文檔組成,其中4個(gè)為推薦標(biāo)準(zhǔn),如圖1所示。

圖像 001.png

  作為一個(gè)抽象模型,PROV并不針對(duì)具體的應(yīng)用環(huán)境,而只是對(duì)于各領(lǐng)域下數(shù)據(jù)起源過程的一般化表達(dá)[2]。因此,如果要將PROV應(yīng)用到特定的環(huán)境中,必須根據(jù)具體情況進(jìn)行相應(yīng)的擴(kuò)展,否則會(huì)帶來諸如語義不準(zhǔn)確等問題。
  PROV數(shù)據(jù)模型(PROVDM) 是PROV標(biāo)準(zhǔn)家族的核心,其為溯源數(shù)據(jù)的表述提供了通用的術(shù)語概念。PROV模型作為一個(gè)上層溯源模型獨(dú)立于具體領(lǐng)域,從抽象層次上描述了溯源過程,其核心包括實(shí)體(Entity)、活動(dòng)(Activity)和代理(Agent)。
  實(shí)體和實(shí)體間的變化和流動(dòng)通過屬性prov:wasDerivedFrom來表示;實(shí)體和活動(dòng)之間的關(guān)系有prov:used和prov:wasGeneratedBy,分別表示實(shí)體被活動(dòng)所使用和實(shí)體由活動(dòng)產(chǎn)生;活動(dòng)和活動(dòng)之間利用屬性prov:wasInformedBy表示時(shí)間次序關(guān)系;代理之間的關(guān)系使用prov:actedOnBehalfOf屬性表示;代理與實(shí)體存在的關(guān)聯(lián)使用屬性prov:wasAttributedTo表達(dá);代理與活動(dòng)的關(guān)聯(lián)使用屬性prov:wasAssociatedWit h表達(dá)[3]。這三個(gè)比較核心的概念及其相互關(guān)系如圖2所示。

圖像 002.png

  PROV還包含了一個(gè)專門為數(shù)據(jù)模型而定義的比較輕量級(jí)的本體,即PROVO[4]。PROVO使用標(biāo)準(zhǔn)網(wǎng)絡(luò)本體語言O(shè)WL描述,支持PROV的數(shù)據(jù)模型向RDF映射[5]。PROV本體根據(jù)用戶的應(yīng)用需求分為三個(gè)級(jí)別,本文使用第一級(jí)別描述大洋樣品溯源信息。
2樣品信息溯源
  2.1溯源信息描述

  資源描述框架(Resource Description Framework, RDF)是用來描述網(wǎng)絡(luò)資源的W3C標(biāo)準(zhǔn),RDF事實(shí)上已成為PROV模型的標(biāo)準(zhǔn)描述方式[6]。
  以樣品的分割活動(dòng)為例,假設(shè)某科學(xué)家申請(qǐng)樣品A中的一部分,樣品管理員(Admin01)需要將樣品A(SampleA)分割成為樣品B(SampleB)與樣品C(SampleC)。假設(shè)上述樣品只存在樣品編碼(Coding)屬性。
  該場(chǎng)景涉及樣品管理領(lǐng)域的多個(gè)概念,這些概念在PROV模型的基礎(chǔ)上用相應(yīng)的本體詞匯進(jìn)行描述,該詞匯集在“http://www.cosr.or g.cn/mso#”命名空間下。
  這些詞匯建立在PROV模型之上,是對(duì)PROV模型在本領(lǐng)域內(nèi)的擴(kuò)展,這里只列舉出上文場(chǎng)景中出現(xiàn)的詞匯。上述樣品分割操作的RDF描述如下:
  @prefix foaf: <http://xmlnscom/foaf/0.1/> .
  @prefix prov: <http://wwww3org/ns/prov#> .
  @prefix : <http://wwwcosrorgcn/mso#> .
  :sampleA
  a :Sample,prov:Entity;
  prov:wasGeneratedBy: code01;
  :Coding "1L4130126"^^xsd:string;.
  :sampleB
  a :Sample,prov:Entity;
  prov:wasGeneratedBy:separate01;
  :Coding "1L4130127"^^xsd:string; .
  :sampleC
  a :Sample,prov:Entity;
  prov:wasGeneratedBy:separate01;
  :Coding "1L41301268"^^xsd:string;.
  :Admin01
  a :Admin,foaf:Person,prov:Agent;
  foaf:mbox<mailto:XX@example.org>;
  foaf:name"XiaoMing"; .
  :separate01
  a :Separate,prov:activity;
  prov:used:sampleA;
  prov:wasAssociatedWith :application01;
  prov:wasAssociatedWith :Admin01;
  prov:startedAtTime "20160105"^^xsd:dateTime;
  prov:endedAtTime "20160105"^^xsd:dateTime;
  2.2溯源信息存儲(chǔ)
  在傳統(tǒng)PROV溯源系統(tǒng)中,一般直接使用RDF文件或者關(guān)系型數(shù)據(jù)庫存儲(chǔ)溯源數(shù)據(jù),文件存儲(chǔ)存在數(shù)據(jù)共享性差、獨(dú)立性差和冗余度大等缺點(diǎn),關(guān)系型數(shù)據(jù)庫由于存在過于結(jié)構(gòu)化的特點(diǎn),在數(shù)據(jù)庫擴(kuò)展和存儲(chǔ)非結(jié)構(gòu)化數(shù)據(jù)時(shí)比較困難[7]。
  BrightstarDB數(shù)據(jù)庫可以解決上面的問題,BrightstarDB是原生的基于.NET的用于存儲(chǔ)RDF所描述的三元組的非關(guān)系型數(shù)據(jù)庫,支持SPARQL查詢語法。利用BrightstarDB提供的API,可以方便地將描述存入數(shù)據(jù)庫。如下所示將一條三元組描述存入數(shù)據(jù)庫:
  var addTriples = new StringBuilder();
  //三元http://wwwcosrorgcn/mso/separate01是PROV活動(dòng)
  addTriplesAppendLine("http://wwwcosrorgcn/mso/separate01 http://wwww3org/1999/02/22-rdf-syntax-ns/type http://www.w3.org/ns/prov/activity .");
  //創(chuàng)建事務(wù)數(shù)據(jù)參數(shù)
  var transactionData = new UpdateTransactionData { InsertData = addTriples };
  //執(zhí)行事務(wù)
  var jobInfo = clientExecuteTransaction(storeName, transactionData);
  2.3溯源信息查詢
  SPARQL是W3C推薦的RDF查詢語言,SPARQL語言的RDF數(shù)據(jù)查詢實(shí)現(xiàn)原理是圖模式匹配[8],由于BrightstarDB支持SPARQL查詢語言,所以可以直接使用SPARQL對(duì)溯源信息進(jìn)行查詢。
  在大洋樣品溯源查詢中,假設(shè)已知樣品B的樣品編碼,要查詢出它的母樣品的編碼和執(zhí)行分割操作的管理員的姓名。圖3是該查詢的圖模式(查詢意圖)。

圖像 003.png

  

圖中每條連線都是一條三元組陳述,用SPARQL語言實(shí)現(xiàn)代碼如下:
  @prefix rdf:<http://www.w3.org/1999/02/22-rdf-synt ax-ns#> .
  @prefix foaf: <http://xmlns.com/foaf/0.1/> .
  @prefix prov: <http://www.w3.org/ns/prov#> .
  @prefix : <http://www.cosr.org.cn/mso#> .
  SELECT ?Coding ?name
  WHERE {?B :Coding “1L4130127”;
  prov:wasGeneratedBy ?AC .
  ?AC prov:used ?A ;
  prov:wasAssociatedWith ?Admin .
  ?Admin rdf:type :Admin ;
  foaf:name ?name .
  ?A:Coding ?Coding .
  }
  該語句的執(zhí)行結(jié)果如表1所示。

圖像 004.png

3結(jié)論
  隨著大洋領(lǐng)域業(yè)務(wù)量的增加和用戶需求的豐富,現(xiàn)行的大洋樣品管理系統(tǒng)在一定程度上已經(jīng)暴露出缺陷。本文通過對(duì)PROV模型的研究,將PROV模型應(yīng)用到大洋樣品管理領(lǐng)域,解決了大洋樣品衍生數(shù)據(jù)可靠性的問題,為以后大洋樣品管理系統(tǒng)升級(jí)提供技術(shù)支持。
  參考文獻(xiàn)
  [1] 杜林濤.大洋樣品倉庫信息化管理的研究[D].青島:中國(guó)海洋大學(xué),2013.[2] 柯潔,董紅斌,梁意文,等. 基于PROV的ETL起源信息統(tǒng)一表達(dá)機(jī)制[J]. 四川大學(xué)學(xué)報(bào)(工程科學(xué)版),2015,47(5):126130.
 ?。?] LEBO T,SAHOO S,MCGUINNESS D, et al.ProvO: The PROV  ontology[EB/OL].(2013XXXX)[20160330]http: / /www.w3.org /TR/2013 /REC provo 20130430.
 ?。?] MOREAU L,MISSIER P,BELHAJJAME K,et al.Provdm:the PROV data model[EB/OL].(2013XXXX)[20160330]http://www.w3.org/TR/2013 /REC prov dm 20130430.
 ?。?] LIU X,WANG C. Data with provenance: models and storage[J]. China Academic Journal Electronic Publishing House,2008,35(10): 187191.
 ?。?] 倪靜,孟憲學(xué).關(guān)聯(lián)數(shù)據(jù)環(huán)境下數(shù)據(jù)溯源描述語言的比較研究[J]. 現(xiàn)代圖書情報(bào)技,2013(2):1823.
 ?。?] 陳彥.應(yīng)用SPARQL進(jìn)行RDF數(shù)據(jù)查詢[J].企業(yè)技術(shù)開發(fā),2007(7):610.
 ?。?] 周邠林,趙麗敏,蔣薇.基于RFID的生豬溯源系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].微型機(jī)與應(yīng)用,2014,33(10):8385.
 ?。?] 唐永瑞,張達(dá)敏. 基于Ajax與MVC模式的信息系統(tǒng)的研究與設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2014,40(2):7578.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。