李志明,唐永中
(河西學院 信息技術中心,甘肅 張掖 734000)
(*通信作者電子郵箱lzm@hxu.edu.cn)
基于社交網絡和關聯數據的服務網絡構建方法
李志明*,唐永中
(河西學院 信息技術中心,甘肅 張掖 734000)
(*通信作者電子郵箱lzm@hxu.edu.cn)
網絡中可用服務的急劇增加對面向服務計算技術的發展起到了極大的推動作用。針對服務的規模和利用率遠沒有達到預期,以及服務之間交互關系的復雜性問題,提出基于社交網絡和關聯數據的服務網絡構建方法。首先,結合社交網絡和關聯數據方法提出服務網絡(SN)的概念,以提高服務的規模及利用率;其次,為了提升服務發現的可行性及有效性,構建服務網絡中的服務社區;然后,形式化地表述服務網絡中服務之間的關聯關系和屬性,以解決服務之間互操作問題;最后,結合旅游服務網絡案例研究分析所提出的方法。研究結果表明,基于社交網絡和關聯數據的方法可有效解決網絡服務利用率低以及服務關系復雜性的問題。
服務關系;社會網絡;關聯數據;圖理論;服務計算
服務計算(Service Computing, SC)和面向服務的體系結構(Services-Oriented Architecture, SOA)作為潛在的技術力量,支撐著現代軟件工程行業,實現了企業間業務流程的整合,并作為一種技術手段開發了很多復雜的分布式應用[1]。當需要開發某個業務應用時,由于服務具有松耦合、平臺獨立、跨企業邊界的特性,因此是一個可選的技術手段。從另一個角度來看,服務還具有創新性和可繁殖性,保證服務的高可用[2]。服務的互操作性是設計的初衷,自動化的信息使用和動態交互是語義服務的目標[3]。
然而,在服務組合中,服務之間發生的交互問題并沒有解決。當前,由于SOA的狀態限制了服務的廣泛使用,因此很多重要問題懸而未決,比如,如何部署服務才能更好地發現并獲取它,如何發現滿足用戶需求的服務并響應,當發現服務時如何信任它們,以及當某些服務失效時如何平滑地替代它們[4]。從技術角度來說,Web服務使用統一描述、發現和集成(Universal Description Discovery and Integration, UDDI)部署在網絡中,或者基于當前的服務描述語言對Web服務進行描述,如Web服務描述語言(Web Services Description Language, WSDL),Web應用程序接口(Web Application Programming Interface, WebAPI),Web服務本體語言(Ontology Web Language for Services, OWL-S),以及簡單對象訪問協議(Simple Object Access Protocol, SOAP),在服務的整個生命周期,服務只關注它們的功能及非功能屬性,忽視了其他的外部特征(如交互歷史),沒有考慮互聯服務之間的關聯關系和服務的社會屬性,這就限制了服務發現及組合。服務只關注于自己本身,忽略了其他的服務。此外,部署在網絡中的服務數量遠沒有達到預期[4]。網絡中大部分的可用服務幾乎從來沒有被使用過,很少的一部分被發現、組合或者調用。最后,大部分的服務組合方法沒有考慮與服務消費者之間的交互。社交網絡中,用戶可以根據個人建立的社會關系,通過搜索網絡頁面發現朋友,然而,服務消費者卻不能像搜索社交網絡一樣,根據已經建立的服務之間的關聯關系來發現服務。
在服務科學中,服務環境的這些不利條件阻礙了服務的發布、發現、綁定及組合。為了連接單個服務,提供服務間更好的交互、發現及組合,本文提出了服務網絡(Service Network, SN)的概念,基于關聯數據(linked data)方法,根據服務間的關系將單個服務連接到服務網絡中,這樣,服務消費者能根據服務之間的關系來發現服務網絡中的服務。社會網絡能傳遞人們每天經歷的關系,比如可信性和公平性,為此,將社會網絡計算與面向服務的計算技術相整合,使得服務能夠了解它的交互歷史,促進將來進行服務組合的可能性。本文采用了社會化這個術語,因為人們日常生活中顯現出來的社會性,可以很容易地映射到服務參與的一些關系中[4]。當前SOA應用的設計環境是私密的,在執行期間保持靜態,完全依賴于通用的特征及方法,而引入社會網絡和關聯數據的方法可以消除這些限制。
本文研究的服務網絡來源于服務計算領域,結合了社交網絡及關聯數據的觀點,但它同樣可以作為一個服務模式,服務SOA和軟件即服務(Software as a Service, SaaS)。
1.1 關聯數據
關聯數據技術起源于語義Web研究,衍化的結果是數據網絡(Web of data)。關聯數據是指網絡中發布和連接的有結構數據的一組最佳實踐[5]。簡單地說,關聯數據僅僅使用Web來創建不同來源數據間的類型連接。這類似于在不同地理上分布的兩個組織機構,或者一個組織機構內簡單的異構系統中進行數據庫的維護,在數據層面很難進行互操作。技術上,關聯數據是指以某種方式將數據發布在網絡中,這些數據是機器可讀的,并且具有明確的定義。關聯數據可以連接到其他外部的數據集中,構建更大的關聯數據,反之也能夠被其他外部數據集所連接。數據網絡因此可以看成附加層,與經典的文檔網絡緊密交織,具有很多相同的屬性:
1)數據網絡是類屬性,包含任何數據類型;
2)任何人都可以將數據發布在數據網絡中;
3)數據發布者不受表達數據詞匯選擇的限制;
4)實體通過資源描述框架(Resource Description Framework, RDF)鏈接相連,跨越各種數據源創建全局數據體,確保新數據源的發現。
1.2 社會網絡
社會網絡是社會化的Web,將個人放在網絡中的核心位置。社會網絡是跨學科的方法論,它研究個體間的資源交換,集合了社會學、邏輯理論、心理學、計算機科學、數學、物理等學科的優點,以及各領域學科專家的協同工作,是一個非常熱門的科學研究領域[6]。社會網絡關注節點(人、組織或信息系統)間的關系模式。簡單來說,社交網絡就是一張圖,通過節點之間的邊相連,而邊具有標簽元素,比如人們日常生活中的友好、合作、討厭。邊有時是單向的,有時是雙向的,并具有權值,有時則是這些情況的混合。每個節點提供了相關性的一個數學表達,能夠極大地影響行為關系。
1.3 相關工作
為了對本文的研究有很好的了解,首先簡要介紹與服務網絡相關的一些工作。文獻[7]提出了社會服務網絡(Social Service Network, SSN)的概念,它是一種基礎設施,為了與社區進行交互,通過整合Web 2.0技術,應用語義符號自動地豐富Web服務本體。Danylevych等[8]應用業務關系的中心和相關參與者之間的信息交換,研究了服務網絡的模式。一種觀點認為服務網絡建??梢耘c業務流程管理(Business Process Management, BPM)和SOA相結合。
在服務組合的過程中,文獻[9]討論了考慮社會網絡的必要性,并指出社會網絡為何能夠提高服務組合的效率。在該問題中,他們引入一個新的框架SoCo(Social Composer),旨在幫助端用戶在創建新服務的過程中基于端用戶的社會網絡分析推薦服務。
為了描繪服務網絡作為參與者的集群,現有的研究工作提出形式化的表示方法,彼此之間提供、請求并消耗服務。陳世展等[10]基于服務之間的關系建立了一種服務框架,用以縮小服務請求者和服務消費者之間的差距,該研究主要關注服務關系如何推進服務組合和服務發現的過程。王輝等[11]提供了對Web服務和服務關系的描述,基于語義關系服務組織結構構建服務網絡系統平臺。
在大數據和云計算時代,越來越多的工作都將與時俱進。文獻[12]中對關聯數據提出了概念性和技術性的介紹。文獻[12]設計的初衷主要面向對使用數據、管理數據、共享數據、數據交互以及熱衷于Web研究的技術人員。文獻[13-14]運用SOA分析方法架構了采訪微服務模型,在實現SOA微服務自由組配機制的基礎上,創建了促進復用的采訪業務模式,可以移植到圖書館業務實際工作中并加以利用和評價。
綜上所述,這些研究者沒有進一步地研究服務網絡的本質,一些基于關聯數據原則和社會網絡分析的關鍵問題和方法沒有被提出并解決。因此,本文從不同的視角提出一種新的思路和方法,基于服務關聯及社交網絡,解決服務互操作問題及服務創新問題。
服務網絡的提出是為了填補服務之間交互關系的空白。在某種程度上,事物的結構決定了事物的功能。服務網絡結構的構建,提高了服務的利用率,增加了服務的功能。首先,以應用數學和運籌學的形式來定義服務網絡,它們通常用來表達網絡;然后描述服務網絡的本質特性,如服務社區和服務關系等。
2.1 服務網絡
定義1 服務網絡(SN)。服務網路定義為一個圖GSN=(V,E),其中:V表示服務節點集,v∈V表示服務網絡中的節點;E表示服務關系集,e∈E表示服務網絡中邊之間的關系。如果兩個節點通過邊相連,稱這兩個節點為鄰居。邊定義為三元組〈Si,t,w,Sj〉,其中:Si、Sj表示服務節點,邊為有向邊從Si到Sj;t是Si和Sj之間的關系類型,w為服務關系的權值。
圖理論是一種數學工具,廣泛地應用于網絡屬性的研究。本文采用兩種經典的圖理論數據結構(矩陣代數技術)來表達服務網絡:表結構(liststructure)和矩陣結構(matrixstructure)。它們用來存儲信息,以便進一步分析服務網絡的屬性。以服務消費者和服務提供者的角度來看,服務網絡圖模型的設計目的是為服務之間的交互提供概覽,總結業務過程和服務建模的技術細節。
2.2 服務社區
在類似Web這種開放環境下,為了提高服務發現的可行性及有效性,提出將相似的服務聚集在一個群組(group)中,即服務社區(servicecommunity)。群組或社區的概念強調開發準則的重要性,允許服務的管理成為社區的一部分。
社區是生活在一起的人所組成的群組,具有共同的興趣、宗教信仰、或者國籍等。在Web服務領域,Benatallah等[15]定義服務社區為Web服務的集合,這些服務具有不同的非功能屬性,但是具有相同的功能特性。文獻[15]等提出的服務社區的屬性如下:
1)在相同的空間,社區通過聚集具有相似功能的Web服務,構成專業的群組。發現所需的服務可以輕松地縮小到某個社區的有限服務當中,不用定期檢查。
2)一旦有服務失效,社區簡化了Web服務替代過程,在失效服務所在的社區中選擇潛在的可替代服務,直接應用于服務組合場景中。
3)社區可以基于不同的模型建立內部結構,如主從結構、對等網(PeertoPeer,P2P)結構、混合結構。
雖然Web服務是服務社區結構(如圖1所示)的新元素,但是該結構與傳統的服務發布、發現、綁定具有相同的特性。UDDI協議注冊中心的功能屬性同樣適用于服務提供者和服務請求者。從服務社區中選擇Web服務對請求者來說是透明的,這些Web服務聚集到社區中是以獨立的方式進行的。服務代理組件通常引導一個社區。在社區中,服務代理組件本身可以作為一個Web服務實現其他Web服務的兼容性需求。這些Web服務被表示成服務節點,具有相同的功能屬性。

圖1 服務社區結構
2.3 服務關系
2.3.1 服務社區內部服務關系
描述社區內部具有三種關系:監督關系(SupervisionRelationship)、競爭關系(CompetitionRelationship)、替代關系(SubstitutionRelationship)。通過對每個服務關系構建一個服務社區,可以實現不同的目標,其中:監督關系的目標旨在幫助服務代理將請求者的功能和非功能需求分配給最理想的服務節點;競爭關系的目標旨在當一些服務在執行期間偶爾出現較低競爭力時,增強服務的各種性能;替代關系的目標旨在當一些服務失效時,使Web服務具有較高的可用性。
1)監督關系。
構建監督關系需要兩類節點表達服務代理和服務節點,以及一種類型的邊來表達它們之間的關系。監督關系存在于服務代理和服務節點之間。在監督服務網絡中,一個節點充當服務代理,其他節點為服務節點。服務代理提供進入到服務網絡的入口,其他相關的服務節點通過監督關系與服務代理節點相連,如圖2所示。這些由服務代理和服務節點所構成的關系邊是雙向的。
考慮有序服務對〈Si,Sj〉,本文定義監督關系為Si⊙Sj。監督關系的類型為非對稱和非傳遞的。監督關系邊的權值通過以下公式計算:
(1)


圖2 服務網絡監督關系
2)競爭關系。
構建競爭關系只需要一種類型的節點表示服務節點,以及一種類型的邊表示服務關系。在競爭服務網絡中,沒有具體的節點充當進入服務網絡入口的角色,社區中的所有服務具有相同的功能屬性,但是在業務流程執行期間只選擇一個服務節點來滿足用戶的需求,最終這些服務之間彼此競爭。因此,節點彼此之間通過邊相連,定義這些邊是雙向的,如圖3所示。例如,競爭關系存在于服務節點S1、S3和S4,當服務請求者的非功能屬性需求需要滿足時,通過這些節點的非功能屬性來區分它們。因此,服務指導它自己所屬網絡中的競爭者,相對于競爭者,它會試圖提高自己的非功能屬性。

圖3 服務網絡競爭關系
考慮一個有序服務對〈Si,Sj〉,定義競爭關系為Si⊕Sj。競爭關系的類型為對稱的和傳遞的。競爭關系邊權值通過以下公式計算:
(2)

3)替代關系。
構建替代關系只需要一類節點類型表達服務節點,以及一種邊類型表達關系。如果服務提供相同的功能屬性,雖然它們之間會存在彼此競爭的關系,但是當某個服務節點失效時,具有競爭關系的節點會替代失效節點,實現服務組合的需求。因此,一個服務了解它自己所在網絡的替代服務,當某個服務節點失效,該服務就可以替代失效服務節點。當面臨服務節點具有潛在失效的情況下,服務節點能夠滿足服務等級協議(ServiceLevelAgreement,SLA)。替代關系存在于服務節點之間,因為它們都提供相同的功能特性,因此它們之間可以彼此替代,定義這些邊是雙向的,如圖4所示。

圖4 服務網絡替代關系
考慮有序服務對〈Si,Sj〉,本文定義替代關系為Si◎Sj。替代關系的類型為對稱的和傳遞的。替代關系的邊權值通過以下公式計算:
(3)

2.3.2 服務社區外部服務關系
描述社區外部具有兩種關系:協作關系(CollaborationRelationship)和推薦關系(RecommendationRelationship)。這兩種關系都只需要服務節點。在協同和推薦關系中,服務節點在各自的社區被定位。通過為每個關系構建一個社區,可以實現不同的目標:協作關系的目標旨在與服務同伴保持聯系,與服務節點協作實現服務組合;推薦關系的目標旨在建議某個服務節點推薦給服務同伴,以便能參與到正在進行的服務組合當中。
1)協作關系。
構建協作關系只需要一類節點類型表達服務節點,以及一種邊類型表達關系。協作關系是基于服務組合已經完成的情況下構建的。服務節點間的協作關系存在于相同的服務組合中(如圖5所示)。通過結合服務各自的功能,服務有能力協作,共同完成用戶的復雜需求。因此,服務節點了解它自己本身網絡的協作節點,每個服務節點可以基于交互歷史來決定是否與其他同伴進行協作。

圖5 服務網絡協作關系
考慮有序服務節點對〈Si,Sj〉,本文定義協作關系為Si?Sj。協作關系的邊類型為對稱的和傳遞的。協作關系的邊權值通過以下公式計算:
(4)

2)推薦關系。
構建推薦關系只需要一類節點類型表達服務節點,以及一種邊類型表達服務關系。推薦關系基于服務組合已經完成的基礎上構建,并伴隨著協作關系而存在。如前文所述,推薦關系用于推薦一些服務節點,這些服務節點如協作關系描述的意愿與其他服務節點進行協作。圖6描述了推薦關系的服務網絡,只需要將協作關系的名稱改為推薦關系即可,定義推薦關系的邊是單向性的。

圖6 服務網絡推薦關系
考慮有序服務節點對〈Si,Sj〉,本文定義推薦關系為SiSj.。推薦關系的邊類型為對稱的和傳遞的。推薦關系的邊權值通過以下公式計算:
(5)

定義2 基于關系的索引(relation-basedindexing):服務網絡中給定一初始服務節點S0,通過基于關系的索引提供了基于服務網絡的服務集{S},嚴格地遵從服務索引,即?Si∈{S},?R(S0,Si),其中R代表S0和Si之間的關系。
服務消費者能夠根據這些關系來發現服務,這種方式類似于用戶在Web頁面中發現感興趣的東西。在服務網絡中,不必關心服務部署在哪些位置,相反,服務請求者可以遵照由過去的一些交互與合作而建立起的關系來發現服務。這個定義允許服務請求者從給定的起始節點,通過服務關系發現另一個相關的服務。因此,服務請求者可以靈活地掌握服務。
定義3 服務集群(servicecluster)。服務集群表示由多個服務社區提供的可用服務集,具有特定的功能,定義為SC={S1,S2,…,Sn}。其中:SC表示n個服務的集合,即服務集群;Si(i=1,2,…,n)表示節點i的服務,彼此之間通過協作,實現服務發現及組合。
服務集群意味著在相同的領域,抽象的服務會聚集到一起。服務集群是服務網絡中有結合力的子群,可以看作是服務網絡的子圖,服務網絡中還包括服務鏈。同樣,服務集群也可被看成通過其他關系構成的組合服務或團。
服務網絡不指任何實際的或具體的服務,而是代表多個服務提供的服務集合,通過多個服務提供者共同執行特定的功能和任務。如圖7所示,假設李某擬定一個旅行計劃,首先他需要確定旅行的目的地是哪,根據天氣、地理、資金承受能力選擇期望地點;然后,選擇交通工具,以便在預訂的日期能夠到達目的地;此外,還需要預訂賓館,了解城市的氣候,以及飲食習慣等。圖7中,服務社區1表示交通服務,服務社區2表示酒店服務,服務社區n表示旅游景點服務,對于每個服務社區,都由多個服務提供者提供多種候選服務。在該案例場景中,單獨的一個服務無法滿足用戶的所有需求。為了旅行的目的,需要發現并組合多種相關的服務,這就構成了服務網絡的原型系統。

圖7 旅游服務網絡案例示意圖
服務社區中的服務彼此之間依照具體的性能相區別。比如,交通工具服務可由火車、汽車、飛機等服務提供商來提供,每個服務提供商可以提供多種服務。例如,火車交通工具服務提供商可提供高鐵、動車、特快、直達等列車服務,每個具體的服務都包含一組特性(比如票價、時長),這些特性用來識別并選擇特定的服務。根據服務社區內部(2.3.1節)以及服務社區外部(2.3.2節)的服務關系,幫助用戶選擇最合適的服務。在服務選擇及業務服務組合中,一組具體真實的服務將會從服務社區中選出,各個服務社區中的服務相組合,形成服務網絡。
本文基于社會網絡及關聯數據原則,提出一種圖理論的方法,即服務網絡,系統地分析了服務網絡的關系及屬性,以解決服務之間的互操作問題。結合旅游服務網絡案例介紹,說明了本文方法可有效解決網絡服務利用率低以及服務關系復雜性問題。本文的研究框架仍具有一定的局限性,如構建方法只考慮單一服務網絡內部的關系。未來需要進一步改進并優化方法的性能,提高服務推薦及選擇的準確性,并研究跨網絡之間服務的有效利用及互操作問題。
References)
[1] PEDRINACI C, DOMINGUE J.Toward the next wave of services: linked services for the Web of data [J].Journal of Universal Computer Science, 2010, 16(13): 1694-1719.
[2] YAHYAOUI H, MAAMAR Z, LIM E, et al.Towards a community-based, social network-driven framework for Web services management [J].Future Generation Computer Systems, 2013, 29(6): 1363-1377.
[3] AL-SHARAWNEH J, WILLIAMS M A.A social network approach in semantic Web services selection using follow the leader behavior [C]// EDOCW 2009: Proceedings of the 13th Enterprise Distributed Object Computing Conference Workshops.Piscataway, NJ: IEEE, 2009: 310-319.
[4] MAAMAR Z, HACID H, HUHNS M N.Why Web services need social networks [J].IEEE Internet Computing, 2011, 15(2): 90-94.
[5] BIZER C, HEATH T, BERNERS-LEE T.Linked data — the story so far [J].International Journal on Semantic Web and Information Systems, 2009, 5(3): 1-22.
[6] OLIVEIRA M, GAMA J.An overview of social network analysis [J].Wiley Interdisciplinary Reviews: Data Mining and Knowledge Discovery, 2012, 2(2): 99-115.
[7] EL-GOARANY K, SALEH I, KULCZYCKI G.The social service network-Web 2.0 can make semantic Web services happen [C]// Proceedings of the 10th IEEE Conference on E-Commerce Technology and the 5th IEEE Conference on Enterprise Computing, E-Commerce and E-Services.Piscataway, NJ: IEEE, 2008: 419-423.
[8] DANYLEVYCH O, KARASTOYANOVA D, LEYMANN F.Service networks modeling: an SOA & BPM standpoint [J].Journal of Universal Computer Science, 2010, 16(13): 1668-1693.
[9] MAARADJI A, HACID H, DAIGREMONT J, et al.Towards a social network based approach for services composition [C]// ICC 2010: Proceedings of the 2010 IEEE International Conference on Communications.Piscatawa, NJ: IEEE, 2010: 1-5.
[10] 陳世展,馮志勇,王輝.服務關系及其在面向服務計算中的應用[J].計算機學報,2010,33(11):2068-2083.(CHEN S Z, FENG Z Y, WANG H.Service relations and its application in services-oriented computing [J].Chinese Journal of Computers, 2010,33(11): 2068-2083.)
[11] 王輝,馮志勇,陳炬,等.基于本體的服務網絡平臺及其構建方法[J].計算機應用,2010,30(8):2170-2172,2274.(WANG H, FENG Z Y, CHEN J, et al.Ontology-based service network platform and its construction method [J].Journal of Computer Applications, 2010, 30(8): 2170-2172, 2274.)
[12] HEATH T, BIZER C.Linked data: evolving the Web into a global data space [M]// Synthesis Lectures on the Semantic Web: Theory and Technology.[S.l.]: Morgan & Claypool Publishers, 2011: 7-27.
[13] 翟曉娟,聶娜.運用微服務重組機制構建圖書館編目隨需應變模型[J].現代圖書情報技術,2010,26(10):23-27.(ZHAI X J, NIE N.Construction of catalog on demand model based on micro-service re-grouping [J].New Technology of Library and Information Service, 2010, 26(10): 23-27)
[14] 劉健,畢強,馬卓.數字圖書館微服務評價指標體系構建及實證研究[J].現代圖書情報技術,2016,32(5):22-29.(LIU J, BI Q, MA Z.Assessment of digital library’s micro-services: an empirical study [J].New Technology of Library and Information Service, 2016, 32(5): 22-29)
[15] BENATALLAH B, SHENG Q Z, DUMAS M.The Self-Serv environment for Web services composition [J].IEEE Internet Computing, 2003, 7(1): 40-48.
This work is partially supported by the Young Teacher Foundation of Hexi University (QN2014- 25).
LI Zhiming, born in 1980, M.S., lecturer.His research interests include service computing, complex network analysis, data mining.
TANG Yongzhong, born in 1964, professor.His research interests include computer network, social computing.
Constructing method of service network based on social network and linked data
LI Zhiming*, TANG Yongzhong
(CenterforInformationTechnology,HexiUniversity,ZhangyeGansu734000,China)
An increasing large number of services are available in the network, which plays a great role in promoting the development of service-oriented computing technology.Concerning the problems that services scale and utilization were far from initially expected, and the interactions of making the services work together were complicated, a method for constructing service network based on social network and linked data was proposed.First of all, in order to improve service scale and utilization, the concept of Service Network (SN) combining social network and linked data was proposed.Secondly, the service community in the service network was established for elevating the feasibility and effectiveness of service discovery.Then, in order to solve the problem of service interoperation, the service relationship and property were formally expressed in service network.Finally, a case study of tourism service was used to analyze the proposed method.The analysis results show that the efficiency and feasibility of the proposed method are validated to solve the problems of low service utilization and complex service relationship.
service relationship; social network; linked data; graph theory; service computing
2016- 06- 21;
2016- 08- 05。 基金項目:河西學院青年教師科研基金資助項目(QN2014- 25)。
李志明(1980—),男,甘肅張掖人,講師,碩士,主要研究方向:服務計算、復雜網絡分析、數據挖掘; 唐永中(1964—),男,甘肅武威人,教授,主要研究方向:計算機網絡、社會計算。
1001- 9081(2017)02- 0468- 05
10.11772/j.issn.1001- 9081.2017.02.0468
TP311
A