背景技術(shù):
可以對通過經(jīng)驗從計算網(wǎng)絡(luò)、制造系統(tǒng)、電信網(wǎng)絡(luò)以及其他裝置觀測到的傳感器數(shù)據(jù)的實況數(shù)據(jù)流進(jìn)行分析,以便促進(jìn)對于這些系統(tǒng)的管理和控制。通常來說,所述分析涉及使用組件(比如統(tǒng)計計算組件、分類組件以及其他組件)的管線對傳感器數(shù)據(jù)進(jìn)行處理。針對特定應(yīng)用域設(shè)計和配置所述管線的任務(wù)要求一個人的團(tuán)隊(比如數(shù)據(jù)科學(xué)家、機(jī)器學(xué)習(xí)工程師以及其他人)的專業(yè)知識。由于在應(yīng)用域?qū)<遗c數(shù)據(jù)科學(xué)家之間一般需要幾次反復(fù),因此這是耗時的、復(fù)雜的并且成本高昂。在這一來回過程期間,來自實況流傳感器數(shù)據(jù)分析的輸出可能是不適當(dāng)、錯誤或者不準(zhǔn)確的,并且這進(jìn)而對電信網(wǎng)絡(luò)、制造系統(tǒng)等等的控制造成損害。
后面描述的實施例不限于解決用于使用數(shù)據(jù)流分析進(jìn)行控制的已知管線生成過程的任何或所有缺點的實現(xiàn)方式。
技術(shù)實現(xiàn)要素:
以下內(nèi)容呈現(xiàn)了本公開的簡化概要以便為讀者提供基本的理解。本概要不意圖標(biāo)識出所要求保護(hù)的主題的關(guān)鍵特征或必要特征,也不意圖被用來限制所要求保護(hù)的主題的范圍。其唯一目的是以簡化形式呈現(xiàn)本文所公開的概念的選擇,以作為稍后呈現(xiàn)的更加詳細(xì)的描述的前導(dǎo)。
描述了一種具有通信接口的控制系統(tǒng),所述通信接口接收從將被控制的系統(tǒng)觀測到的加有時間標(biāo)記的傳感器數(shù)據(jù)的實況數(shù)據(jù)流。所述控制系統(tǒng)具有:被配置成訪問來自實況數(shù)據(jù)流的加有時間標(biāo)記的傳感器數(shù)據(jù)的存儲庫的上傳器;以及被配置成生成用于分析實況數(shù)據(jù)流(或者從實況數(shù)據(jù)流保留的數(shù)據(jù))的多種管線配置的配置管理器。每一種管線配置包括用于分析數(shù)據(jù)的多個組件、所述組件的順序以及(如果可適用的話)每一個組件的一項或更多項參數(shù)的值。所述配置管理器被配置成通過把管線配置應(yīng)用于來自存儲庫的數(shù)據(jù)而對所述管線配置進(jìn)行評估?;臼聦崳╣roundtruth)選擇器被配置成接收包括基本事實數(shù)據(jù)的用戶輸入,所述基本事實數(shù)據(jù)是來自所述加有時間標(biāo)記的傳感器數(shù)據(jù)的存儲庫的加有標(biāo)簽的數(shù)據(jù)項目或者是所選時間間隔內(nèi)的加有標(biāo)簽的數(shù)據(jù)項目群組。所述配置管理器被配置成使用基本事實數(shù)據(jù)對管線配置進(jìn)行重新評估并且基于所述重新評估來選擇管線配置之一,從而使得可以使用在實況數(shù)據(jù)流上執(zhí)行的管線配置中的所選擇的管線配置的輸出來控制所述將被控制的系統(tǒng)。
在一些示例中,在處理實況數(shù)據(jù)流的管線的節(jié)點處自動實施所選擇的管線配置,以便促動對于從中觀測到實況數(shù)據(jù)流的系統(tǒng)的控制,例如控制在線郵箱的供應(yīng)、控制電信網(wǎng)絡(luò)、控制無線局域網(wǎng)、控制云服務(wù)的節(jié)點。
因為許多伴隨的特征通過參考結(jié)合附圖考慮的以下詳細(xì)描述而變得更好理解,所以它們將更容易被認(rèn)識到。
附圖說明
通過根據(jù)附圖閱讀以下詳細(xì)描述,將會更好地理解本描述,其中:
圖1是在電子郵件服務(wù)器控制系統(tǒng)中與分析計算節(jié)點部署在一起的管線生成器的示意圖;
圖2是圖1的管線生成器處的一種方法的流程圖;
圖3是管線生成器處的另一種方法的流程圖;
圖4是示出由用戶錄入基本事實數(shù)據(jù)的圖形用戶界面的示意圖;
圖5是管線生成階段期間的更加詳細(xì)的管線生成器的示意圖;
圖6是操作化(operationalization)之后的圖5的管線生成器的示意圖;
圖7是管線生成器處的另一種方法的流程圖;
圖8圖示出了可以在其中實施管線生成器的實施例的示例性的基于計算的設(shè)備。
相同的附圖標(biāo)記被用來在附圖中標(biāo)示相同的部分。
具體實施方式
后面結(jié)合附圖提供的詳細(xì)描述意圖作為本示例的描述,而不意圖表示可以構(gòu)造或利用本示例的僅有的形式。本描述闡述了所述示例的功能以及用于構(gòu)造和操作所述示例的步驟序列。但是通過不同的示例可以實現(xiàn)相同或等效的功能和序列。
雖然在本文中將本示例描述并且圖示成實施在電子郵件服務(wù)器控制系統(tǒng)中,但是提供所描述的系統(tǒng)是作為示例而非限制。本領(lǐng)域技術(shù)人員將認(rèn)識到,本示例適合于應(yīng)用在各種不同類型的控制系統(tǒng)中,比如醫(yī)學(xué)設(shè)備控制系統(tǒng)、機(jī)器人系統(tǒng)、電信網(wǎng)絡(luò)控制系統(tǒng)、計算機(jī)網(wǎng)絡(luò)安全系統(tǒng)。
本發(fā)明人已經(jīng)發(fā)現(xiàn),可能自動化用以控制電子郵件服務(wù)器(或其他系統(tǒng))的實況數(shù)據(jù)流分析管線的設(shè)計和操作化。通過自動化設(shè)計,可能實現(xiàn)準(zhǔn)確的高性能控制,而不需要專業(yè)的機(jī)器學(xué)習(xí)工程師和數(shù)據(jù)科學(xué)家。人為錯誤的可能性被去除,從而使得所得到的分析管線非常適合于應(yīng)用域,被發(fā)現(xiàn)比其他情況更加快速,并且給出更加準(zhǔn)確和高效的控制。附加地,通過向電子郵件服務(wù)器或其他系統(tǒng)發(fā)送命令可以自動實施設(shè)計。在一些示例中,自動化的設(shè)計和操作化動態(tài)地即時(on-the-fly)發(fā)生,從而即使正被控制的裝備改變,也連續(xù)地改進(jìn)性能。數(shù)據(jù)分析管線是連接在一起的一個或更多數(shù)據(jù)處理組件。在一些示例中,所述組件被串聯(lián)連接,從而使得管線中的早前組件的輸出被用作管線的緊接的后續(xù)組件的輸入。數(shù)據(jù)分析管線把傳感器數(shù)據(jù)的時間系列當(dāng)作輸入,所述時間系列是數(shù)字(numerical)或類別(categorical)值的加有時間標(biāo)記的流,所述值可以是歷史的或?qū)崨r的。數(shù)據(jù)分析管線對傳感器數(shù)據(jù)的時間系列進(jìn)行處理,這是通過從數(shù)據(jù)提取出特征以及例如識別出預(yù)期之外的數(shù)據(jù)的間隔或者數(shù)據(jù)中的模式。
圖1是在電子郵件服務(wù)器114控制系統(tǒng)112中與數(shù)據(jù)分析節(jié)點120部署在一起的管線生成器100的示意圖。多個電子郵件服務(wù)器114由控制系統(tǒng)112控制,控制系統(tǒng)112能夠智能地平衡在電子郵件服務(wù)器114之間的負(fù)荷(考慮到比如可用容量、通信鏈路的容量、電子郵件賬戶的特性之類的多個因素),例如對于郵箱供應(yīng)設(shè)定電子郵件服務(wù)器的配置參數(shù),并且在一些示例中配置如何互連電子郵件服務(wù)器。控制系統(tǒng)112從傳感器110接收數(shù)據(jù),傳感器110可以位于電子郵件服務(wù)器114處或者可以遠(yuǎn)離電子郵件服務(wù)器114。所述傳感器監(jiān)測電子郵件服務(wù)器的可用容量、電子郵件服務(wù)器的吞吐量、誤差量度(errormetric)以及其他性能數(shù)據(jù)。在一些示例中,所述傳感器監(jiān)測通信量水平或者電子郵件服務(wù)器的通信鏈路的其他容量指標(biāo)。
控制系統(tǒng)112包括用以允許其基于未經(jīng)處理的傳感器數(shù)據(jù)來控制電子郵件服務(wù)器114的規(guī)則、標(biāo)準(zhǔn)或閾值。附加地或替換地,控制系統(tǒng)112從實施在一個或更多數(shù)據(jù)分析節(jié)點120中的數(shù)據(jù)分析管線的告警組件122和/或控制組件124接收指令。所述數(shù)據(jù)分析節(jié)點是實施由管線的各個組件規(guī)定的計算的計算節(jié)點。對于涉及巨大量實時數(shù)據(jù)的web規(guī)模部署,計算可以被分布在多個計算節(jié)點上。在一些示例中,數(shù)據(jù)分析節(jié)點120是數(shù)據(jù)中心的節(jié)點。
來自傳感器110的數(shù)據(jù)被輸入到在數(shù)據(jù)分析節(jié)點120處的數(shù)據(jù)分析管線。例如,來自傳感器110的數(shù)據(jù)通過負(fù)荷平衡器116和數(shù)據(jù)攝取節(jié)點118被輸入到管線。通過考慮數(shù)據(jù)攝取節(jié)點的可用容量和其他因素,負(fù)荷平衡器116在多個數(shù)據(jù)攝取節(jié)點118之間分配傳感器數(shù)據(jù)。數(shù)據(jù)攝取節(jié)點118對傳感器數(shù)據(jù)進(jìn)行預(yù)處理,以便例如把傳感器數(shù)據(jù)轉(zhuǎn)換成兼容的測量單元、把傳感器數(shù)據(jù)轉(zhuǎn)換成兼容的小數(shù)位的數(shù)目、去除噪聲、重新格式化數(shù)據(jù)、對準(zhǔn)傳感器數(shù)據(jù)的時間標(biāo)記數(shù)值。
在一些示例中,計算機(jī)實施的數(shù)據(jù)存留組件108把從傳感器110流送的傳感器數(shù)據(jù)110中的一些傳感器數(shù)據(jù)拷貝到數(shù)據(jù)存儲庫106??梢栽谝?guī)定的時間間隔內(nèi)隨機(jī)選擇或者通過其他方式選擇將要拷貝的數(shù)據(jù)。所述數(shù)據(jù)存儲庫可由管線生成器100訪問。
管線的輸出包括從輸入數(shù)據(jù)流計算的更高水平的數(shù)字值或類別值的輸出流。所述輸出流由告警組件122用來觸發(fā)針對操作員的告警(比如視覺或可聽告警)或者發(fā)送到控制系統(tǒng)112的錯誤消息。所述輸出流由控制組件124用來生成將要發(fā)送到控制系統(tǒng)112的指令以便控制電子郵件服務(wù)器。
管線生成器能夠訪問模板和組件的庫104。模板包括多個處理步驟、用于每一個處理步驟的可能組件的列表、處理步驟之間的連接(數(shù)據(jù)流程)、每個組件的參數(shù)列表以及每項參數(shù)的值范圍或可能值。
組件是用在計算加有時間標(biāo)記的數(shù)據(jù)的一項或更多項特征的數(shù)據(jù)分析管線中的數(shù)據(jù)處理組件。組件可以被參數(shù)化,這是因為其把一項或更多項參數(shù)的值當(dāng)作輸入。所述參數(shù)例如有窗口尺寸、隨機(jī)地還是按照規(guī)定方式取得樣本、將要計算的平均值是哪種類型或者其他參數(shù)。組件的一個非窮舉示例列表是:移動平均值計算組件、計算時間系列的規(guī)定窗口中的數(shù)字值的導(dǎo)數(shù)的組件、檢測時間系列的季節(jié)性特征(比如根據(jù)一天當(dāng)中的時間、一個月當(dāng)中的日期特征的預(yù)期變量值)的組件、保持時間系列值的分布的組件、針對隨著時間保持的時間系列的分布實施當(dāng)前讀數(shù)的統(tǒng)計測試的組件、包括信號處理濾波器(比如低通或高通濾波器)的組件、回歸量組件(regressorcomponent)、線性預(yù)測器組件、自回歸模型組件、分類器、用于降維的組件。
管線生成器包括被配置成從人類操作員接收基本事實數(shù)據(jù)的用戶反饋機(jī)制102?;臼聦崝?shù)據(jù)包括由人類操作員為來自數(shù)據(jù)存儲庫106的一個或更多數(shù)據(jù)項目或者為數(shù)據(jù)存儲庫106中的加有時間標(biāo)記的數(shù)據(jù)的一定時間間隔內(nèi)的多個接連的數(shù)據(jù)項目所指派的標(biāo)簽(或其他值)。所述標(biāo)簽(或其他值)例如表明加有標(biāo)簽的數(shù)據(jù)是否屬于特定類別(比如異常或正常)。在貝葉斯方法的情況下,基本事實數(shù)據(jù)包括針對表示數(shù)據(jù)的隨機(jī)變量的狀態(tài)的概率值。為了便于由人類操作員輸入基本事實標(biāo)簽或其他值,所述用戶反饋機(jī)制可以生成來自數(shù)據(jù)存儲庫106的數(shù)據(jù)中的至少一些數(shù)據(jù)的圖形顯示,其中疊加有通過由管線生成器生成的管線從數(shù)據(jù)存儲庫106的數(shù)據(jù)計算的輸出。管線生成器可以接收按照注釋形式的基本事實數(shù)據(jù),所述注釋針對在顯示器上以圖形方式示出的來自數(shù)據(jù)存儲庫的數(shù)據(jù)。例如通過點擊和拖曳來選擇值的范圍,或者通過點擊以選擇單獨的點。
管線生成器100是完全自動化的。其使用模板和組件庫104以及關(guān)于各個組件的參數(shù)值的規(guī)則、閾值或約束來生成許多可能的管線。管線生成器使用來自數(shù)據(jù)存儲庫106的數(shù)據(jù)對可能的管線進(jìn)行評估,并且可選地使用來自用戶反饋機(jī)制102的基本事實數(shù)據(jù)。例如,可以在等待用戶反饋時計算初始評估,并且在用戶反饋變?yōu)榭捎脮r重新計算評估。在一些示例中,管線生成器對可能的管線進(jìn)行排序。管線生成器使用評估結(jié)果選擇可能的管線中的至少一條管線。
管線生成器向數(shù)據(jù)分析節(jié)點120發(fā)送命令,以便在所述數(shù)據(jù)分析節(jié)點中的一個或更多數(shù)據(jù)分析節(jié)點處實例化所選擇的管線。一旦被實例化,所選擇的管線就在所述數(shù)據(jù)分析節(jié)點中的一個或更多數(shù)據(jù)分析節(jié)點處變?yōu)榭刹僮?,并且對于電子郵件服務(wù)器114或其他裝置的控制被改進(jìn)。這可以在數(shù)據(jù)分析節(jié)點的實況操作期間進(jìn)行,從而避免對于電子郵件服務(wù)器114(或者取決于應(yīng)用域的其他實體)的控制的中斷。
圖2是圖1的管線生成器100處的一種方法的流程圖。管線生成器訪問分析目標(biāo)200。這例如可以是,為了檢測時間系列中的異常。在另一個示例中,其可以是,為了檢測彼此相關(guān)的時間系列中的模式。所述分析目標(biāo)可以被預(yù)先配置或者可以由操作員規(guī)定。在一些示例中,管線生成器通過評價傳感器數(shù)據(jù)的特性來從多個選項當(dāng)中自動選擇分析目標(biāo)。通過這種方式,人類操作員能夠通過簡單的方式部署實況數(shù)據(jù)流分析系統(tǒng),而不需要在機(jī)器學(xué)習(xí)或數(shù)據(jù)科學(xué)方面的專家。例如,人類操作員能夠使用單一代碼行來規(guī)定分析目標(biāo)和實況數(shù)據(jù)流的源。通過使用該單一代碼行,管線生成器能夠自動設(shè)計適當(dāng)?shù)墓芫€(其基于所提供的反饋/基本事實針對應(yīng)用定制),部署管線,并且連續(xù)地即時更新和細(xì)化管線。
管線生成器根據(jù)分析目標(biāo)生成多條可能的管線。在本文檔中稍后給出了關(guān)于這如何做的更多細(xì)節(jié)。管線生成器在可能的管線的組件和配置上掃描202。例如,所述掃描包括在可能的管線上進(jìn)行的搜索,所述搜索是通過在(來自數(shù)據(jù)存儲庫106的)數(shù)據(jù)樣本上執(zhí)行204可能的管線并且對結(jié)果進(jìn)行評價而進(jìn)行的。
管線生成器接收用戶反饋206。在一些情況下,用戶反饋包括,由用戶基于評估結(jié)果和/或排序?qū)芫€的選擇。在一些情況下,包括基本事實數(shù)據(jù)的用戶反饋由管線生成器接收,所述管線生成器使用基本事實數(shù)據(jù)對可能的管線種的至少一些可能的管線進(jìn)行重新評估。所述重新評估的結(jié)果被管線生成器用來自動選擇管線之一。通過發(fā)送命令或指令以便在分析節(jié)點120處實例化所選擇的管線來操作化208所選擇的管線。
圖3是數(shù)據(jù)流促動的控制系統(tǒng)(比如圖1的布置)處的流程圖。這種方法例如可以在圖2的方法之后發(fā)生。在圖2的方法中,所選擇的管線被操作化。此時,使用分析節(jié)點120在實況數(shù)據(jù)流上執(zhí)行300所選擇的管線。作為結(jié)果,使用來自告警122組件和/或控制124組件和控制系統(tǒng)112的輸出來控制302電子郵件服務(wù)器114。傳感器110感測來自電子郵件服務(wù)器114的更多數(shù)據(jù),數(shù)據(jù)存留組件108取得傳感器數(shù)據(jù)的新樣本304并且將其存儲在數(shù)據(jù)存儲庫106中。所述過程隨后返回到圖2的方框202,以便搜索、評估、選擇以及操作化管線。管線生成器100決定移動到圖2的方框202的點可以被預(yù)先規(guī)定,其例如可以以固定的時間間隔發(fā)生。在另一個示例中,管線生成器可以在其接收到用戶輸入時返回到管線生成過程。在另一個示例中,管線生成器可以根據(jù)關(guān)于所觀測到的傳感器數(shù)據(jù)110的規(guī)則而返回到管線生成過程。例如在來自電子郵件服務(wù)器114的性能數(shù)據(jù)落到規(guī)定閾值以下的情況下,或者在由傳感器110觀測到的誤差數(shù)據(jù)過高的情況下。
圖4是示出由用戶錄入基本事實數(shù)據(jù)的管線生成器的圖形用戶界面的示意圖。在該示例中,所述圖形用戶界面具有圖形顯示器414,其示出了幾天當(dāng)中的電子郵件服務(wù)器114的使用量。在所述圖形顯示器下方是經(jīng)過排序的管線表。該表的每一行包含管線id、管線配置的簡短描述以及管線的統(tǒng)計信息。在該示例中,僅示出了三條經(jīng)過排序的管線。在實踐中可能有數(shù)以千計的管線,其中每一條管線是由管線生成器計算并且使用數(shù)據(jù)存儲庫106中的數(shù)據(jù)評估的潛在管線設(shè)計。在該示例中,具有id102的其中一條管線在表中被突出顯示,以表明針對該管線的評估結(jié)果當(dāng)前正被顯示在所述圖形顯示器中。所述評估結(jié)果是通過黑點(比如418)表明的數(shù)據(jù)點。來自數(shù)據(jù)存儲庫106的數(shù)據(jù)被用來創(chuàng)建所述圖形顯示器的曲線圖416。因此,所述圖形顯示器示出了經(jīng)驗數(shù)據(jù),以及疊加在經(jīng)驗數(shù)據(jù)上的評估結(jié)果。在該示例中,管線的任務(wù)是為了檢測異常,并且評估結(jié)果(比如418)表明被計算為潛在的異常的點。但是也可能使用其他評估結(jié)果,比如檢測不同類別或類型的模式。
用戶能夠按照易于理解和使用的快速并且有效的方式使用圖形用戶界面來輸入基本事實標(biāo)簽。例如,終端用戶對所述圖形顯示器進(jìn)行視覺檢查,并且注意到在時間間隔402和422處可能存在異常,這是因為所述經(jīng)驗數(shù)據(jù)是不規(guī)則的,并且因為在這些間隔處存在評估結(jié)果的集群。用戶選擇時間間隔402和422并且將這些時間間隔標(biāo)記成基本事實異常。例如通過使用鼠標(biāo)來選擇所述間隔,或者通過操作滑動器控件,通過鍵入所述間隔的數(shù)字值,或者通過其他方式。
所述圖形用戶界面可以包括允許用戶控制管線生成器的一個或更多功能區(qū)(ribbon)或菜單欄。這些功能區(qū)或菜單欄包括實施以下功能的按鈕:重置基本事實數(shù)據(jù)400(例如其中用戶改變間隔420、422),掃描和排序402(例如其中用戶請求管線生成器對潛在的管線配置實施搜索并且對評估結(jié)果進(jìn)行排序),使用反饋404(例如其中用戶請求管線生成器使用基本事實數(shù)據(jù)重新進(jìn)行評估),進(jìn)行操作化406(例如其中用戶請求管線生成器對所選擇的管線配置進(jìn)行操作化),連接到工程(project)408(例如其中用戶請求管線生成器連接到來自傳感器的數(shù)據(jù)流),生成管線410(例如其中用戶請求管線生成器從模板計算可能的管線配置),執(zhí)行管線412(例如其中用戶請求管線生成器在來自數(shù)據(jù)存儲庫的數(shù)據(jù)上執(zhí)行管線配置),以及反饋探索424(例如其中用戶請求管線生成器顯示圖形顯示器414,從而可以輸入基本事實數(shù)據(jù))。
圖5是管線生成階段期間的更加詳細(xì)的管線生成器100的示意圖。管線生成器具有三層,即呈現(xiàn)層508、處理層510和數(shù)據(jù)層512。
用戶500通過呈現(xiàn)層508與管線生成器進(jìn)行交互,所述呈現(xiàn)層508包括各種可視化組件,其中包括時間系列可視器514、結(jié)果可視器516、健康量度可視器518以及基本事實選擇器520。時間系列可視器從數(shù)據(jù)層512的上傳器532取得包括歷史數(shù)據(jù)502的輸入(比如來自圖1的數(shù)據(jù)存儲庫106)。時間系列可視器計算時間系列數(shù)據(jù)的圖形表示,并且將其輸出到圖形用戶界面,比如圖4的圖形用戶界面。在圖4的示例中,所述時間系列被示出為曲線圖416。結(jié)果可視器516從針對規(guī)定的管線配置的處理層522接收評估結(jié)果。其計算評估結(jié)果的圖形表示,并且將其輸出到圖形用戶界面,比如圖4的圖形用戶界面。在圖4的示例中,評估結(jié)果被示出為數(shù)據(jù)點,比如418。健康量度可視器518生成從評估過程輸出的前k個最佳分?jǐn)?shù)的視覺顯示?;臼聦嵾x擇器520從一個或更多用戶接收規(guī)定用于時間系列數(shù)據(jù)的值(或值范圍)的標(biāo)簽的輸入。其把所接收到的標(biāo)簽和時間系列值的對發(fā)送到數(shù)據(jù)層512的寫入器534。所述寫入器把基本事實數(shù)據(jù)寫入到基本事實數(shù)據(jù)庫506,所述基本事實數(shù)據(jù)庫506可以是圖1的數(shù)據(jù)存儲庫106的一部分,或者可以位于可由管線生成器100訪問的另一位置處。
正如已經(jīng)提到的,數(shù)據(jù)層包括上傳器532和寫入器534。上傳器從歷史數(shù)據(jù)存儲庫502(比如圖1的數(shù)據(jù)存儲庫106)取得輸入。
處理層包括排序器524、機(jī)器學(xué)習(xí)管線庫526、配置管理器528以及掃描器530。掃描器530是用于對潛在的管線配置實施搜索的軟件。其可以實施任何適當(dāng)?shù)乃阉魉惴?,比如深度?yōu)先搜索、廣度優(yōu)先搜索、分支定界、模擬退火、隨機(jī)、基于網(wǎng)格或者其他的搜索。
配置管理器528訪問模板和組件庫(圖1的104),并且選擇將要使用的模板。配置管理器利用所選擇的模板生成潛在的管線配置,這考慮了在模板中給出或者來自另一個存儲庫的任何預(yù)先規(guī)定的約束,例如關(guān)于可以被輸入到規(guī)定組件的值范圍的約束、關(guān)于各個組件可以被連接在一起的順序的約束、關(guān)于可以從規(guī)定組件輸入或輸出的值的類型的約束。正如前面所提到的,組件可以被參數(shù)化。配置管理器還控制,組件參數(shù)的什么樣的參數(shù)范圍將在潛在的管線配置中使用。配置管理器將其所生成的配置饋送到排序器。
機(jī)器學(xué)習(xí)管線庫526是圖1的模板和組件庫104的一部分。其持有用于實施各種不同組件的軟件。
排序器能夠通過執(zhí)行來自庫526的相關(guān)的機(jī)器學(xué)習(xí)組件來控制對于潛在管線配置的評估。其被布置成基于評估結(jié)果對潛在的管線配置進(jìn)行定序。例如,排序器被布置成找到前k個潛在的管線配置,其中k是可以由用戶規(guī)定或者可以被預(yù)先配置的數(shù)字。排序器524是可選的。
圖6與圖5相同,但是示出了操作化之后的情況。因此實況數(shù)據(jù)流504現(xiàn)在連接到上傳器532而不是歷史數(shù)據(jù)502。此外,掃描器未被使用,并且與配置管理器斷開連接。在這種情況下,處理層向健康量度可視器518提供輸出。健康量度可視器輸出前k條管線的分?jǐn)?shù)(由于所評估的管線的數(shù)目一般較大,比如多于100000條,因此難以可視化所有管線的分?jǐn)?shù),并且因此選擇評分最高的前k條管線)。從基本事實選擇器520到寫入器534以及從寫入器到基本事實數(shù)據(jù)庫506的輸出通過虛線示出以表明這一過程可以在操作化之后發(fā)生,但是直到規(guī)定的時間間隔過去或者滿足其他標(biāo)準(zhǔn)才觸發(fā)針對管線配置的新的搜索。
圖7是圖1的管線生成器100處的一種方法的更加詳細(xì)的流程圖。使用分析目標(biāo)選擇700模板。在一個示例中,分析目標(biāo)是異常檢測。在一個示例中,用于異常檢測的模板是規(guī)定可以通過不同方式互連以實現(xiàn)單變量異常值檢測(univariateoutlierdetection)的各種不同組件的模板。這種情形中的各種不同組件可以是用于計算移動平均值的組件、用于計算有限脈沖響應(yīng)(fir)濾波器的組件以及用于計算z測試的組件。每一個組件被參數(shù)化,并且在用于實施每一個組件的軟件中給出關(guān)于所述參數(shù)可以采取的值范圍的約束。
管線生成器生成組件配置的組合702。這包括挑選組件的參數(shù)值并且將組件連接在一起。例如,使用試探法來挑選配置的參數(shù)值,比如基于網(wǎng)格的試探法或者隨機(jī)選擇過程。基于網(wǎng)格的試探法的一個示例是從一個參數(shù)范圍選擇均等間隔的值,例如從[0,10]選擇{0,2,4,6,8,10}。可以使用在模板中規(guī)定的一種或更多種順序或者規(guī)定如何對組件進(jìn)行定序的規(guī)則而將組件連接在一起。
一旦創(chuàng)建了潛在的管線配置,就使用數(shù)據(jù)存儲庫106中的數(shù)據(jù)執(zhí)行704這些管線配置以獲得評估結(jié)果??蛇x地,基于評估結(jié)果對管線配置進(jìn)行排序706??蛇x地從用戶接收708基本事實輸入,并且通過在基本事實數(shù)據(jù)上執(zhí)行管線配置可選地對管線配置進(jìn)行重新排序710??梢允褂每紤]了或者沒考慮基本事實的評估度量來計算排序。為了計算評估度量和排序,管線不需要被再次執(zhí)行。所述排序可以使用評估結(jié)果并且可選地使用基本事實數(shù)據(jù)。
選擇712管線配置中的至少一種管線配置,例如通過取得排序最高的管線配置,或者由用戶人工選擇。
可以存儲所選擇的管線配置的描述。所述描述包括足夠的細(xì)節(jié)以允許所選管線的操作化。例如,所述描述具有針對模板和組件庫104中的軟件的引用以用于按照規(guī)定的順序?qū)嵤┙M件。
為了操作化所選擇的管線,從管線生成器100向數(shù)據(jù)分析節(jié)點120發(fā)送714命令。例如,所述命令指示數(shù)據(jù)分析節(jié)點在所述數(shù)據(jù)分析節(jié)點處實例化在管線配置的描述中引用的軟件。管線生成器可以可選地向數(shù)據(jù)存留組件108發(fā)送命令,以便控制從實況數(shù)據(jù)流采樣什么數(shù)據(jù)以及采樣的頻度。管線生成器可以可選地向告警122和控制124組件發(fā)送命令,以便根據(jù)管線配置描述指示這些組件如何使用管線的輸出。
實況數(shù)據(jù)流在操作化的管線處被接收716,并且由具有實例化的軟件的分析節(jié)點718處理。管線的輸出在告警和/或控制組件處被接收720,并且被用來控制電子郵件服務(wù)器114或其他實體。
在本文檔中早前所提到的郵箱供應(yīng)示例中,傳感器數(shù)據(jù)包括:來自不同組件的錯誤信號,比如聯(lián)網(wǎng)認(rèn)證、發(fā)送郵件、添加聯(lián)系人;來自模仿用戶并且報告所實施的用戶動作的成功或失敗的服務(wù)器的主動探測結(jié)果;事件計數(shù),比如每個時間間隔、每臺機(jī)器或者每座機(jī)架或者每個數(shù)據(jù)中心的所發(fā)送的郵件的數(shù)目、所創(chuàng)建的新郵箱的數(shù)目、新電子郵件客戶的數(shù)目。在郵箱供應(yīng)示例中,所述組件可以包括:去季節(jié)化(de-seasonalization)組件、濾波器、移動平均值計算組件、序貫似然比(sequentiallikelihoodratio)組件、統(tǒng)計測試組件、用于計算結(jié)果的時間相關(guān)性的組件。在郵箱供應(yīng)示例中,所述控制系統(tǒng)被配置成重新啟動電子郵件服務(wù)器、向開發(fā)者團(tuán)隊告警以及向用戶發(fā)送通知。
在一個示例中,替代地,電子郵件服務(wù)器是電信網(wǎng)絡(luò)的節(jié)點。傳感器110感測網(wǎng)絡(luò)性能數(shù)據(jù),比如通信量水平、呼叫掉線、視頻呼叫停頓的頻率以及其他網(wǎng)絡(luò)性能數(shù)據(jù)。操作化的管線被布置成檢測網(wǎng)絡(luò)性能數(shù)據(jù)中的模式,比如通信量水平上的季節(jié)性或日常模式??刂葡到y(tǒng)112被布置成使用所檢測到的模式來重新配置電信網(wǎng)絡(luò),這例如是通過重新配置電信網(wǎng)絡(luò)參數(shù),比如天線傾角、基站功率參數(shù)、通信鏈路的容量以及其他網(wǎng)絡(luò)參數(shù)。
在另一個示例中,替代地,電子郵件服務(wù)器是無線局域網(wǎng)中的節(jié)點。傳感器110檢測網(wǎng)絡(luò)性能參數(shù),比如往返時間、掉落的分組的數(shù)目、通信量水平以及其他網(wǎng)絡(luò)性能參數(shù)。操作化的管線檢測傳感器數(shù)據(jù)的實況流中的異常以便檢測錯誤和/或潛在的安全問題,比如分組攔截、電子欺騙以及其他安全問題。所述告警和控制組件使用來自管線的輸出,以允許控制系統(tǒng)112在檢測到安全問題或錯誤時觸發(fā)告警、關(guān)?;蛘呃@過規(guī)定的無線節(jié)點。
在另一個示例中,替代地,電子郵件服務(wù)器是云計算服務(wù)的節(jié)點。傳感器檢測性能參數(shù),比如所接收到的請求的數(shù)目、接收到請求與為請求提供服務(wù)之間的時間延遲以及其他性能參數(shù)。操作化的管線檢測傳感器數(shù)據(jù)流中的異常和/或模式,以便允許控制系統(tǒng)平衡工作負(fù)荷、部署更多節(jié)點或者配置節(jié)點的參數(shù),從而按照更加高效、魯棒并且有成本效益的方式來提供云計算服務(wù)。
在示例中,所述傳感器包括機(jī)械設(shè)備上的傳感器(溫度、壓力、運動、濕度、開/關(guān)等等)、無線設(shè)備(電話、物聯(lián)網(wǎng)(iot)設(shè)備)上的傳感器、任何種類的遙測信號。
圖8圖示出了可以被實施成任何形式的計算和/或電子設(shè)備并且可以在其中實施管線生成器的實施例的示例性的基于計算的設(shè)備800的各種組件。
基于計算的設(shè)備800包括一個或更多處理器802,其可以是微處理器、控制器或者任何其他適當(dāng)類型的處理器,用于處理計算機(jī)可執(zhí)行指令來控制所述設(shè)備的操作,以便生成用于對所觀測的系統(tǒng)(比如無線局域網(wǎng)、電信網(wǎng)絡(luò)、多個電子郵件服務(wù)器或者其他系統(tǒng))進(jìn)行實況數(shù)據(jù)流促動的控制的管線。在一些示例中,例如在使用芯片上系統(tǒng)架構(gòu)的情況下,處理器802可以包括通過硬件(而不是軟件或固件)實施圖2、3和7當(dāng)中的任一幅圖的方法的一部分的一個或更多固定功能塊(也被稱作加速器)。可以在基于計算的設(shè)備處提供包括操作系統(tǒng)804的平臺軟件或者任何其他適當(dāng)?shù)钠脚_軟件,以便允許在所述設(shè)備上執(zhí)行應(yīng)用軟件。也可以在基于計算的設(shè)備處提供實施管線生成器808的軟件。
可以使用可由基于計算的設(shè)備800訪問的任何計算機(jī)可讀介質(zhì)來提供計算機(jī)可執(zhí)行指令。計算機(jī)可讀介質(zhì)例如可以包括計算機(jī)存儲介質(zhì)(比如存儲器812)和通信介質(zhì)。計算機(jī)存儲介質(zhì)(比如存儲器812)包括通過用于存儲信息的任何方法或技術(shù)實施的易失性和非易失性、可移除和不可移除介質(zhì),所述信息比如是計算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或者其他數(shù)據(jù)。計算機(jī)存儲介質(zhì)包括而不限于ram、rom、eprom、eeprom、閃存或其他存儲器技術(shù),cd-rom、數(shù)字通用盤(dvd)或其他光學(xué)存儲裝置、磁盒、磁帶、磁盤存儲裝置或其他磁性存儲設(shè)備,或者可以被用來存儲供計算設(shè)備訪問的信息的任何其他非傳送介質(zhì)。與此相對,通信介質(zhì)可以在比如載波之類的已調(diào)數(shù)據(jù)信號或其他傳輸機(jī)制中具體實現(xiàn)計算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其他數(shù)據(jù)。本文中所定義的計算機(jī)存儲介質(zhì)不包括通信介質(zhì)。因此,計算機(jī)存儲介質(zhì)不應(yīng)當(dāng)被解釋成傳播信號本身。所傳播的信號可以存在于計算機(jī)存儲介質(zhì)中,但是所傳播的信號本身不是計算機(jī)存儲介質(zhì)的示例。雖然在基于計算的設(shè)備800內(nèi)示出了計算機(jī)存儲介質(zhì)(存儲器812),但是應(yīng)當(dāng)認(rèn)識到,所述存儲裝置可以是分布式的或者位于遠(yuǎn)處,并且可以通過網(wǎng)絡(luò)或其他通信鏈路(例如使用通信接口814)來訪問。
基于計算的設(shè)備800還包括被布置成向顯示設(shè)備818輸出顯示信息的輸入/輸出控制器816,顯示設(shè)備818可以與基于計算的設(shè)備800分開或者與基于計算的設(shè)備800集成在一起。所述顯示信息可以提供圖形用戶界面。輸入/輸出控制器816還被布置成接收和處理來自一個或更多設(shè)備的輸入,比如來自用戶輸入設(shè)備820(例如鼠標(biāo)、鍵盤、照相機(jī)、麥克風(fēng)或其他傳感器)的輸入。在一些示例中,用戶輸入設(shè)備820可以檢測語音輸入、用戶手勢或其他用戶動作,并且可以提供自然用戶界面(nui)。該用戶輸入可以被用來輸入基本事實數(shù)據(jù)、控制管線生成器、查看管線生成器的結(jié)果或者用于其他目的。在一個實施例中,如果顯示設(shè)備818是觸敏顯示設(shè)備的話,則其還可以充當(dāng)用戶輸入設(shè)備820。輸入/輸出控制器816還可以向不同于顯示設(shè)備的設(shè)備(例如本地連接的打印設(shè)備)輸出數(shù)據(jù)。
輸入/輸出控制器816、顯示設(shè)備818以及用戶輸入設(shè)備820當(dāng)中的任一項可以包括nui技術(shù),其允許用戶通過自然方式與基于計算的設(shè)備進(jìn)行交互,而免受由比如鼠標(biāo)、鍵盤、遙控器等輸入設(shè)備所施加的人為約束??梢蕴峁┑膎ui技術(shù)的示例包括而不限于依賴于以下各項的那些技術(shù):語音和/或話音辨識、觸摸和/或觸筆辨識(觸敏顯示器)、屏幕上以及鄰近屏幕的手勢辨識、空中手勢、頭部和眼睛跟蹤、語音和話音、視覺、觸摸、手勢以及機(jī)器智能??梢允褂玫膎ui技術(shù)的其他示例包括:意圖和目的理解系統(tǒng)、使用深度照相機(jī)(比如立體照相機(jī)系統(tǒng)、紅外照相機(jī)系統(tǒng)、rgb照相機(jī)系統(tǒng)和這些系統(tǒng)的組合)的運動手勢檢測系統(tǒng)、使用加速度計/陀螺儀的運動手勢檢測、面部辨識、3d顯示器、頭部、眼睛和凝視跟蹤、沉浸式增強(qiáng)現(xiàn)實和虛擬現(xiàn)實系統(tǒng),以及使用電場感測電極來感測腦部活動的技術(shù)(eeg和相關(guān)方法)。
在一個示例中,存在一種控制系統(tǒng),其包括:
接收從將被控制的系統(tǒng)觀測到的加有時間標(biāo)記的傳感器數(shù)據(jù)的實況數(shù)據(jù)流的通信接口;
被配置成訪問來自實況數(shù)據(jù)流的加有時間標(biāo)記的傳感器數(shù)據(jù)的存儲庫的上傳器;
被配置成生成用于分析實況數(shù)據(jù)流的多種管線配置的配置管理器,每一種管線配置包括用于分析數(shù)據(jù)的多個組件、所述組件的順序以及每一個組件的一項或更多項參數(shù)的值;
被配置成通過把管線配置應(yīng)用于來自存儲庫的數(shù)據(jù)而對所述管線配置進(jìn)行評估的處理器;
被布置成接收包括基本事實數(shù)據(jù)的用戶輸入的基本事實選擇器,所述基本事實數(shù)據(jù)是來自所述加有時間標(biāo)記的傳感器數(shù)據(jù)的存儲庫的加有標(biāo)簽的數(shù)據(jù)項目;
所述處理器被配置成使用基本事實數(shù)據(jù)對管線配置進(jìn)行重新評估并且基于所述重新評估選擇管線配置之一,從而使得可以使用在實況數(shù)據(jù)流上執(zhí)行的所選擇的管線配置之一的輸出來控制所述將被控制的系統(tǒng)。
所述控制系統(tǒng)可以包括通信接口,其被配置成向處理實況數(shù)據(jù)流的管線的一個或更多分析節(jié)點發(fā)送用于實施所選擇的管線配置的指令。
所述控制系統(tǒng)可以包括處理實況數(shù)據(jù)流的管線的一個或更多分析節(jié)點,所述分析節(jié)點被配置成接收所選擇的管線配置的描述。
所述控制系統(tǒng)可以被配置成使用在所選擇的管線配置的執(zhí)行期間觀測到的新的數(shù)據(jù)來生成并且評估另外的多種管線配置。
上一段的控制系統(tǒng)可以被配置成在所述新的數(shù)據(jù)滿足標(biāo)準(zhǔn)時生成并且評估另外的多種管線配置。
所述控制系統(tǒng)可以包括處理實況數(shù)據(jù)流的管線的一個或更多分析節(jié)點,以便使用所選擇的管線配置檢測實況數(shù)據(jù)流中的異?;蚰J?,并且基于所檢測到的異?;蚰J娇刂埔韵赂黜棶?dāng)中的任一項:電信網(wǎng)絡(luò)、多個電子郵件服務(wù)器、多個云計算節(jié)點、無線局域網(wǎng)。
所述控制系統(tǒng)可以包括使用所選擇的管線配置處理實況數(shù)據(jù)流的管線的一個或更多分析節(jié)點,以便檢測實況數(shù)據(jù)流中的異?;蚰J?,并且基于所檢測到的異常或模式觸發(fā)告警。
所述控制系統(tǒng)可以被配置成通過使用基于網(wǎng)格的試探法選擇組件的參數(shù)的值而生成潛在的管線配置。
一個示例提供一種計算機(jī)實施的方法,所述方法包括自動實施以下步驟:
訪問來自實況數(shù)據(jù)流的加有時間標(biāo)記的傳感器數(shù)據(jù)的存儲庫,所述傳感器數(shù)據(jù)是從將被控制的系統(tǒng)觀測到的;
生成用于分析實況數(shù)據(jù)流的多種管線配置,每一種管線配置包括用于分析數(shù)據(jù)的多個組件、所述組件的順序以及每一個組件的一項或更多項參數(shù)的值;
通過把管線配置應(yīng)用于來自存儲庫的數(shù)據(jù)而對所述管線配置進(jìn)行評估;
接收包括基本事實數(shù)據(jù)的用戶輸入,所述基本事實數(shù)據(jù)是來自所述加有時間標(biāo)記的傳感器數(shù)據(jù)的存儲庫的加有標(biāo)簽的數(shù)據(jù)項目;
使用基本事實數(shù)據(jù)對管線配置進(jìn)行重新評估;以及
基于所述重新評估選擇管線配置之一,從而使得可以使用在實況數(shù)據(jù)流上執(zhí)行的所選擇的管線配置之一的輸出來控制所述將被控制的系統(tǒng)。
所述方法可以包括:向處理實況數(shù)據(jù)流的管線的一個或更多分析節(jié)點發(fā)送用于實施所選擇的管線配置的指令。
所述方法可以包括:通過向處理實況數(shù)據(jù)流的管線的一個或更多分析節(jié)點發(fā)送所選擇的管線配置的描述,來在所述一個或更多分析節(jié)點處實施所選擇的管線配置。
所述方法可以包括:在處理實況數(shù)據(jù)流的管線的一個或更多分析節(jié)點處執(zhí)行所選擇的管線配置,并且在所選擇的管線配置的執(zhí)行期間,把新的數(shù)據(jù)存儲在存儲庫中,并且使用所述新的數(shù)據(jù)生成并且評估另外的多種管線配置。
上一段的方法可以包括:在所述存儲庫中的新的數(shù)據(jù)滿足標(biāo)準(zhǔn)時生成并且評估另外的多種管線配置。
所述方法可以包括,在處理實況數(shù)據(jù)流的管線的一個或更多分析節(jié)點處執(zhí)行所選擇的管線配置以便檢測實況數(shù)據(jù)流中的異?;蚰J剑⑶一谒鶛z測到的異?;蚰J娇刂埔韵赂黜棶?dāng)中的任一項:電信網(wǎng)絡(luò)、多個電子郵件服務(wù)器、多個云計算節(jié)點、無線局域網(wǎng)。
所述方法可以包括,在處理實況數(shù)據(jù)流的管線的一個或更多分析節(jié)點處執(zhí)行所選擇的管線配置以便檢測實況數(shù)據(jù)流中的異?;蚰J剑⑶一谒鶛z測到的異?;蚰J接|發(fā)告警。
所述方法可以包括,在圖形用戶界面處接收基本事實數(shù)據(jù),這是通過從數(shù)據(jù)存儲庫向圖形用戶界面發(fā)送數(shù)據(jù),以及接收按照針對來自數(shù)據(jù)存儲庫的數(shù)據(jù)的注釋形式的基本事實數(shù)據(jù)。
所述方法可以包括,使用所述評估的結(jié)果對管線配置進(jìn)行排序。
所述方法可以包括,通過隨機(jī)選擇組件的參數(shù)的值而生成潛在的管線配置。
所述方法可以包括,通過使用基于網(wǎng)格的試探法選擇組件的參數(shù)的值而生成潛在的管線配置。
一個示例提供一種具有設(shè)備可執(zhí)行指令的計算機(jī)可讀介質(zhì),所述設(shè)備可執(zhí)行指令在由基于計算的設(shè)備執(zhí)行時引導(dǎo)所述基于計算的設(shè)備實施包括以下步驟的步驟:
訪問來自實況數(shù)據(jù)流的加有時間標(biāo)記的傳感器數(shù)據(jù)的存儲庫,所述傳感器數(shù)據(jù)是從將被控制的系統(tǒng)觀測到的;
生成用于分析實況數(shù)據(jù)流的多種管線配置,每一種管線配置包括用于分析數(shù)據(jù)的多個組件、所述組件的順序以及每一個組件的一項或更多項參數(shù)的值;
通過把管線配置應(yīng)用于來自存儲庫的數(shù)據(jù)而對所述管線配置進(jìn)行評估;
接收包括基本事實數(shù)據(jù)的用戶輸入,所述基本事實數(shù)據(jù)是來自所述加有時間標(biāo)記的傳感器數(shù)據(jù)的存儲庫的加有標(biāo)簽的數(shù)據(jù)項目;
使用基本事實數(shù)據(jù)對管線配置進(jìn)行重新評估;
基于所述重新評估選擇管線配置之一;以及
向處理實況數(shù)據(jù)流的管線的一個或更多分析節(jié)點發(fā)送用于實施所選擇的管線配置的指令,從而使得可以使用在實況數(shù)據(jù)流上執(zhí)行的所選擇的管線配置之一的輸出來控制所述將被控制的系統(tǒng)。
可替換地或附加地,本文中所描述的功能可以至少部分地由一個或更多硬件邏輯組件實施。例如而非限制,可以使用的說明性類型的硬件邏輯組件包括現(xiàn)場可編程門陣列(fpga)、專用集成電路(asic)、專用標(biāo)準(zhǔn)產(chǎn)品(assp)、芯片上系統(tǒng)的系統(tǒng)(soc)、復(fù)雜可編程邏輯設(shè)備(cpld)、圖形處理單元(gpu)。
術(shù)語“計算機(jī)”或“基于計算的設(shè)備”在本文中被用來指代具有處理能力的任何設(shè)備,從而其可以執(zhí)行指令。本領(lǐng)域技術(shù)人員將認(rèn)識到,這樣的處理能力被合并到許多不同的設(shè)備中,因此術(shù)語“計算機(jī)”和“基于計算的設(shè)備”各自包括pc、服務(wù)器、移動電話(包括智能電話)、平板計算機(jī)、機(jī)頂盒、媒體播放器、游戲控制臺、個人數(shù)字助理以及許多其他設(shè)備。
本文中所描述的方法可以通過有形存儲介質(zhì)上的機(jī)器可讀形式(例如,計算機(jī)程序形式)的軟件來實施,所述計算機(jī)程序包括計算機(jī)程序代碼裝置,其被適配成,當(dāng)所述程序在計算機(jī)上運行時并且如果所述計算機(jī)程序可以被具體實現(xiàn)在計算機(jī)可讀介質(zhì)上,實施本文中所描述的任何方法的所有步驟。有形存儲介質(zhì)的示例包括計算機(jī)存儲設(shè)備,并且不包括所傳播的信號,所述計算機(jī)存儲設(shè)備包括計算機(jī)可讀介質(zhì),比如盤、拇指驅(qū)動器、存儲器等。所傳播的信號可以存在于有形存儲介質(zhì)中,但是所傳播的信號本身不是有形存儲介質(zhì)的示例。所述軟件可以適合于執(zhí)行在并行處理器或串行處理器上,從而可以按照任何適當(dāng)?shù)捻樞蚧蛘咄瑫r實施方法步驟。
這確認(rèn)了軟件可以是有價值的、單獨可交易的商品。其意圖涵蓋運行在“非智能(dumb)”或標(biāo)準(zhǔn)硬件上或者對其進(jìn)行控制以便實施所期望的功能的軟件。其還意圖涵蓋“描述”或定義硬件配置的軟件,比如hdl(硬件描述語言)軟件,其被用于設(shè)計硅芯片或者用于配置通用可編程芯片以便實施所期望的功能。
本領(lǐng)域技術(shù)人員將認(rèn)識到,被利用來存儲程序指令的存儲設(shè)備可以跨網(wǎng)絡(luò)分布。例如,遠(yuǎn)程計算機(jī)可以存儲被描述成軟件的過程的一個示例。本地或終端計算機(jī)可以訪問遠(yuǎn)程計算機(jī),并且下載用于運行程序的軟件的一部分或全部??商鎿Q地,本地計算機(jī)可以按照需要下載軟件的片段,或者在本地終端處執(zhí)行一些軟件指令并且在遠(yuǎn)程計算機(jī)(或計算機(jī)網(wǎng)絡(luò))處執(zhí)行一些軟件指令。本領(lǐng)域技術(shù)人員還將認(rèn)識到,通過利用本領(lǐng)域技術(shù)人員已知的常規(guī)技術(shù),可以通過比如dsp、可編程邏輯陣列等專用電路來實施所有或一部分軟件指令。
技術(shù)人員將顯而易見的是,在不失去所尋求的效果的情況下可以擴(kuò)展或改動本文中給出的任何范圍或設(shè)備值。
雖然已經(jīng)以特定于結(jié)構(gòu)特征和/或方法動作的語言描述了本主題,但是應(yīng)當(dāng)理解的是,在所附權(quán)利要求書中限定的主題不一定受限于以上所描述的特定特征或動作。相反,以上所描述的特定特征和動作是作為實施權(quán)利要求的示例形式而公開的。
應(yīng)當(dāng)理解的是,以上所描述的益處和優(yōu)點可以涉及一個實施例,或者可以涉及幾個實施例。所述實施例并不受限于解決任何或全部所陳述的問題的那些實施例,或者具有任何或全部所陳述的益處和優(yōu)點的那些實施例。還應(yīng)當(dāng)理解的是,對于“一個”項目的引用指的是這些項目當(dāng)中的一個或更多個項目。
本文中所描述的方法的步驟可以按照任何適當(dāng)?shù)捻樞騺韺嵤?,或者在適當(dāng)?shù)那闆r下可以同時實施。附加地,在不背離本文中所描述的主題的精神和范圍的情況下,可以從任何方法中刪除各個單獨的方塊。以上所描述的任何示例的各個方面可以與所描述的任何其他示例的各個方面相組合,以形成另外的示例,而不失去所尋求的效果。
術(shù)語“包括”在本文中被用來意指包括所識別出的方法塊或元件,但是這樣的塊或元件并不包括排他性列表,并且方法或裝置可以包含附加的塊或元件。
應(yīng)當(dāng)理解的是,以上的描述僅僅是作為示例而給出的,并且本領(lǐng)域技術(shù)人員可以做出各種修改。以上的說明、示例和數(shù)據(jù)提供了對于示例性實施例的結(jié)構(gòu)和使用的完整描述。雖然以上以一定程度的特殊性或者參照一個或更多單獨的實施例描述了各個實施例,但是在不背離本說明書的精神或范圍的情況下,本領(lǐng)域技術(shù)人員可以對所公開的實施例做出許多改動。