新四季網

基於從相應的主應用程式數據導出的標識符來訪問補充數據的製作方法

2023-05-30 03:11:31

基於從相應的主應用程式數據導出的標識符來訪問補充數據的製作方法
【專利摘要】應用程式的主數據被存儲在位於遠端的第一伺服器處,比如雲存儲處。所述應用程式的用戶可能希望對主數據進行修改或添加以創建在所述第一伺服器中存儲不被支持的補充數據。本發明的配置包括一種在第二存儲服務提供商(例如,企業內聯網)處的第二伺服器上存儲補充數據(例如,編輯,添加等)的方法。由該相同用戶在不同計算機設備上執行的所述應用程式的不同實例可以從所述第一存儲服務提供商獲取所述主數據以及從所述第二存儲服務提供商處獲取所述補充數據。
【專利說明】基於從相應的主應用程式數據導出的標識符來訪問補充數據
【背景技術】
[0001]在計算機和網絡【技術領域】,術語「雲」和「雲計算」經常被用作例如網際網路之類的某些網絡技術的比喻,所述網際網路是計算機,路由器,伺服器等底層網絡基礎設施的抽象,其支持很多不同類型的計算機資源之間的連接。
[0002]所謂的「雲計算」是虛擬化、面向服務的架構、自治和實用計算的廣泛採用的自然進化。在某些情況下,雲計算使用戶不必是某些應用程式特徵方面的專家或不必控制某些應用程式特徵;這些特徵由雲中的服務管理,並且雲存儲通常是由被稱為雲存儲服務提供商的第三方實體所提供。因此,雲計算可以為諸如企業之類的實體(單獨實體,雲存儲服務提供商)中的用戶提供一種對計算機系統增加容量或添加能力的方法,而不需要投資新的基礎設施,培訓新的人員,許可新的軟體等。常規的雲計算技術為用戶提供示例服務,例如,遠程文檔管理和存儲,電子郵件和聯繫人管理等,而不管用戶使用哪個設備連接到雲。以這種方式,用戶可以在他或她的辦公室處的一個比如臺式計算機的計算設備上訪問雲中的一個文檔,然後稍後從另一個計算設備,例如他或她的家庭計算機訪問相同的文檔。訪問雲存儲的應用程式使用一套標準化的、發布良好的應用程式編程接口(API)和預設雲存儲的數據格式來做這件事。
[0003]因此雲在給各用戶提供有用的服務方面是有幫助的,並且由用戶操作的對應設備可能很大程度上或完全依靠由雲提供的服務。這提供了在多個不同計算機中的任意一個上執行計算機應用程式的實例的能力,而沒有必須在一個受限制的位置,比如單個計算機設備中存儲與應用程式相關聯的數據的麻煩。

【發明內容】

[0004]允許在不同計算設備上執行軟體應用程式的不同實例的諸如雲計算之類的常規技術的使用可能遭受不足。例如,假設第三方雲存儲服務使用一個特定的API提供特定數據格式的特定數據的雲存儲(例如給定的預定記錄格式或數據格式,比如XML的聯繫人數據)。多個第三方軟體公司可以各自開發和銷售訪問以該特定數據格式存儲在雲中的數據的軟體程序(例如聯繫人管理者軟體)。這樣的軟體的一個供應商可能希望創建該軟體的使用戶能夠添加補充數據到他們的聯繫人信息的新版本或更新版本。作為一個示例,該軟體的新版本可能允許用戶標識優選或喜愛的人的聯繫人信息。在這種情況下,雲存儲服務提供商可能不支持這種補充數據的存儲,因為雲存儲的預定義聯繫人記錄或數據格式不適於允許添加補充數據。這可能是這種情況,因為所有管理聯繫人數據的不同軟體程序的很多供應商可能使用相同的雲存儲服務,從而聯繫人數據格式未快速地適應來自某些供應商的新的數據存儲需求。當這個問題本身在常規情況下出現時,該軟體的新版本必須在本地存儲設備(例如,安裝了該軟體的新版本並且目前正在運行其實例的該用戶的臺式計算機的盤系統)中存儲該補充數據。這種常規方法的一個問題是,如果用戶在另一個計算設備上操作相同的軟體(例如,在他或她的行動裝置上執行軟體的另一個實例),則在該另一計算機系統上創建的補充數據對於在行動裝置上的該同一個用戶的軟體的相同版本將不可用,因為雲存儲不支持該補充數據的存儲,並且行動裝置無法訪問用戶用於創建所述補充數據的所述另一計算設備的本地盤。
[0005]本文所公開的實施例基本上克服了上面討論的常規技術的不足之處。本文的實施例包括在可由用戶操作的多個設備訪問的(例如,與雲分離的,或者加上雲存儲的)輔助遠程位置處存儲補充數據(例如,與由第三方存儲提供商如雲存儲進行存儲的主數據的修改或補充相關的數據)的一種或多種方式。如本文中所討論的,因為補充數據對於多個設備中的每個都是可用的,所以在不同計算設備上使用一個給定的軟體應用程式的用戶可以在這些不同設備中的任意一個上執行應用程式的一個實例,並且本文所公開的技術和機制允許軟體的那些分離的實例被提供除由雲存儲的數據之外的存儲在輔助存儲位置(例如,第二雲存儲區域,或者可由多個用戶計算設備訪問並且支持補充數據的存儲的公司伺服器)中的補充數據。
[0006]在一個示例中,用戶在網絡中的第一計算機設備上執行應用程式的第一實例。假設第一實例是一個允許用戶管理個人的聯繫人數據的聯繫人管理軟體程序。通過應用程式的該第一實例,用戶從第一伺服器獲取主應用程式的數據。這個主應用程式數據可以是,例如,按照由給定的雲存儲供應商操作的(由第一伺服器存儲的)雲存儲所要求的預定義或固定的數據格式進行存儲的數據。在該應用程式的第一實例的使用期間,用戶可以操作該第一實例來產生要與主應用程式數據相關聯的補充應用程式數據。例如,用戶可以購買一個聯繫人管理者軟體的新版本,該新版本使用戶能夠在主應用程式數據中標識喜歡的聯繫人。以給定數據格式存儲主應用程式數據的第一伺服器或第一存儲服務提供商(例如,通過雲存儲供應商操作的雲計算環境)可能不能夠支持補充應用程式數據的存儲,因為雲存儲數據格式不適應補充數據的存儲。為了克服這個問題,應用程式的第一實例(例如,從用戶)接收補充應用程式數據,並將其與主應用程式數據相關聯。例如,在一個實施例中,為了將補充數據與主應用程式數據相關聯,該應用程式的第一實例至少部分地基於主應用程式數據計算唯一標識符值(例如,散列值)。在一個具體實施例中,生成唯一標識符值可包括應用散列函數到主應用程式數據的至少一部分以產生唯一標識符值。其他示例是,將與操作所述應用程式的第一實例的用戶相關聯的用戶身份的散列包括在唯一識別符中。該應用程式的第一實例轉發唯一標識符值以及補充應用程式數據到第二伺服器用於補充應用程式數據的後續獲取。第二伺服器可以是,例如,在企業內聯網上提供存儲的伺服器,所述企業內聯網不同於雲存儲但也可由用戶的各種計算設備(每個操作聯繫人管理者軟體程序的獨立實例)訪問。第二伺服器允許由在用戶設備上的應用程式的一個或多個其他實例中的任何一個通過唯一標識符來進行補充應用程式數據的後續獲取,從而即使在雲存儲(即,第一伺服器)不支持補充數據的存儲的情況下,也允許每個設備上的用戶體驗包括訪問補充數據。
[0007]示例實施例的另外的細節將參考附圖,詳細描述和權利要求書在下面提供。應注意,示例實施例的這種初步討論並不是詳細說明本公開或要求保護的發明的每個實施例和/或遞增的新穎方面。相反,這個簡要描述只呈現了概括實施例和高出常規技術的相應的新穎點。對於本發明的額外的細節和/或可能的觀點(變更)以及額外的新穎點,讀者關注下文進一步討論的本公開的詳細描述部分和相應的附圖。除了提供與不同實施例相關聯的額外細節,以下詳細描述包括實施例的進一步的概要。因此,本簡要描述不限制本發明和/或所附權利要求的範圍。
【專利附圖】

【附圖說明】
[0008]從以下的本文優選實施例的更具體的描述中,本發明的上述和其它目的,特徵和優點將是顯而易見的,如附圖中所示,其中貫穿不同視圖,相同的參考符號涉及相同的部分。圖不必是按比例繪製的,相反,重點在於圖示實施例,原理,概念等。
[0009]圖1是根據本文實施例的網絡環境的示例圖,其中,應用程式的第一實例啟動補充應用程式數據的生成以及在第二伺服器處的後續存儲。
[0010]圖2是根據本文實施例的網絡環境的示例圖,其中,應用程式的第一實例生成唯一標識符值用於隨後在第二伺服器處索引補充應用程式數據。
[0011]圖3是根據本文實施例的網絡環境的示例圖,其中,應用程式的第二實例啟動從第二伺服器獲取所存儲的補充應用程式數據。
[0012]圖4是根據本文實施例的網絡環境的更具體的示例圖,其中,應用程式的第二實例使用唯一標識符值啟動從第二伺服器獲取所存儲的補充應用程式數據。
[0013]圖5是一個根據本文實施例的示例圖,其圖示出了使用唯一標識符值來映射主應用程式數據和補充應用程式數據。
[0014]圖6是一個根據本文實施例的示例圖,其圖示出了由一個應用程式實例使用主應用程式數據和補充應用程式數據來在圖形用戶界面中顯示信息。
[0015]圖7是一個根據本文實施例的示例圖,其圖示出了實現應用程式實例的示例計算機體系結構。
[0016]圖8是一個根據本文實施例的流程圖,其圖示出了為相應的補充應用程式數據的後續獲取生成唯一標識符值的示例方法。
[0017]圖9是一個根據本文實施例的示例圖,其圖示出了根據所獲取到的主應用程式數據為相應的補充應用程式數據的後續獲取生成唯一標識符值。
【具體實施方式】
[0018]本文所公開的示例實施例提供使得在不同計算設備上使用軟體應用程式的多個實例(例如膝上型計算機,臺式計算機和行動裝置上的同一個程序)的用戶能夠訪問由這些應用程式實例創建的所有數據的機制。該系統適應這樣的情形,其中由應用程式創建和存儲的數據的一部分(即,主數據)被存儲在例如可能由第三方供應商操作的具有受限的或預定義的數據格式的雲存儲中。如果該應用程式使用戶能夠創建補充數據(例如,應用程式的新版本可以提供用於增強的用戶特徵,該用戶特徵要求存儲由於數據格式限制而不能存儲在雲存儲中的補充用戶數據),則所述機制在本文中公開了所述應用全都將該補充數據存儲在由第二存儲服務提供商提供的輔助存儲裝置(例如,由公司內聯網操作的、用戶的計算設備可以訪問的非雲存儲)中。
[0019]根據一個實施例,應用程式的主數據可被存儲在位於遠端的雲計算環境中的第一存儲服務提供商處。如本文所使用的,術語主數據包括應用程式可以存儲在第一伺服器上的第一服務提供商中的數據,其中第一伺服器可以是,例如,雲伺服器。該應用程式的用戶可能希望以第一存儲服務提供商不支持的方式修改主數據。這樣的修改,增加等在此稱為補充數據,該補充數據不能被存儲在由所述第一存儲服務提供商操作的第一伺服器中(即,不能被存儲在雲中,例如因為雲存儲不提供用於處於其數據或記錄格式的該補充數據)。換句話說,第一存儲服務提供商可能不支持用戶想要對主數據進行的、並且用戶希望能夠在他或她的任何計算設備上訪問的改變和/或添加(補充數據)的存儲。常規的解決方案是在用戶設備中本地地存儲補充數據。然而,在這種常規的解決方案中,用戶在能夠訪問該補充數據的同時將不能夠(或對用戶而言很難)在多個設備上使用該應用程式。當用戶從一個設備轉移到另一個設備並期望所有的數據、改變和添加在所有設備上都可用時,這是有問題的。
[0020]為使用戶免於受限於僅在單個的計算機設備上執行應用程式,而能夠訪問所有的數據,本文的配置提供了通過網絡連接在第二存儲服務提供商處存儲修改的數據(例如,補充的應用程式數據,諸如,舉例來說,與主應用程式數據相關聯的編輯或添加)的機制和技術。通過使用本文所公開的系統,在不同計算機設備上執行的應用程式的不同實例可以從第一存儲服務提供商(例如,從由第三方供應商操作的雲)處獲取主數據,以及從第二存儲服務提供商(例如,由軟體用戶的僱主操作的企業內聯網伺服器,該企業內聯網伺服器是不同於該第三方雲存儲服務提供商的實體)處獲取補充應用程式數據。因此,對應的用戶並不限於只在單個機器上執行應用程式的實例,並且能夠在多個用戶計算設備上獲得對主要和補充數據二者的訪問。
[0021]圖1是根據本文實施例的網絡環境的示例圖,其中,應用程式的第一實例生成補充應用程式數據並將其存儲在第二伺服器處。
[0022]在這個示例中,網絡環境100包括多個存儲服務提供商120 (例如,存儲服務提供商120-1,存儲服務提供商120-2等),以及網絡190。存儲服務提供商120-1包括伺服器110-1和在其中存儲數據的相應存儲庫180-1。在本示例中,存儲服務提供商120-1可以是由給定的雲伺服器存儲提供商操作的雲存儲服務。存儲服務提供商120-2包括伺服器110-2,和在其中存儲數據的相應存儲庫180-2。存儲服務提供商120-2在本示例中可以是企業內聯網。應當理解的是,存儲服務提供商120可以是相同或不同的實體,企業或組織。
[0023]網絡190可以包括諸如網際網路,行動電話網絡等資源,並且可以進一步包括可以由相同用戶或不同的用戶操作的一個或多個計算機設備115。
[0024]每個計算機設備115可以為一個或多個用戶執行應用程式140的實例。在本示例中,計算機設備115-1執行應用程式實例140-1並且計算機設備115-2執行應用程式實例140-2。根據另外的實施例,同一臺計算機設備可以被用來執行不同的應用程式實例140。應用程式實例140-1和140-2可以在相同或不同的時間被執行。在該示例中,存儲服務提供商120-1可以是由第三方雲存儲服務(第一存儲服務提供商)操作的可通過公共網絡(t匕如網際網路)訪問的雲存儲系統。與此相反,在該相同示例中,存儲服務提供商120-2可以是在一個企業內聯網可用的僅應用程式實例140的授權用戶可訪問的存儲裝置。應用程式實例140-1和140-2的用戶可以是操作和/或控制對第二伺服器110-2的訪問的公司(例如第二存儲服務提供商120-2)的僱員。
[0025]通常,如將在下面的本申請的附圖和文本中所討論的,在執行中,應用程式實例140-1在客戶端設備上操作,並與伺服器110-1通信以產生並啟動將主應用程式數據210-1(也稱為主數據)存儲在存儲庫180-1中(例如,將數據存儲在要求或者可能受限於特定的預定義數據格式的雲中)。在該示例中,假設計算機設備115-1的用戶還產生補充數據250-1(也稱為補充應用程式數據)。補充數據250-1可以從操作應用程式實例140的用戶產生。補充數據250-1的示例包括用戶針對在他或她的聯繫人列表中的給定聯繫人提供喜歡的指示。這個示例不旨在限制。補充數據250-1是由應用程式140 (或實例140-1或140-2)產生的不能與主應用程式數據210-1 —起由第一存儲服務提供商120-1操作的第一伺服器110-1所存儲的任何數據。補充數據250-1不能與主數據210-1 —起存儲可能有很多原因。示例包括一個或多個這樣的情形,其中補充應用程式數據250-1的數據格式,記錄格式,協議,數據類型,大小,安全性要求,或其他方面或特性在技術上不被存儲伺服器提供商120-1支持,不與存儲伺服器提供商120-1兼容或者不允許被存儲伺服器提供商120-1存儲。
[0026]通過舉例的方式,存儲服務提供商120-1可以不被配置為在存儲庫180-1中存儲特定類型的數據(比如補充數據250-1),因為存儲主數據210-1所需要的數據或記錄格式不能夠在雲存儲中擴展(即,由第一存儲服務提供商120-1所存儲的數據)以包括所述補充數據。如果許多實體具有使用由第一存儲服務提供商120-1提供的雲存儲來存儲數據的不同的軟體應用程式並且雲存儲的數據格式不經常更新,那麼這種情況可能存在。與之相比,應用程式140的軟體供應商可能發布應用程式140的新版本,該新版本使用戶能夠添加在應用程式140的早期版本或發布中不存在的額外信息(例如,標識一個給定的聯繫人為喜歡的聯繫人)。在本示例中,該新的喜歡的聯繫人信息是第一存儲服務提供商120-1不支持進行存儲的補充數據250 -1。如本文所述的那樣,通過與伺服器110-2通信,應用程式實例140-1啟動在存儲庫180-2中對補充數據的存儲。
[0027]因此,應用程式數據的一部分可以被存儲在網絡環境100中的多個不同位置處。例如,應用程式數據的第一部分可以被存儲在存儲庫180-1中;該應用程式的第二部分可以被存儲在存儲庫180-2中;等等。本文所公開的系統允許在不同設備115上操作的應用程式140的多個實例識別其中存在可用(即,存儲在輔助位置120-2,180-2中)的補充應用程式數據的情形,並且允許對該補充數據進行訪問(讀,寫,更新)而不需要對與應用程式主存儲服務提供商120-1 (例如雲存儲環境)相關聯的數據格式,協議,存儲機制等等進行修改。該系統克服了例如當在第一版本中最初發布允許訪問預定義數據格式的可操作來在雲存儲中存儲數據(被稱為主數據)的軟體應用程式140時產生的問題。該應用程式140然後可以在一個較新的發布中被修改,以允許用戶創建,存儲和/或更新額外的數據(稱為補充數據250-1)。雲存儲可以由不允許對數據類型,存儲格式等進行修改的第三方存儲服務來提供。作為一個具體的示例,第一存儲服務提供商120-1可以不更新雲存儲數據的格式以支持該補充數據250-1的存儲。這裡所公開的系統通過使用第二伺服器110-2存儲該補充數據250-1使得能夠存儲和訪問它。因此,該系統使得應用程式140能夠被修改,並且仍然使用雲存儲(例如120-1 )來存儲主應用程式數據,同時允許輔助或補充存儲提供商120-2存儲額外的補充數據250-1。該系統還使得給定用戶可以在不同的計算機系統(例如膝上型設備,臺式設備,行動裝置)上操作的應用程式140的不同實例,完全識別該用戶的主和補充應用程式數據二者的存在,並訪問這兩組數據。
[0028]圖2是根據本文的實施例的網絡環境的示例圖,其中應用程式的第一實例生成唯一標識符值用於索弓I補充應用程式數據。
[0029]例如,如所示,用戶在第一計算機設備115-1上執行應用程式的實例140-1。通過應用程式實例140-1,用戶通過與存儲服務提供商120-1的伺服器110-1通信來獲取主應用程式數據210-1。用戶提供輸入給應用程式實例140-1以為任何合適的目的而使用主應用程式數據210-1,例如在圖形用戶界面中顯示信息。
[0030]應注意,如果主應用程式數據210-1尚未存儲在存儲庫180-1中,則用戶可以提供輸入給應用程式實例140-1以創建這樣的數據並將其存儲在存儲庫180-1中。
[0031]在這個示例中,在應用程式實例140-1使用期間,用戶產生關於存儲在存儲庫180-1中的主應用程式數據210-1的補充應用程式數據250-1。該補充應用程式數據250-1可以指示關於主應用程式數據210-1的增強,修改,編輯,額外信息等。因此,補充應用程式數據250-1可以以某種方式與主應用程式數據210-1相關聯。通過一個非限制性示例的方式,如將在本說明書後面討論的,主應用程式數據210可以是聯繫人信息,使得用戶能夠與網絡環境中的一個或多個其他人進行通信。
[0032]如所提到的,假定在本示例中,存儲主應用程式數據210-1的存儲服務提供商120-1和伺服器110-1不能夠支持存儲由用戶產生的補充應用程式數據250-1。根據本文的實施例,應用程式實例140-1接收從計算機設備115-1的用戶輸入的補充應用程式數據250-1。如本文所述,在計算機設備115-1上執行的應用程式140將補充應用程式數據250-1與主應用程式數據210-1進行關聯。例如,在一個實施例中,為了將補充應用程式數據250-1與主應用程式數據210-1相關聯,應用程式實例140-1利用處理函數225基於,例如,主應用程式數據210-1的至少一部分來計算唯一標識符值230-1。在一個具體實施例中,處理函數225通過結合操作應用程式第一實例的用戶的用戶身份應用散列函數到主應用程式數據210-1的至少一部分來生成唯一標識符值230-1。這為補充應用程式數據產生唯一標識符值以便允許在另一設備上的應用程式的第二實例的用戶訪問補充應用程式數據。以這種方式,當用戶在不同設備上操作同樣的軟體時,補充應用程式數據對於每個實例將是可用的。
[0033]應用程式實例140-1轉發唯一標識符值230-1到伺服器110_2。該應用程式實例140-1也轉發補充應用程式數據250-1到第二存儲服務提供商120-2以在存儲庫180-2中存儲。所述唯一標識符230-1和補充應用程式數據250-1可分離地發送或在單條記錄中一起發送到第二存儲服務提供商120-2。在一個實施例中,存儲服務提供商120-2通過在映射260中包括WV230-1和到補充應用程式數據250-1的指針的一個條目來將唯一標識符值(UIV) 230-1與補充應用程式數據250-1相關聯。
[0034]在一個實施例中,映射260中的WV230-1用作補充應用程式數據250_1的索引。例如,如所討論的,應用程式實例140-1啟動在存儲服務提供商120-2的存儲庫180-2中存儲補充應用程式數據250-1,因為存儲服務提供商120-1不能或未被配置為存儲該補充應用程式數據250-1。
[0035]如上面所討論的,應用程式實例140-1還通知存儲服務提供商120-2,該唯一標識符值230-1對應於補充應用程式數據250-1。因此,在一個實施例中,應用程式實例140-1有效地產生了作為在映射260中的索引條目的HV230。例如,在映射260中的條目將UIV230-1與存儲在存儲庫180-2中的補充應用程式數據250-1的指針相關聯。
[0036]存儲服務提供商120-2的伺服器110-2允許在網絡環境100中操作的應用程式140的一個或多個其他實例中的任一個對補充應用程式數據250-1進行後續獲取。一般來說,並且如下面更詳細地解釋的,這是通過讓應用140的任意一個實例,在執行時,為一組已獲取到的主應用程式數據210-1計算所述UIV值,然後將它傳送給補充應用程式數據伺服器110-2而完成的。伺服器110-2可以使用該UID來檢查映射160,以確定是否存在任何補充應用程式數據250-1。
[0037]—個給定的用戶可以在第一時間點執行應用程式實例140-1。該給定用戶可在稍後的時間執行應用程式實例140-2。通過訪問存儲服務提供商120,該給定用戶能夠在存儲服務提供商120-2中保存修改(例如,通過補充應用程式數據)並在稍後的時間使用在相同或不同計算機設備上執行的應用程式140的一個實例來獲取它們。
[0038]圖3是網絡環境的示例圖,其中,操作應用程式的第二實例的用戶使用UIV230啟動從根據本文實施例的第二伺服器獲取所存儲的補充應用程式數據。
[0039]如所示,應用程式實例140-2與存儲服務提供商120-1進行通信,以獲取存儲在存儲庫180-1中的主數據。應用程式實例140-2產生Πν?30並且將WV130傳送給存儲服務提供商120-2以從存儲庫180-2中獲取補充數據。如所提到的,並且如下面進一步討論的那樣,使用UIV存儲補充應用程式數據並從存儲服務提供商120-2獲取補充應用程式數據的能力使得一個或多個用戶能夠從網絡環境100中的任何位置處的一臺計算機設備執行該應用程式140的一個實例,而不會丟失數據或不得不在計算機設備中本地地存儲該數據。
[0040]圖4是根據本文實施例的網絡環境的示例圖,其中,應用程式的第二實例使用唯一標識符值啟動從第二伺服器獲取所存儲的補充應用程式數據。
[0041]假定在本示 例中,網絡環境100中的用戶在對應的計算機設備(例如115 — 2)上啟動應用程式實例140-2的執行(圖1)。
[0042]應用程式實例140-2顯示圖形用戶界面以便用戶查看。通過相對於圖形用戶界面的輸入,用戶可以請求查看剛好被存儲在存儲庫180-1和180-2中的一個或兩個中的與應用程式140相關聯的(主的或補充的)數據。
[0043]在本示例中,假設應用程式實例140-2的用戶操作圖形用戶界面以顯示至少需要從存儲庫180-1獲取主應用程式數據210-1的信息。響應於所述輸入,該應用程式實例140-2從存儲服務提供商120-1獲取主應用程式數據210-1。如下面所討論的,應用程式實例140-2的圖形用戶界面可以由用戶以需要應用程式實例140-2獲取補充應用程式數據250-1的方式(例如,用戶請求查看他或她喜歡的聯繫人)操作。
[0044]應記得在這個示例中存儲服務提供商120-1的伺服器110-1是不能在存儲庫180-1中存儲補充應用程式數據250-1的(例如,補充數據250-1不能存儲在雲存儲系統中)。通過非限制性示例的方式,補充應用程式數據250-1可指示當在圖形用戶界面上顯示數據時要應用的特殊特徵,以及由提供商120-1提供的雲存儲系統的數據、記錄格式、協議或者其他操作不支持該補充數據250-1的存儲。
[0045]在一個實施例中,應用程式實例140-2執行對伺服器110-2的查詢以檢查修改或補充應用程式數據是否可從存儲服務提供商120-2獲取。如下面所述,這是通過為主數據210-1計算Πν?30並且將此UIV值發送到輔助(補充)存儲服務提供商1202來完成的。如果有可用於主應用程式數據210-1的補充應用程式數據,則應用程式實例啟動從存儲服務提供商120-2獲取這種數據。
[0046]為了獲取補充應用程式數據250-1,在獲取主應用程式數據210-1的副本以後,應用程式實例140-2至少部分地基於對從伺服器110-1獲取到的主應用程式數據210-1的處理(即,獲取)產生唯一標識符值(之前由應用程式實例140-1生成的相同的Πν)。例如,在一個實施例中,應用程式實例140-2應用處理函數225,例如散列函數到主應用程式數據210-1的至少一部分,以產生唯一標識符值230-1。散列函數可以包括散列主應用程式數據210-1的某個部分或多個不同的部分或全部以得到Πν 130-1。用戶身份可以包括在這個散列中以產生能夠被用於關聯該用戶的該應用程式(即,該版本)的特定適當的補充應用程式數據250組的UIV 230-1。
[0047]在一個實施例中,處理函數225是在補充應用程式數據最初被產生時由第一應用程式實例140-1用於產生唯一標識符值230-1的相同處理函數。
[0048]在這個示例中,假設自從應用程式實例140-1在存儲庫180-1中存儲主應用程式數據210-1以來主應用程式數據210-1未改變,則應用程式實例140-2的處理函數225產生當在存儲服務提供商120-2中啟動補充應用程式數據250-1的存儲時應用程式實例140-1生成的相同的索引值。
[0049]例如,應用程式實例140-2基於主應用程式數據210-1產生唯一標識符值230_1。在這種情況下,由應用程式實例140-2產生的唯一標識符值230-1與由應用程式實例140-1產生的唯一標識符值230-1相同,因為應用程式140的兩個實例對相同的主應用程式數據210-1應用了相同的處理函數。
[0050]應用程式實例140-2使用它剛剛產生的唯一標識符值230-1作為索引以識別將從存儲服務提供商120-2獲取的補充應用程式數據。例如,應用程式實例140-2通過轉發它產生的唯一標識符值230-1到伺服器110-2以啟動補充應用程式數據250-1的獲取。伺服器110-2將唯一標識符值230-1映射到該補充應用程式數據250-1被存儲在存儲庫180-2中的一個位置。
[0051]伺服器110-2從存儲庫180-2中獲取補充應用程式數據250_1,並將其轉發給應用程式實例140-2。該應用程式實例140-2從而接收到來自伺服器110-2的補充應用程式數據 250-1。
[0052]在一個實施例中,應用程式實例140-2利用所獲取到的主應用程式數據210-1來識別主設置信息。應用程式實例140-2利用所獲取到的補充應用程式數據250-1來識別相對於由主應用程式數據210-1所指定的主設置的修改。
[0053]以這種方式,被執行的同一應用程式的多個不同應用程式實例中的每個都可以訪問存儲在雲中的一個或多個不同位置處的應用程式數據,而無須在單個計算機設備中本地地存儲該數據(其將潛在地限制應用程式的使用)。
[0054]如所提到的,主應用程式數據210-1和對應的補充應用程式數據250-1可以是在地址簿應用程式中所使用的聯繫人信息。在這樣的一個實施例中,當用戶啟動其中應用程式數據不能被寫回到位於網絡環境100中的存儲服務提供商120-1的動作、命令等時,應用程式實例140-1基於主應用程式數據210-1的屬性(例如,特定的聯繫人信息)創建唯一標識符值230-1 (例如,索引值,基於散列的鍵等)。應用程式實例140-1使用該唯一標識符值230-1作為鍵或索引值以存儲只由該鍵識別的附加聯繫人信息。例如,在一個實施例中,客戶端或應用程式實例140-1然後發送該唯一標識符值230-1到存儲服務提供商120-2。伺服器110-2存儲該唯一標識符值(例如,鍵,索引值,散列值等)並且允許補充應用程式數據250-1 (通過本文公開的機制)被提供給可以訪問地址簿和對應應用程式數據的任何客戶端(例如,網絡環境100中的應用程式實例140)。
[0055]在一個實施例中,當應用程式實例140-2嘗試同步時,應用程式實例140-2為由存儲服務提供商120-1存儲並從其獲取到的主應用程式數據指定的每個聯繫人產生一個唯一標識符值。應用程式實例140-2轉發所述唯一標識符值到伺服器110-2以檢查對於每個對應的聯繫人而言,補充數據是否可用。如果是,則伺服器120-2轉發適當的補充應用程式數據給應用程式實例140-2。通過對地址簿中每個聯繫人的主應用程式數據和補充應用程式數據的獲取,應用程式實例140-2可以被恰當地同步。
[0056]在某些情況下,對於存儲在存儲庫180-1中的一個給定的主數據組而言,可能沒有任何的補充應用程式數據。在這種情況下,該應用程式實例140-2僅利用從存儲服務提供商120-1獲取到的主應用程式數據來啟動在圖形用戶界面中顯示相應信息。
[0057]圖5是一個根據本文實施例的示例圖,其圖示出了使用唯一標識符值來映射主應用程式數據和補充應用程式。
[0058]如先前所討論的,相應的應用程式140的用戶在存儲服務提供商120-1的存儲庫180-1中啟動多組主應用程式數據210 (例如,主應用程式數據210-1,主應用程式數據210-2,主應用程式數據210-3等)的存儲。如所提到的,通過一個非限制性示例的方式,主應用程式數據可以是聯繫人信息。
[0059]如先前所討論的,對應用戶可以通過生成補充應用程式數據來修改主應用程式數據。在本示例中,用戶產生補充應用程式數據250-1。
[0060]以如前所討論的方式,相應的應用程式實例140-1產生唯一標識符值230-1,並啟動在存儲服務提供商120-2處對補充應用程式數據250-1和唯一標識符值230-1的存儲。
[0061]如本示例中進一步所示,用戶產生與主應用程式數據210-3相關聯的補充應用程式數據250-3。該相應的應用程式實例140-1產生唯一標識符值230-3,並啟動在存儲伺服器提供商120-2中對唯一標識符值250-3及相應的補充應用程式數據250-3的存儲。
[0062]如所提到的,映射260存儲為相應的主應用程式數據產生的唯一標識符值和補充數據之間的關聯。
[0063]在一個實施例中,存儲服務提供商120-2可為多個不同用戶中的每個存儲補充數據。在這種情況下,映射可以被配置為基於每個用戶分組標識符值。例如,請求獲取補充應用程式數據的應用程式實例在檢查補充應用程式數據的可用性時也可以提供用戶標識符給伺服器110-2。
[0064]通過該用戶標識符,存儲服務提供商120-2可以識別將要檢查的在映射260中的相應的唯一標識符值組(而不是檢查映射260中所有的唯一標識符值),以識別補充應用程式數據是否為該用戶存儲在存儲服務提供商120-2中。
[0065]圖6是一個根據本文實施例的示例圖,其圖示出了一個應用程式實例使用主應用程式數據和補充應用程式數據。
[0066]假設在本示例中,由相應用戶通過應用程式實例140-1所產生的主應用程式數據對應於地址簿中的聯繫人信息條目。例如,假設主應用程式數據210-1包括與第一聯繫人,比如約瑟夫.史密斯相關聯的信息(例如姓名,電子郵件信息,電話信息等);假設主應用程式數據210-2包括與第二聯繫人,比如約翰.多伊相關聯的信息;假設主應用程式數據210-3包括與第三聯繫人,比如大衛.詹森相關聯的信息;等等。
[0067]如前面所討論的,主應用程式數據210可以由用戶或某個其他資源來產生。
[0068]存儲服務提供商120-1能夠存儲與對應聯繫人相關聯的某種信息,例如姓名,電子郵件信息,電話號碼等。然而,假設在本示例中,應用程式140支持這樣的功能,例如當在圖形用戶界面中顯示聯繫人信息時,使用黑體文本來指示聯繫人信息中喜歡的人),添加額外文本以在聯繫人附近顯示,等等。
[0069]如上文指出的,存儲服務提供商120-1可能不支持這種信息的存儲有若干原因。如所提到的,應用程式的實例可以被配置為在這樣的情況下啟動補充應用程式數據250的創建。例如,應用程式實例140-1產生補充應用程式數據250-1以指示選擇高亮約瑟夫?史密斯為喜歡的人;應用程式實例140-1產生補充應用程式數據250-3以指示要為條目大衛.詹森顯示的額外信息(例如,公司和頭銜信息);等。當應用程式實例140-1被開發人員(比如軟體工程師)撰寫(例如編碼)時,開發人員可以利用本文公開的機制來針對任何不能在主存儲服務提供商120-1中被存儲為主數據210的數據在補充存儲服務提供商120-2中存儲補充應用程式數據。可以為本文公開的一般功能,比如主應用程式數據的獲取,UIV的創建,以及UIV和存儲裝置之間的通信以及使用補充存儲服務提供商120-2的補充應用程式數據的獲取而提供應用程式編程接口(API )。
[0070]以如前面所討論的方式,應用程式實例140-1啟動在存儲服務提供商120-2中存儲補充應用程式數據和相應的唯一標識符值。
[0071]當相同或不同用戶啟動應用程式實例140-2的執行,以查看網絡環境100中的聯繫人信息時,應用程式實例140-2啟動主應用程式數據的獲取。通過應用處理函數225到主應用程式數據的全部或所選部分,應用程式實例1 40-2啟動唯一標識符值的生成和相應的補充應用程式數據的獲取。在這種情況下,應用程式實例啟動補充應用程式數據250-1,補充應用程式數據250-3等的獲取,並將由補充應用程式數據指定的設置應用到最終顯示在聯繫人管理者圖形用戶界面630中的地址簿中的聯繫人信息。
[0072]在一個實施例中,應注意的是,應用程式實例140-2可以啟動對將在地址簿中顯示的主應用程式數據信息的進一步的修改。在這種情況下,如果一個給定實例140啟動對由存儲服務提供商120-1存儲的一組主應用程式數據的改變,則該給定實例基於對該組主應用程式數據的改變產生一個新的唯一標識符值並將更新的唯一標識符值轉發到伺服器110-2以便存儲在映射260中。以這種方式,相對於最新的主應用程式數據組,該UIV始終是「當前的」。如果用戶還修改了相應的補充應用程式數據,則該應用程式實例還將已更新的補充應用程式數據轉發到所述存儲服務提供商120-2以用於存儲和後續獲取。因此,通過更新的唯一標識符值,另一個應用程式實例即使主應用程式數據已經被改變也仍然可以獲取該補充應用程式數據,並且補充應用程式數據的任何改變也被(由存儲服務提供商120-2 )捕獲和存儲以用於後續獲取。
[0073]圖7是根據本文實施例的用於執行與應用程式實例140相關聯的功能的計算機系統的示例框圖。
[0074]計算機系統700可以包括一個或多個作為伺服器,客戶端等進行操作的計算機化的設備,比如個人計算機,工作站,可攜式計算設備,控制臺,網絡終端,處理設備,網絡設備
坐寸ο[0075]應注意的是,下面的討論提供了一個指示如何根據本文的實施例執行與應用程式實例140相關聯的功能的基本實施例。然而,應該注意的是,如本文描述的用於執行該操作的實際配置可以根據對應應用而變化。另外還應注意的是,伺服器110-1,110-2,等等中的每個可以被配置為擁有類似的資源,例如計算機可讀存儲介質和對應的一個或多個處理器設備,以執行如本文所討論的功能。
[0076]如所示,本示例的計算機系統700包括將計算機可讀存儲介質312耦合的互連311,計算機可讀存儲介質312例如是可存儲和獲取數字信息的非暫時型的計算機可讀存儲介質。計算機系統700還包括處理器設備313,I /0接口 314,和通信接口 317。
[0077]I / O接口 314提供到輸入/輸出設備的連接,輸入/輸出設備例如是存儲庫780以及,如果存在的話,其他設備比如顯示屏730,外圍設備316 (例如,鍵盤,計算機滑鼠等)
坐寸ο
[0078]計算機可讀存儲介質312可以是任何合適的設備,比如存儲器,光學存儲裝置,硬驅動器,軟盤等。在一個實施例中,計算機可讀存儲介質312是被配置為存儲指令和/或數據的存儲介質(即,硬體存儲介質)。
[0079]通信接口 317使計算機系統700和處理器設備313能夠通過網絡190進行通信,以從多個不同的遠程資源(比如其他計算機,伺服器等)中的任意一個獲取信息和/或向其轉發信息。如所提到的,I / O接口 314允許處理器設備313從存儲庫780獲取相應的信息。
[0080]如所示,計算機可讀存儲介質312可以利用由處理器設備313執行的應用程式實例140 (例如,軟體,固件等)進行編碼。
[0081]在一個實施例運行期間,處理器設備313通過互連311的使用來訪問計算機可讀存儲介質312以發起,運行,執行,解釋或以其他方式執行存儲在計算機可讀存儲介質312上的應用程式140 - X的指令。
[0082]應用程式140 -X的執行產生處理功能,例如在處理器設備313中的進程141。換言之,與處理器設備313相關聯的應用程式140 - X表示在計算機系統700中的處理器設備313裡面或上面的執行的應用程式140的一個實例。
[0083]本領域技術人員將理解,計算機系統700可以包括其他進程和/或軟體和硬體組件,比如控制硬體資源的分配和使用以執行應用程式140的作業系統。
[0084]根據不同的實施例,應注意的是,計算機系統700可以是各種類型的設備中的任何一種,其包括,但不限於,個人計算機系統,臺式計算機,膝上型計算機,筆記本,上網本計算機,大型計算機系統,手持式計算機,工作站,網絡計算機,應用程式伺服器,存儲設備,消費者電子設備,諸如照相機,攝像機,機頂盒,行動裝置,視頻遊戲控制臺,手持式視頻遊戲設備,外圍設備,諸如交換機,數據機,路由器或一般地,任何類型的計算或電子設備。
[0085]應用程式實例140所支持的功能現在將通過圖8和圖9中的流程圖來討論。應注意的是,相對於上面針對圖1至7所討論的概念會有某種重疊。此外,應注意的是,下面的流程圖中的步驟不需要總是以所示的順序來執行。也就是說,這些步驟可以以任何適當的順序被執行。
[0086]圖8是根據本文實施例的圖示出處理主應用程式數據的方法的流程圖800。
[0087]在步驟810中,應用程式實例140-1獲取主應用程式數據210_1。主應用程式數據210-1可以從伺服器110-1獲得或由用戶產生。[0088]在步驟820中,應用程式實例140-1接收要與主應用程式數據210_1相關聯的補充應用程式數據。
[0089]在步驟830中,應用程式實例140-1至少部分地基於主應用程式數據210_1來計算唯一標識符值230-1。
[0090]在子步驟840中,應用程式實例140-1應用一個處理函數,比如散列函數到主應用程式數據210-1的至少一部分(例如,電子郵件地址,電話號碼等),以產生唯一標識符值230-1來與補充應用程式數據250-1關聯。
[0091]在步驟850中,應用程式實例140-1轉發唯一標識符值230_1到伺服器110_2 ;月艮務器110-2使得能夠通過應用程式實例140-2對補充應用程式數據250-1進行後續獲取。
[0092]在步驟860中,應用程式實例140-1啟動在伺服器120_2中存儲補充應用程式數據 250-1。
[0093]在步驟870中,伺服器110-2啟動在映射260中存儲索引條目,以便將唯一標識符值230-1關聯到存儲在存儲庫180-2中的補充應用程式數據250-1。
[0094]圖9是圖示出了根據本文實施例的處理應用程式數據的方法的流程圖900。
[0095]在步驟910中,應用程式實例140-2從伺服器110_1獲取主應用程式數據210_1。
[0096]在步驟920中,應用程式實例140-2至少部分地基於從伺服器110_1獲取的主應用程式數據210-1來產生唯一標識符值230-1。
[0097]在子步驟930中,應用程式實例140-2應用一個散列或其它合適的函數到主應用程式數據210-1的至少一部分,以產生唯一標識符值230-1。
[0098]在步驟940中,應用程式實例140-2利用(由應用程式實例140_2所產生的)所述唯一標識符值230-1作為索引,以識別存儲在存儲服務提供商120-2中的補充應用程式數據 250-1 。
[0099]在子步驟950中,應用程式實例140-2轉發該唯一標識符值230-1到伺服器110_2。第二伺服器110-2映射由應用程式實例140-2產生的唯一標識符值230-1到補充應用程式數據250-1。
[0100]在步驟960中,應用程式實例140-2啟動從伺服器110_2獲取補充應用程式數據250-1。
[0101]在子步驟965中,應用程式實例140-2從伺服器110_2接收補充應用程式數據250-1。
[0102]在步驟970中,應用程式實例140-2利用獲取到的主應用程式數據140_2來識別與應用程式實例140-2相關聯的主設置。
[0103]在步驟980中,應用程式實例140-2利用補充應用程式數據250_1來識別相對於由主應用程式數據210-1所指定的主設置的修改。
[0104]使用本文所公開的技術,所執行的相同的應用程式的多個不同實例中的每個都可以訪問由雲計算環境提供的數據服務,同時仍然允許通過訪問存儲在一個或多個不同位置處的補充應用程式數據來對應用程式進行定製,而無須在本地存儲補充數據(其將限制計算機系統的使用)。以這種方式,即使雲計算環境可能不支持附加特徵,利用本文所公開的系統的應用程式也可以為用戶提供額外的服務並且這些服務(其需要存儲和訪問補充數據)將在該用戶使用的不同設備上可用。[0105]應用程式的不同實例用於產生唯一標識符值以獲取補充應用程式數據的相同的處理函數相對於該應用程式的用戶可以是唯一的。因此,只有該用戶的應用程式(可能的應用程式可以在其中)能夠產生適當的鍵或索引值來獲取補充應用程式數據。因此,本文的實施例可以提供在常規技術之上的安全級。
[0106]如所提到的,在一個示例實施例中,主應用程式數據和補充應用程式數據可以涉及到在地址簿中使用的聯繫人信息。在這種實施例中,在應用程式的第一實例中,當用戶操作應用程式來創建或修改不能被寫回到位於網絡中的第一存儲服務提供商的數據時,應用程式140基於主應用程式數據的屬性(例如,特定的聯繫人信息)創建唯一標識符值(例如,一個索引值,基於散列的鍵等),並使用該鍵來存儲僅由該鍵識別的額外的聯繫人信息。然後,應用程式發送該唯一標識符值到第二存儲服務提供商。第二存儲服務提供商存儲該唯一標識符值,並允許補充應用程式數據被同步到由該用戶操作的該應用程式的任何其他實例。
[0107]當應用程式的第二實例嘗試同步時,應用程式的第二實例為每個聯繫人產生散列值。該應用程式的第二實例轉發所述散列值(即,唯一標識符值)到補充伺服器以檢查對於相應的聯繫人,補充數據是否可用。如果是的話,補充伺服器轉發該數據到應用程式的第二實例。通過從第一存儲服務提供商獲取主應用程式數據以及從第二存儲服務提供商獲取每個聯繫人的補充應用程式數據,該應用程式的第二實例可被恰當地同步。
[0108]本文的技術非常適合於在軟體的多個實例可以在連接到網絡的多個位置完全不同的設備上執行的應用程式中使用。然而,應該注意的是,本文的實施例不限於在這樣的應用中使用,並且本文所討論的技術也非常適用於其他應用。
[0109]應注意的是,本文的實施例可以包括一個或多個計算機化的設備,工作站,手持或膝上型計算機,或類似物的配置以執行和/或支持本文公開的方法操作中的任何一個或全部。換句話說,一個或多個計算機化的設備或處理器可以被編程和/或配置來如本文所述的那樣操作以執行本發明的不同實施例。
[0110]此外,本文的其他實施例包括軟體程序來執行上文概述的以及下文詳細公開的步驟和操作。一個這樣的實施例包括電腦程式產品,該電腦程式產品包括在其上軟體指令被編碼以便隨後執行的計算機可讀存儲介質(即,任何類型的硬體存儲介質)。當在具有處理器的計算機化的設備中執行時,所述指令和/或程序使得所述處理器執行本文所公開的操作。這樣的布置通常被作為軟體,代碼,指令和/或其他數據(例如,數據結構)而被提供,所述軟體,代碼,指令和/或其他數據被布置或編碼在非暫時性計算機可讀存儲介質上,比如光學介質(例如,CD-ROM ),軟盤,硬碟,記憶棒等,或者其他介質,諸如在一個或多個ROM,RAM, PROM等中的固件或微代碼,或專用集成電路(ASIC)等。該軟體或固件或其他這種配置可被安裝在一個計算機化的設備上,以使得所述計算機化的設備執行本文所述的技術。
[0111]本公開的其他實施例包括軟體程序和/或相應的硬體來執行上文概述的以及下文詳細公開的的任何方法實施例的步驟和操作。為清晰的緣故,添加了步驟的排序。這些步驟可以以任何合適的順序進行。
[0112]應當理解的是,如本文所討論的,系統,方法,裝置,計算機可讀存儲介質上的指令等,可以嚴格地具體實現為軟體程序,軟體和硬體的混合體,或者單獨的硬體,比如在處理器內或作業系統中或在一個軟體應用程式中。本發明的示例實施例可以在產品和/或軟體應用程式中實現,例如由美國華盛頓州雷蒙德市的微軟公司所製造的那些。
[0113]此外,雖然本文每個不同的特徵,技術,配置等可在本公開的不同地方討論,但是其意圖是每個概念可以相互獨立地執行,或在適當時,這些概念可以彼此組合地被使用。因此,如本文所描述的一個或多個本發明可以以多種不同的方式體現和查看。
[0114]基於本文闡述的說明書,闡述了許多具體細節以提供對要求保護的主題的透徹理解。然而,本領域技術人員可以理解所要求保護的主題可以在沒有這些具體細節的情況下實踐。在其他實例中,普通技術人員所熟知的方法,裝置,系統等沒有被詳細描述,以便不混淆所要求保護的主題。詳細描述中的某些部分是以關於存儲在計算系統存儲器(比如計算機存儲器)中的數據比特或二進位數位訊號的操作的算法或符號表示來呈現的。這些算法描述或表示是在數據處理領域中的普通技術人員用以傳達他們工作的實質給本領域的其他技術人員的技術的示例。本文一般描述的算法被認為是導致期望結果的操作或類似處理的自相一致的序列。在本上下文中,操作或處理包括對物理量的物理操縱。通常,雖然不是必須的,但是這些量可以採取能夠通過處理電路和/或軟體被存儲,傳送,組合,比較或以其他方式操縱的電或磁信號的形式。有時主要是為了通用的原因,已經證明將此類信號稱為比特,數據,值,元素,符號,字符,術語,號碼,數字或類似物是方便的。然而,應當理解的是,所有這些和類似的術語將與適當的物理量相關聯,並且僅僅是方便的標記。如從下面的討論中明顯看出的,除非以其他方式特別聲明,否則應意識到,在整個該說明書討論中使用諸如「處理」,「計算」,「運算」,「確定」等術語指的是諸如計算機或類似的電子計算設備之類的計算平臺的動作或處理,所述計算平臺操縱或變換表示為計算平臺的存儲器,寄存器或其他信息存儲設備,傳輸設備或或顯示設備中的物理的電子或磁的量。
[0115]雖然本發明已經參照本發明的優選實施例被具體地展示和描述,但本領域技術人員應理解的是,在不背離由所附權利要求所限定的本申請的精神和範圍的情況下可以在其中進行形式和細節上的各種改變。這樣的變化旨在被該本申請的範圍覆蓋。因此,本申請的實施例的上述描述並不旨在限制。相反,對本發明的任何限制都在下面的權利要求中呈現。
【權利要求】
1.一種方法,包括: 在應用程式的第一實例中: 從第一伺服器獲取主應用程式數據; 接收要與主應用程式數據相關聯的補充應用程式數據; 至少部分地基於所述主應用程式數據來計算第一唯一標識符值;以及轉發所述第一唯一標識符值到第二伺服器,所述第二伺服器使得所述應用程式的第二實例能夠使用所述第一唯一標識符值來進行所述補充應用程式數據的後續獲取。
2.如權利要求1中的方法,還包括: 在所述應用程式的所述第二實例中: 從所述第一伺服器獲取所述主應用程式數據; 至少部分地基於所述主應用程式數據來計算第二唯一標識符值;以及利用由所述第二實例產生的所述第二唯一標識符值作為索引以識別所述補充應用程式數據並從所述第二伺服器獲取所述補充應用程式數據。
3.如權利要求2中的方法,其中利用由所述第二實例產生的所述第二唯一標識符值包括: 轉發由所述應用程式的所述第二實例產生的所述第二唯一標識符值到所述第二伺服器,所述第二伺服器通過將所述第二唯一標識符值與所述第一唯一標識符值進行比較來將所述第二唯一標識符值映射到所述補充應用程式數據;以及從所述第二伺服器接收所述補充應用程式數據。
4.如權利要求3中的方法,還包括: 由第一存儲服務提供商操作所述第一伺服器; 操作作為第二存儲提供商的所述第二伺服器;以及其中所述第二存儲服務提供商是與所述第一存儲服務提供商不同的實體,並且其中所述補充應用程式數據是不能在所述第一伺服器中被存儲為主應用程式數據的數據。
5.如權利要求2中的方法,還包括: 通過所述應用程式的所述第二實例: 利用所述獲取的主應用程式數據來識別由所述應用程式使用的主設置;以及利用所述補充應用程式數據來識別相對於所述主設置的修改,所述修改是不能與所述主應用程式數據一起被存儲在所述第一伺服器中的數據。
6.如權利要求1中的方法,還包括: 通過所述應用程式的所述第一實例: 在所述第二伺服器中存儲所述補充應用程式數據; 產生將所述第一唯一標識符值與存儲在所述第二伺服器中的所述補充應用程式數據進行關聯的索引條目;以及存儲所述索引條目以從所述第二伺服器獲取所述補充應用程式數據。
7.如權利要求1中的方法,還包括: 通過所述應用程式的第二實例: 利用所述第一唯一標識符值作為識別所述補充應用程式數據的索引;以及從所述第二伺服器接收所述補充數據。
8.如權利要求1中的方法,其中至少部分地基於所述主應用程式數據來計算所述第一唯一標識符值包括: 應用散列函數到所述主應用程式數據的至少一部分和操作所述應用程式的第一實例的用戶的用戶身份以產生所述第一唯一標識符值來與所述補充應用程式數據相關聯,從而允許所述應用程式的第二實例的所述用戶訪問所述補充應用程式數據;以及 其中所述主應用程式數據至少部分地指定由所述應用程式的所述第一實例使用的設置信息; 其中由所述第一唯一標識符值索引的所述補充應用程式數據指定相對於所述主應用程式數據的修改。
9.如權利要求1中的方法,還包括: 通過所述應用程式的所述第二實例: 從所述第一伺服器獲取所述主應用程式數據; 修改所述主應用程式數據; 在所述第一伺服器中存儲所述修改的主應用程式數據; 基於所述修改的主應 用程序數據計算所述第二唯一標識符值;以及轉發用於所述修改的主應用程式數據的所述第二唯一標識符值到所述第二伺服器,所述第二唯一標識符值允許所述應用程式的後續實例為所述應用程式的後續實例的用戶識別與所述主應用程式數據相關聯的補充應用程式數據。
10.如權利要求9中的方法,其中所述用戶在網絡環境中的第一位置處的第一計算機上執行所述應用程式的所述第一實例;並且 其中所述用戶在網絡環境中的第二位置處的至少一個第二計算機上執行所述應用程式的第二實例和後續實例。
11.一種方法,包括: 通過在計算機設備上執行的應用程式的第一實例: 從第一伺服器獲取主應用程式數據; 至少部分地基於所述主應用程式數據計算唯一標識符值;以及利用由所述第一實例產生的所述唯一標識符值作為索引以識別由第二伺服器存儲的補充應用程式數據;以及 從所述第二伺服器獲取所述識別的補充應用程式數據。
12.如權利要求11中的方法,其中利用由所述第一實例計算的所述唯一標識符值包括:轉發由所述應用程式的所述第一實例產生的所述唯一標識符值到所述第二伺服器,所述第二伺服器映射所述唯一標識符值到所述補充應用程式數據;以及 其中從所述第二伺服器啟動所述補充應用程式數據的獲取包括從所述第二伺服器接收所述補充應用程式數據。
13.如權利要求12中的方法,還包括: 由第一存儲服務提供商操作所述第一伺服器; 操作作為第二存儲提供商的所述第二伺服器;以及其中所述第二存儲服務提供商是與所述第一存儲服務提供商不同的實體,並且其中所述補充應用程式數據是不能在所述第一伺服器中被存儲為主應用程式數據的數據。
14.如權利要求11中的方法,其中所述應用程式的第二實例在將所述唯一標識符值用作識別所述補充應用程式數據的索引之前啟動下述步驟的執行: 從所述第一伺服器獲取所述主應用程式數據; 接收要與所述主應用程式數據相關聯的所述補充應用程式數據; 至少部分地基於所述主應用程式數據計算所述唯一標識符值;以及 轉發所述唯一標識符值到所述第二伺服器。
15.如權利要求11中的方法,還包括: 利用所述獲取的主應用程式數據來識別由所述應用程式使用的主設置;以及 利用所述補充應用程式數據來識別相對於所述主設置的修改;以及 其中產生所述唯一標識符值包括: 應用散列函數到主應用程式數據的至少一部分以產生所述唯一標識符值;並且其中所述主應用程式數據至少部分地指定要由所述應用程式的所述第一實例使用的設置信息;以及其中由所述唯一標識符值索引的所述補充應用程式數據指定相對於所述主應用程式數據的修改。
【文檔編號】G06F15/16GK104011698SQ201280060545
【公開日】2014年8月27日 申請日期:2012年11月29日 優先權日:2011年12月9日
【發明者】G.T.勒曼, V.德, R.H.羅德裡格斯, A.博伊科, G.費爾普斯, J.(J.)劉 申請人:微軟公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀