中國礦業(yè)大學(北京)機電與信息工程學院 王子明 徐慧
基于服務質量的面向服務數(shù)據(jù)挖掘系統(tǒng)研究
中國礦業(yè)大學(北京)機電與信息工程學院 王子明 徐慧

經(jīng)過數(shù)十年的發(fā)展,數(shù)據(jù)挖掘領域產(chǎn)生了眾多的算法和挖掘系統(tǒng)。挖掘系統(tǒng)作為研究的有形成果,在展示數(shù)據(jù)挖掘技術的威力、利用數(shù)據(jù)挖掘技術產(chǎn)生經(jīng)濟效益方面起著至關重要的作用。目前,各大軟件廠商及研究單位都忙著推出了各自的數(shù)據(jù)挖掘系統(tǒng)。有的作為商業(yè)產(chǎn)品,功能強大,集成了數(shù)量眾多的挖掘算法;有的作為科研試驗軟件,僅集成了一兩個新穎的算法,功能有限。絕大部分的數(shù)據(jù)挖掘系統(tǒng)采用C/S的兩層結構,用戶需要安裝龐大客戶端,使得安裝和維護都十分不方便。特別是為了跟蹤數(shù)據(jù)挖掘研究的最新進展,經(jīng)常需要給系統(tǒng)增添新的算法,傳統(tǒng)的挖掘系統(tǒng)將難以適應這種需求,因此,構建一個功能較全、容易擴展、支持功能模塊復用、基于服務質量的新型數(shù)據(jù)挖掘系統(tǒng)便迫在眉睫。
1.Web服務。Web Service是對象/組件技術在Internet中的延伸,是封裝成單個實體且發(fā)布到網(wǎng)絡上以供其他程序使用的功能集合。Web Service從本質上講是放置于Web站點上的可重用構件。
Web Service可以分散于Web的各個地方,通過互相調用以協(xié)同完成業(yè)務活動。在Web Service的體系中,應用系統(tǒng)被分割為高內聚、弱耦合的單個服務,可以通過Web被調用和訪問。
Web服務的應用通常涉及服務提供者(service provider)、服務請求者(service requestor)及服務注冊中心(service registry)3種應用程序。服務所有者通過向服務注冊中心注冊服務描述來發(fā)布(publish)服務,并通過服務訪問平臺提供服務;服務請求者在服務注冊中心搜索((find)滿足所求的服務,根據(jù)其服務描述解析服務調用方式,并動態(tài)綁定(bind)服務提供者,獲取服務。
2.服務質量。服務質量英文全稱QoS(Quality of Service),在Web實際應用中,對Web Service往往有許多不同方面的技術要求,如各種級別的服務可用性、性能、可伸縮性、安全性和隱私策略等,因此需要能夠描述所有的這些技術需求,并且要求駐留每一個服務的環(huán)境能夠基于不同的技術要求提供不同的QoS選擇。顯然,對于服務提供者和他們的客戶而言,Web Service所提供的QoS已成為一個非常重要的問題。服務質量主要包括服務價格、服務響應時間、服務可用性、服務完整性等參數(shù)。
3.面向服務架構。面向服務架構(SOA)其目的是實現(xiàn)相互作用的軟件功能單元之間的松散耦合。SOA的基本思想是以服務為核心,將企業(yè)的IT資源整合成可操作的、基于標準的服務,使其能被重新組合和應用。這種重新組合,使那些原本趨于閑置的IT資源重新發(fā)揮作用,從而使企業(yè)的資源得到優(yōu)化,并煥發(fā)出新的生機。
4.數(shù)據(jù)挖掘。數(shù)據(jù)挖掘就是從大量的、不完全的、有噪聲的、模糊和隨機的數(shù)據(jù)中,提取隱含在其中人們事先不知道的、但又是潛在有用的信息和知識的過程。還有很多和這一術語相近的術語,如從數(shù)據(jù)庫中發(fā)現(xiàn)知識(KDD)、數(shù)據(jù)分析、數(shù)據(jù)融合(Data Fusion)以及決策支持等。
1.Web服務Qos評估因素。服務質量(QoS)是對Web服務滿足服務請求者需求能力的一種度量。Web服務中的QoS評估因素是一個可擴充向量,可以從很多方面來描述服務質量,如可擴展性、并發(fā)處理能力、響應時間、可靠性、服務價格、吞吐量、可用性、安全性、準確性、賠償率等,它們分別從不同角度對服務的質量進行了評估,但針對數(shù)據(jù)挖掘領域的特點,在眾多QoS中比較強調費用、執(zhí)行時間、可用性、可靠性這些指標,所以本文用如下所示的四元組向量作為評價Web服務s的服務質量的標準,即QoS模型為:

下面給出各分量的評價指標:
(1)費用(qprice(s))。Web服務提供者給定的一個服務操作的執(zhí)行價格qprice(s)作為服務請求者為完成任務所執(zhí)行該服務操作要付出的費用。該任務的執(zhí)行價格就是qprice(s)。
(2)執(zhí)行時間(qprice(s))。執(zhí)行時間是請求服務發(fā)送的瞬間到結果被收到的瞬間之間這段時間,以毫秒為單位。公式表示:

qtime(s),服務執(zhí)行時間;P(s),服務處理時間,T(s),服務傳送時間。
(3)可用性(qavailability(s))。可用性是質量的一個方面,指Web服務是否存在或是否已就緒可供立即使用。公式表示:qavailability(s)=A(s)/u。
(4)可靠性(qreliability(s))。可靠性是Web服務質量的一個方面,表示能夠維護服務和服務質量的程度。公式表示:qreliability(s)=N(s)/I。
qreliability(s),服務可靠性概率;N(s),服務s在最大期望時間內被成功調用的次數(shù),I:調用服務s的總次數(shù)。
2.Web服務Qos計算模型。假設存在一組服務群,用S={S1,S2,S3,S4.....Sk}表示,這k個服務在Web服務發(fā)現(xiàn)過程中都能滿足基本的功能匹配,于是我們就可以得到如下的k×4維矩陣:

由于衡量服務質量的指標有2種:一種是正向質量指標,即指標值越大,服務質量越好,如可用性和可靠性;另一種是負向質量指標,指標值越大,服務質量越差,如價格和響應時間。
所以,為了保證QoS因素具有可比性,需要對QoS參數(shù)進行歸一化處理,將所有QoS屬性的值域調整到一個統(tǒng)一的區(qū)間,在這里我們采用最小-最大規(guī)范化方法對數(shù)據(jù)進行變換,把Web服務質量的向量中的4個質量指標的值轉換為[0,1]區(qū)間內的相應數(shù)值。
對于正向指標和負向指標分別采用公式(1)和(2)進行處理:
設服務S的第j個QoS參數(shù)取值最大為qjmax,最小為qjmin,當前值為 qij,其中 qjmax=max(qij),1≤i≤k,1≤j≤4;qjmin=min(qij),1≤i≤k,1≤j≤4;

通過以上規(guī)范化處理,得到規(guī)范化k×4維矩陣:

向量V(si)=(vi1,vi2,vi3,vi4)=1≤i≤k,表示W(wǎng)eb服務si在相應服務群中的規(guī)范化質量向量,這樣就把各項質量標準統(tǒng)一轉換為正向質量標準,且值分布在[0,1]之間,最優(yōu)值為1,最劣值為0,統(tǒng)一了多目標的優(yōu)劣判定。
(1)數(shù)據(jù)挖掘服務代理模塊。在數(shù)據(jù)挖掘應用與服務之間搭起一座橋梁,實現(xiàn)了兩者在調用關系上的松散耦合,主要包括請求處理器、安全認證管理、服務管理。
(2)數(shù)據(jù)挖掘服務應用模塊。它是平臺與用戶交互的接口層。它發(fā)出各種各樣的數(shù)據(jù)挖掘服務需求,并以服務請求的方式通過統(tǒng)一的通信接口發(fā)送到數(shù)據(jù)挖掘服務代理。同時不必考慮平臺能夠提供什么樣的服務,只需將服務需求按照既定格式發(fā)送出去,等待響應。
(3)數(shù)據(jù)挖掘服務模塊。按照數(shù)據(jù)挖掘流程,提供各種數(shù)據(jù)挖掘服務,主要由預處理組件、挖掘分析組件、可視化組件、服務定義4個部分組成。