欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

用于可能原因分析的因果關(guān)系模型的聲明和消費的制作方法

文檔序號:6455203閱讀:203來源:國知局
專利名稱:用于可能原因分析的因果關(guān)系模型的聲明和消費的制作方法
用于可能原因分析的因果關(guān)系模型的聲明和消費
站旦 Ff豕
當今網(wǎng)絡(luò)化世界中的系統(tǒng)是高度分布式的且是相互依賴的。這意味著單個 根故障(諸如計算設(shè)備上的特定組件)可導致跨網(wǎng)絡(luò)的許多真實的且察覺到的 故障。甚至更復雜的是,在任何給定時間,可能存在在系統(tǒng)中活動的許多真實 問題,以及起源于可見性問題的許多未知組件狀態(tài)。
概述
在基于模型的管理系統(tǒng)的上下文中采用各實施例。在至少某些實施例中,
使用一種因果關(guān)系模型來表達各系統(tǒng)實體的因果關(guān)系而不一定要求知道這些
系統(tǒng)實體構(gòu)成其一部分的特定系統(tǒng)的總體組成。該因果關(guān)系模型能夠允許按照
特定系統(tǒng)實體所具有的與其他系統(tǒng)實體的關(guān)系來表達因果關(guān)系。這些其他系統(tǒng) 實體可以是與對其表達該因果關(guān)系的實體共享一直接關(guān)系,或更一般地,共享
一間接關(guān)系的實體。
此外,在至少某些實施例中,因果關(guān)系表達在某種意義上是與可用于分析 因果關(guān)系數(shù)據(jù)的根本原因分析算法分離的。由此,知道并為特定系統(tǒng)構(gòu)建這些 因果關(guān)系表達式的那些人不必知道將用于進行因果關(guān)系分析的分析算法。于是 在邏輯上,這可允許各種不同類型的根本原因分析算法消費由因果關(guān)系模型開 發(fā)的數(shù)據(jù)。
附圖簡述


圖1示出了根據(jù)一個實施例的其中可使用本發(fā)明的各實施例的示例性系統(tǒng)。
圖2示出了根據(jù)一個實施例的包括操作管理器的特定實例的系統(tǒng)。 圖3示出了根據(jù)一個實施例的示例性系統(tǒng)。 圖4示出了根據(jù)一個實施例的示例性系統(tǒng)。
5詳細描述
概覽
在基于模型的管理系統(tǒng)的上下文中采用各實施例。在至少某些實施例中, 使用一種因果關(guān)系模型來表達各系統(tǒng)實體的因果關(guān)系而不一定要求知道這些 系統(tǒng)實體構(gòu)成其一部分的特定系統(tǒng)的總體組成。該因果關(guān)系模型能夠允許按照 特定系統(tǒng)實體所具有的與其他系統(tǒng)實體的關(guān)系來表達因果關(guān)系。這些其他系統(tǒng) 實體可以是與對其表達該因果關(guān)系的實體共享一直接關(guān)系,或更一般地,共享 一間接關(guān)系的實體。
此外,在至少某些實施例中,因果關(guān)系表達在某種意義上是與可用于分析 因果關(guān)系數(shù)據(jù)的根本原因分析算法分離的。由此,知曉并為特定系統(tǒng)構(gòu)建這些 因果關(guān)系表達式的那些人不必知道將用于進行因果關(guān)系分析的分析算法。于是 在邏輯上,這可允許各種不同類型的根本原因分析算法消費由因果關(guān)系模型開 發(fā)的數(shù)據(jù)。
在以下討論中,提供了題為"基于模型的管理"的小節(jié),其描述了可對其 使用本發(fā)明的各實施例的一種類型的基于模型的管理的各方面。隨后,提供了 題為"因果關(guān)系模型一實現(xiàn)示例"的小節(jié),其根據(jù)一個實施例描述了因果關(guān)系 模型的各方面。
基于模型的管理
圖1概括地在100處示出了其中可使用本發(fā)明的各實施例的示例性系統(tǒng)。 在該示例中,系統(tǒng)100包括操作管理器102和托管環(huán)境104。通常,操作管理 器102可以是作為軟件來體現(xiàn)并被配置成監(jiān)督并管理組成環(huán)境104的多個不同 的機器或計算設(shè)備的組件。
環(huán)境104可包括一個或多個計算設(shè)備駐留在其中的任何合適類型的環(huán)境。 例如,這樣的環(huán)境可包括諸如內(nèi)聯(lián)網(wǎng)等可以是高度分布式的且相互依賴的網(wǎng)絡(luò) 化環(huán)境。
在所示出及所描述的各實施例中,操作管理器102使用基于模型的管理系 統(tǒng)來管理并監(jiān)督環(huán)境104。可以使用任何合適類型的基于模型的管理系統(tǒng),且以下給出了一個具體的、非限制性的示例。如將在以下變得顯而易見的,本發(fā) 明的基于模型的管理系統(tǒng)利用被設(shè)計成使得能夠表達托管環(huán)境中的因果關(guān)系 的因果關(guān)系模型。用于因果關(guān)系表達的方法是穩(wěn)健的且靈活的,并且可使得博 學的技術(shù)人員能夠表達系統(tǒng)中的因果關(guān)系而不一定要求他們知道該系統(tǒng)的具 體實例化。
圖2概括地在200處示出了包括操作管理器102的特定實例的系統(tǒng)。在此, 該操作管理器被示為包括或以其他方式利用計算設(shè)備102a和存儲102b。在該 特定示例中,操作管理器102可接收或?qū)敫髯园ㄓ糜谄浠谀P偷墓芾砘?動的組件的一個或多個管理包202。在該特定示例中,各個管理包可以是針對 任何類型的系統(tǒng)設(shè)計的,諸如,作為示例而非限制,數(shù)據(jù)庫、服務(wù)器、客戶機 和/或這些系統(tǒng)的子組件、分布式目錄配置、分布式文件復制服務(wù)、備份服務(wù)、 以及諸如網(wǎng)絡(luò)訪問保護服務(wù)等各種更高級的服務(wù)等等。不必說,可針對其設(shè)計 管理包的系統(tǒng)的數(shù)量和類型簡直太多以至于無法列出,如技術(shù)人員可以理解 的。在實踐中,管理包可由可能不一定知道由另一第三方設(shè)計的管理包的具體 實例化的不同的第三方來設(shè)計。
在所示示例中,示出單個管理包204,并且其包括模型聲明模塊206、發(fā) 現(xiàn)規(guī)則模塊208、監(jiān)視策略模塊210和因果關(guān)系模型模塊212,每一個模塊都 將在以下描述。
模型聲明模塊206表示描述管理包的組件及其特性以及它們是如何相關(guān) 的抽象或抽象模型。在以下討論中,由模型聲明描述的管理包的各個組件可被 認為是"對象"并且這些對象的各個實例被稱為"實體"。例如,管理包可描 述前端"F"對象、 一個或多個業(yè)務(wù)邏輯層"B"對象和存儲對象。
發(fā)現(xiàn)規(guī)則模塊208包括關(guān)于如何"現(xiàn)實化"所聲明的模型并創(chuàng)建具有各個 實體的具體模型的指令。具體而言,發(fā)現(xiàn)規(guī)則模塊描述如何找到特定物理環(huán)境 中的實體以及這些實體所具有的與其他實體的關(guān)系。在該具體示例中,來自抽 象模型的前端"F"可由特定的所描述的機器上的與第一業(yè)務(wù)邏輯層Bl進行通 信的網(wǎng)站"WS"組成。另一個業(yè)務(wù)邏輯層B2可與第一業(yè)務(wù)邏輯層進行通信, 并且每一個業(yè)務(wù)邏輯層都可與所示的兩個不同存儲中的每一個進行通信。
監(jiān)視策略模塊210提供被稱為"健康模型"的東西以及本質(zhì)上提供描述從模型聲明中創(chuàng)建的具體模型的各個組成實體的狀態(tài)以及各狀態(tài)之間的轉(zhuǎn)換的 狀態(tài)機的知識規(guī)則。在該示例中注意,網(wǎng)站和業(yè)務(wù)邏輯實體各自包括表示每個 實體都可采取的各種狀態(tài)以及導致在各種狀態(tài)之間的轉(zhuǎn)換的事件的狀態(tài)機,如 技術(shù)人員可以理解的。通過使用該監(jiān)視策略模塊,可以在任何時間計算相關(guān)聯(lián) 的健康模型及其知識規(guī)則、具體模型的組成實體的狀態(tài),并且可以在例如實體 進入了不合需要或故障狀態(tài)的情況下生成適當?shù)耐ㄖ?br> 因果關(guān)系模型模塊212或簡單地"因果關(guān)系模型"利用該監(jiān)視策略和發(fā)現(xiàn) 規(guī)則(及其對實體之間的關(guān)系的表達)來表達該管理包的特定系統(tǒng)中的因果關(guān) 系。對因果關(guān)系的表達可不僅包括作為該即時管理包的一部分的實體,而且還 包括作為不同的管理包的一部分的實體。通過由此方式表達因果關(guān)系,根本原 因分析引擎或相關(guān)引擎可被設(shè)計成訪問并利用由該因果關(guān)系模型生成的數(shù)據(jù)
來幫助發(fā)現(xiàn)特定故障的根本原因一即使當待解決的故障是由不同管理包中的 實體引起的時候。
在圖2示例中,如果業(yè)務(wù)邏輯層Bl具有可由存儲中之一的準備(grooming) 狀態(tài)引起的臨界狀態(tài),則規(guī)則或因果關(guān)系表達式可被設(shè)計成表達如下概念如 果業(yè)務(wù)邏輯層Bl進入該狀態(tài),則一個原因可能是該特定存儲的準備狀態(tài)。因 此,知道其特定管理包及其對象的那些人可制定不僅描述源自其管理包的潛在 原因,而且還描述源自其他管理包的潛在原因的因果關(guān)系模型。
在以下討論中,描述了因果關(guān)系模型的一個具體示例。應(yīng)該明白和理解的 是,以下的描述并不旨在將所要求保護的主題的應(yīng)用只限于所描述的具體方 法。相反,可以使用其它方法而不背離所要求保護的主題的精神和范圍。
因果關(guān)系模型—實現(xiàn)示例
在描述一具體的因果關(guān)系模型之前,考慮以下當設(shè)計因果關(guān)系模型時所面 對的挑戰(zhàn)。
首先,特定原因可能與所觀察到的征兆有很大的差距。例如,技術(shù)人員一 般都知道,特定問題的根本原因可能在另一個系統(tǒng)上或甚至在另一個問題域 中,例如,網(wǎng)絡(luò)或存儲域。然而,在良好建模的系統(tǒng)中,原因和結(jié)果所處的托 管實體以某種方式相關(guān)。因此,如將在以下變得顯而易見的,本發(fā)明的因果關(guān)系模型利用這些關(guān)系來表達因果關(guān)系。
第二,因果關(guān)系知識往往在缺少具體模型的某些系統(tǒng)中定義。即,在許多 系統(tǒng)中,原因和結(jié)果被有效地硬編碼到系統(tǒng)中。這導致不合需要的某種程度的 不靈活性。本發(fā)明的方法通過按照類模型來表達因果關(guān)系,并通過對所發(fā)現(xiàn)的 具體模型進行推斷來計算因果關(guān)系來繞開該問題,如將在以下變得顯而易見 的。
此外,通??赡艽嬖趯τ诳捎^察故障的多個同時發(fā)生的原因。即,多于一 個條件正同時導致一特定問題是可能的。本發(fā)明的方法通過確保因果關(guān)系分析 可返回基于一個或多個可能原因的一個或多個結(jié)果來解決該情況。
此外,原因可隸屬于一動態(tài)組的一個或多個成員。作為示例,考慮以下情 況。在其中采用負載平衡、故障轉(zhuǎn)移、冗余和合成的許多情況下,因果關(guān)系邏 輯通常將必須處理可動態(tài)改變的組的一個或多個成員。本發(fā)明的方法通過使該 組被建模并且使實體中的每一個的貢獻由允許例如"任何"、"所有"、"至
少"等聚集邏輯的上巻(rollup)算法來表示,來解決這一情況。所以,例如, 單個路由上的從點A到點B的一組網(wǎng)絡(luò)IP跳點將被建模為被稱為"路由"的 組的成員。并且從點A到點B的所有"路由"將都被建模為"網(wǎng)絡(luò)訪問"組 的成員。
因為本質(zhì)上具有N平方問題,所以可利用"提供者"機制來動態(tài)地使該 分組的所需實例從所發(fā)現(xiàn)的模型中出現(xiàn)。例如,在以上示例中,在具有100個 節(jié)點的網(wǎng)絡(luò)中,存在10,000個可能的網(wǎng)絡(luò)訪問組,每個組都由三個或四個替換 路由組成,每個替換路由都各自由四到五個跳點組成。在本發(fā)明的方法中,不 必預計算所有這些并將其表示為存儲的實例。
此外,另一挑戰(zhàn)可由未知狀態(tài)造成。具體而言,可期望在任何給定時間將 不可訪問某些實體的當前健康狀況,例如, 一代理的心跳停止,或合成事務(wù)超 時。盡管只有部分數(shù)據(jù),但因果關(guān)系的表達式也應(yīng)當能夠提供合理的結(jié)果。
給定上述挑戰(zhàn),利用以下概念來幫助構(gòu)建用于定義因果關(guān)系知識的結(jié)構(gòu)。
托管實體是在管理包中的模型中描述的并且可作為軟件、硬件或固件組件 駐留的實體。
受影響的托管實體(IME)是正在研究的非健康狀態(tài)中的托管實體,例如,
9網(wǎng)站或數(shù)據(jù)庫。
受影響狀態(tài)是對其表達因果關(guān)系邏輯的IME的健康模型中的特定狀態(tài)定 義,例如,"首字節(jié)響應(yīng)慢"。
原因涉及受影響狀態(tài)的起因。具有導致受影響狀態(tài)的一種或多種類型的原 因是可能的并且每個原因都可被獨立表達。
原語斷言是以下類型ME.狀態(tài)=常量。結(jié)果是真/假或未知。例如,原 語斷言可以是
PrinterX.OnlineState = Offline (打印機X.在線狀態(tài)二離線) 或者
ClusterY.RoUupHealthState = Red (集群Y.上巻健康狀態(tài)=紅色)
抽象原語斷言(APA):抽象原語斷言按照類模型而不是具體實例來表達, 它始終使用IME作為參數(shù)來表達。它是以下類型
XPath表達式(IME).狀態(tài)=常量
一個示例如下IME: Websiteclass.Computer.CPlLLoad= busy (IME:網(wǎng) 站類.計算機.CPU.負載=忙碌)
對于IME的給定狀態(tài)的原因集是一組命名的APA。作為示例,考慮以下 情況
<ReasonSet>
<Reason>IPConnectivity<Reason/>
<Expression>APAl <Expression/> (在更復雜的模型中,這可以是布爾表 達式)。
</ReasonSet>
任何原因的任何實例都可以是將要變?yōu)樗F(xiàn)在的樣子的IME的狀態(tài)的起
10因。
因果關(guān)系結(jié)果集在正在運行的系統(tǒng)中,當IME處于一特定狀態(tài)時,基 于因果關(guān)系的分析將返回以下類型的結(jié)果集-
原因=原因類型;RCAME:ME實例;狀態(tài)=狀態(tài)值;確認的/猜測的; 上巻/葉
該結(jié)果集可具有可遞歸地包含基于從上巻狀態(tài)下鉆的相同類型的行。成員 可基于由XQuery返回的可疑元素。
在RCA ME狀態(tài)本身可由另一個下游ME處于特定狀態(tài)的事實引起的情 況下也使用相同的格式。
實現(xiàn)示例
在以下示例中,利用具有實體的系統(tǒng),這些實體包括數(shù)據(jù)庫、數(shù)據(jù)庫文件 組、數(shù)據(jù)庫文件、和用于覆蓋兩個單獨盤上的兩個數(shù)據(jù)文件的數(shù)據(jù)庫的邏輯盤。 首先,描述系統(tǒng),之后是對該系統(tǒng)的類、關(guān)系和監(jiān)視器的表達式的描述。之后, 提供數(shù)據(jù)庫上的特定的所監(jiān)視的狀態(tài)的因果關(guān)系如何在管理包中表達的示例。
圖3示出了由以下實體組成的示例性系統(tǒng)300:數(shù)據(jù)庫302、數(shù)據(jù)庫文件 組(DB文件組,DBFileGroup) 304、兩個數(shù)據(jù)庫文件(DB文件,DBFile) 306 和兩個邏輯盤308。在該示例中,假設(shè)數(shù)據(jù)庫302是SQL Server數(shù)據(jù)庫并且該 數(shù)據(jù)庫302、 DB文件組304和DB文件306是SQL Server管理包中的類的實 例,并且根據(jù)該管理包中的規(guī)則來發(fā)現(xiàn)并監(jiān)視,并且該邏輯盤308是不同的管 理包一Windows Server管理包中的類的實例,并且根據(jù)該管理包中的規(guī)則來發(fā) 現(xiàn)并監(jiān)視。
在所示出及所描述的實施例中,管理包是強類型化的,并包括唯一的類ID 和關(guān)系ID。所表達的關(guān)系也是強類型化的。
在上述示例中,SQL Server管理包和Windows Server管理包聲明其各自 的類、關(guān)系和監(jiān)視器。SQL Server管理包負責監(jiān)視其聲明的類的健康狀況,并 且該Windows Server管理包負責監(jiān)視其聲明的類的健康狀況。然而,特定類的
11健康狀況可取決于來自另一個管理包的實體的健康狀況,如將在以下變得顯而易見的。上述示例中的對于管理包(MP)的聲明如下

在Microsoft.SQLServer.2005.MP中定義
Microsoft. SQLServer.2005 .Database
Microsoft.SQLServer.2005.DBFileGroup
Microsoft. SQLServer.2005.DBFile
在Microsoft.Windows.Server.MP中定義
Windows.Server丄ogicalDisk
關(guān)系
在Microsoft.SQLServer.2005.MP中定義Microsoft.SQLServer.2005.DatabaseHostsDBFileGroupMicrosoft. SQLServer.2005.DBFileGroupHostsDBFileMicrosoft. SQLServer .2005.DBFileLivesOnLogicalDisk
監(jiān)視器
在Microsoft.SQLServer.2005.MP中定義
數(shù)據(jù)庫類上的Microsoft.SQLServer.2005.Database.Database.DBResponse數(shù)據(jù)庫類上的Microsoft.SQLServer.2005.Database.BackupState數(shù)據(jù)庫類上的Microsoft.SQLServer.2005.Database.DBPercentFreeSpace文件組類上的Microsoft.SQLServer.2005.DBFileGroup.WriteHealth在Microsoft.Windows.Server.MP中定義
邏輯盤類上白勺Microsoft.Windows.Server丄ogicalDisk.DiskQueueLength
在此,在類聲明下,存在四個類聲明。前三個類聲明涉及SQL Server管理包內(nèi)的類一即,Database (數(shù)據(jù)庫)、DBFileGroup和DBFile。最后一個類聲明涉及來自另一個管理包的實體一Windwos Server管理包及其LogicalDisk
12(邏輯盤)類。
關(guān)系聲明描述實體如何彼此相關(guān)。例如,數(shù)據(jù)庫具有與DB文件組的主存
關(guān)系(即,"DatabaseHostsDBFileGroup")。同樣,DB文件組具有與DB文件的主存關(guān)系(即,"DBFileGroupHostsDBFile")。類似地,DB文件具有與邏輯盤的"住在"關(guān)系(即,"DBFileLivesOnLogicalDisk")。
所聲明的監(jiān)視器是監(jiān)視其相關(guān)聯(lián)的實體的特定狀態(tài)的狀態(tài)機。在該示例中,存在五個監(jiān)視器,其中四個在SQL Server管理包中聲明,而其中一個在Windows Server管理包中聲明。
對于SQL Server監(jiān)視器,三個監(jiān)視器是為數(shù)據(jù)庫類而聲明的,例如,數(shù)據(jù)庫響應(yīng)(DBResponse)、備份狀態(tài)(BackUpState)和空閑空間百分比(DBPercentFreeSpace)。 一個監(jiān)視器是為文件組類(DBFileGroupClass)而聲明的—例如,寫健康(WriteHealth)。
對于Windwos Server監(jiān)視器, 一個監(jiān)視器是為邏輯盤類(LogicalDisk)而聲明的一例如,盤隊列長度(DiskQueueLength)。
每個監(jiān)視器彼此獨立地監(jiān)視影響其特定類的各方面。維護所監(jiān)視的狀態(tài)并且操作管理器(圖1)可通過該因果關(guān)系模型來查明可能存在特定問題的原因。
現(xiàn)在考慮監(jiān)視器Microsoft.SQLServer.2005.Database,Database.DBResponse具有與該數(shù)據(jù)庫的一部分上的慢響應(yīng)相關(guān)聯(lián)的被稱為"DBResponseSlow" (DB響應(yīng)慢)的操作狀態(tài)。該狀態(tài)的根本原因可以是該系統(tǒng)中的多個其他監(jiān)視器。例如,該操作狀態(tài)的原因可以是以下的一個或多個
Microsoft.SQLServer.2005.Database.BackupState 監(jiān),見器處于BackupInProgress (正在備份)狀態(tài);
Microsoft.SQLServer.2005.Database.DBPercentFreeSpace監(jiān)視器處于CriticalSpace (臨界空間)或WarningSpace (警告空間)狀態(tài);
Microsoft.SQLServer.2005.DBFileGroup.WriteHealth監(jiān)視器處于DiskWriteDegraded (盤寫入降級)狀態(tài);和/或
Microsoft.Windows.Server丄ogicalDisk.DiskQueueLength監(jiān)視器處于DiskWriteDelayed (盤寫入延遲)狀態(tài)。這四個因果關(guān)系可在一模式中表達,其一個示例就在以下示出。
<Causalities>
<Causality ID="MiCTosoft.SQLServer.2005.Database.DBResponse.CauseTarget="Microsoft.SQLServer.2005.Database"MonitorID="Microsoft.SQLServer.2005.Database.DBResponse">
<OperationalStates>
<OperationalState OperationalStateID="DBResponseSlow7></OperationalStates〉<Reason ID="BackupRunning"Target="Microsoft,SQLServer.2005.Database"MonitorID="Microsoft.SQLServer.2005.Database.BackupState"><OperationalStates>
<OperationalState OperationalStateID="BackupInProgress"/>
</OperationalStates>
</Reason>
〈Reason ID="DBLowOnSpace"Target="Microsoft.SQLServer.2005.Database"MonitorID="Microsoft.SQLServer.2005.Database.DBPercentFreeSpace"><OperationalStates>
<Operational State OperationalStateID="CriticalSpace7><OperationalState OperationalStateID="WarningSpace7></OperationalStates></Re3son>
〈Reason ID="DiskWritePeformance"Target="Microsoft.SQLServer.2005.DBFileGroup"MonitorID="Microsoft.SQLServer.2005.DBFileGroup.WriteHealth">
<OperationalStates〉_
14<OperationalState OpemtionalStateID="DiskWriteDegraded7>
</OperationalStates>
<Path
RelationshipTypelD-"Microsoft.SQLServer.2005.DatabaseHostsDBFileGroup"TargetTypeID="Microsoft.SQLServer.2005.DBFileGroup"/></Reason>
〈Reason ID="DiskQueueHigh"
Target="Windows!Microsoft. Windows.Server.LogicalDisk"MonitorID="Windows!Microsoft.Wlndows.Server.LogicalDisk.DiskQueueLength'
>
<OperationalStates>
<OperationalState OperationalStateID="DiskWriteDelayed7>
</OperationalStates>
<Path
RelationshipTypeID="Microsoft.SQLServer.2005.DatabaseHostsDBFileGroup"TargetTypeID="Microsoft.SQLServer.2005.DBFileGroup"><Path
RelationshipTypeID="Microsoft.SQLServer.2005.DBFileGroupHostsDBFile"TargetTypeID="Microsoft.SQLServer.2005.DBFile"><Path
RelationshipTypeID="Microsoft.SQLServer.2005.DBFileLivesOnLogicalDisk"TargetTypeID="Windows!Microsoft.Windows.ServerLogicalDisk"/>
</Path>
</Path>
</Causality></Causalities>
在該示例中,因果關(guān)系表達式對應(yīng)于所監(jiān)視的操作狀態(tài)DBResponseSlow,
15并為該操作狀態(tài)定義了四個不同的原因(由〈Reason〉標簽斷開)。
起因或原因可以是"BackupRunning (正在運行備份)"、"DBLowOnSpace(DB空間少),,、"DiskWritePerformance (盤寫性能)"或"DiskQueueHigh (盤隊列長)"。表達式中的前兩個原因與在該實體本身(即,數(shù)據(jù)庫類)上發(fā)生的事情相關(guān)聯(lián)。下一個原因指的是其所依賴的DBFileGroup—由此,XML跨越關(guān)系類型指向DBFileGroup類。在此,在該類上的監(jiān)視器可能導致該問題。最后一個原因與LogicalDisk相關(guān)聯(lián)。在此,XML定義多個跨關(guān)系"跳躍"以到達可能的原因。
稍微更詳細地探查XML因果關(guān)系表達式,考慮以下情況?;叵牍芾戆械膶嶓w利用唯一的ID。這在某種程度上類似命名空間。在上述XML表達式中,〈Causality〉標簽標識強類型化的類—Database,以及監(jiān)視器一DBResponse。此外,XML標識為其定義因果關(guān)系表達式的狀態(tài)—此處為Database類上的操作狀態(tài)DBResponseSlow。
由此,〈Causality〉標簽本質(zhì)上指向在該XML表達式的更下方的為其表達因果關(guān)系的類和監(jiān)視器。
現(xiàn)在,如可從以上描述中理解的,對于特定故障或有問題的狀態(tài)可能存在許多不同的原因。在所示出及所描述的實施例中,給予每個原因(在其相應(yīng)的〈Reason〉標簽中) 一個ID和與該原因相關(guān)聯(lián)的目標類。該目標類涉及該原因所源于或源自的實體。此外,每個原因還涉及可以是問題的可能原因的與該類相關(guān)聯(lián)的監(jiān)視器,以及該監(jiān)視器為了成為作為因果關(guān)系表達式的主體的問題或故障的可能原因而必須進入的狀態(tài)。
拿第 一 個列出的原因作為示例。在此,對于DBResponse狀態(tài)DBResponseSlow的一個可能的原因可以是存在正在運行的備份。該正在運行的備份條件源自Database類并且由BackUpState監(jiān)視器監(jiān)視。如果BackUpState監(jiān)視器具有被標記為"True (真)"的操作狀態(tài)BackUpInProgress,則該原因可被標記為DBResponse狀態(tài)DBResponseSlow的可能原因。如果BackUpInProgress被標記為"False (假)",則該可能的起因或原因可被排除。
繼續(xù),第二個列出的原因(DBLowOnSpace)指向相同的Database類上的另一個監(jiān)視器,并且定義其中任一個都可以是慢數(shù)據(jù)庫響應(yīng)的可能原因的狀態(tài)。具體而言,如果DBPercentFreeSpace監(jiān)視器使其CriticalSpace或WarningSpace中的任一個被標記為"True",則分別標記的狀態(tài)可以是DBResponse狀態(tài)DBResponseSlow的可能原因。
第三個列出的原因(DiskWritePerformance)指向不同的類(即,DBFileGroup類)以及與該類相關(guān)聯(lián)的監(jiān)視器一WriteHealth。在此,如果WriteHealth監(jiān)視器使其操作狀態(tài)DiskWriteDegraded被標記為"True",則這就可被列為DBResponse狀態(tài)DBResponseSlow的可能原因。此外,因為該原因指向不同的類,所以它還使用〈Path〉標簽來指定到該類的路徑。該〈Path〉標簽在該路徑的末端處定義了關(guān)系類型和類。該聲明有效地定義了跨越該關(guān)系類型的"跳躍"并且指定應(yīng)當找到DBFileGroup的任何實例并且應(yīng)當檢查其監(jiān)視器的指定狀態(tài)。
對應(yīng)于第四個列出的原因(DiskQueueHigh)的表達式類似于第三個列出的原因,不同之處在于存在多個定義的"跳躍"。然而,在該原因中,涉及不同的管理包。具體而言,在目標字段中,使用例如"Windows!"的指定來表示該聲明涉及在該串上進一步指定的不同的管理包(即,Windows Server)。此外,如在上述示例中連同操作狀態(tài)或可影響待解決的狀態(tài)的狀態(tài)一起指定監(jiān)視器。在該示例中,指定該邏輯盤的盤隊列長度,并且如果其操作狀態(tài)"DiskWriteDelayed"被標記為"True",則該原因可被列為DBResponse狀態(tài)DBResponseSlow的可能的原因。
此外,因為該原因涉及不同的管理包,所以該〈Path〉聲明與上述〈Path〉聲明略有不同。具體而言,在此存在嵌套路徑關(guān)系,其有效地定義跨越指定類型(DatabaseHostsDBFileGroup)的所有關(guān)系類型的跳躍并找到所有指定的類實例(DBFileGroup),并且然后定義跨越下一個關(guān)系類型(DBFileGroupHostsDBFile)的跳躍并找到所有類實例(DBFile),并且然后定義跨越下一個關(guān)系類型(DBFileLivesOnLogicalDisk)的跳躍并找到指定類的所有實例(LogicalDisk)。
通過使用上述靈活的因果關(guān)系表達式,實現(xiàn)以下事情是非常容易的。首先,可具有按照應(yīng)用程序類型模型來聲明地描述因果關(guān)系的能力,并且因果關(guān)系模
型可實現(xiàn)以下事情。該因果關(guān)系模型可以將相同實體上的兩個問題鏈接為原因一結(jié)果。這樣的示例發(fā)生在上述前兩個列出的原因中。該因果關(guān)系模型可以將
17直接相關(guān)的實體上的兩個問題鏈接為原因—結(jié)果。這樣的示例是第三個列出的原因。該因果關(guān)系模型可以將間接相關(guān)的實體上的兩個問題鏈接為原因一結(jié)果。這樣的示例是上述第四個列出的原因。
此外,該因果關(guān)系模型即使在關(guān)系不是"包含"的情況下也可鏈接問題。即,關(guān)系可以是"主存"、"客戶機一服務(wù)器"、"的副本"或任何其他可以想到的關(guān)系。此外,該因果關(guān)系模型可以將許多原因鏈接到相同的結(jié)果。這在其中四個不同的原因可以是在因果關(guān)系表達式中定義的特定故障的起因的上述示例中完成。此外,該因果關(guān)系模型可基于關(guān)系的特定類型來鏈接問題。
此外,該因果關(guān)系模型可利用模型的可組成性來組成因果關(guān)系模型。具體而言,在上述示例中,每個單獨的管理包都具有涉及其自己的實體的其自己的特定因果關(guān)系表達式。如上所見,這些因果關(guān)系表達式可伸展跨越并由此利用不同的管理包以及由這些包定義的因果關(guān)系模型。
此外,該因果關(guān)系模型可與所利用的根本原因分析算法/引擎分開。這可允許不同的根本原因分析算法或引擎利用由該因果關(guān)系模型開發(fā)的因果關(guān)系信息。根本原因分析算法的一個這樣的示例就在下文提供。
在操作中,任何合適類型的系統(tǒng)可被設(shè)計成利用因果關(guān)系模型來使用任何合適類型的根本原因分析執(zhí)行根本原因分析。作為這一系統(tǒng)的僅僅一個示例,
考慮概括地在400處示出示例性系統(tǒng)的圖4。
在此,系統(tǒng)400包括如上所述管理環(huán)境104的操作管理器102。操作管理器可接收并處理多個不同的管理包202,每個管理包都可包括如上所述的各組成部分一具體而言,描述相關(guān)聯(lián)的實體及其彼此之間的關(guān)系的某種類型的模型,以及諸如上述的因果關(guān)系模型等因果關(guān)系模型。此外,提供相關(guān)引擎402并且其操作上與操作管理器102耦合。在該示例中,操作管理器102展示可由相關(guān)引擎402調(diào)用以訪問已使用因果關(guān)系模型來開發(fā)的數(shù)據(jù)的應(yīng)用程序接口(API)。在實踐中,相關(guān)引擎讀取具體模型和狀態(tài),計算根本原因并將根本原因?qū)懟氐讲僮鞴芾砥鳌2僮鞴芾砥魅缓罂墒褂每刂婆_404來在拓撲狀態(tài)圖的上下文中顯示根本原因。通過使用控制臺,諸如系統(tǒng)管理員等用戶可快速標識他或她的系統(tǒng)正在經(jīng)歷的特定故障的根本原因或原因。
對于相關(guān)引擎,可以使用任何合適的算法來分析由該因果關(guān)系模型開發(fā)的數(shù)據(jù)。這些算法的某些特性可包括,作為示例而非限制,對模型和檢測到的狀態(tài)進行推斷,并且使用一組托管實體類型的原因表達式來產(chǎn)生因果關(guān)系結(jié)果集的能力。
作為根本原因分析算法如何處理由因果關(guān)系模型產(chǎn)生的數(shù)據(jù)的簡單的示例,考慮以下計算。在以下描述中,已忽略了諸如可見性和可組成性等問題。
對于每一個托管實體的每個狀態(tài),檢查以査明該狀態(tài)當前是否為"真"。如果該當前狀態(tài)不為"真",則該算法可退出或處理下一個狀態(tài)。如果該當前狀態(tài)為"真",則接下來檢查以查明該狀態(tài)是否為"良好"。如果是,貝U該算法可退出或處理下一個狀態(tài)。
接下來,對于不是"良好"的狀態(tài),檢査以査明是否存在分配給該狀態(tài)的任何原因。如果不存在分配的原因,則將該狀態(tài)標記為根本原因。
如果存在分配的原因,則跟隨該原因并且檢査以査明對于至少一個原因該原因中的斷言是否為"真"。如果原因中的任一個為"真",則可得出正在研究的狀態(tài)只是別處的原因的結(jié)果的結(jié)論。在這一情況下,可相應(yīng)地標記因果關(guān)系(如用箭頭)。
然而,如果原因中沒有一個為"真",則可將該托管實體的該方面標記為根本原因。
當對于所有托管實體完成該操作時,可顯示整個拓撲結(jié)構(gòu),且根本原因用黑圈來標記并且用箭頭串來從各壞狀態(tài)引導至根本原因。
現(xiàn)在考慮更高一級的復雜度。假設(shè)某些實體是合成實體(諸如集群等)。在這一情況下,在執(zhí)行就在以上描述的算法之前,計算上巻狀態(tài)。
現(xiàn)在,假設(shè)某些托管實體變"盲",S卩,它們的狀態(tài)是未知的。在該情況下,可首先反跟蹤因果關(guān)系。具體而言,該算法可找到已知的所有"結(jié)果"狀態(tài)。對于該托管實體的該方面,該算法可找到應(yīng)該為"真",但是未知的所有"原因"以便引起非真狀態(tài)中的任一個。所有這些未知狀態(tài)都為假。即,如果它們?yōu)檎?,則可觀察狀態(tài)將會不同。以此方式,可在開始上述算法之前消除最多的未知狀態(tài)。
然而,用于計算"過失"的算法現(xiàn)在轉(zhuǎn)換為統(tǒng)計方法。即,可由未知狀態(tài)解釋為將要進入特定狀態(tài)的已知狀態(tài)越多,則這為真的的可能性也越高。
19注意,在上述算法中,所有推斷(確定未知狀態(tài)、確定"過失"或確定"過失"的概率)并不取決于任何東西的過失值。它純粹是基于當前狀態(tài)值的。結(jié)
果,當托管實體的狀態(tài)改變時,可基于因果關(guān)系向外脈動傳送(ripplethrough)該擾動(perturbation)。換言之,本地計算已足夠,并且不必從頭到尾計算所有關(guān)系的結(jié)構(gòu)。
結(jié)論
上述各實施例可提供一種用于表達各系統(tǒng)實體的因果關(guān)系而不一定要求知道這些系統(tǒng)實體構(gòu)成其一部分的特定系統(tǒng)的總體組成的因果關(guān)系模型。結(jié)合基于模型的管理技術(shù)使用的該因果關(guān)系模型能夠允許按照特定系統(tǒng)實體所具有的與其他系統(tǒng)實體的關(guān)系來表達因果關(guān)系。這些其他系統(tǒng)實體可以是與對其表達該因果關(guān)系的實體共享一直接關(guān)系,或更一般地,共享一間接關(guān)系的實體。至少某些實施例將因果關(guān)系表達式與可用于分析因果關(guān)系數(shù)據(jù)的各種根本原因分析算法分開。由此,知曉并為特定系統(tǒng)構(gòu)建這些因果關(guān)系表達式的那些人不必知道將用于進行因果關(guān)系分析的分析算法。于是在邏輯上,這可允許各種不同類型的根本原因分析算法消費由因果關(guān)系模型開發(fā)的數(shù)據(jù)。
雖然已經(jīng)用對結(jié)構(gòu)特征和/或方法步驟專用的語言描述了本發(fā)明,但是應(yīng)當理解,所附權(quán)利要求書中定義的本發(fā)明不必限于所描述的具體特征或步驟。相反,各具體特征和步驟是作為實現(xiàn)所要求保護的本發(fā)明的較佳形式來公開的。
權(quán)利要求
1. 一種系統(tǒng),包括一個或多個計算機可讀介質(zhì);以及被包含在所述一個或多個計算機可讀介質(zhì)上的一個或多個管理包,其中各個管理包包括以不要求具體知道所述管理包構(gòu)成其一部分的系統(tǒng)的實例的方式來表達因果關(guān)系的因果關(guān)系模型。
2. 如權(quán)利要求1所述的系統(tǒng),其特征在于,所述因果關(guān)系模型可聲明對 其他管理包的依賴性。
3. 如權(quán)利要求1所述的系統(tǒng),其特征在于,所述管理包包括描述與所述 管理包相關(guān)聯(lián)的一個或多個實體的狀態(tài)的狀態(tài)機,并且其中,所述因果關(guān)系模 型被配置成使用由所述狀態(tài)機開發(fā)的狀態(tài)信息來執(zhí)行因果關(guān)系處理。
4. 如權(quán)利要求1所述的系統(tǒng),其特征在于,所述因果關(guān)系模型用XML 來表達因果關(guān)系。
5. 如權(quán)利要求1所述的系統(tǒng),其特征在于,所述因果關(guān)系模型按照類模 型來表達因果關(guān)系,并且其中,所述因果關(guān)系模型可用于通過對所發(fā)現(xiàn)的具體 模型進行推斷來計算因果關(guān)系。
6. 如權(quán)利要求1所述的系統(tǒng),其特征在于,所述因果關(guān)系模型可表達關(guān) 于一特定可觀察故障的多個不同的原因。
7. 如權(quán)利要求6所述的系統(tǒng),其特征在于,至少一個原因可與對其表達 因果關(guān)系的相同的實體相關(guān)聯(lián)。
8. 如權(quán)利要求6所述的系統(tǒng),其特征在于,至少一個原因可與不同于對 其表達因果關(guān)系的實體的實體相關(guān)聯(lián)。
9. 如權(quán)利要求6所述的系統(tǒng),其特征在于,至少一個原因可與不同于對 其表達因果關(guān)系的實體的管理包中的不同實體相關(guān)聯(lián)。
10. —種計算機實現(xiàn)的方法,包括提供包括模型聲明以及與所述模型聲明相關(guān)聯(lián)并可用于計算因果關(guān)系的因果關(guān)系模型的管理包;以及在所述管理包中按照類、關(guān)系和監(jiān)視器來表達因果關(guān)系。
11. 如權(quán)利要求10所述的方法,其特征在于,單個管理包提供應(yīng)用于其 聲明的類的各個實例的監(jiān)視策略。
12. 如權(quán)利要求IO所述的方法,其特征在于,所述表達的動作可包括表 達對不同的管理包的依賴性。
13. 如權(quán)利要求10所述的方法,其特征在于,監(jiān)視器是監(jiān)視作為構(gòu)成所 述管理包的一部分的類的實例的實體的特定狀態(tài)的狀態(tài)機。
14. 如權(quán)利要求10所述的方法,其特征在于,所述表達的動作包括使用 XML表達式來表達因果關(guān)系。
15. 如權(quán)利要求14所述的方法,其特征在于,所述表達的動作可按照多 個不同的原因來表達因果關(guān)系。
16. 如權(quán)利要求15所述的系統(tǒng),其特征在于,至少某些原因可與對其表 達所述因果關(guān)系的實體相關(guān)聯(lián)。
17. 如權(quán)利要求15所述的系統(tǒng),其特征在于,至少某些原因可與按照所 建模的關(guān)系可以相距多于一跳的實體相關(guān)聯(lián)。
18. 如權(quán)利要求15所述的系統(tǒng),其特征在于,因果關(guān)系是類型特有的。
19. 如權(quán)利要求15所述的系統(tǒng),其特征在于,至少某些原因可與來自與 對其表達所述因果關(guān)系的實體相同的類的不同的實體相關(guān)聯(lián)。
20. 如權(quán)利要求15所述的系統(tǒng),其特征在于,至少某些原因可與來自不 同于與對其表達因果關(guān)系的實體相關(guān)聯(lián)的管理包的管理包的不同的實體相關(guān)聯(lián)。
全文摘要
各實施例提供了一種用于表達系統(tǒng)實體的因果關(guān)系而不一定要求知道這些系統(tǒng)實體構(gòu)成其一部分的特定系統(tǒng)的總體組成的因果關(guān)系模型。結(jié)合基于模型的管理技術(shù)使用的該因果關(guān)系模型能夠允許按照特定系統(tǒng)實體所具有的與其他系統(tǒng)實體的關(guān)系來表達因果關(guān)系。這些其他系統(tǒng)實體可以是與對其表達該因果關(guān)系的實體共享一直接關(guān)系,或更一般地,共享一間接關(guān)系的實體。
文檔編號G06F17/00GK101467143SQ200780022161
公開日2009年6月24日 申請日期2007年5月8日 優(yōu)先權(quán)日2006年6月15日
發(fā)明者A·J·杉格維, S·O·威爾森 申請人:微軟公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
谢通门县| 康马县| 衡东县| 无棣县| 达孜县| 波密县| 兰考县| 唐河县| 兴仁县| 修水县| 通城县| 峨边| 通山县| 孟津县| 科技| 革吉县| 黄骅市| 准格尔旗| 上饶县| 黎川县| 富源县| 重庆市| 吴忠市| 静安区| 迭部县| 兴山县| 嫩江县| 芒康县| 太白县| 阜南县| 博爱县| 进贤县| 滦南县| 博客| 南川市| 安福县| 汉中市| 吉木萨尔县| 丰原市| 凌海市| 桂东县|