用于動態(tài)地同步技術(shù)環(huán)境中的元素的方法和系統(tǒng)的制作方法
【專利摘要】本發(fā)明涉及用于動態(tài)地同步技術(shù)環(huán)境中的元素的方法和系統(tǒng)。提供一種用于在技術(shù)環(huán)境上同步文件中的元素的方式。在一個實施例中,處理器獲得對第一文件的改變。處理器還獲得標識第二文件的數(shù)據(jù)。處理器確定數(shù)據(jù)源預(yù)定義列表中的數(shù)據(jù)庫是否支持該改變。處理器分析數(shù)據(jù)庫以確定改變的類型。處理器將該類型的改變應(yīng)用于第二文件。
【專利說明】用于動態(tài)地同步技術(shù)環(huán)境中的元素的方法和系統(tǒng)
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明的一個或者多個方面涉及動態(tài)地同步可變技術(shù)環(huán)境中的文件中的元素。
【背景技術(shù)】
[0002] 在計算機環(huán)境中訪問的文件和對象中的元素的一致性在維持環(huán)境的效率和功能 方面給管理員提供輔助。例如,如果管理員安裝利用不同文件約定的服務(wù)器軟件新版本,并 且安裝該軟件的管理員忽略了對該服務(wù)器所訪問的文件實施這些新文件約定,則系統(tǒng)可能 經(jīng)歷低效率,比如錯誤。
【發(fā)明內(nèi)容】
[0003] 在一個實施例中,提供一種用于動態(tài)地同步技術(shù)環(huán)境中的元素的方法。該方法包 括處理器獲得對第一文件的改變和標識第二文件的數(shù)據(jù)。該方法還包括處理器確定在數(shù)據(jù) 源預(yù)定義列表中指定的數(shù)據(jù)庫是否支持所述改變。該方法還包括處理器分析所述數(shù)據(jù)庫以 確定所述改變的類型。該方法還包括處理器將所述改變的類型應(yīng)用于第二文件。
[0004] 在另一實施例中,提供一種用于動態(tài)地同步技術(shù)環(huán)境中的元素的計算機程序產(chǎn) 品。計算機程序產(chǎn)品包括計算機可讀存儲介質(zhì)和在計算機可讀存儲介質(zhì)上存儲的程序代 碼。所述程序代碼可由處理電路執(zhí)行以執(zhí)行一種方法,該方法包括所述處理電路獲得對第 一文件的改變和標識第二文件的數(shù)據(jù)。該方法還包括所述處理電路確定在數(shù)據(jù)源預(yù)定義列 表中指定的數(shù)據(jù)庫是否支持所述改變。該方法還包括所述處理電路分析所述數(shù)據(jù)庫以確定 所述改變的類型。該方法還包括所述處理電路將改變的類型應(yīng)用于第二文件。
[0005] 這里也描述并且可以要求保護涉及本發(fā)明的一個或者多個方面的計算機系統(tǒng)和 方法。另外,也描述并且可以要求保護涉及本發(fā)明的一個或者多個方面的服務(wù)。
[0006] 通過本發(fā)明的其它實施例實現(xiàn)附加特征。這里具體描述本發(fā)明的其它實施例和方 面并且視之為要求保護的本發(fā)明的一部分。
【專利附圖】
【附圖說明】
[0007] 在說明書篇尾的權(quán)利要求中作為例子具體地指出并且明確提出本發(fā)明的一個或 者多個方面。從結(jié)合以下附圖進行的下文具體描述中清楚本發(fā)明的一個或者多個方面的前 述目的、特征和優(yōu)點:
[0008] 圖1描繪用來執(zhí)行本發(fā)明的一實施例的一個或者多個方面的計算機環(huán)境的一個 例子;
[0009] 圖2描繪根據(jù)本發(fā)明的一個或者多個方面的用于動態(tài)地同步文件中的元素的方 法的一個實施例的工作流程;
[0010] 圖3描繪本發(fā)明的一實施例的一個或者多個方面的模塊表示的一個例子;
[0011] 圖4描繪根據(jù)本發(fā)明的一個或者多個方面的用于動態(tài)地同步文件中的元素的方 法的一個實施例的工作流程;
[0012] 圖5描繪本發(fā)明的一實施例的一個或者多個方面的模塊表示的一個例子;
[0013] 圖6描繪云計算機節(jié)點的例子的示意圖;
[0014] 圖7描繪根據(jù)本發(fā)明的一實施例的云計算環(huán)境;
[0015] 圖8描繪根據(jù)本發(fā)明的一實施例的抽象化模型層;并且
[0016] 圖9描繪用來實現(xiàn)本發(fā)明的一實施例的一個或者多個方面的計算機程序產(chǎn)品。
【具體實施方式】
[0017] 結(jié)合在本說明書中而且形成說明書的一部分的附圖進一步圖示本發(fā)明,并且與本 發(fā)明的具體描述一起用于解釋本發(fā)明的原理,在附圖中,相似標號貫穿不同視圖指代相同 或者功能上相似的單元。
[0018] 圖1描繪用來執(zhí)行本發(fā)明的一實施例的一個或者多個方面的計算環(huán)境100的一個 例子。在這一實施例中,服務(wù)器120監(jiān)視可以包括云和/或企業(yè)系統(tǒng)的計算機系統(tǒng)110,服 務(wù)器120由經(jīng)由網(wǎng)絡(luò)連接131連接到計算機系統(tǒng)110。這一網(wǎng)絡(luò)連接131包括但不限于無 線和/或有線連接。動態(tài)同步軟件40由服務(wù)器120上的一個或者多個處理器(未示出)執(zhí) 行。在本發(fā)明的其它實施例中,在計算機系統(tǒng)110的資源上執(zhí)行動態(tài)同步軟件40。在本發(fā) 明的其它實施例中,軟件40的執(zhí)行被分布在計算機系統(tǒng)110外部和/或內(nèi)部的一個或者多 個資源上。
[0019] 服務(wù)器120和在計算機系統(tǒng)110內(nèi)的附加資源中的每一個執(zhí)行不同軟件以向連接 到這些資源中的一個或者多個資源的用戶實現(xiàn)一個范圍內(nèi)的功能。包括不同軟件的計算機 邏輯,g卩,代碼駐留在服務(wù)器120內(nèi)部和外部的存儲器資源(未示出)和/或計算機系統(tǒng)110 的各種資源上。這一計算機邏輯包括但不限于動態(tài)同步軟件40。客戶端計算設(shè)備(未示出) 連接到服務(wù)器120,并且利用在服務(wù)器120上和計算機系統(tǒng)110上實施的不同軟件。
[0020] 計算機系統(tǒng)110和服務(wù)器120訪問一個或者多個數(shù)據(jù)庫130。在圖1中,數(shù)據(jù)庫 130被集中在服務(wù)器120上的存儲器中。然而在本發(fā)明的其它實施例中,數(shù)據(jù)庫130在計算 設(shè)備(未示出)本地,包括但不限于客戶端計算設(shè)備和/或計算機系統(tǒng)110內(nèi)的資源。在計 算機系統(tǒng)110是云的本發(fā)明的一實施例中,數(shù)據(jù)庫130被分布在服務(wù)器120可訪問的各種 資源之上。在本發(fā)明的各種實施例中,庫130中的一些庫可以在本地和/或在本地可訪問 的存儲器上,而其它庫集中在服務(wù)器120和/或在服務(wù)器120外部、但是服務(wù)器120可訪問 的一個或者多個不同存儲器上,包括但不限于在云計算環(huán)境中的云資源上。
[0021] 數(shù)據(jù)庫130容納如下庫數(shù)據(jù),這些庫數(shù)據(jù)定義和支持計算機系統(tǒng)110中的文件的 改變并且支持計算機系統(tǒng)110中的資源提供的功能。這些文件包括但不限于計算環(huán)境100 內(nèi)的數(shù)據(jù)源的預(yù)定義列表和包含用于由計算機系統(tǒng)110中的資源的處理器執(zhí)行的計算機 代碼的文件。在本發(fā)明的一實施例中,在計算機系統(tǒng)110資源上保存的預(yù)定義列表中跟蹤 數(shù)據(jù)庫130。
[0022] 由于計算環(huán)境100中的資源是互連的,所以如果用戶或者過程在一個資源上進行 改變,則該改變可能不利地影響一個或者多個附加資源的操作。例如系統(tǒng)管理員和/或管 理過程可能用新版本升級服務(wù)器120上的應(yīng)用,該新版本不兼容于與該應(yīng)用的更舊版本一 起工作的一個或者多個文件。在這一例子中,管理員和/或過程通過更新服務(wù)器120上的 本地文件,但是不更新計算環(huán)境100中的其它資源上的利用這一應(yīng)用的文件,部分地升級 服務(wù)器120上的應(yīng)用。在這一升級之后,計算機系統(tǒng)110的資源可能嘗試利用僅與應(yīng)用的 舊版本兼容的文件來訪問服務(wù)器120,由此引起系統(tǒng)錯誤。雖然除了服務(wù)器120之外,該改 變(在這一例子中為對服務(wù)器120上的本地文件的更新)還對計算環(huán)境100的一個或者多 個其它資源具有影響,但是管理員和/或過程僅在服務(wù)器120這一個物理機器上實施改變。 管理員和/或過程引起對計算環(huán)境100的效率有影響的不一致。
[0023] 因而,如這里闡述的那樣,當對文件進行改變時,軟件40獲得對文件的改變。這一 改變是該文件中的該文件中的現(xiàn)有項目與新項目之間的差異。在本發(fā)明的一實施例中,在 系統(tǒng)管理員和/或管理過程對計算環(huán)境100中的資源,比如服務(wù)器120上的文件進行改變 后,軟件40獲得改變。例如,在本發(fā)明的一實施例中,用戶利用與服務(wù)器120具有通信連接 的計算設(shè)備(未示出)查看和編輯駐留在服務(wù)器120上和/或服務(wù)器120可訪問的、為了清 楚而稱為源文件的文件。用戶改變源文件中的某個元素。軟件40比較源文件中的原有元 素與源文件中的改變的元素。
[0024] 除了獲得對源文件的改變之外,軟件40也獲得標識計算環(huán)境100內(nèi)的第二文件的 數(shù)據(jù)。參照圖3的實施例更具體描述也被稱為"目標文件"的這一第二文件。
[0025] 在軟件40獲得對源文件的改變和標識目標文件的數(shù)據(jù)之后,軟件40確定數(shù)據(jù)庫 130中的一個或者多個數(shù)據(jù)庫是否支持這一改變。軟件40檢查該改變,,即,現(xiàn)在在這一源 文件中的改變的元素,并且確定數(shù)據(jù)庫130中的一個或者多個數(shù)據(jù)庫是否支持該改變。支 持的改變是與數(shù)據(jù)庫130中的一個或者多個數(shù)據(jù)庫中的數(shù)據(jù)一致的改變,S卩,已知改變。響 應(yīng)于軟件40識別對源文件的改變是已知改變,S卩,被數(shù)據(jù)庫130中的一個或者多個數(shù)據(jù)庫 支持,軟件40可以在對計算環(huán)境100內(nèi)的目標文件進行相似改變時應(yīng)用相同類型的改變。
[0026] 根據(jù)本發(fā)明的一實施例,在對目標文件進行相似改變時,軟件40可以分析數(shù)據(jù)庫 130中的一個或者多個數(shù)據(jù)庫中的數(shù)據(jù),以制定將應(yīng)用于目標文件的新項目。在本發(fā)明的 一實施例中,軟件可以向目標文件中插入新項目并且可以用這一新項目重寫目標文件中的 現(xiàn)有項目。軟件40使用數(shù)據(jù)庫130中的表示對文件內(nèi)容和元素的改變的一個或者多個數(shù) 據(jù)庫來實施改變。在本發(fā)明的一實施例中,軟件40對目標文件進行改變,這些改變不總是 與系統(tǒng)管理員和/或管理過程對源文件進行的改變相同。實際上,軟件40通過訪問數(shù)據(jù)庫 130中的一個或者多個數(shù)據(jù)庫并且比較源文件的改變與數(shù)據(jù)庫130中的一個或者多個數(shù)據(jù) 庫中存儲的數(shù)據(jù),進行軟件40識別出的相同類型的改變。
[0027] 軟件40從分析數(shù)據(jù)庫130中的一個或者多個數(shù)據(jù)庫收集的新項目未必與源文件 中的改變的項目相同。雖然目標文件中的數(shù)據(jù)可能不同于源文件中的數(shù)據(jù),即,目標文件可 能包含不同文本,但是軟件40對目標文件進行與對源文件進行的改變相同類型的改變。例 如,在本發(fā)明的一實施例中,用戶和/或過程編輯源文件以改變用來定義變量的語言。具體 而言,用戶和/或過程用縮寫和對數(shù)據(jù)庫表的引用替換源文件中的變量名。軟件40檢測到 源文件的這一改變,然后比對數(shù)據(jù)庫130中的一個或者多個數(shù)據(jù)庫檢查該改變,以查看這 一改變是否被在數(shù)據(jù)庫130中的一個或者多個數(shù)據(jù)庫中定義。在軟件40確定數(shù)據(jù)庫130 中的一個或者多個數(shù)據(jù)庫支持該改變之后,軟件40保持該改變并且對目標文件進行相同 類型的改變。
[0028] 由于目標文件中的數(shù)據(jù)不總是與源文件中的數(shù)據(jù)相同,所以在軟件40基于軟件 40在源文件中獲得的改變對目標文件進行相同類型的改變之后,源文件和目標文件的原有 內(nèi)容以及源文件和目標文件的改變的內(nèi)容都可能不匹配。軟件40分析數(shù)據(jù)庫130中的一 個或者多個數(shù)據(jù)庫,并且基于數(shù)據(jù)庫130中的一個或者多個數(shù)據(jù)庫中的數(shù)據(jù),軟件40確定 對源文件進行的改變類型并且制定如何將這一改變類型應(yīng)用于目標文件。例如在本發(fā)明的 一實施例中,目標文件可以包含舊變量定義語言和與源文件不同的變量,但是軟件40將對 目標文件進行與對源文件進行的改變相同類型的改變。
[0029] 軟件40對目標文件進行與對源文件進行的改變相同類型的改變。然而由于目標 文件中的原有變量不同于源文件中的原有變量,所以軟件40用與用戶和/或過程在源文件 中應(yīng)用的縮寫,即,第一新項目不同的變量縮寫,即,第二新項目替換目標文件中的變量。軟 件40訪問數(shù)據(jù)庫130中的一個或者多個數(shù)據(jù)庫,以便定義用戶和/或過程對源文件進行的 改變,并且支持軟件40對目標文件進行的后續(xù)改變,以便維持在一個或者多個計算機系統(tǒng) 上的一致性。數(shù)據(jù)庫130可以存儲用于軟件40訪問的大量多種數(shù)據(jù),這些數(shù)據(jù)包括正則表 達式、代表單詞的符號、外國語言詞典、程序命令和提示等。
[0030] 在本發(fā)明的一實施例中,假如對源文件進行的改變和/或改變類型是在數(shù)據(jù)庫 130中的一個或者多個數(shù)據(jù)庫中定義的改變和/或改變類型,并且假如軟件40可以將相同 類型的改變應(yīng)用于一個或者多個目標文件,那么軟件40保持改變和/或改變類型。在這一 實施例中,軟件40在與用戶關(guān)聯(lián)的本地或者網(wǎng)絡(luò)簡檔中保留該改變和/或改變類型,并且 將相同類型的改變自動應(yīng)用于被軟件40識別為目標文件的附加文件。在本發(fā)明的又一實 施例中,軟件40在數(shù)據(jù)庫130中的一個或者多個數(shù)據(jù)庫中存儲源文件與所有相關(guān)目標文 件,即,包含軟件40確定應(yīng)當對其實施一種改變和/或一種類型的改變以維持在一個或者 多個計算機系統(tǒng)上的一致性的數(shù)據(jù)的文件之間的一個或者多個改變和/或一個或者多個 改變類型。因此,在用戶和/或過程對源文件實施(識別的并且數(shù)據(jù)庫130中的一個或者多 個數(shù)據(jù)庫支持的)一個或者多個改變和/或一個或者多個改變類型之后,軟件40自動實施 與這一源文件相關(guān)的目標文件的相同類型的改變。為了標識待改變的目標文件,在本發(fā)明 的一實施例中,軟件40查詢在系統(tǒng)資源上,比如數(shù)據(jù)庫130中的一個或者多個數(shù)據(jù)庫中存 儲的數(shù)據(jù)源的預(yù)定義列表。
[0031] 圖1的計算環(huán)境100是可以用來執(zhí)行圖2中的本發(fā)明的一實施例的工作流程的多 個計算環(huán)境之一。
[0032] 參照圖1和后續(xù)圖,圖中的流程圖和框圖圖示根據(jù)本發(fā)明各種實施例的系統(tǒng)、方 法和計算機程序產(chǎn)品的可能實現(xiàn)方式的架構(gòu)、功能和操作。就這一點而言,在流程圖或者框 圖中的每個塊可以代表代碼模塊、段或者部分,該代碼模塊、段或者部分包括用于實施給定 的邏輯功能的一個或者多個可執(zhí)行指令。也應(yīng)當注意,在一些備選實現(xiàn)方式中,在塊中指出 的功能可以未按照圖中記載的順序出現(xiàn)。例如根據(jù)涉及到的功能可以事實上基本上并行執(zhí) 行相繼示出的兩個塊或者有時可以按相反順序執(zhí)行塊。也將注意,框圖和/或流程圖圖示 的每個塊以及在框圖和/或流程圖圖示中的塊組合可以由執(zhí)行給定的功能或者動作的基 于專用硬件的系統(tǒng)或者由專用硬件與計算機指令的組合實施。
[0033] 圖2描繪根據(jù)本發(fā)明的一個或者多個方面的用于動態(tài)地同步文件中的元素的方 法的一個實施例的工作流程。為了易于理解,以單線程過程描述軟件40的動。然而本領(lǐng)域 技術(shù)人員將認識到本發(fā)明的其它實施例可以利用單線程和多線程過程。
[0034] 參照圖2,用戶和/或過程利用計算設(shè)備,比如服務(wù)器120、計算系統(tǒng)110中的計算 機資源和/或客戶端計算設(shè)備來訪問源文件。如前文提到的那樣,源文件的實際位置根據(jù) 計算環(huán)境而變化。在作為接入點來服務(wù)的計算設(shè)備處,用戶和/或過程選擇源文件,在一個 例子中,該源文件是網(wǎng)頁文件(S210)。用戶和/或過程操控源文件。在本發(fā)明的一實施例 中,用戶和/或過程可以對源文件進行一個或者多個改變。用戶和/或過程可以例如使用 編輯器,比如專有編輯器、web瀏覽器插件、Word、WordPad、與電子郵件有關(guān)的文字編輯器 (Notes、Outlook、web)、XML編輯器、IDE、通用web表單或者記事本對源文件進行一個或者 多個改變(S220)。
[0035] 根據(jù)本發(fā)明的實施例,執(zhí)行軟件40的處理器獲得用戶和/或過程對源文件進行的 改變(S230 )。在本發(fā)明的一實施例中,執(zhí)行軟件40的處理器通過在進行改變之時通過審計 追蹤來跟蹤改變從而獲得改變。在用戶和/或過程對源文件進行一個或者多個改變期間和 /或之后,執(zhí)行軟件40的處理器在計算機系統(tǒng)110中的或者計算機系統(tǒng)110可訪問的存儲 器資源上保持這些改變。
[0036] 執(zhí)行軟件40的處理器然后確定數(shù)據(jù)源預(yù)定義列表上的數(shù)據(jù)庫130中的一個或者 多個數(shù)據(jù)庫是否支持獲得的改變(S240)。在本發(fā)明的一實施例中,為了進行確定,軟件40 利用一個或者多個數(shù)據(jù)庫130來分析該改變,以確立數(shù)據(jù)庫130中的一個或者多個數(shù)據(jù)庫 是否支持該改變。在執(zhí)行該軟件的處理器通過在進行改變之時通過審計追蹤來跟蹤改變從 而獲得改變的實施例中,軟件40確定跟蹤的改變是否為數(shù)據(jù)庫130中的一個或者多個數(shù)據(jù) 庫支持的改變。改變的源文件可以包含一個或者多個不同數(shù)據(jù)庫130支持的一個或者多個 改變。
[0037] 數(shù)據(jù)庫130支持的改變包括但不限于編輯改變、將文字翻譯成不同語言、重設(shè)圖 形尺寸、改變顏色、格式、字體和/或樣式。這些改變可以既存在于文件的內(nèi)容內(nèi)也可以由 文件性質(zhì)組成。例如在本發(fā)明的一實施例的方面中,用戶和/或過程改變編輯給定文件所 需的權(quán)限。通過利用一個或者多個數(shù)據(jù)庫130,軟件40標識計算環(huán)境100中的具有與被編 輯的文件相似的權(quán)限方案的目標文件,并且給予用戶在環(huán)境100上實施改變的機會。
[0038] 在軟件40獲得對源文件進行的一個或者多個改變并且確定在數(shù)據(jù)庫130中的一 個或者多個數(shù)據(jù)庫中支持改變之后,軟件40在計算環(huán)境100中的資源上保持一個或者多個 改變和/或一個或者多個改變類型(S250)。在本發(fā)明的一實施例中,軟件40在計算機環(huán)境 100中的資源上存儲的簡檔中保留確定的一個或者多個支持的改變和/或一個或者多個改 變類型。
[0039] 軟件40獲得標識應(yīng)當應(yīng)用相同類型的改變的文件的數(shù)據(jù)(S260)。軟件40用來 標識這些文件的數(shù)據(jù)包括但不限于標識機器、文件類型、開發(fā)環(huán)境、QA環(huán)境、生產(chǎn)環(huán)境、應(yīng)用 和/或計算機系統(tǒng)的數(shù)據(jù)。通過獲得數(shù)據(jù),軟件40將這些文件(現(xiàn)在稱為目標文件)標識為 包含應(yīng)當基于用戶和/或過程對源文件進行的初始改變來改變,以便保持給定的計算環(huán)境 100上的一致性的元素。在本發(fā)明的一實施例中,軟件40通過查詢數(shù)據(jù)源預(yù)定義列表來獲 得標識這些文件的數(shù)據(jù)。
[0040] 在軟件40已經(jīng)確定數(shù)據(jù)庫130中的一個或者多個數(shù)據(jù)庫支持改變并且獲得標識 軟件40可以將相同類型的改變應(yīng)用于的附加文件的數(shù)據(jù)之后,軟件40將相同類型的改變 (多個)應(yīng)用于目標文件(S280)。在本發(fā)明的一實施例中,軟件40通過用來自數(shù)據(jù)庫130中 的一個或者多個數(shù)據(jù)庫的新項目重寫目標文件中的現(xiàn)有項目來將相同類型的改變(多個) 應(yīng)用于目標文件。在本發(fā)明的一實施例中,在軟件40已經(jīng)確定數(shù)據(jù)庫支持改變之后,軟件 40從數(shù)據(jù)源獲得它將向附加文件應(yīng)用的改變的內(nèi)容,該數(shù)據(jù)源包括但不限于數(shù)據(jù)庫、在計 算環(huán)境100中的數(shù)據(jù)源和/或在計算環(huán)境100中的資源可訪問的數(shù)據(jù)源。在本發(fā)明的一實 施例中,軟件40在將相同類型的改變(多個)應(yīng)用于目標文件之前提供預(yù)覽和/或報告改 變。
[0041] 圖3描繪本發(fā)明的一實施例的一個或者多個方面的模塊表示的一個例子。本領(lǐng)域 技術(shù)人員將認識到這一實施例的變體,比如在不同模塊中實現(xiàn)記載的功能。為了清楚并且 作為例子,這些模塊在圖3中是分離的模塊。
[0042] 在圖3的實施例中,將圖2的工作流程中的不同功能分散到軟件40的不同計算模 塊中。這些計算模塊由在計算機系統(tǒng)中的一個或者多個處理器,比如客戶端計算設(shè)備和/ 或服務(wù)器和/或可由客戶端計算設(shè)備訪問的計算機資源,比如云資源上執(zhí)行的計算機代碼 組成。這些模塊可以在一個資源本地和/或分布于計算環(huán)境中的多種資源之上。
[0043] 對圖3中的模塊中的每個模塊的簡要概述之后是對每個模塊的更具體描述。在圖 3的實施例中,軟件40由以下模塊組成:中央貯存庫310、管理控制臺320、用戶行為和分析 模塊330、數(shù)據(jù)分析和相關(guān)模塊340、推薦模塊350、確認模塊360以及仿真和預(yù)覽模塊370。
[0044] 如前文提到的那樣,軟件40確定一個或者多個數(shù)據(jù)庫130是否支持對源文件的改 變。參照圖3,中央貯存庫310存儲如下數(shù)據(jù),比如數(shù)據(jù)庫130,軟件40利用該數(shù)據(jù)以確定用 戶和/或過程對源文件進行的改變,標識軟件40將對其進行相同類型的改變的目標文件, 并且對目標文件進行相同類型的改變,而且在本發(fā)明的一些實施例中,制定軟件40對附加 文件進行的改變。
[0045] 在這一實施例中,用戶可以通過計算環(huán)境中的計算設(shè)備上的用戶接口訪問管理控 制臺320。軟件40的管理控制臺320允許具有恰當安全權(quán)限的用戶編輯中央貯存庫310中 的存儲的數(shù)據(jù),包括編輯一個或者多個數(shù)據(jù)庫130中的數(shù)據(jù)。
[0046] 在這一實施例中,用戶行為分析模塊330獲得對源文件的改變。軟件40的用戶行 為分析模塊330使軟件能夠觀測和分析用戶和/或過程對源文件進行的改變。除了在中央 貯存庫310中例如以審計線索記錄進行的實際改變之外,用戶行為分析模塊330也包含允 許軟件40記錄進行的改變類型、預(yù)測附加改變并且甚至向用戶建議改變的代碼。
[0047] 在這一實施例中,數(shù)據(jù)分析和相關(guān)模塊340確定(中央貯存庫310中的)數(shù)據(jù)源預(yù) 定義列表中的數(shù)據(jù)庫130中的一個或者多個數(shù)據(jù)庫是否支持對源文件進行的改變。軟件40 的數(shù)據(jù)分析和相關(guān)模塊340中的程序代碼分析用戶和/或過程進行的源文件的改變,并且 匹配那些改變與中央貯存庫310中的數(shù)據(jù)庫130中的一個或者多個數(shù)據(jù)庫支持的改變。
[0048] 在這一實施例中,推薦模塊350分析支持改變的數(shù)據(jù)庫130中的一個或者多個數(shù) 據(jù)庫,并且推薦模塊350制定對目標文件的改變。推薦模塊350接收用戶行為分析模塊330 觀測的改變以及中央貯存庫310中的數(shù)據(jù)庫130中的被數(shù)據(jù)分析和相關(guān)模塊340確定為與 該改變匹配的一個或者多個數(shù)據(jù)庫,并且基于這一數(shù)據(jù)推薦對目標文件的改變。在本發(fā)明 的一實施例中,軟件40在對目標文件中的一個或者多個目標文件實施推薦的改變(多個)之 前向用戶顯示推薦。
[0049] 確認模塊360跟蹤用戶是否確認推薦模塊350推薦的對目標文件的改變。軟件40 利用仿真和預(yù)覽模塊370向用戶顯示推薦的改變。因此,確認模塊360以及仿真和預(yù)覽模 塊370可以一起工作以向用戶顯示對目標文件的推薦的改變,并且從用戶接收針對每個推 薦的改變的響應(yīng)。
[0050] 在這一實施例中,在確認模塊360從用戶接收響應(yīng)之后,軟件40將改變應(yīng)用于目 標文件。在本發(fā)明的實施例中,應(yīng)用改變包括但不限于用推薦模塊350制定的新文字重寫 目標文件中的現(xiàn)有文字和/或改變目標文件的權(quán)限。
[0051] 圖4描繪用于根據(jù)本發(fā)明的一個或者多個方面的用于動態(tài)地同步文件中的元素 的方法的一個實施例的工作流程。如圖3中按模塊所述,圖4描繪實現(xiàn)該方法的一實施例 的軟件40。在圖4中,軟件40的各種模塊讀取、寫入和分析中央貯存庫310中的數(shù)據(jù)。因 此,可以理解圖4描繪與中央貯存庫310中的數(shù)據(jù)交互的軟件40。
[0052] 參照圖3,軟件40用來對目標文件實施用戶和/或過程以前向源文件應(yīng)用的改變 類型的前述數(shù)據(jù)庫130位于中央貯存庫310中。在本發(fā)明的這一實施例中,軟件40在中央 貯存庫310中存儲數(shù)據(jù)并且訪問中央貯存庫310中存儲的數(shù)據(jù)。在中央貯存庫310中存儲 的數(shù)據(jù)包括但不限于:1)軟件40用來分析用戶對源文件進行的改變并且確定數(shù)據(jù)庫130中 的一個或者多個數(shù)據(jù)庫是否支持這些改變(并且軟件40可以實施目標文件的相同類型的 改變)的數(shù)據(jù);2)數(shù)據(jù)40為了對目標文件進行支持的改變而引用的數(shù)據(jù);3)軟件40用來 為進行分析和編輯而匯總文件和/或目標文件的部分的數(shù)據(jù);4)包括改變和簡檔的數(shù)據(jù), 這些簡檔包含改變和/或改變類型;5)與存儲的數(shù)據(jù)關(guān)聯(lián)的安全信息,包括但不限于與數(shù) 據(jù)庫、改變和/或簡檔關(guān)聯(lián)的安全;6)軟件40利用客戶端計算設(shè)備通過與用戶的圖形用戶 接口(⑶I)交互獲得的數(shù)據(jù);以及7)審計數(shù)據(jù),軟件40通過跟蹤對系統(tǒng)利用的如下文件進 行的改變來記錄所述審計數(shù)據(jù),這些文件包括但不限于源文件、目標文件和/或數(shù)據(jù)庫。
[0053] 在本發(fā)明的一實施例中,通過如下接口與計算機系統(tǒng)交互,該接口是軟件40的管 理控制臺320的一部分,滿足安全要求的用戶可以編輯中央貯存庫310中的存儲的數(shù)據(jù)。具 有恰當安全證書的用戶可以利用接口以執(zhí)行活動,這些活動包括但不限于以下活動:改變 利用某些簡檔的用戶的權(quán)限、將簡檔應(yīng)用于目標文件、更新建立的簡檔中的改變、改變軟件 40將用來標識目標文件的準則和/或改變用戶和/或過程為了訪問給定的數(shù)據(jù)庫而需要的 權(quán)限。
[0054] 在本發(fā)明的實施例中,中央貯存庫310可以駐留在多個物理機器之一上和/或在 外部存儲器資源上。在本發(fā)明的一實施例中,圖3中描繪的模塊中的包括中央貯存庫310 的一個或者多個模塊利用共享數(shù)據(jù)存儲和管理系統(tǒng)中的一個或者多個資源,比如云。
[0055] 回顧圖4,用戶和/或過程對計算環(huán)境中的文件,S卩,源文件實施一個或者多個改 變(S410)。在進行改變時,軟件40的用戶行為分析模塊330獲得一個或者多個改變并且在 中央貯存庫310中記錄審計數(shù)據(jù)(S420)。這一審計數(shù)據(jù)包括源文件在用戶和/或過程進行 一個或者多個改變之前的狀態(tài)和源文件在用戶和/或過程進行一個或者多個改變之后的 狀態(tài)。
[0056] 軟件40的用戶行為分析模塊330通過在將源文件的原有元素轉(zhuǎn)換成源文件的新 元素時,例如在改變源文件中的項目,比如文字、格式化和/或權(quán)限時進行檢測,獲得對文 件的改變。軟件的用戶行為分析模塊330檢測元素,這些元素包括但不限于對源文件的改 變的出現(xiàn)數(shù)目、改變類型、用戶和/或過程對源文件進行的改變中的任何趨勢、改變的頻率 和/或如果有改變的優(yōu)先級則包括改變的優(yōu)先級。在本發(fā)明的一實施例中,用戶行為分析 模塊330可以識別用戶對源文件進行的改變與中央貯存庫310中的現(xiàn)有改變簡檔相關(guān)。用 戶行為分析模塊330向數(shù)據(jù)分析和相關(guān)模塊340供應(yīng)獲得的改變以輔助軟件40中的數(shù)據(jù) 分析和相關(guān)模塊340確定中央貯存庫310中的一個或者多個數(shù)據(jù)庫130是否支持這些改 變。
[0057] 此外,在本發(fā)明的一實施例中,用戶行為分析模塊330輔助用戶捕獲對源文件進 行的錯誤改變。用戶行為分析模塊330通過向這些改變分配準確度/置信度評級來向用戶 提醒這些改變的可能問題。例如,如果用戶和/或過程對源文件進行如下改變,該改變在軟 件40以往對目標文件實施該改變時90%的時間引起錯誤,則用戶行為分析模塊330記錄和 保存這一信息,并且向這一改變分配低置信度分數(shù)。因此,當用戶尋求在計算機系統(tǒng)中的目 標文件上實施這一改變時,推薦模塊350訪問軟件40的用戶行為分析模塊330分配的低置 信度分數(shù),并且例如在GUI中的消息中向用戶提醒這一改變具有低置信度/準確度評級并 且可能引起系統(tǒng)問題。
[0058] 數(shù)據(jù)分析和相關(guān)模塊340確定中央貯存庫310中的一個或者多個數(shù)據(jù)庫130是 否支持對源文件進行的一個或者多個改變。軟件40的數(shù)據(jù)分析和相關(guān)模塊340利用中央 貯存庫310中存儲的數(shù)據(jù)并且分析對源文件進行的一個或者多個改變而且確定中央貯存 庫310中的數(shù)據(jù)庫130中的一個或者多個數(shù)據(jù)庫是否支持一個或者多個改變中的任何改變 (S430)。在本發(fā)明的又一實施例中,如果軟件40不能定位中央貯存庫310中的一個或者多 個數(shù)據(jù)庫130以便支持對源文件進行的改變,則軟件40搜索包括因特網(wǎng)上的公共可用資源 的可訪問資源,以定位數(shù)據(jù)源以便支持該改變。例如,如果用戶和/或過程更新源文件中的 zip代碼,則軟件40的數(shù)據(jù)分析和相關(guān)模塊340將這一改變識別為源文件中的zip代碼更 新。然而如果在數(shù)據(jù)庫130中的一個或者多個數(shù)據(jù)庫中無 zip代碼資源,則數(shù)據(jù)分析和相 關(guān)模塊340中的軟件40在web中搜索zip代碼貯存庫,它可以引用該zip代碼貯存庫以利 用系統(tǒng)文件中的所有zip代碼。在本發(fā)明的又一實施例中,在軟件40對這一貯存庫定位之 后,軟件40復(fù)制It存庫并且在中央It存庫310中保存它以便在以后更新中使用。
[0059] 軟件40獲得標識目標文件的數(shù)據(jù)。在本發(fā)明的一實施例中,軟件40從中央貯存 庫310獲得這一數(shù)據(jù)。軟件40訪問中央貯存庫310以獲得數(shù)據(jù),軟件40使用所述數(shù)據(jù)標 識目標文件,包括為分析和編輯而匯總文件和/或目標文件的部分(S440)。例如在本發(fā)明 的一實施例中,軟件40從中央貯存庫310獲得引用列表。這一引用列表將數(shù)據(jù)庫130中的 給定的數(shù)據(jù)庫支持的改變與計算機環(huán)境中的包含如下元素的文件相關(guān),如果對源文件進行 改變則應(yīng)當對這些元素實施相同類型的改變。因此,在這一實施例中,引用列表本身指明目 標文件。
[0060] 回顧圖4,在軟件40已經(jīng)獲得標識目標文件的數(shù)據(jù)之后,軟件40利用該數(shù)據(jù)以在 軟件40標識的目標文件中進行相同類型的改變。具體而言,軟件40分析數(shù)據(jù)庫130中的 一個或者多個相關(guān)數(shù)據(jù)庫和/或軟件40可訪問的任何相關(guān)資源以制定軟件40將向這些目 標文件中的現(xiàn)有項目應(yīng)用的具體改變。
[0061] 在本發(fā)明的這一實施例中,軟件40的推薦模塊350分析數(shù)據(jù)庫130和/或任何相 關(guān)資源,并且基于軟件40標識為受一個或者多個數(shù)據(jù)庫支持的改變來創(chuàng)建用于對目標文 件的改變的推薦,而不是將改變自動應(yīng)用于標識的目標文件(S450)。軟件40用仿真和預(yù)覽 模塊370向用戶顯示改變(S460)并且用確認模塊360記錄用戶對每個顯示的改變的接受 和/或拒絕(S470)。然后,軟件40將用戶接受的改變應(yīng)用于目標文件(S480)。
[0062] 如前文提到的那樣,推薦模塊350可以向用戶提供如下信息,該信息輔助用戶判 決是否在計算機系統(tǒng)中的目標文件上實施用戶對源文件進行的相同類型的改變。除了向用 戶提供置信度/準確度評級之外,在本發(fā)明的實施例中,推薦模塊350也可以在對各種目標 文件實施改變之時跟蹤它們的狀態(tài)從而允許用戶通知軟件40停止或者回滾改變。在本發(fā) 明的一些實施例中可以預(yù)配置推薦模塊350,從而在軟件40對某些文件自動實施某些改變 之時針對某些改變和/或某些文件需要用戶批準。在一些實施例中可以配置推薦模塊350, 以便如果對源文件的改變的置信度/準確度評級未滿足某個閾值則自動取消將相同改變 的類型應(yīng)用于目標文件。在本發(fā)明的又一實施例中,推薦模塊350形成推薦分析資源,這 些推薦分析資源包括但不限于數(shù)據(jù)庫130、在源文件中發(fā)現(xiàn)的關(guān)鍵詞、相關(guān)度和/或歷史數(shù) 據(jù)。
[0063] 在圖3的實施例中,仿真和預(yù)覽模塊370通過分析相關(guān)數(shù)據(jù)庫130來提供軟件40 推薦的對目標文件實施的改變的預(yù)覽,這些預(yù)覽包括視覺表示和仿真。例如仿真和預(yù)覽模 塊370的功能包括但不限于顯示在應(yīng)用改變之后的目標文件,以及創(chuàng)建仿真,以便模仿軟 件40將改變應(yīng)用于目標文件之后計算機環(huán)境的功能,和/或在將改變應(yīng)用于目標文件之前 批準支持的改變。在本發(fā)明的各種實施例中,仿真和預(yù)覽模塊370可以生成標識對目標文 件實施改變的影響的報告、顯示用于附加的保持的改變或者不同改變的推薦并且顯示一個 或者多個改變的實施的成功率。
[0064] 仿真和預(yù)覽模塊370可以基于來自用戶的對預(yù)覽和仿真的響應(yīng)來改變該改變、改 變類型和/或簡檔的內(nèi)容。例如在本發(fā)明的一實施例中,在用戶選擇和拒絕給定的簡檔中 的不同改變和/或改變類型時,仿真和預(yù)覽模塊370更新中央貯存庫310中的保存的簡檔 以反映這些新偏好。因此,如果用戶在以后時間選擇這一簡檔,則軟件40向目標文件應(yīng)用 的改變和/或改變類型將反映更早用戶的偏好。
[0065] 在本發(fā)明的一實施例中,仿真和預(yù)覽模塊370在軟件40將推薦的改變應(yīng)用于目標 文件之前檢查對源文件的改變的功效。例如在一給定的實施例中針對給定的對源文件的 改變,仿真和預(yù)覽模塊370驗證目標文件存在、驗證通向目標文件的路徑正確、檢查數(shù)據(jù)庫 130中的利用的數(shù)據(jù)庫是否包含可用數(shù)據(jù)、和/或檢查標識的目標文件是否包含軟件40可 以對其應(yīng)用與對源文件進行的相同類型的改變的元素。
[0066] 在本發(fā)明的一實施例中,在將相同類型的改變應(yīng)用于目標文件之后,軟件40通過 在中央貯存庫310中的或者中央貯存庫310可訪問的資源上保存對源文件、然后對目標文 件進行的改變和/或改變類型來保持改變和/或改變類型(S490)。在本發(fā)明的實施例中, 圖3中的確認模塊360不僅提供請求確認和/或拒絕一個或者多個改變的功能,而且確認 模塊360也跟蹤結(jié)果,從而在用戶對仿真和預(yù)覽模塊370創(chuàng)建的對目標文件的每個仿真的 改變做出響應(yīng)時記錄審計信息。確認模塊360在中央貯存庫310中記錄確認和/或拒絕 數(shù)據(jù),該數(shù)據(jù)包括但不限于改變?nèi)掌?、確認改變的用戶、確認時間、改變在文件中的位置和/ 或附加審計信息。在本發(fā)明的一實施例中,用戶行為和分析330包括在計算給定的改變的 總成功率時與改變有關(guān)的確認保持數(shù)據(jù)。在本發(fā)明的一實施例中,軟件40向目標文件中的 一個或者多個目標文件應(yīng)用的改變可以僅反映用戶希望對系統(tǒng)內(nèi)的文件進行的改變中的 某些改變。在這一情況下,在軟件40應(yīng)用改變和/或簡檔之后,用戶可以繼續(xù)對顯示的文 件進行改變。軟件40可以跟蹤這些附加改變并且向軟件40在系統(tǒng)資源上保持的簡檔添加 改變和/或改變類型。
[0067] 軟件40可以保存改變和/或改變類型作為簡檔的部分(S495)。在本發(fā)明的一實 施例中,后續(xù)用戶和/或過程可以訪問中央貯存庫310中的保存的改變和/或簡檔,并且使 用軟件40以將它們應(yīng)用于附加文件。
[0068] 在本發(fā)明的一實施例中,軟件40是否向一個或者多個目標文件傳播用戶進行的 源文件的相同類型的改變可以依賴于用戶的安全許可。在圖4的實施例中,中央貯存庫310 存儲與存儲的數(shù)據(jù)關(guān)聯(lián)的安全信息,該安全信息包括但不限于與數(shù)據(jù)庫130、改變和/或簡 檔關(guān)聯(lián)的安全?;仡檲D1,如前文提到的那樣,軟件40在識別源文件的改變并且判斷是否應(yīng) 當對可以包含不同數(shù)據(jù)的一個或者多個目標文件實施相同類型的改變時利用一個或者多 個數(shù)據(jù)庫130作為資源。在本發(fā)明的各種實施例中,管理員可以向數(shù)據(jù)庫130和在計算機 系統(tǒng)內(nèi)的文件分配權(quán)限,這些文件包括成為源文件和目標文件的文件。利用軟件40的用戶 是否具有適當權(quán)限影響軟件40如何將對源文件的相同類型的改變應(yīng)用于一個或者多個目 標文件。在本發(fā)明的一實施例中,系統(tǒng)管理員可以配置權(quán)限,從而僅具有充分安全證書的用 戶可以訪問給定的數(shù)據(jù)庫130和/或?qū)ο到y(tǒng)文件進行改變。
[0069] 因而,如這里闡述的那樣,軟件40從對源文件實施改變的客戶端,S卩,用戶和/或 過程獲得安全證書。因此,當用戶訪問軟件40時,軟件40確定用戶是否可以訪問數(shù)據(jù)庫 130和/或用戶是否可以對目標文件進行改變。因此,即使用戶已經(jīng)對源文件進行在數(shù)據(jù) 庫130中的數(shù)據(jù)庫中支持的改變,但是如果用戶沒有用于訪問數(shù)據(jù)庫130中的支持改變的 數(shù)據(jù)庫的充分權(quán)限和/或如果用戶沒有用于編輯目標文件的充分權(quán)限,則軟件40仍然不會 對目標文件進行相同類型的改變。
[0070] 回顧圖4,根據(jù)目標文件和/或支持改變的數(shù)據(jù)庫130是否需要用于訪問它們的安 全權(quán)限,軟件40在軟件40確定數(shù)據(jù)庫130中的數(shù)據(jù)庫是否支持改變(S430)時和在獲得標 識目標文件的數(shù)據(jù)(S440 )時獲得關(guān)于用戶的安全證書。在本發(fā)明的一實施例中,如果標識 對源文件的改變并且相同類型的改變由于用戶沒有用于訪問數(shù)據(jù)庫130中的數(shù)據(jù)庫和/或 用于編輯一個或者多個目標文件的充分權(quán)限而不能應(yīng)用于一個或者多個目標文件,則軟件 40向用戶報告錯誤。
[0071] 可以通過參照圖4的工作流程來理解具體例子。例如在本發(fā)明的一實施例中,用 戶編輯源文件。這一源文件包含當在給定的計算環(huán)境中的一個或者多個處理器上執(zhí)行時, 使執(zhí)行的應(yīng)用的用戶能夠預(yù)訂航空旅行的計算機代碼。用戶對源文件進行以下改變:1)用 戶針對某個變量類型將語言從英語改變成法語;2)用戶改變機場名稱以顯示為機場代碼而 不是名稱;3)用戶改變貨幣以顯示為歐元而不是美元(S410)。
[0072] 軟件40部分地通過在中央貯存庫310中以審計數(shù)據(jù)記錄改變來獲得對源文件進 行的改變(S420)。軟件40確定中央貯存庫310中的數(shù)據(jù)文件130中的不同數(shù)據(jù)文件是否 支持改變(語言改變、機場顯示改變和貨幣改變)中的每個改變。在這一例子中,一個數(shù)據(jù)庫 包含英語/法語語言索引,第二數(shù)據(jù)庫包含國際機場代碼和全名列表,并且第三數(shù)據(jù)庫包 含用于在將美元轉(zhuǎn)換成歐元時使用的轉(zhuǎn)換率。在這一例子中,中央貯存庫310中的數(shù)據(jù)庫 130包含軟件40用來制定對目標文件的改變的數(shù)據(jù)。然而,在本發(fā)明的其它實施例中,雖然 軟件40使用數(shù)據(jù)庫130中的數(shù)據(jù)以確定是否支持改變,但是軟件40訪問內(nèi)部和/或外部 數(shù)據(jù)源以制定對目標文件的實際改變。
[0073] 軟件獲得標識至少一個目標文件的數(shù)據(jù)。通過引用中央貯存庫310中的數(shù)據(jù),軟 件40獲得標識計算機環(huán)境中的如下文件的數(shù)據(jù),這些文件包含應(yīng)當對其應(yīng)用對源文件進 行的相同類型的改變,以便保持一個或者多個處理器執(zhí)行的用于向用戶提供用于預(yù)訂航空 旅行的應(yīng)用的各種代碼同步的元素(S440)。針對第一改變,軟件40獲得標識如下目標文件 的數(shù)據(jù),這些目標文件包含用戶在源文件中進行翻譯的某個變量類型。針對最后改變,軟件 40獲得標識如下目標文件的數(shù)據(jù),這些目標文件包含機場全名。針對最后改變,軟件40獲 得標識如下目標文件的數(shù)據(jù),這些目標文件包含美國貨幣標稱。
[0074] 在軟件40獲得標識目標文件的數(shù)據(jù)之后,在分析數(shù)據(jù)庫以制定將應(yīng)用于每個目 標文件的改變的推薦(S450)、向用戶顯示這些推薦(S460)并且接收對確認和/或拒絕推薦 的改變的反饋(S470)、然后應(yīng)用接受的改變(S480)之后,軟件40通過利用數(shù)據(jù)庫130中的 適當數(shù)據(jù)庫將對源文件進行的相同類型的改變應(yīng)用于目標文件。在本發(fā)明的其它實施例 中,軟件40分析數(shù)據(jù)庫130中的一個或者多個數(shù)據(jù)庫、制定將應(yīng)用于目標文件的改變并且 自動應(yīng)用改變。
[0075] 如前文提到的那樣,目標文件中的數(shù)據(jù)未必與源文件中的數(shù)據(jù)相同。實際上,在源 文件中進行的改變是數(shù)據(jù)庫130中的一個或者多個數(shù)據(jù)庫支持的類型。例如目標文件可以 在與用戶在源文件中改變的相同變量類型中具有不同的英語單詞。然而由于用戶將單詞改 變成法語單詞,所以軟件40將目標文件中的該變量應(yīng)用于不同法語單詞,分析數(shù)據(jù)庫130 中的軟件40確定支持這一改變的數(shù)據(jù)庫中的法語到英語索引。
[0076] 在這一實施例中,軟件40保存對源文件進行的、并且被中央貯存庫310中的三 個數(shù)據(jù)庫支持的改變組(S490),并且可以保存改變和/或改變類型作為簡檔的一部分 (S495)。計算機環(huán)境中的具有適當權(quán)限的用戶和過程可以訪問這一簡檔以便將簡檔重新應(yīng) 用于目標文件或者將簡檔應(yīng)用于新文件組。
[0077] 圖3不是本發(fā)明各種實施例中的所有軟件模塊的窮盡圖示。在其它實施例中,附 加模塊貢獻附加功能。例如在本發(fā)明的一實施例中,通過使用執(zhí)行模塊(未示出),用戶可以 配置軟件40何時和如何在目標文件上應(yīng)用改變類型。例如用戶可以調(diào)度軟件40以在給定 的時間窗期間內(nèi)應(yīng)用貯存庫310中保存的改變類型。在某些計算環(huán)境中,某些文件在某些 服務(wù)活躍時不可編輯。因此,軟件40僅能在這些服務(wù)關(guān)停時在計算環(huán)境100上應(yīng)用某些改 變類型。例如僅可以在服務(wù)器120上的web服務(wù)未運行時將改變類型應(yīng)用于如下文件,這些 文件包含服務(wù)器102上運行的web服務(wù)器利用的代碼。在這一情形中,通過利用本發(fā)明的 一實施例的方面,用戶可以配置軟件40以便在調(diào)度的停機時間期間為受影響的文件和系 統(tǒng)應(yīng)用一個或者多個改變類型。這一方面還可附加地用于調(diào)整某些改變類型的實施階段, 從而將這些改變類型應(yīng)用于文件而沒有重寫出現(xiàn),保留不需要的原始內(nèi)容。
[0078] 用戶也可以配置用于改變類型或者簡檔的審查過程或者設(shè)置用于改變類型或者 簡檔的權(quán)限、包括設(shè)置用于批準的通知和向風(fēng)險承擔(dān)者的通知。用戶也可以根據(jù)重要性給 改變類型和/或簡檔劃分等級,從而如果系統(tǒng)的能力存在問題,則軟件40將在它實施更低 級別的改變和/或簡檔之前應(yīng)用具有更高級別的改變類型和/或簡檔、例如VIP請求。
[0079] 圖5描繪本發(fā)明的一實施例的一個或者多個方面的模塊表示的一個例子。圖5描 繪軟件40的一實施例的三個部件:聲明部件510、文件批準部件520和執(zhí)行部件530。聲明 部件510使軟件40能夠獲得標識用于應(yīng)用改變類型和/或者保存的簡檔的目標文件的數(shù) 據(jù)。文件批準部件520在將改變類型和/或簡檔應(yīng)用于目標文件之前執(zhí)行數(shù)據(jù)質(zhì)量檢查。 在文件(多個)已經(jīng)通過文件批準之后,文件執(zhí)行部件530尋找并且向標識的目標文件應(yīng)用 改變類型。參照圖4,軟件40的這些部件獲得標識目標文件的數(shù)據(jù)(S440)、批準這些改變 (S450 )和應(yīng)用改變類型(S480 )。
[0080] 回顧圖5,聲明部件510獲得標識目標文件的數(shù)據(jù)。與軟件40交互的用戶使用這 一聲明部件510以"聲明"和關(guān)聯(lián)待處理的文件。軟件40獲得標識目標文件的數(shù)據(jù)作為聲 明的結(jié)果。聲明可以包括但不限于對文件類型、應(yīng)用、文件級別、文件所有權(quán)、位置(例如目 錄、服務(wù)器(遠程或者本地)、java虛擬機)、引用和/或邏輯路徑、在目標文件中出現(xiàn)的文本 或者代碼元素如文本和/或命令和/或文件名列表的用戶聲明。在軟件40至少基于這些 特性應(yīng)用某些改變類型時,用戶也可以利用軟件40排除某些文件。該軟件的聲明部件510 讓用戶能夠在運行中和/或通過設(shè)置預(yù)定義的準則來聲明目標文件。軟件40獲得標識文 件的這種數(shù)據(jù)。軟件40獲得用戶進行的聲明并且在遠程可訪問或者本地資源上保持它們。 在本發(fā)明的一實施例中,軟件40可以獲得用戶的用于給定的所選文件的聲明、整個文件的 聲明、行號(多個)、區(qū)段(多個)和/或給定的改變和/或簡檔可應(yīng)用的范圍。在本發(fā)明的一 實施例中,軟件40可以從用戶獲得標識信息,該標識信息包括但不限于文件性質(zhì)、模式匹 配、場所、時間戳(多個)、大小(多個)、修改者和/或類型/擴展名。
[0081] 除了從客戶端直接獲得標識文件的數(shù)據(jù)之外,軟件40的聲明部件510在本發(fā)明的 某些實施例中還可以推薦用于作為目標文件而包括的未選文件。例如,如果用戶指示軟件 40將改變類型、例如將文件從西班牙語翻譯成英語應(yīng)用于在其文件名中具有"SP"的文件, 則本發(fā)明的實施例可以推薦用于應(yīng)用這一改變的與這一準則相符的附加文件。如參照圖3 討論的那樣,在用戶接受軟件40進行的推薦之后,軟件40提高給定的改變的被接受的推薦 的置信度水平。
[0082] 在本發(fā)明的一實施例中,軟件40的文件批準部件520在將改變類型和/或簡檔應(yīng) 用于目標文件之前執(zhí)行數(shù)據(jù)質(zhì)量檢查。在本發(fā)明的一實施例中,軟件40批準目標文件和/ 或文件標稱中的數(shù)據(jù)。例如在本發(fā)明的一實施例中,軟件40接收與給定的改變關(guān)聯(lián)的定義 和/或可接受值列表。例如,用于給定的改變的可接受值可以包括諸如txt、xls、CSV等接 受的擴展名。在這一例子中,如果標識的目標文件沒有被接受的文件擴展名,則文件批準部 件510將該文件指定為無效并且軟件40不會將改變類型應(yīng)用于這一文件。文件批準部件 520執(zhí)行的批準活動可以包括但不限于批準標準文件/權(quán)限、包括檢查在用戶輸入的目標 文件列表中標識的給定的目錄/文件是否存在、批準對目標文件起作用的用戶權(quán)限和/或 批準用于創(chuàng)建備份的權(quán)限。為了批準目標文件,軟件40可以自動生成腳本,該腳本將被作 為將改變類型和/或簡檔應(yīng)用于目標文件的一部分來運行,以確定不恰當標識的目標文件 的正確路徑。在本發(fā)明的一實施例中,軟件40記錄批準中的任何錯誤。軟件40可以向指 定這些文件的用戶顯示這些錯誤,這使得用戶能夠進行糾正。
[0083] 在本發(fā)明的一實施例中,文件執(zhí)行部件530在文件(多個)已經(jīng)通過文件批準之后 將改變應(yīng)用于定義的目標文件(多個)。
[0084] 參照圖5的實施例中的部件,用戶可以使用這一實施例,以便將一個計算機系統(tǒng) 的資源中的資源部署到不同地理。在這一例子中,標準信息系統(tǒng)管理(ISM)開發(fā)環(huán)境是利 用的技術(shù)架構(gòu)。這一 ISM環(huán)境包括2個服務(wù)器和10個Java虛擬機(JVM)。每個JVM具有 web部署描述符和關(guān)聯(lián)性質(zhì)文件+LDAP xml。用戶希望在不同地理位置處為另一賬戶重新 部署環(huán)境。
[0085] 在本發(fā)明的一實施例中,為了在不同地理部署,用戶向客戶端中輸入文件標識數(shù) 據(jù),并且軟件40的聲明模塊510獲得標識目標文件的數(shù)據(jù)。用戶對源文件進行軟件40獲 得的并且確定受數(shù)據(jù)庫130中的一個或者多個數(shù)據(jù)庫支持的編輯改變。例如在這一給定的 源文件中,用戶可以改變ISM賬戶、機場的命名約定(例如,全名改變成縮寫)、國名(例如,全 名改變成縮寫)、文件的編寫語言(例如英語改變成漢語)、日期的格式和/或時區(qū)。
[0086] 軟件40確定數(shù)據(jù)庫130中的一個或者多個數(shù)據(jù)庫支持這些改變,并且將支持的改 變和/或改變類型保存到系統(tǒng)資源。軟件40可以潛在地在簡檔中保持改變。軟件40分析 標識的數(shù)據(jù)庫并且制定為了實施來自源文件的改變類型而將應(yīng)用于目標文件的新項目。在 這一實施例中,軟件40可以自動地或者在用戶使用軟件40預(yù)先安排的以后時間應(yīng)用改變 類型。然而在圖5的實施例中,在軟件40的文件執(zhí)行模塊530應(yīng)用改變類型之前,文件批 準部件520批準用戶標識的目標文件和/或建議附加文件。在本發(fā)明的其它實施例中,軟 件40應(yīng)用改變類型而不進行文件批準。
[0087] 圖2和4示出將一個改變和/或簡檔應(yīng)用于目標文件組。然而,即使在改變類型 沖突時,本發(fā)明的實施例中的軟件仍然能夠協(xié)商將兩個或者更多改變類型和/或簡檔應(yīng)用 于一個或者多個目標文件。
[0088] 在本發(fā)明的一實施例中,參照圖5,用戶和/或過程可以輸入如下數(shù)據(jù),該數(shù)據(jù)使 軟件40獲得標識用于不同簡檔的相同目標文件的數(shù)據(jù)。例如,軟件40獲得標識三個不同 簡檔的數(shù)據(jù),這些簡檔具有將應(yīng)用于相同目標文件的不同改變:一個用戶簡檔將所有貨幣 轉(zhuǎn)換成日元,第二用戶簡檔將所有機場名改變成機場代碼,第三用戶簡檔在呈現(xiàn)網(wǎng)頁內(nèi)容 的文件中將使用表格標簽的格式改變成區(qū)段標簽。軟件40獲得標識目標文件的數(shù)據(jù),該目 標文件包含貨幣信息、機場名和表格。軟件40將與不同簡檔一致的相同改變類型應(yīng)用于目 標文件的不同部分。在一些情況下,軟件40可以將多個簡檔中的相同改變類型應(yīng)用于目標 文件的相同部分。例如在本例中,軟件40將表格中的貨幣清單改變成以日元顯示并且利用 區(qū)段而不是表格單元。
[0089] 在一些情形中,可應(yīng)用于相同目標文件的兩個簡檔可能互斥。在這一情況下,在本 發(fā)明的一實施例中,軟件40按照預(yù)定義或者計算的優(yōu)先級順序應(yīng)用簡檔。例如用戶可以具 有用于刪除涉及機動車輛的貨幣信息的簡檔和用于將所有貨幣轉(zhuǎn)換成歐元的另一簡檔。在 包含汽車價格的目標文件上,如果汽車信息簡檔帶有比貨幣簡檔更高的優(yōu)先級,則軟件40 刪除價格,但是如果貨幣簡檔帶有更高優(yōu)先級,則軟件40將汽車價格轉(zhuǎn)換成歐元。在本發(fā) 明的另一實施例中,軟件40利用與不同簡檔內(nèi)或者相同簡檔內(nèi)的不同改變關(guān)聯(lián)的優(yōu)先級 以確定應(yīng)用改變的順序。
[0090] 在上例中,僅單個改變與每個簡檔相關(guān)聯(lián)。然而僅為了清楚而提供這些例子。本 領(lǐng)域技術(shù)人員將認識到在本發(fā)明的各種實施例中,無限數(shù)目的改變以及無限數(shù)目的數(shù)據(jù)庫 可以與給定的簡檔和/或改變組關(guān)聯(lián)。例如單個簡檔可以在代碼中包含用于將所有貨幣轉(zhuǎn) 換成日元、將所有機場名改變成機場代碼和將表格標簽改變成區(qū)段標簽的指令。在一個實 施例中,為了將這一簡檔應(yīng)用于目標文件,軟件40查詢具有各種世界貨幣到日元的轉(zhuǎn)換率 條目的數(shù)據(jù)庫、匹配機場代碼與全名的數(shù)據(jù)庫和具有格式化指令的數(shù)據(jù)庫。
[0091] 首先應(yīng)當理解,盡管本公開包括關(guān)于云計算的詳細描述,但其中記載的技術(shù)方案 的實現(xiàn)卻不限于云計算環(huán)境,而是能夠結(jié)合現(xiàn)在已知或以后開發(fā)的任何其它類型的計算環(huán) 境而實現(xiàn)。
[0092] 云計算是一種服務(wù)交付模式,用于對共享的可配置計算資源池進行方便、按需的 網(wǎng)絡(luò)訪問??膳渲糜嬎阗Y源是能夠以最小的管理成本或與服務(wù)提供者進行最少的交互就能 快速部署和釋放的資源,例如可以是網(wǎng)絡(luò)、網(wǎng)絡(luò)帶寬、服務(wù)器、處理、內(nèi)存、存儲、應(yīng)用、虛擬 機和服務(wù)。這種云模式可以包括至少五個特征、至少三個服務(wù)模型和至少四個部署模型。
[0093] 特征如下:
[0094] 按需自助式服務(wù):云的消費者在無需與服務(wù)提供者進行人為交互的情況下能夠單 方面自動地按需部署諸如服務(wù)器時間和網(wǎng)絡(luò)存儲等的計算能力。
[0095] 廣泛的網(wǎng)絡(luò)接入:計算能力可以通過標準機制在網(wǎng)絡(luò)上獲取,這種標準機制促進 了通過不同種類的瘦客戶機平臺或厚客戶機平臺(例如移動電話、膝上型電腦、個人數(shù)字助 理PDA)對云的使用。
[0096] 資源池:提供者的計算資源被歸入資源池并通過多租戶(multi-tenant)模式服 務(wù)于多重消費者,其中按需將不同的實體資源和虛擬資源動態(tài)地分配和再分配。一般情況 下,消費者不能控制或甚至并不知曉所提供的資源的確切位置,但可以在較高抽象程度上 指定位置(例如國家、州或數(shù)據(jù)中心),因此具有位置無關(guān)性。
[0097] 迅速彈性:能夠迅速、有彈性地(有時是自動地)部署計算能力,以實現(xiàn)快速擴展, 并且能迅速釋放來快速縮小。在消費者看來,用于部署的可用計算能力往往顯得是無限的, 并能在任意時候都能獲取任意數(shù)量的計算能力。
[0098] 可測量的服務(wù):云系統(tǒng)通過利用適于服務(wù)類型(例如存儲、處理、帶寬和活躍用戶 帳號)的某種抽象程度的計量能力,自動地控制和優(yōu)化資源效用。可以監(jiān)測、控制和報告資 源使用情況,為服務(wù)提供者和消費者雙方提供透明度。
[0099] 服務(wù)模型如下:
[0100] 軟件即服務(wù)(SaaS):向消費者提供的能力是使用提供者在云基礎(chǔ)架構(gòu)上運行的 應(yīng)用??梢酝ㄟ^諸如網(wǎng)絡(luò)瀏覽器的瘦客戶機接口(例如基于網(wǎng)絡(luò)的電子郵件)從各種客戶機 設(shè)備訪問應(yīng)用。除了有限的特定于用戶的應(yīng)用配置設(shè)置外,消費者既不管理也不控制包括 網(wǎng)絡(luò)、服務(wù)器、操作系統(tǒng)、存儲、乃至單個應(yīng)用能力等的底層云基礎(chǔ)架構(gòu)。
[0101] 平臺即服務(wù)(PaaS):向消費者提供的能力是在云基礎(chǔ)架構(gòu)上部署消費者創(chuàng)建或 獲得的應(yīng)用,這些應(yīng)用利用提供者支持的程序設(shè)計語言和工具創(chuàng)建。消費者既不管理也不 控制包括網(wǎng)絡(luò)、服務(wù)器、操作系統(tǒng)或存儲的底層云基礎(chǔ)架構(gòu),但對其部署的應(yīng)用具有控制 權(quán),對應(yīng)用托管環(huán)境配置可能也具有控制權(quán)。
[0102] 基礎(chǔ)架構(gòu)即服務(wù)(IaaS):向消費者提供的能力是消費者能夠在其中部署并運行包 括操作系統(tǒng)和應(yīng)用的任意軟件的處理、存儲、網(wǎng)絡(luò)和其他基礎(chǔ)計算資源。消費者既不管理也 不控制底層的云基礎(chǔ)架構(gòu),但是對操作系統(tǒng)、存儲和其部署的應(yīng)用具有控制權(quán),對選擇的網(wǎng) 絡(luò)組件(例如主機防火墻)可能具有有限的控制權(quán)。
[0103] 部署模型如下:
[0104] 私有云:云基礎(chǔ)架構(gòu)單獨為某個組織運行。云基礎(chǔ)架構(gòu)可以由該組織或第三方管 理并且可以存在于該組織內(nèi)部或外部。
[0105] 共同體云:云基礎(chǔ)架構(gòu)被若干組織共享并支持有共同利害關(guān)系(例如任務(wù)使命、安 全要求、政策和合規(guī)考慮)的特定共同體。共同體云可以由共同體內(nèi)的多個組織或第三方管 理并且可以存在于該共同體內(nèi)部或外部。
[0106] 公共云:云基礎(chǔ)架構(gòu)向公眾或大型產(chǎn)業(yè)群提供并由出售云服務(wù)的組織擁有。
[0107] 混合云:云基礎(chǔ)架構(gòu)由兩個或更多部署模型的云(私有云、共同體云或公共云)組 成,這些云依然是獨特的實體,但是通過使數(shù)據(jù)和應(yīng)用能夠移植的標準化技術(shù)或私有技術(shù) (例如用于云之間的負載平衡的云突發(fā)流量分擔(dān)技術(shù))綁定在一起。
[0108] 云計算環(huán)境是面向服務(wù)的,特點集中在無狀態(tài)性、低耦合性、模塊性和語意的互操 作性。云計算的核心是包含互連節(jié)點網(wǎng)絡(luò)的基礎(chǔ)架構(gòu)。
[0109] 現(xiàn)在參考圖6,其中顯示了云計算節(jié)點的一個例子。圖6顯示的云計算節(jié)點10僅僅 是適合的云計算節(jié)點的一個示例,不應(yīng)對本發(fā)明實施例的功能和使用范圍帶來任何限制。 總之,云計算節(jié)點10能夠被用來實現(xiàn)和/或執(zhí)行以上所述的任何功能。
[0110] 云計算節(jié)點1〇具有計算機系統(tǒng)/服務(wù)器12,其可與眾多其它通用或?qū)S糜嬎阆?統(tǒng)環(huán)境或配置一起操作。眾所周知,適于與計算機系統(tǒng)/服務(wù)器12 -起操作的計算系統(tǒng)、 環(huán)境和/或配置的例子包括但不限于:個人計算機系統(tǒng)、服務(wù)器計算機系統(tǒng)、瘦客戶機、厚 客戶機、手持或膝上設(shè)備、基于微處理器的系統(tǒng)、機頂盒、可編程消費電子產(chǎn)品、網(wǎng)絡(luò)個人電 腦、小型計算機系統(tǒng)、大型計算機系統(tǒng)和包括上述任意系統(tǒng)的分布式云計算技術(shù)環(huán)境,等 等。
[0111] 計算機系統(tǒng)/服務(wù)器12可以在由計算機系統(tǒng)執(zhí)行的計算機系統(tǒng)可執(zhí)行指令(諸如 程序模塊)的一般語境下描述。通常,程序模塊可以包括執(zhí)行特定的任務(wù)或者實現(xiàn)特定的抽 象數(shù)據(jù)類型的例程、程序、目標程序、組件、邏輯、數(shù)據(jù)結(jié)構(gòu)等。計算機系統(tǒng)/服務(wù)器12可以 在通過通信網(wǎng)絡(luò)鏈接的遠程處理設(shè)備執(zhí)行任務(wù)的分布式云計算環(huán)境中實施。在分布式云計 算環(huán)境中,程序模塊可以位于包括存儲設(shè)備的本地或遠程計算系統(tǒng)存儲介質(zhì)上。
[0112] 如圖6所示,云計算節(jié)點10中的計算機系統(tǒng)/服務(wù)器12以通用計算設(shè)備的形式 表現(xiàn)。計算機系統(tǒng)/服務(wù)器12的組件可以包括但不限于:一個或者多個處理器或者處理單 元16,系統(tǒng)存儲器28,連接不同系統(tǒng)組件(包括系統(tǒng)存儲器28和處理單元16)的總線18。
[0113] 總線18表示幾類總線結(jié)構(gòu)中的一種或多種,包括存儲器總線或者存儲器控制器, 外圍總線,圖形加速端口,處理器或者使用多種總線結(jié)構(gòu)中的任意總線結(jié)構(gòu)的局域總線。舉 例來說,這些體系結(jié)構(gòu)包括但不限于工業(yè)標準體系結(jié)構(gòu)(ISA)總線,微通道體系結(jié)構(gòu)(MAC) 總線,增強型ISA總線、視頻電子標準協(xié)會(VESA)局域總線以及外圍組件互連(PCI)總線。
[0114] 計算機系統(tǒng)/服務(wù)器12典型地包括多種計算機系統(tǒng)可讀介質(zhì)。這些介質(zhì)可以是 能夠被計算機系統(tǒng)/服務(wù)器12訪問的任意可獲得的介質(zhì),包括易失性和非易失性介質(zhì),可 移動的和不可移動的介質(zhì)。
[0115] 系統(tǒng)存儲器28可以包括易失性存儲器形式的計算機系統(tǒng)可讀介質(zhì),例如隨機存 取存儲器(RAM)30和/或高速緩存存儲器32。計算機系統(tǒng)/服務(wù)器12可以進一步包括其 它可移動/不可移動的、易失性/非易失性計算機系統(tǒng)存儲介質(zhì)。僅作為舉例,存儲系統(tǒng)34 可以用于讀寫不可移動的、非易失性磁介質(zhì)(圖1未顯示,通常稱為"硬盤驅(qū)動器")。盡管圖 1中未示出,可以提供用于對可移動非易失性磁盤(例如"軟盤")讀寫的磁盤驅(qū)動器,以及對 可移動非易失性光盤(例如⑶-ROM,DVD-ROM或者其它光介質(zhì))讀寫的光盤驅(qū)動器。在這些 情況下,每個驅(qū)動器可以通過一個或者多個數(shù)據(jù)介質(zhì)接口與總線18相連。存儲器28可以 包括至少一個程序產(chǎn)品,該程序產(chǎn)品具有一組(例如至少一個)程序模塊,這些程序模塊被 配置以執(zhí)行本發(fā)明各實施例的功能。
[0116] 具有一組(至少一個)程序模塊42的軟件40,可以存儲在存儲器28中,這樣的程 序模塊42包括但不限于操作系統(tǒng)、一個或者多個應(yīng)用程序、其它程序模塊以及程序數(shù)據(jù), 這些示例中的每一個或某種組合中可能包括網(wǎng)絡(luò)環(huán)境的實現(xiàn)。程序模塊42通常執(zhí)行本發(fā) 明所描述的實施例中的功能和/或方法。
[0117] 計算機系統(tǒng)/服務(wù)器12也可以與一個或多個外部設(shè)備14 (例如鍵盤、指向設(shè)備、 顯示器24等)通信,還可與一個或者多個使得用戶能與該計算機系統(tǒng)/服務(wù)器12交互的設(shè) 備通信,和/或與使得該計算機系統(tǒng)/服務(wù)器12能與一個或多個其它計算設(shè)備進行通信的 任何設(shè)備(例如網(wǎng)卡,調(diào)制解調(diào)器等等)通信。這種通信可以通過輸入/輸出(I/O)接口 22 進行。并且,計算機系統(tǒng)/服務(wù)器12還可以通過網(wǎng)絡(luò)適配器20與一個或者多個網(wǎng)絡(luò)(例如 局域網(wǎng)(LAN),廣域網(wǎng)(WAN)和/或公共網(wǎng)絡(luò),例如因特網(wǎng))通信。如圖所示,網(wǎng)絡(luò)適配器20 通過總線18與計算機系統(tǒng)/服務(wù)器12的其它模塊通信。應(yīng)當明白,盡管圖中未示出,其它 硬件和/或軟件模塊可以與計算機系統(tǒng)/服務(wù)器12 -起操作,包括但不限于:微代碼、設(shè)備 驅(qū)動器、冗余處理單元、外部磁盤驅(qū)動陣列、RAID系統(tǒng)、磁帶驅(qū)動器以及數(shù)據(jù)備份存儲系統(tǒng) 等。
[0118] 現(xiàn)在參考圖7,其中顯示了示例性的云計算環(huán)境50。如圖所示,云計算環(huán)境50包 括云計算消費者使用的本地計算設(shè)備可以與其相通信的一個或者多個云計算節(jié)點10,本地 計算設(shè)備例如可以是個人數(shù)字助理(PDA)或移動電話54A,臺式電腦54B、筆記本電腦54C和 /或汽車計算機系統(tǒng)54N。云計算節(jié)點10之間可以相互通信??梢栽诎ǖ幌抻谌缟纤?述的私有云、共同體云、公共云或混合云或者它們的組合的一個或者多個網(wǎng)絡(luò)中將云計算 節(jié)點10進行物理或虛擬分組(圖中未顯示)。這樣,云的消費者無需在本地計算設(shè)備上維護 資源就能請求云計算環(huán)境50提供的基礎(chǔ)架構(gòu)即服務(wù)(IaaS)、平臺即服務(wù)(PaaS)和/或軟 件即服務(wù)(SaaS)。應(yīng)當理解,圖7顯示的各類計算設(shè)備54A-N僅僅是示意性的,云計算節(jié)點 10以及云計算環(huán)境50可以與任意類型網(wǎng)絡(luò)上和/或網(wǎng)絡(luò)可尋址連接的任意類型的計算設(shè) 備(例如使用網(wǎng)絡(luò)瀏覽器)通信。
[0119] 現(xiàn)在參考圖8,其中顯示了云計算環(huán)境50 (圖6)提供的一組功能抽象層。首先應(yīng) 當理解,圖8所示的組件、層以及功能都僅僅是示意性的,本發(fā)明的實施例不限于此。如圖 8所示,提供下列層和對應(yīng)功能:
[0120] 硬件和軟件層60包括硬件和軟件組件。硬件組件的例子包括:主機,例如 IBM? zSeries?.系統(tǒng);基于RISC (精簡指令集計算機)體系結(jié)構(gòu)的服務(wù)器,例如 IBM pSeries?系統(tǒng);IBM xSeries?系統(tǒng);IBM BladeCenter?系統(tǒng);存儲設(shè)備;網(wǎng)絡(luò)和網(wǎng) 絡(luò)組件。軟件組件的例子包括:網(wǎng)絡(luò)應(yīng)用服務(wù)器軟件,例如IBM WebSphere?應(yīng)用服務(wù)器 軟件;數(shù)據(jù)庫軟件,例如 IBM DB2?.數(shù)據(jù)庫軟件。(IBM, zSeries, pSeries, xSeries, Blade Center, WebSphere以及DB2是國際商業(yè)機器公司在全世界各地的注冊商標)。
[0121] 虛擬層62提供一個抽象層,該層可以提供下列虛擬實體的例子:虛擬服務(wù)器、虛 擬存儲、虛擬網(wǎng)絡(luò)(包括虛擬私有網(wǎng)絡(luò))、虛擬應(yīng)用和操作系統(tǒng),以及虛擬客戶端。
[0122] 在一個示例中,管理層64可以提供下述功能:資源供應(yīng)功能:提供用于在云計算 環(huán)境中執(zhí)行任務(wù)的計算資源和其它資源的動態(tài)獲??;計量和定價功能:在云計算環(huán)境內(nèi)對 資源的使用進行成本跟蹤,并為此提供帳單和發(fā)票。在一個例子中,該資源可以包括應(yīng)用軟 件許可。安全功能:為云的消費者和任務(wù)提供身份認證,為數(shù)據(jù)和其它資源提供保護。用戶 門戶功能:為消費者和系統(tǒng)管理員提供對云計算環(huán)境的訪問。服務(wù)水平管理功能:提供云 計算資源的分配和管理,以滿足必需的服務(wù)水平。服務(wù)水平協(xié)議(SLA)計劃和履行功能:為 根據(jù)SLA預(yù)測的對云計算資源未來需求提供預(yù)先安排和供應(yīng)。
[0123] 工作負載層66提供云計算環(huán)境可能實現(xiàn)的功能的示例。在該層中,可提供的工作 負載或功能的示例包括:地圖繪制與導(dǎo)航;軟件開發(fā)及生命周期管理;虛擬教室的教學(xué)提 供;數(shù)據(jù)分析處理;交易處理;與也可以在這一層存儲的用戶簡檔相關(guān)聯(lián)的庫數(shù)據(jù)的保留 和應(yīng)用。
[0124] 基于前文,已經(jīng)公開用于動態(tài)地同步定義的計算機環(huán)境中的文件的計算機系統(tǒng)、 方法和程序產(chǎn)品。然而可以進行許多修改和替換而不脫離本發(fā)明的范圍。因此,已經(jīng)通過 例子而非限制來公開本發(fā)明。
[0125] 使用資源的處理資源以執(zhí)行軟件、計算機可讀代碼或者指令不限制可以存儲這一 代碼的位置。參照圖9,在一個例子中,計算機程序產(chǎn)品900例如包括一個或者多個計算機 可讀存儲介質(zhì)902以在其上存儲用于提供和有助于本發(fā)明的一個或者多個方面的計算機 可讀程序代碼裝置或者邏輯904。在一個實施例中,計算機可讀程序代碼裝置或者邏輯904 包括用于軟件40的程序代碼。
[0126] 如本領(lǐng)域技術(shù)人員將理解的那樣,可以實現(xiàn)本發(fā)明的方面為系統(tǒng)、方法或者計算 機程序產(chǎn)品。因而,本發(fā)明的方面可以采用全硬件實施例、全軟件實施例(包括固件、常駐軟 件、微代碼等)或者組合軟件與硬件方面的實施例這樣的形式,這些實施例在這里都可以通 稱為"電路"、"模塊"或者"系統(tǒng)"。另外,本發(fā)明的方面可以采用一個或者多個計算機可讀 介質(zhì)中實現(xiàn)的計算機程序產(chǎn)品這一形式,該一個或者多個計算機可讀介質(zhì)具有在其上實現(xiàn) 的計算機可讀程序代碼。
[0127] 可以利用一個或者多個計算機可讀介質(zhì)的任何組合。計算機可讀介質(zhì)可以是計 算機可讀存儲介質(zhì)。計算機可讀存儲介質(zhì)可以例如是但不限于電子、光學(xué)、電磁、紅外線或 者半導(dǎo)體系統(tǒng)、裝置或者設(shè)備或者前述例子的任何適當組合。計算機可讀存儲介質(zhì)的更多 具體例子(非窮舉列表)包括以下例子:具有一個或者多個接線的電連接、便攜計算機盤、 硬盤、隨機存取存儲器(RAM)、只讀存儲器(ROM)、可擦除可編程只讀存儲器(EPROM或者閃 存)、光纖、便攜光盤只讀存儲器(CD-ROM)、光學(xué)存儲設(shè)備、磁存儲設(shè)備或者前述例子的任何 適當組合。在本文的上下文中,計算機可讀存儲介質(zhì)可以是任何如下有形介質(zhì),該有形介質(zhì) 可以包含或者存儲用于由指令執(zhí)行系統(tǒng)、裝置或者設(shè)備使用或者與指令執(zhí)行系統(tǒng)、裝置或 者設(shè)備結(jié)合使用的程序。
[0128] 可以利用一個或者多個計算機可讀介質(zhì)的任何組合。計算機可讀介質(zhì)可以是計算 機可讀信號介質(zhì)或者計算機可讀存儲介質(zhì)。計算機可讀信號介質(zhì)可以包括例如基帶中或者 作為載波的部分的、傳播數(shù)據(jù)信號,該傳播數(shù)據(jù)信號具有在其中實現(xiàn)的計算機可讀程序代 碼。這樣的傳播信號可以采用包括但不限于電磁、光學(xué)或者其任何適當組合的多種形式中 的任何形式。計算機可讀信號介質(zhì)可以是任何如下計算機可讀介質(zhì),該計算機可讀介質(zhì)不 是計算機可讀存儲介質(zhì)并且可以傳達、傳播或者傳送用于由指令執(zhí)行系統(tǒng)、裝置或者設(shè)備 使用或者與指令執(zhí)行系統(tǒng)、裝置或者設(shè)備結(jié)合使用的程序。
[0129] 計算機可讀存儲介質(zhì)可以例如是但不限于電子、光學(xué)、電磁、紅外線或者半導(dǎo)體系 統(tǒng)、裝置或者設(shè)備或者前述例子的任何適當組合。計算機可讀存儲介質(zhì)的更多具體例子(非 窮舉列表)包括以下例子:具有一個或者多個接線的電連接、便攜計算機盤、硬盤、隨機存取 存儲器(RAM)、只讀存儲器(ROM)、可擦除可編程只讀存儲器(EPROM或者閃存)、光纖、便攜 光盤只讀存儲器(CD-ROM)、光學(xué)存儲設(shè)備、磁存儲設(shè)備或者前述例子的任何適當組合。在本 文的上下文中,計算機可讀存儲介質(zhì)可以是任何如下有形介質(zhì),該有形介質(zhì)可以包含或者 存儲用于由指令執(zhí)行系統(tǒng)、裝置或者設(shè)備使用或者與指令執(zhí)行系統(tǒng)、裝置或者設(shè)備結(jié)合使 用的程序。
[0130] 可以使用包括但不限于無線、有線、光纖線纜、RF等或者前述例子的任何適當組合 的適當介質(zhì)來傳輸計算機可讀介質(zhì)上實現(xiàn)的程序代碼。
[0131] 可以用一種或者多種編程語言的任何組合來編寫用于實現(xiàn)用于本發(fā)明方面的操 作的計算機程序代碼,該一種或者多種編程語言包括諸如Java、Smalltalk、C++等面向?qū)?象編程語言和比如"C"編程語言、匯編器或者相似編程語言這樣的常規(guī)過程編程語言。程 序代碼可以完全在用戶的計算機上、部分在用戶的計算機上、作為獨立軟件包、部分在用戶 的計算機上而部分在遠程計算機上或者完全在遠程計算機或者服務(wù)器上執(zhí)行。在后一種場 景中,遠程計算機可以通過包括局域網(wǎng)(LAN)或者廣域網(wǎng)(WAN)的任何類型的網(wǎng)絡(luò)連接到 用戶的計算機,或者可以(例如通過使用因特網(wǎng)服務(wù)提供商的因特網(wǎng))產(chǎn)生與外部計算機的 連接。
[0132] 這里參照根據(jù)本發(fā)明實施例的方法、裝置(系統(tǒng))和計算機程序產(chǎn)品的流程圖圖示 和/或框圖描述本發(fā)明的方面。將理解流程圖圖示和/或框圖的每個塊和在流程圖圖示和 /或框圖中的塊組合可以由計算機程序指令實施。可以向通用計算機、專用計算機或者其它 可編程數(shù)據(jù)處理裝置的處理器提供這些計算機程序指令以產(chǎn)生機器,從而經(jīng)由計算機或者 其它可編程數(shù)據(jù)處理裝置的處理器執(zhí)行的指令創(chuàng)建用于實施在流程圖和/或框圖的一個 或者多個塊中指定的功能/動作的裝置。
[0133] 也可以在如下計算機可讀介質(zhì)中存儲這些計算機程序指令,該計算機可讀介質(zhì)可 以指引計算機、其它可編程數(shù)據(jù)處理裝置或者其它設(shè)備以特定方式工作,從而在計算機可 讀介質(zhì)中存儲的指令產(chǎn)生包括如下指令的制造品,這些指令實施在流程圖和/或框圖的一 個或者多個塊中指定的功能/動作。
[0134] 也可以向計算機、其它可編程數(shù)據(jù)處理裝置或者其它設(shè)備上加載計算機程序指令 以使系列操作步驟在計算機、其它可編程裝置或者其它設(shè)備上被執(zhí)行以產(chǎn)生計算機實施的 過程,從而在計算機或者其它可編程裝置上執(zhí)行的指令提供用于實施在流程圖和/或框圖 的一個或者多個塊中指定的功能/動作的過程。
[0135] 除了上述之外,本發(fā)明的一個或者多個方面可以由賦予客戶環(huán)境管理的服務(wù)提供 商提供、賦予、部署、管理、服務(wù)等。例如服務(wù)提供商可以創(chuàng)建、維護、支持等計算機代碼和/ 或計算機基礎(chǔ)結(jié)構(gòu),該計算機代碼和/或計算機基礎(chǔ)結(jié)構(gòu)為一個或者多個客戶執(zhí)行本發(fā)明 的一個或者多個方面。作為例子,服務(wù)提供商可以按照預(yù)約和/或費用協(xié)定從客戶接收付 款。附加地或者備選地,服務(wù)提供商可以從向一個或者多個第三方出售廣告內(nèi)容中接收付 示!κ。
[0136] 在本發(fā)明的一個方面中,可以部署一種應(yīng)用用于實現(xiàn)本發(fā)明的一個或者多個方 面。作為一個例子,應(yīng)用的部署包括提供可操作用于實現(xiàn)本發(fā)明的一個或者多個方面的計 算機基礎(chǔ)結(jié)構(gòu)。
[0137] 作為本發(fā)明的又一方面,可以部署一種計算基礎(chǔ)結(jié)構(gòu),這包括向計算機系統(tǒng)中集 成計算機可讀代碼,其中與計算系統(tǒng)組合的代碼能夠?qū)崿F(xiàn)本發(fā)明的一個或者多個方面。
[0138] 作為本發(fā)明的又一方面,可以提供一種用于集成計算基礎(chǔ)結(jié)構(gòu)的過程,該過程包 括向計算機系統(tǒng)中集成計算機可讀代碼。計算機系統(tǒng)包括計算機可讀介質(zhì),其中計算機可 讀介質(zhì)包括本發(fā)明的一個或者多個方面。與與計算機系統(tǒng)組合的代碼能夠?qū)崿F(xiàn)本發(fā)明的一 個或者多個方面。
[0139] 另外,其它類型的計算環(huán)境可以受益于本發(fā)明的一個或者多個方面。作為例子,環(huán) 境可以包括模擬器(例如軟件或者其它模擬機制),其中(例如在具有處理器和存儲器的本 機計算機系統(tǒng)上)模擬特定架構(gòu)(例如包括指令執(zhí)行、有架構(gòu)的功能如地址轉(zhuǎn)譯和有架構(gòu)的 寄存器或者其子集)。在這樣的環(huán)境中,即使執(zhí)行模擬器的計算機可以具有與模擬的能力不 同的架構(gòu),模擬器的一個或者多個模擬功能仍然可以實施本發(fā)明的一個或者多個方面。作 為一個例子,在模擬模式中,對模擬的具體功能或者操作解碼,并且構(gòu)建適當模擬功能以實 施個別指令或者操作。
[0140] 在模擬環(huán)境中,一種主機計算機例如包括用于存儲指令和數(shù)據(jù)的存儲器、用于從 存儲器取讀指令并且可選地為取讀的指令提供本地緩沖的指令取讀單元、用于接收取讀的 指令并且確定已經(jīng)取讀的指令類型的指令解碼單元以及用于執(zhí)行指令的指令執(zhí)行單元。執(zhí) 行可以包括:從存儲器向寄存器中加載數(shù)據(jù);從寄存器向存儲器往回存儲數(shù)據(jù);或者執(zhí)行 如解碼單元確定的某一類型的算術(shù)或者邏輯操作。在一個例子中,用軟件實施每個單元。例 如將單元執(zhí)行的操作實施為模擬器軟件內(nèi)的一個或者多個例程。
[0141] 另外,一種適合于存儲和/或執(zhí)行程序代碼的數(shù)據(jù)處理系統(tǒng)是有用的,該數(shù)據(jù)處 理系統(tǒng)包括通過數(shù)據(jù)總線直接或者間接耦合到存儲器單元的至少一個處理器。存儲器單元 例如包括在實際執(zhí)行程序代碼期間運用的本地存儲器、體存儲裝置和高速緩存存儲器,該 高速緩存存儲裝置提供暫時存儲至少一些程序代碼以便減少必須在執(zhí)行期間從體存儲裝 置取回代碼的次數(shù)。
[0142] 輸入/輸出或者I/O設(shè)備(包括但不限于鍵盤、顯示器、指示設(shè)備、DASD、磁帶、⑶、 DVD、拇指驅(qū)動和其它存儲器介質(zhì)等)可以直接地或者通過居間I/O控制器耦合到系統(tǒng)。網(wǎng) 絡(luò)適配器也可以耦合到系統(tǒng)以使數(shù)據(jù)處理系統(tǒng)能夠變成通過居間專有或者公共網(wǎng)絡(luò)耦合 到其它數(shù)據(jù)處理系統(tǒng)或者遠程打印機或者存儲設(shè)備。調(diào)制解調(diào)器、線纜調(diào)制解調(diào)器和以太 網(wǎng)卡僅為可用網(wǎng)絡(luò)適配器類型中的少數(shù)網(wǎng)絡(luò)適配器類型。
[0143] 這里所用術(shù)語僅為了描述本發(fā)明的具體實施例而并非旨在于限制本發(fā)明。如這里 所用,除非上下文另有明示,單數(shù)形式"一個"、"一種"和"該"旨在于也包括復(fù)數(shù)形式。還 將理解措詞"包括"在本說明書中使用時指定存在敘述的特征、整件、步驟、操作、單元和/ 或部件、但是未排除存在或者添加一個或者多個其它特征、整件、步驟、操作、單元、部件和/ 或其組合。
[0144] 在所附權(quán)利要求中的所有裝置或者步驟加功能要素的對應(yīng)結(jié)構(gòu)、材料、動作和等 效物如果存在則旨在于包括用于與如具體要求保護的其它權(quán)利要求要素組合執(zhí)行功能的 任何結(jié)構(gòu)、材料或者動作。本發(fā)明的描述已經(jīng)出于圖示和描述的目的而加以呈現(xiàn)、但是未旨 在于窮舉本發(fā)明或者使本發(fā)明限于公開的形式。本領(lǐng)域普通技術(shù)人員將清楚許多修改和變 化而未脫離本發(fā)明的精神實質(zhì)和范圍。選擇和描述實施例以便最好地說明本發(fā)明的原理和 實際應(yīng)用并且使本領(lǐng)域其他普通技術(shù)人員能夠針對各種如下實施例理解本發(fā)明,這些實施 例具有如與設(shè)想的特定用途相適的各種修改。
[0145] 本發(fā)明各種實施例的描述已經(jīng)出于示例的目的而加以呈現(xiàn)、但是未旨在于窮舉或 者限于公開的實施例。本領(lǐng)域普通技術(shù)人員將清楚許多修改和變化而未脫離描述的實施例 的范圍和精神實質(zhì)。選擇這里所用術(shù)語以最好地說明實施例的原理、實際應(yīng)用或者較市面 上發(fā)現(xiàn)的技術(shù)而言的技術(shù)改進或者使本領(lǐng)域其他普通技術(shù)人員能夠理解這里公開的實施 例。
【權(quán)利要求】
1. 一種用于動態(tài)地同步技術(shù)環(huán)境中的元素的方法,所述方法包括: 處理器獲得對第一文件的改變和標識第二文件的數(shù)據(jù); 所述處理器確定在數(shù)據(jù)源預(yù)定義列表中指定的數(shù)據(jù)庫是否支持所述改變; 所述處理器分析所述數(shù)據(jù)庫以確定所述改變的類型;并且 所述處理器將所述改變的所述類型應(yīng)用于所述第二文件。
2. 根據(jù)權(quán)利要求1所述的方法,在所述應(yīng)用之前還包括: 創(chuàng)建所述改變類型被應(yīng)用于的所述第二文件的仿真;并且 請求來自客戶端的與所述仿真有關(guān)的響應(yīng)。
3. 根據(jù)權(quán)利要求2所述的方法,還包括: 保存來自所述客戶端的所述響應(yīng); 保存所述改變類型;并且 基于所述響應(yīng)來關(guān)聯(lián)分數(shù)與所述改變類型。
4. 根據(jù)權(quán)利要求3所述的方法,還包括: 獲得選擇所述保存的改變類型的指令; 獲得標識第三文件的數(shù)據(jù); 將所述保存的改變類型應(yīng)用于所述第三文件;并且 向客戶端指示所述分數(shù)。
5. 根據(jù)權(quán)利要求1所述的方法,還包括: 獲得標識多個文件的附加數(shù)據(jù);并且 將所述保存的改變類型應(yīng)用于所述多個文件中的每個文件。
6. 根據(jù)權(quán)利要求1所述的方法,其中所述獲得包括從所述數(shù)據(jù)庫中的預(yù)定義列表獲得 標識所述第二文件的所述數(shù)據(jù)。
7. 根據(jù)權(quán)利要求2所述的方法,其中所述確定還包括評價所述分數(shù)是否在預(yù)定義分數(shù) 以上。
8. -種用于動態(tài)地同步技術(shù)環(huán)境中的元素的計算機系統(tǒng),所述計算機系統(tǒng)包括計算機 可讀存儲介質(zhì)、處理器和在所述計算機可讀存儲介質(zhì)上存儲的并且可由所述處理器執(zhí)行以 執(zhí)行一種方法的程序代碼,所述方法包括: 所述處理器獲得對第一文件的改變和標識第二文件的數(shù)據(jù); 所述處理器確定在數(shù)據(jù)源預(yù)定義列表中指定的數(shù)據(jù)庫是否支持所述改變; 所述處理器分析所述數(shù)據(jù)庫以確定所述改變的類型;并且 所述處理器將所述改變的所述類型應(yīng)用于所述第二文件。
9. 根據(jù)權(quán)利要求8所述的計算機系統(tǒng),其中所述應(yīng)用包括: 創(chuàng)建所述改變類型被應(yīng)用于的所述第二文件的仿真;并且 請求來自客戶端的與所述仿真有關(guān)的響應(yīng)。
10. 根據(jù)權(quán)利要求9所述的計算機系統(tǒng),所述方法還包括: 保存來自所述客戶端的所述響應(yīng); 保存所述改變類型;并且 基于所述響應(yīng)來關(guān)聯(lián)分數(shù)與所述改變類型。
11. 根據(jù)權(quán)利要求10所述的計算機系統(tǒng),所述方法還包括: 獲得選擇所述保存的改變類型的指令; 獲得標識第三文件的數(shù)據(jù); 將所述保存的改變類型應(yīng)用于所述第三文件;并且 向客戶端指示所述分數(shù)。
12. 根據(jù)權(quán)利要求8所述的計算機系統(tǒng),所述方法還包括: 獲得標識多個文件的附加數(shù)據(jù);并且 將所述保存的改變類型應(yīng)用于所述多個文件中的每個文件。
13. 根據(jù)權(quán)利要求8所述的計算機系統(tǒng),其中所述獲得包括從所述數(shù)據(jù)庫中的預(yù)定義 列表獲得標識所述第二文件的所述數(shù)據(jù)。
14. 根據(jù)權(quán)利要求10所述的計算機系統(tǒng),其中所述確定還包括評價所述分數(shù)是否在預(yù) 定義分數(shù)以上。
【文檔編號】G06F17/30GK104111966SQ201410122905
【公開日】2014年10月22日 申請日期:2014年3月28日 優(yōu)先權(quán)日:2013年3月28日
【發(fā)明者】陳彥甫, 法比安·F·摩根, S·V·懷特·依格斯, 楊川, 鄭丹丹, 閆哲 申請人:國際商業(yè)機器公司