專利名稱:分布式備份和獲取系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及在企業(yè)系統(tǒng)上備份數(shù)據(jù),更具體地涉及通過多個客戶端設(shè)備備份服務(wù) 器數(shù)據(jù)。
背景技術(shù):
本部分描述的方法是可以執(zhí)行的方法,但并不必須是之前已經(jīng)構(gòu)思或執(zhí)行的方 法。所以除非另外指示,不應(yīng)假設(shè)在本部分描述的任何方法僅由于其被包含在本部分內(nèi)而 被限定成現(xiàn)有技術(shù)。對消費者引入DVR,已經(jīng)根本改變了用戶觀看和記錄電視節(jié)目的方式。DVR在能夠 存儲大量電視節(jié)目的硬驅(qū)動上記錄電視節(jié)目。DVR的用戶可以指示DVR安排要記錄的指定 內(nèi)容,該指定內(nèi)容在將來某個時間會播出或者傳輸?shù)紻VR上。例如,用戶可以指示DVR從一 個指定日期和時間開始并在另一個指定時期和時間結(jié)束地記錄將在指定頻道播出的非指 定內(nèi)容。又例如,用戶可以指示DVR記錄指定電影、指定賽事,或多集電視劇的指定片段的 指定放映(在指定頻道上,并且開始于指定的日期和時間)。DVR業(yè)務(wù)的業(yè)務(wù)提供者可以在中心服務(wù)器中存儲與特定用戶相關(guān)的數(shù)據(jù),以便提 供特定業(yè)務(wù)。例如,用戶可以通過遠程接口(例如通過網(wǎng)站),指示用戶的DVR記錄指定頻 道上的多集電視劇的所有片段。在這種情況下,與用于記錄的指示相關(guān)的數(shù)據(jù)被中心服務(wù) 器處理,并且隨后為特定用戶存儲到中心服務(wù)器中。中心服務(wù)器將與記錄指示相關(guān)的所述 數(shù)據(jù)發(fā)送到用戶的DVR,以便DVR記錄所要求的內(nèi)容。利用中心服務(wù)器提供業(yè)務(wù)已經(jīng)非常普遍,尤其是隨著因特網(wǎng)的使用。例如,除了 DVR業(yè)務(wù),利用例如蜂窩電話的其它個人或移動設(shè)備的業(yè)務(wù)變得更加普遍。隨著這些集中業(yè) 務(wù)進入日常生活,備份數(shù)據(jù)以提供這些業(yè)務(wù)變得更加重要。
通過附圖中的實例描述本發(fā)明,但并不起限制作用,在附圖中,相同的附圖標記表 示相同的元件,其中圖IA示出了根據(jù)本發(fā)明的實施例,在其中可以執(zhí)行分布式備份和獲取的示例性 系統(tǒng);圖IB是示出了根據(jù)本發(fā)明的實施例,數(shù)字視頻記錄器(DVR)組件的總體圖;圖2是示出了根據(jù)本發(fā)明的實施例,連接到中心服務(wù)器的多客戶端設(shè)備/DVR的結(jié) 構(gòu)圖;圖3是示出了根據(jù)本發(fā)明的實施例,向客戶端設(shè)備執(zhí)行數(shù)據(jù)備份的步驟的流程 圖;圖4是示出了根據(jù)本發(fā)明的實施例,向客戶設(shè)備執(zhí)行數(shù)據(jù)獲取的步驟的流程圖; 和圖5是在其上執(zhí)行本發(fā)明的實施例的系統(tǒng)的結(jié)構(gòu)圖。
具體實施例方式在下面的描述中,出于解釋的目的,設(shè)定多個特定細節(jié),為的是提供對本發(fā)明徹底 的理解。然而很顯然的是,本發(fā)明可以在沒有這些特定細節(jié)情況下被實施。在其它情況下, 以框圖的形式示出了公知的結(jié)構(gòu)和設(shè)備,以避免不必要地模糊本發(fā)明。此處根據(jù)下列提綱描述實施例1.0總體概述2.0結(jié)構(gòu)概述3. 0用于DVR業(yè)務(wù)提供者的分布式備份3.1數(shù)據(jù)沖突和策略3. 2存儲的數(shù)據(jù)的類型3. 3隱私和加密3. 4 數(shù)據(jù)獲取(retrieval)4. 0企業(yè)系統(tǒng)的分布式備份5. 0執(zhí)行機制6. 0 例子1. 0總體概述本發(fā)明實現(xiàn)了前面的背景技術(shù)中確定的需求,以及在下面的描述中會變得更加清 楚的其它需求和目標,本發(fā)明包括執(zhí)行分布式備份和獲取的方法。為了提供DVR業(yè)務(wù)的特定特征,業(yè)務(wù)提供者可以在集中的位置保持(maintain)數(shù) 據(jù)。正如此處使用的,“保持的”數(shù)據(jù)可以指代用于提供業(yè)務(wù)的任何處理的、存儲的、獲取的 和修改的數(shù)據(jù)。數(shù)據(jù)可以源于特定的用戶,并且允許業(yè)務(wù)提供者對特定的用戶執(zhí)行特定的 業(yè)務(wù)。例如用戶可以指示其DVR記錄在指定頻道上首輪放映的電影,而并不指明所述電影 將要播出的日期或時間。在這種情況下,關(guān)于記錄的數(shù)據(jù)被至少一個服務(wù)器處理,并且接著 通過業(yè)務(wù)提供者被一個或多個服務(wù)器為所述特定用戶保持。在很多業(yè)務(wù)被提供給幾千個用戶的情況下,被保持的數(shù)據(jù)量變得非常大。保持數(shù) 據(jù)很重要,因為沒有數(shù)據(jù),DVR業(yè)務(wù)不能恰當?shù)乇惶峁R虼?,具備備份系統(tǒng)是任何數(shù)據(jù)存 儲系統(tǒng)的重要方面,所以在中心數(shù)據(jù)的災(zāi)難性故障或丟失情況下,數(shù)據(jù)可以被恢復。正如此 處使用的,數(shù)據(jù)的“毀壞”可以指數(shù)據(jù)的完全或部分丟失,不允許數(shù)據(jù)的讀取、恢復或修改的 錯誤,或者任何引起對數(shù)據(jù)的精確保持產(chǎn)生影響的事件。存儲和備份大量數(shù)據(jù)發(fā)生在很多企業(yè)系統(tǒng)中,也有DVR業(yè)務(wù)的提供者。這些大量 的數(shù)據(jù)可以被存儲在數(shù)據(jù)中心的存儲設(shè)備的數(shù)據(jù)庫中,存儲設(shè)備被一個或多個服務(wù)器控 制。正如此處使用的,數(shù)據(jù)中心有大量持有多個不同用戶的信息的存儲設(shè)備。存儲設(shè)備可 以包括磁盤驅(qū)動和磁帶驅(qū)動。數(shù)據(jù)中心可以被定位于一個單獨的地理區(qū)域。在一個備份系統(tǒng)中,每個數(shù)據(jù)庫在備用數(shù)據(jù)庫上被復制。如果數(shù)據(jù)的中心集合以 任何方式被損壞,數(shù)據(jù)隨后可以從備用數(shù)據(jù)庫中被恢復。該備份系統(tǒng)在很多情形下保護數(shù) 據(jù)防止丟失。例如,如果因為功率振蕩或失效的硬盤引起數(shù)據(jù)庫失效,存儲在數(shù)據(jù)庫上的數(shù) 據(jù)可以從備用數(shù)據(jù)庫中被使用,并且業(yè)務(wù)可以幾乎沒有中斷地被繼續(xù)。然而,本地備用系統(tǒng)在數(shù)據(jù)的中心集合和備用數(shù)據(jù)庫同時毀損的情形下不可以使
5用。例如,如果中心數(shù)據(jù)和備用數(shù)據(jù)庫所在位置的數(shù)據(jù)中心遭受嚴重損壞,例如地震或颶 風,中心數(shù)據(jù)和備份數(shù)據(jù)庫將被破壞。出于此原因,備用或備份數(shù)據(jù)庫,可以位于地理上與 數(shù)據(jù)中心不同的區(qū)域。不幸的是,在數(shù)據(jù)中心中存儲中心數(shù)據(jù)并在另一個地理位置完全不同的地點存儲 備份數(shù)據(jù)庫會產(chǎn)生高成本,例如在經(jīng)濟上和總工時上。當只有一個數(shù)據(jù)中心被保持時,土 地、公用事業(yè)和備份位置的操作的成本并不沖突。此外,在遠程設(shè)施存儲備份數(shù)據(jù)庫在時間 上更加集中。必須生成程序,以協(xié)調(diào)兩個位置中的活動,從而正確地保持備份。此外,當維 護兩個設(shè)施時,更難檢測到備份中的錯誤。為中心數(shù)據(jù)和遠程的備份設(shè)施維護數(shù)據(jù)中心還有另外的問題。傳輸數(shù)據(jù)可能引起 隱私顧慮,因為敏感的客戶數(shù)據(jù)在傳遞過程中可能被截獲。而且,如果數(shù)據(jù)被存儲在兩個位 置,那么一個位置可以足夠安全地防止數(shù)據(jù)侵入,但是另一位置可能容易侵入進攻。隨著數(shù)據(jù)量急劇增加,向數(shù)據(jù)庫存儲備份已經(jīng)成為更昂貴并且時間上更加集中, 并且產(chǎn)生了維護遠程備份設(shè)施的復雜性。在分布式網(wǎng)絡(luò)中,正如DVR業(yè)務(wù)提供者使用的,中 心服務(wù)器處理多個客戶發(fā)來的數(shù)據(jù),并且接著可以在數(shù)據(jù)庫中存儲該被處理過的數(shù)據(jù)。在 實施例中,中心服務(wù)器可以分布方式存儲備份,其中被處理過數(shù)據(jù)的一部分或者子集備份 到客戶端本身上,而不是中心服務(wù)器向單個大型備份數(shù)據(jù)庫存儲被處理過的數(shù)據(jù)。在實施例中,用戶可以擁有一個或多個客戶端并且保持這些客戶端在其家中。備 份到用戶擁有的一個或多個客戶端的被處理過的數(shù)據(jù)的子集是與用戶或用戶的特定客戶 端設(shè)備相關(guān)的被處理過的數(shù)據(jù)的子集。與在單個大型數(shù)據(jù)庫上存儲備份相比,執(zhí)行分布式備份提供了許多優(yōu)勢。將與用 戶相關(guān)的被處理過的數(shù)據(jù)備份到其本身的客戶端上,更具有成本效益并且更容易保持。避 免了在本地或遠程設(shè)施保持單獨備份的成本。數(shù)據(jù)備份到客戶端會比備份到單個數(shù)據(jù)庫更 加流行。例如,存儲到客戶端設(shè)備的數(shù)據(jù)可以隨著中心服務(wù)器上的數(shù)據(jù)在每天內(nèi)被多次更 新,但是備份到單個數(shù)據(jù)庫的數(shù)據(jù)只能每天更新一次。此外,將與用戶或用戶擁有的客戶端 相關(guān)的數(shù)據(jù)備份到用戶自己的客戶端上消除了隱私問題,因為用戶的數(shù)據(jù)被備份到其擁有 的設(shè)備上,而不是存儲到帶有很多其他用戶信息的遠程位置。2. 0結(jié)構(gòu)概述圖IA示出了根據(jù)本發(fā)明的實施例,可以執(zhí)行分布式備份和恢復的實例的系統(tǒng)。所 述系統(tǒng)包括DVR 102A和DVR 102B,二者通過任意通信接口,例如以太網(wǎng)接口或無線通信端 口,通信地耦合到網(wǎng)絡(luò)105。DVR的功能以美國專利6,233,389中的作為典型,該專利由本 申請人:擁有,并且作為參考合并于此。系統(tǒng)還包括業(yè)務(wù)提供者104、內(nèi)容提供者106、個人計 算機108和便攜設(shè)備110。個人計算機108可以是個人計算設(shè)備,例如臺式計算機或膝上計算機,并且也通 過任意的通信接口,包括無線,耦合到網(wǎng)絡(luò)105。便攜設(shè)備110可以是任意手持計算設(shè)備、 蜂窩電話、便攜式媒體播放器,或者任意其它的能夠顯示多媒體內(nèi)容的便攜設(shè)備,并且也通 過任意的通信接口,包括無線,耦合到網(wǎng)絡(luò)105。DVR 102A和DVR 102B,個人計算機108和 便攜設(shè)備110,均通過網(wǎng)絡(luò)105與業(yè)務(wù)提供者104通信。在另一實施例中,DVR 102A和DVR 102B,個人計算機108和便攜設(shè)備110,均通過網(wǎng)絡(luò)105與內(nèi)容提供者110通信。網(wǎng)絡(luò)105可以通過提供用于在通信系統(tǒng)的設(shè)備之間交換數(shù)據(jù)的任意媒介或機構(gòu)執(zhí)行。不限制地,網(wǎng)絡(luò)105的例子包括網(wǎng)絡(luò),例如局域網(wǎng)(LAN)、廣域網(wǎng)(WAN)、因特網(wǎng)、一個 或多個陸地、衛(wèi)星或無線連接等??商鎿Q地或可附加地,連接到網(wǎng)絡(luò)105的任意數(shù)量的設(shè)備 還可以通過通信鏈接被直接相互連接。在一個實施例中,內(nèi)容提供者106向DVR 102A和DVR 102B通過線纜、衛(wèi)星、陸地 通信或其它傳輸方法提供播出的節(jié)目內(nèi)容。播出的節(jié)目內(nèi)容可以包括任意多媒體內(nèi)容,例 如音頻、圖像或視頻的內(nèi)容。在另一實施例中,內(nèi)容提供者106通過網(wǎng)絡(luò)105,向DVR 102A 和DVR 102B、個人計算機108或便攜設(shè)備110提供多媒體內(nèi)容,例如可下載的內(nèi)容。在一個實施例中,DVR 102A和DVR 102B與業(yè)務(wù)提供者104通信,業(yè)務(wù)提供者提供 節(jié)目指南數(shù)據(jù)、圖形資源(例如字體、圖片等)、業(yè)務(wù)內(nèi)容、軟件、廣告、事件標識數(shù)據(jù)以及其 它形式的數(shù)據(jù)。所述數(shù)據(jù)使得DVR 102A和DVR 102B獨立于業(yè)務(wù)提供者104運行,以滿足 用戶的興趣。在另一實施例中,內(nèi)容提供者106可以向業(yè)務(wù)提供者104提供內(nèi)容數(shù)據(jù)或任意元 數(shù)據(jù),包括宣傳數(shù)據(jù)、圖標、網(wǎng)絡(luò)數(shù)據(jù)和其它信息。業(yè)務(wù)提供者104接著可以解釋元數(shù)據(jù),并 且向DVR 102A和DVR 102B、個人計算機108或便攜設(shè)備110提供內(nèi)容數(shù)據(jù)元數(shù)據(jù)。參考圖1B,在實施例中,DVR 102A(DVR 102B包含同樣的組件并且執(zhí)行同樣的功 能)總體上包括例如標記為154的信號轉(zhuǎn)換器的多個組件,這些組件有必要數(shù)字化模擬電 視信號,并且將其轉(zhuǎn)換為數(shù)字數(shù)據(jù)流,或者接受數(shù)字數(shù)據(jù)流。DVR 102A經(jīng)過輸入152A,從天 線、有線電視系統(tǒng)、衛(wèi)星接收器等處接收廣播信號。輸入152A可以包括多個調(diào)諧模塊,所述 調(diào)諧模塊允許同時接收和記錄多個信號。記錄模塊160通過在至少一個例如標記為164的存儲器的存儲設(shè)施上存儲數(shù)字數(shù) 據(jù)流記錄到來的數(shù)據(jù)流,所述存儲器設(shè)計為保持數(shù)字數(shù)據(jù)流的片段。存儲器164還可以用 于存儲與DVR的用戶相關(guān)的被處理過數(shù)據(jù)的備份。信號轉(zhuǎn)換器154獲取數(shù)據(jù)流的片段,將 數(shù)據(jù)流的片段轉(zhuǎn)換為模擬信號,并且接著經(jīng)過輸出152B,將信號調(diào)制到RF載波上,由此信 號被傳送至標準的電視設(shè)備或接收設(shè)備。輸出152B可以替換地向電視設(shè)備或顯示監(jiān)視器 傳送數(shù)字信號。例如,DVR 102A可以使用高帶寬數(shù)字內(nèi)容保護(HDCP)端口,用于經(jīng)過HDMI 線纜,向電視發(fā)送數(shù)字信號。DVR 102A還包括通信接口 162,經(jīng)過該接口,DVR 102A通過以太網(wǎng)、無線網(wǎng)絡(luò)、調(diào) 制解調(diào)器或其它通信標準與網(wǎng)絡(luò)105通信。進一步,DVR 102A可以集成于電視系統(tǒng),使得 上述組件位于電視設(shè)備之內(nèi),能夠執(zhí)行DVR102A的每個組件的功能。在另一實施例中,DVR 102A總體上包括多個組件,有必要接收、記錄、存儲、轉(zhuǎn)移、 顯示和重放來自多個來源,例如PC、DVR、業(yè)務(wù)提供者或內(nèi)容服務(wù)器的數(shù)字數(shù)據(jù)信號。DVR 102A可以將數(shù)字數(shù)據(jù)信號轉(zhuǎn)移至另一 DVR、便攜設(shè)備或PC。這可以在圖IA看出,如果在DVR 102A和DVR 102B之間帶有連接,使得兩個DVR可以通信。DVR 102A可以通過編碼器156A 和解碼器156B,將數(shù)字信號編碼或解碼成多種格式,用于重放、顯示、存儲或轉(zhuǎn)換。DVR 102A 還可以使用加密器/解密器158將數(shù)字數(shù)據(jù)加密或解密,用于存儲、轉(zhuǎn)移、顯示或重放數(shù)字 數(shù)據(jù)信號。在一個實施例中,DVR 102A與業(yè)務(wù)提供者103通信,其提供節(jié)目指南數(shù)據(jù)、圖形資 源(例如品牌圖標和圖片)、業(yè)務(wù)信息、軟件程序、廣告和其它使得DVR 102A獨立于業(yè)務(wù)提 供者104執(zhí)行自主記錄和顯示功能的數(shù)據(jù)格式。在DVR 102A和業(yè)務(wù)提供者104之間的通信利用安全的分布體系,在DVR 102A和業(yè)務(wù)提供者104之間傳輸數(shù)據(jù),使得業(yè)務(wù)數(shù)據(jù)和用 戶的隱私得到保護。3. 0用于DVR業(yè)務(wù)提供者的分布式備份在實施例中,用于DVR業(yè)務(wù)提供者的備份以分布的方式存儲在客戶端設(shè)備中。在 分布式網(wǎng)絡(luò)中,DVR業(yè)務(wù)被業(yè)務(wù)提供者提供。中心服務(wù)器處理來自多個客戶端設(shè)備的數(shù)據(jù), 并且接著存儲該被處理過的數(shù)據(jù),為的是提供DVR業(yè)務(wù)。正如在此使用的,“中心服務(wù)器” 可以指代一個或多個處理數(shù)據(jù)的服務(wù)器。中心服務(wù)器可以在主數(shù)據(jù)庫中存儲處理過的數(shù) 據(jù)。正如在此使用的,“主數(shù)據(jù)庫”可以指代一個或多個數(shù)據(jù)庫,中心服務(wù)器向其存儲、獲取 (retrieve)或修改數(shù)據(jù)。正如在此使用的,“客戶端設(shè)備”可以指代,但并不限制于DVR、移 動設(shè)備或個人計算機。移動設(shè)備是任意設(shè)備,其可以設(shè)計成可攜帶,并且使用電池供電。移 動設(shè)備包括,但并不限制于蜂窩電話、PDA、便攜視頻播放器、便攜音樂播放器、便攜媒體播 放器或便攜DVR。在實施例中,中心服務(wù)器以分布的方式存儲中心數(shù)據(jù)庫的備份,被處理數(shù)據(jù)的子 集備份到客戶端設(shè)備自身。用戶可以擁有一個或多個客戶端設(shè)備,并且在其家中或辦公室 中維護這些客戶端。備份到由用戶擁有的所述一個或多個客戶端的被處理過數(shù)據(jù)的子集是 與用戶或特定客戶端設(shè)備相關(guān)的被處理過的數(shù)據(jù)的子集。連接到客戶端設(shè)備的中心服務(wù)器和主要數(shù)據(jù)庫在圖2中被說明。在圖2中,帶有 主數(shù)據(jù)庫的中心服務(wù)器200通過網(wǎng)絡(luò)202被連接到多個客戶端設(shè)備。便攜設(shè)備204A、DVR 204B和DVR 204C代表同一用戶擁有的三個客戶端設(shè)備。個人計算機206A和DVR 206B代 表兩個客戶端設(shè)備,所述兩個客戶端設(shè)備由相同用戶擁有并且通過網(wǎng)絡(luò)202連接到中心服 務(wù)器200。DVR 208是通過網(wǎng)絡(luò)202連接到中心服務(wù)器200的單獨的客戶端設(shè)備。在實施例中,通過確定,對于每一個客戶端設(shè)備,存儲在中心服務(wù)器數(shù)據(jù)庫上的數(shù) 據(jù)的哪個數(shù)據(jù)子集應(yīng)該被存儲在特定客戶端設(shè)備中而進行已處理過數(shù)據(jù)的備份。對所述數(shù) 據(jù)子集的確定可以基于一些任意因素,包括但不限于,擁有特定客戶端設(shè)備的用戶、特定客 戶端設(shè)備上的可用編碼、或者特定客戶端設(shè)備上的可用空間。所述數(shù)據(jù)子集的確定隨著實 施的不同而變化。一旦對所述數(shù)據(jù)子集的確定完成,所述數(shù)據(jù)子集隨后被發(fā)送至并且存儲 在特定的客戶端設(shè)備中??梢杂糜趫?zhí)行備份和隨后備份數(shù)據(jù)的更新的方法是同步。正如在此使用的,“同 步”是指保持位于兩個分開位置的數(shù)據(jù)處于同樣的狀態(tài)。同步可以被中心服務(wù)器或任何客 戶端設(shè)備初始化。例如,處理過的數(shù)據(jù)可以被存儲在主數(shù)據(jù)庫中以及客戶端設(shè)備中。執(zhí)行同 步,使得存儲在客戶端設(shè)備中的數(shù)據(jù)子集與存儲在主數(shù)據(jù)庫中的對應(yīng)數(shù)據(jù)處于同樣狀態(tài)。可以利用同步,使得在主數(shù)據(jù)庫和備份中的數(shù)據(jù)狀態(tài)保持一致。在這種情況下,備 份的目的地是客戶端設(shè)備自身。在實施例中,備份系統(tǒng)可以利用任何同步協(xié)議。同步協(xié)議 是所遵循的程序,為的是保證備份數(shù)據(jù)精確地反映主數(shù)據(jù)庫中的數(shù)據(jù)。在實施例中,中心服務(wù)器和客戶端設(shè)備之間,每天進行多次更新。當備份至單個大 型數(shù)據(jù)庫時,由于必須存儲和傳輸大量數(shù)據(jù),每天只能完成一次備份。在分布式備份的實施 例中,備份以較小的增量存儲,并且可以更頻繁地執(zhí)行而無需額外的努力,因為備份是不同 時發(fā)生的事件,其與每個客戶端基礎(chǔ)的信息改變有關(guān)。增加的更新導致在客戶端系統(tǒng)中作 為備份存儲的數(shù)據(jù)與較少更新的存儲數(shù)據(jù)相比具有更好的完整性,或者有可能更加當前。
8在另一實施例中,無論何時探測到作為用戶行動的結(jié)果數(shù)據(jù)發(fā)生改變,則更新發(fā)生。在這種 情況下,如果用戶執(zhí)行大量的行動,許多更新可以發(fā)生,但是如果用戶不那么活躍,幾乎沒 有更新會發(fā)生。在另一實施例中,即使當用戶執(zhí)行大量行動時,更新只周期性地發(fā)生在客戶 端與業(yè)務(wù)通信的時候。在任何情況下,基于最新的更新,作為備份存儲的數(shù)據(jù)保持為當前的 存儲在主數(shù)據(jù)庫中的數(shù)據(jù)。在實施例中,從客戶端設(shè)備發(fā)送至服務(wù)器的請求具有增長的標識數(shù)字,其標明存 儲在客戶端設(shè)備上的數(shù)據(jù)的狀態(tài)。在另一實施例中,從服務(wù)器發(fā)送至客戶端業(yè)務(wù)的請求也 具有增長的標識數(shù)字,其標明存儲在主數(shù)據(jù)庫上的數(shù)據(jù)的狀態(tài)。例如,從客戶端業(yè)務(wù)發(fā)送至 服務(wù)器的請求可以具有標識數(shù)字1005。一旦服務(wù)器接收到請求,服務(wù)器檢驗與該特定用戶 相關(guān)的存儲的信息。如果服務(wù)器包含來自請求1004的信息,則服務(wù)器只會請求客戶端設(shè)備 上的區(qū)別于存儲在主數(shù)據(jù)庫上的信息的特定信息。因為標識數(shù)字是連續(xù)的并且是增加的, 標識數(shù)字只會增加1的事實將會表明,客戶端設(shè)備和主數(shù)據(jù)庫上數(shù)據(jù)的狀態(tài)不會相差很 多。如果標識數(shù)字的差別很大,則數(shù)據(jù)狀態(tài)的改變會更明顯。如果來自服務(wù)器或客戶端設(shè)備的請求具有比請求的接受者更小的數(shù)字,則表明做 出請求的服務(wù)器或客戶端具有比接受者更早的數(shù)據(jù)。在這種情況下,沒有數(shù)據(jù)更新可能發(fā) 生,或者更新的數(shù)據(jù)可以由請求的接受者以更當前的數(shù)據(jù)傳輸至服務(wù)器或客戶端設(shè)備,為 的是更新較早的數(shù)據(jù)。如果請求的接受者不能匹配用戶的請求,這表明接受者還沒有存儲 該特定的數(shù)據(jù),或者數(shù)據(jù)特定的子集已經(jīng)丟失。在這種找不到匹配的情況下,將執(zhí)行將所有 數(shù)據(jù)轉(zhuǎn)移至接受者服務(wù)器或客戶端,以便特定用戶做出請求。在實施例中,數(shù)據(jù)轉(zhuǎn)移可以全部轉(zhuǎn)移或部分轉(zhuǎn)移。在全部轉(zhuǎn)移中,對于特定用戶的 所有數(shù)據(jù)被從客戶端設(shè)備發(fā)送至數(shù)據(jù)庫。這在找不到該特定用戶信息的情況下可以發(fā)生, 正如服務(wù)器失效或災(zāi)難性數(shù)據(jù)丟失的情況一樣。還可以有部分轉(zhuǎn)移,其并不發(fā)送整體的數(shù) 據(jù),但是只發(fā)送兩個數(shù)據(jù)源之間的改變。根據(jù)本發(fā)明的實施例,向客戶端設(shè)備存儲備份的步驟在圖3中被說明。在步驟300 中,中心服務(wù)器確定存儲在主數(shù)據(jù)庫上的數(shù)據(jù)的子集,以便向特定客戶端設(shè)備存儲數(shù)據(jù)作 為備份。存儲的數(shù)據(jù)的子集可以是與特定用戶相關(guān)的子集,該用戶擁有客戶端設(shè)備,或者這 些用戶共享設(shè)備(例如四口之家具有與設(shè)備相關(guān)的不同的用戶特征)。接著,在步驟302中, 中心服務(wù)器向特定客戶端設(shè)備發(fā)送較早確定的數(shù)據(jù)的子集,用于備份。在步驟304中,服務(wù) 器檢查存儲在備份中的數(shù)據(jù)的狀態(tài)。可以通過帶有與最近的數(shù)據(jù)相關(guān)的較大數(shù)字而不是較 低數(shù)字的非遞減數(shù)字表明所述狀態(tài)。在步驟308中,服務(wù)器向客戶端設(shè)備發(fā)送數(shù)據(jù),以更新 備份數(shù)據(jù)。由服務(wù)器發(fā)送的數(shù)據(jù)是基于客戶端設(shè)備上數(shù)據(jù)的狀態(tài)的。如果狀態(tài)很接近,則 幾乎沒有數(shù)據(jù)被更新。如果狀態(tài)非常不同,則會發(fā)送更多的數(shù)據(jù),以更新備份數(shù)據(jù)。3.1數(shù)據(jù)沖突和策略在數(shù)據(jù)與服務(wù)器和客戶端沖突的情況下,策略控制哪些信息被存儲在數(shù)據(jù)庫中。 正如此處使用的,“策略”是當多于一組數(shù)據(jù)要被存儲時,指明哪些特定數(shù)據(jù)將被存儲在數(shù) 據(jù)庫中的指令。策略可以是最新的信息,而不管將要存儲在備份中的資源。其它策略可以 包括但不限于,從客戶端設(shè)備發(fā)送的信息是最新的信息,以及客戶端經(jīng)常對存儲在數(shù)據(jù)庫 中的數(shù)據(jù)重寫。在實施例中,策略由服務(wù)器唯一控制。憑借服務(wù)器對策略的控制,備份系統(tǒng)的復雜
9度在服務(wù)器中被保持。這保護了客戶端設(shè)備不受執(zhí)行策略的復雜度的影響。此外,如果策略 總是需要被修改,則僅服務(wù)器需要被更新,而不是依賴于服務(wù)器的每個單個的客戶端設(shè)備。 在另一實施例中,客戶端設(shè)備可以唯一地被策略控制。在又一實施例中,策略被服務(wù)器和客 戶端設(shè)備共同控制,并且在沖突信息情況下,服務(wù)器和客戶端設(shè)備彼此協(xié)商,為的是確定哪 個數(shù)據(jù)將被存儲。3. 2存儲的數(shù)據(jù)的類型在實施例中,存儲在備份中的數(shù)據(jù)僅是必須對于服務(wù)器能正確運行。由此,只與服 務(wù)器的運行相關(guān)的數(shù)據(jù)以及與特定用戶相關(guān)的數(shù)據(jù)被作為備份數(shù)據(jù)存儲在客戶端設(shè)備中。在實施例中,備份可以只包括內(nèi)容數(shù)據(jù)的元數(shù)據(jù)。正如在此使用的,元數(shù)據(jù)可以指 代,但并不限于制作的記錄的列表、記錄時間、對電視節(jié)目首輪或重復放映片段的指示、下 載或購買內(nèi)容列表、在客戶端設(shè)備上播放的游戲的高分、用戶的特別偏好、觀察到的用戶偏 好、季節(jié)轉(zhuǎn)換、用戶個人信息(信用卡信息、家庭住址、航行地址、其它賬戶信息等)和特定 記錄的等級。該元數(shù)據(jù)允許業(yè)務(wù)提供者對用戶執(zhí)行DVR業(yè)務(wù)。在另一實施例中,備份可以由內(nèi)容和與內(nèi)容相關(guān)的元數(shù)據(jù)完成。正如在此使用的, 內(nèi)容可以包括,但并不限于廣播內(nèi)容、視頻、下載的內(nèi)容、游戲、音樂以及用戶體驗的任何其 它的客戶端設(shè)備能夠播放或者不能播放的媒體。在實施例中,用戶擁有的每個客戶端設(shè)備被用于存儲與用戶有關(guān)的數(shù)據(jù)的備份。 這種冗余實踐,使得如果一個客戶端設(shè)備與主數(shù)據(jù)庫同時失效,數(shù)據(jù)仍然被存儲在另一客 戶端設(shè)備中并且可以從該客戶端設(shè)備中恢復。并不限制只在DVR客戶端設(shè)備中存儲備份。 備份可以被存儲在個人計算機客戶端設(shè)備或用戶擁有的移動客戶端設(shè)備上。此外,僅元數(shù) 據(jù)或者內(nèi)容與元數(shù)據(jù)的備份可以被備份到其它用戶擁有的客戶端設(shè)備。在實施例中,將要被存儲的數(shù)據(jù)的類型和數(shù)量可以取決于客戶端設(shè)備和服務(wù)器之 間傳輸?shù)臄?shù)據(jù)的形式??蛻舳嗽O(shè)備和服務(wù)器之間數(shù)據(jù)的傳輸可以通過高速寬帶網(wǎng)絡(luò)或者通 過低比特率方法,例如通過電話線。如果服務(wù)器探測到客戶端設(shè)備和服務(wù)器之間的連接是 通過低速電話線,則作為備份存儲的數(shù)據(jù)量可以是最小量。如果客戶端設(shè)備和服務(wù)器之間 的連接是通過高度寬帶網(wǎng)絡(luò),則更多的數(shù)據(jù)可以被作為備份存儲,并且可以包括更多的數(shù) 據(jù)類型,例如內(nèi)容。3. 3隱私和加密因為被備份至特定用戶的客戶端設(shè)備的信息是與該特定用戶或共享該客戶端設(shè) 備的用戶相關(guān)的數(shù)據(jù),對于用戶的隱私問題被減輕了。例如,如果有兩個客戶端設(shè)備,一個 由用戶A擁有,而另一個由用戶B擁有,用戶A擁有的信息將備份在用戶A的客戶端設(shè)備上, 而用戶B的信息將只備份在用戶B的客戶端設(shè)備上。在實施例中,沒有對于與一個客戶端 設(shè)備相關(guān)的一個用戶的個人信息存儲在另一用戶的客戶端設(shè)備中。在另一實施例中,帶有 個人信息的數(shù)據(jù)被安全加密地存儲在另一用戶的客戶端設(shè)備上。在實施例中,存儲在客戶端設(shè)備上的數(shù)據(jù)可以包括敏感信息,例如包括地址和金 融數(shù)據(jù)的用戶信息。金融數(shù)據(jù)可以包括,但并不限于用于購買的信用卡信息,賬戶信息和其 它金融數(shù)據(jù)。如果敏感數(shù)據(jù)被備份在客戶端設(shè)備上,當使用加密時,該信息將被存儲和傳 輸。任何形式的加密可以被使用,并且在信息被認為是非常敏感時,例如社會保險號碼,可 以使用更安全形式的加密。在實施例中,只有服務(wù)器能夠?qū)⒓用艿臄?shù)據(jù)解密。
3. 4數(shù)據(jù)獲取在實施例中,數(shù)據(jù)被存儲在用戶擁有的每一個客戶端設(shè)備中。通過在多個客戶端 設(shè)備中存儲備份,這在災(zāi)難性數(shù)據(jù)丟失的時候保護了數(shù)據(jù)。例如服務(wù)器以及用戶的一個DVR 或客戶端設(shè)備可能失效并且丟失數(shù)據(jù)。在這種情況下,服務(wù)器將能夠從用戶的另一客戶端 設(shè)備再恢復數(shù)據(jù)。備份數(shù)據(jù)存儲并不限于只向用戶的DVR存儲數(shù)據(jù),還可以向用戶的任意 客戶端設(shè)備存儲。這可以包括任意客戶設(shè)備,憑此,用戶可以與DVR業(yè)務(wù)互動。這可以包括, 但并不限于便攜DVR、個人計算機和移動設(shè)備,例如PDA或蜂窩電話。數(shù)據(jù)的完整性通過在 多個位置存儲數(shù)據(jù)而得以保證。此外,數(shù)據(jù)可以從另一客戶端設(shè)備中恢復,如果多個設(shè)備失 效。如果中心數(shù)據(jù)出現(xiàn)損失,則中心數(shù)據(jù)通過獲取來自多個客戶端設(shè)備的被損失的任 意數(shù)據(jù)得以恢復。由此中心數(shù)據(jù)的小的數(shù)據(jù)子集可能出現(xiàn)損失或者整體中心數(shù)據(jù)可能出現(xiàn) 損失,在任一情形下,從客戶端設(shè)備中恢復數(shù)據(jù)。在一個實施例中,一旦中心服務(wù)器探測到 整體中心數(shù)據(jù)出現(xiàn)損失,服務(wù)器連同與服務(wù)器通信的任意客戶端設(shè)備執(zhí)行更新。如果對于 特定用戶的信息在中心數(shù)據(jù)中損失,則客戶端設(shè)備將對于特定用戶所有信息傳輸至主數(shù)據(jù) 庫。這允許所有丟失的中心數(shù)據(jù)被快速恢復。在另一實施例中,一旦中心服務(wù)器探測到中心數(shù)據(jù)損失,中心服務(wù)器等待來自每 個客戶端設(shè)備的更新請求,為的是獲取損壞的數(shù)據(jù)。這個過程比服務(wù)器做出更新請求需要 更長時間,但是可以減輕中心服務(wù)器的負擔,因為中心服務(wù)器可以只處理有限數(shù)量的連接。 這種實施例的優(yōu)勢是,中心服務(wù)器只負責服務(wù)器需要的數(shù)據(jù),因為當每個客戶端設(shè)備聯(lián)系 服務(wù)器時,服務(wù)器處理該特定客戶端設(shè)備的需求。在又一實施例中,一旦中心服務(wù)器探測到中心數(shù)據(jù)的損失,中心服務(wù)器對于特定 數(shù)量的客戶端設(shè)備執(zhí)行更新請求,直到所有客戶端設(shè)備已經(jīng)被聯(lián)系。選擇哪組客戶端設(shè)備 首先更新可以改變。這可以包括通過地理區(qū)域或者通過記錄來選擇,表明如果信息可用,哪 些客戶端設(shè)備已經(jīng)最為活躍。限制服務(wù)器與客戶端設(shè)備的連接數(shù),保證了更新和連接被正 確處理。在實施例中,如果存儲在客戶端設(shè)備上的數(shù)據(jù)出現(xiàn)損失,則通過從另一客戶端設(shè) 備獲取對應(yīng)于損失數(shù)據(jù)的數(shù)據(jù)而恢復之前存儲在客戶端設(shè)備上的數(shù)據(jù)。這在用戶擁有多于 一個客戶端設(shè)備的情況下可以發(fā)生。如果用戶擁有多于一個客戶端設(shè)備,被處理過的數(shù)據(jù) 的備份被存儲在每一個客戶端設(shè)備上。一旦客戶端設(shè)備探測到數(shù)據(jù)已經(jīng)損失,客戶端設(shè)備 可以向另一個也存儲數(shù)據(jù)備份的客戶端設(shè)備發(fā)送請求。該請求被限制為同一用戶擁有的設(shè) 備,因為存儲的備份被限制為與特定用戶相關(guān)的數(shù)據(jù)的子集。在實施例中,服務(wù)器向客戶端 發(fā)出共享認證。共享認證告知每個客戶端設(shè)備其被授權(quán)與哪些其它客戶端設(shè)備共享數(shù)據(jù)。圖4示出了根據(jù)本發(fā)明的實施例,當客戶端在線出現(xiàn)時,用于數(shù)據(jù)恢復的步驟。在 步驟400中,由于主數(shù)據(jù)庫的失效,數(shù)據(jù)在主數(shù)據(jù)庫中損失。在步驟402中,客戶端設(shè)備之 一在探測到損失數(shù)據(jù)之后,產(chǎn)生更新請求。中心服務(wù)器接受請求并且對存儲在主數(shù)據(jù)庫和 客戶端設(shè)備上的數(shù)據(jù)的狀態(tài)做比較。在這種如步驟404所示的特定情況下,因為損失,在主 數(shù)據(jù)庫沒有找到與用戶相關(guān)的數(shù)據(jù)。在步驟406中,對于特定的客戶端設(shè)備,數(shù)據(jù)通過客戶 端設(shè)備向主數(shù)據(jù)庫發(fā)送所有的備份數(shù)據(jù)而進行恢復。基于對于作為客戶端設(shè)備的每個特定 用戶的一個或多個客戶端設(shè)備探測到數(shù)據(jù)損失,通過中心服務(wù)器進行更新請求,重復這些
11數(shù)據(jù)恢復步驟。4. 0企業(yè)系統(tǒng)的分布式備份分布式備份可以用于任何企業(yè)網(wǎng)絡(luò)系統(tǒng),而且并不限于用于DVR業(yè)務(wù)提供者的系 統(tǒng)。具有多客戶端的中心服務(wù)器的企業(yè)系統(tǒng)可以執(zhí)行該備份系統(tǒng)。企業(yè)系統(tǒng)表現(xiàn)出同樣的 困難,因為大量數(shù)據(jù)必須用能夠勝任的備份系統(tǒng)存儲。去除對單個大型數(shù)據(jù)庫備份的需要, 可以節(jié)約很多成本。在網(wǎng)絡(luò)上的包括具有多客戶端的中心服務(wù)器的任意類型的系統(tǒng)可以使用分布式 備份。例如,在蜂窩電話網(wǎng)絡(luò)或個人計算機網(wǎng)絡(luò)中,其中用戶定制了集中式業(yè)務(wù),中心數(shù)據(jù) 的備份很關(guān)鍵。分布式備份的技術(shù)和方法可以應(yīng)用到使用中心服務(wù)器的任何企業(yè)系統(tǒng)或系統(tǒng)中。 中心服務(wù)器和數(shù)據(jù)庫存儲的數(shù)據(jù)的子集,作為備份存儲在企業(yè)系統(tǒng)的客戶端中。任何類型 的數(shù)據(jù)都可以由此方法備份,包括但不限于,共同記錄、消費者數(shù)據(jù)或人力資源信息。為了 保證數(shù)據(jù)作為備份存儲是當前的,經(jīng)常執(zhí)行更新。如果考慮到數(shù)據(jù)是敏感的,數(shù)據(jù)和數(shù)據(jù)的 傳輸出于隱私而被加密?;谠谥鲾?shù)據(jù)庫上探測的數(shù)據(jù)損失,數(shù)據(jù)可以從客戶端中恢復。此 外,基于在客戶端設(shè)備之一上探測到數(shù)據(jù)損失,通過來自主數(shù)據(jù)庫的數(shù)據(jù)將新的備份存儲 在修復的客戶端中。5. 0執(zhí)行機構(gòu)圖5是說明了計算機系統(tǒng)500的結(jié)構(gòu)圖,本發(fā)明的實施例可以基于該計算機系統(tǒng) 被執(zhí)行。計算機系統(tǒng)500包括總線502或其它通信機構(gòu),用于傳輸信息,還包括耦合到總線 502上的處理器504,用于處理信息。計算機系統(tǒng)500還包括主存儲器506,例如隨機存取存 儲器(RAM)或其它耦合到總線502的動態(tài)存儲設(shè)備,用于存儲信息和將被處理器504執(zhí)行 的指令。在執(zhí)行處理器即將執(zhí)行的指令過程中,主存儲器506還可以用于存儲臨時變量或 其它中間信息。計算機系統(tǒng)進一步包括只讀存儲器(ROM) 508或其它耦合到總線502的用 于存儲用于處理器504的靜態(tài)信息和指令的靜態(tài)存儲設(shè)備。設(shè)有存儲設(shè)備510,例如磁盤或 光盤,并且所述存儲設(shè)備耦合到總線502,用于存儲信息和指令。計算機系統(tǒng)500可以通過總線502耦合到顯示器512,例如陰極射線管(CRT),用 于向計算機用戶顯示信息。輸入設(shè)備514,包括字母數(shù)字和其它鍵,被耦合到總線502,用于 與處理器504傳送信息和命令選擇。另一種用戶輸入設(shè)備是光標控制516,例如鼠標、跟蹤 球或光標方向鍵,用于與處理器504傳送信息和命令選擇,以及控制光標在顯示器512上的 移動。這種輸入設(shè)備典型地在兩個軸,第一軸(例如χ)和第二軸(例如y)上具有兩個自 由度,允許設(shè)備在平面內(nèi)明確位置。本發(fā)明涉及計算機系統(tǒng)500的使用,計算機系統(tǒng)用于執(zhí)行此處描述技術(shù)。根據(jù)本 發(fā)明的一個實施例,響應(yīng)于處理器504執(zhí)行主存儲器506包含的一個或多個指令中的一個 或多個序列,那些技術(shù)被計算機系統(tǒng)500執(zhí)行。這些指令可以從另一計算機可讀媒介,例如 存儲設(shè)備510,被讀入主存儲器506。主存儲器506包含的指令序列的執(zhí)行,使得處理器504 執(zhí)行此處描述的處理步驟。在可替換實施例中,硬件電路可以被使用,代替或聯(lián)合軟件指令 以執(zhí)行本發(fā)明。由此,本發(fā)明的實施例并不限于硬件電路和軟件的任何具體組合。這里使用的術(shù)語“計算機可讀媒介”指代參與提供數(shù)據(jù)的任意媒介,所述數(shù)據(jù)引起 機器以具體形式操作。在使用計算機系統(tǒng)500執(zhí)行的實施例中,多種可用計算機處理的媒
12體被引入,例如向處理器504提供指令以執(zhí)行。這樣的媒介可以有許多形式,包括但不限于 存儲媒體和傳輸媒體。存儲媒體包括永久性媒體和非永久性媒體。永久性媒體包括,例如 光盤或磁盤,例如存儲設(shè)備510。非永久性媒體包括動態(tài)存儲器,例如主存儲器506。傳輸 媒體包括同軸電纜、銅線和光纖,包括包含總線502的線。傳輸媒體還可以采取聲波或光波 形式,例如那些在聲波和紅外數(shù)據(jù)通信中生成的聲波或光波。所有這些媒體必須是有形的, 使得媒體承載的指令可以被將指令讀入機器的物理機構(gòu)探測。常見的計算機可讀媒介包括,例如塑料磁盤、軟盤、硬盤、磁帶或任意其它磁媒介、 CD-ROM、任意其它光媒介、穿孔卡片、紙帶、任意其它帶有孔的形式的物理媒介、RAM、PROM、 EPR0M、閃存EPR0M、任意其它存儲芯片或磁帶、如下文描述的載波、或者計算機可以讀取的 任意其它媒介。計算機可讀媒介的多種形式可以被用于承載處理器504執(zhí)行的一個或多個指令 中的一個或多個序列。例如,指令最初可以被裝載于遠程計算機的磁盤上。遠程計算機可以 向其動態(tài)存儲器加載指令,并且使用調(diào)制解調(diào)器通過電話線發(fā)送指令。計算機系統(tǒng)500的 本地調(diào)制解調(diào)器可以在電話線上接收數(shù)據(jù),并且使用紅外發(fā)射器將數(shù)據(jù)轉(zhuǎn)換為紅外信號。 紅外探測器可以接收紅外信號承載的數(shù)據(jù),并且適當?shù)碾娐房梢詫?shù)據(jù)放在總線502上。 總線502將數(shù)據(jù)載至主存儲器506,處理器504從此獲取并且執(zhí)行指令。在處理器504執(zhí)行 之前或之后,主存儲器506接收的指令可選擇地被存儲在存儲設(shè)備510上。計算機系統(tǒng)500還包括耦合到總線502的通信接口 518。通信接口 518提供耦合 到網(wǎng)絡(luò)連接520的雙向數(shù)據(jù)通信,網(wǎng)絡(luò)連接被連接到本地網(wǎng)絡(luò)522。例如,通信接口 518可 以是綜合業(yè)務(wù)數(shù)字網(wǎng)(ISDN)卡或調(diào)制解調(diào)器,以向?qū)?yīng)的電話線類型提供數(shù)據(jù)通信連接。 作為另一例子,通信接口 518可以是局域網(wǎng)(LAN)卡,以向兼容的LAN提供數(shù)據(jù)通信連接。 無線連接也可以被執(zhí)行。在這樣的任意執(zhí)行中,通信接口 518發(fā)送并且接收電、電磁或光信 號,其承載代表多種類型信息的數(shù)字數(shù)據(jù)流。網(wǎng)絡(luò)連接520典型地通過一個或多個網(wǎng)絡(luò),向其它數(shù)據(jù)設(shè)備提供數(shù)據(jù)通信。例如, 網(wǎng)絡(luò)連接520可以通過本地網(wǎng)絡(luò)522,向主機524或因特網(wǎng)業(yè)務(wù)提供者(ISP)操作的數(shù)據(jù)設(shè) 備提供連接。ISP526通過環(huán)球包數(shù)據(jù)通信網(wǎng)(現(xiàn)在普遍指因特網(wǎng))528依次提供數(shù)據(jù)通信 業(yè)務(wù)。本地網(wǎng)522和因特網(wǎng)528都使用承載數(shù)字數(shù)據(jù)流的電、電磁或光信號。向計算機系 統(tǒng)500或從計算機系統(tǒng)500承載數(shù)字數(shù)據(jù)的,經(jīng)過不同網(wǎng)絡(luò)的信號,以及網(wǎng)絡(luò)連接520上和 經(jīng)過通信接口 518的信號,是傳輸信息的載波的典型形式。計算機系統(tǒng)500可以通過網(wǎng)絡(luò)、網(wǎng)絡(luò)連接520和通信接口 518發(fā)送消息和接收數(shù) 據(jù),包括程序代碼。在因特網(wǎng)的例子中,服務(wù)器530可以經(jīng)過因特網(wǎng)528、ISP526、本地網(wǎng)絡(luò) 522和通信接口 518,傳輸用于應(yīng)用程序的請求代碼。接收的代碼可以在其被接收時由處理器504執(zhí)行,并且/或者存儲在存儲設(shè)備 510,或其它永久性存儲中用于之后執(zhí)行。在這種方式中,計算機系統(tǒng)500可以獲得載波形 式的應(yīng)用代碼。在前述說明書中,本發(fā)明的實施例已經(jīng)參照多個隨實施而變化的具體細節(jié)得以描 述。因此,本發(fā)明的唯一并排他的以及本發(fā)明申請人所期望的指示標為本申請公開的權(quán)利 要求,所述權(quán)利要求為該權(quán)利要求公布的特定形式,包括任何后續(xù)的修正。對于包含在該權(quán) 利要求中的術(shù)語的在此清楚設(shè)定的任何定義將限制當該術(shù)語用于所述權(quán)利要求時的該術(shù)語的意義。因此,無限制地,元件、特性、特征、優(yōu)點或在權(quán)利要求中清楚描述的屬性將以任 意方式限制該權(quán)利要求的范圍。因此,說明書和附圖被視為是說明性的而不起限制作用。6. 0 例子在實施例中,方法包括或載有指令的一個或多個序列的計算機可讀媒介,當被一 個或多個處理器執(zhí)行時,該指令使得一個或多個處理器執(zhí)行下列步驟通過業(yè)務(wù)保持一組 數(shù)據(jù),包括一個或多個向多個客戶端設(shè)備提供業(yè)務(wù)的服務(wù)器;其中該組數(shù)據(jù)包括多個數(shù)據(jù) 子集;在多個客戶端設(shè)備中存儲數(shù)據(jù)組的子集;其中在多個客戶端設(shè)備中存儲數(shù)據(jù)組的子 集的步驟包括,對于多個客戶端設(shè)備的每個特定客戶端數(shù)據(jù),確定應(yīng)該存儲在特定客戶端 設(shè)備中的數(shù)據(jù)子集,并且向特定客戶端設(shè)備發(fā)送數(shù)據(jù)子集,用于存儲在特定客戶端設(shè)備中; 探測數(shù)據(jù)組的毀損;并且響應(yīng)于探測數(shù)據(jù)組的毀損,從存儲在多個客戶端設(shè)備中的數(shù)據(jù)子 集恢復數(shù)據(jù)組。在實施例中,方法或計算機可讀媒介進一步包括,其中保持數(shù)據(jù)組進一步包括接 收指示存儲在特定客戶端設(shè)備上的數(shù)據(jù)子集的狀態(tài);并且基于指示,發(fā)送數(shù)據(jù)用于存儲在 特定客戶端設(shè)備上。在實施例中,方法或計算機可讀媒介進一步包括,其中至少一個客戶端設(shè)備是 DVR、移動設(shè)備或個人計算機。在實施例中,方法或計算機可讀媒介進一步包括,其中數(shù)據(jù)的至少一個子集以加 密狀態(tài)被存儲在多個客戶端設(shè)備中。在實施例中,方法或計算機可讀媒介進一步包括,其中數(shù)據(jù)使用加密傳輸被發(fā)送。在實施例中,方法或計算機可讀媒介進一步包括,其中存儲在特定設(shè)備上的數(shù)據(jù) 的子集與控制該特定設(shè)備的用戶相關(guān)。在實施例中,系統(tǒng)包括多個客戶端設(shè)備;并且業(yè)務(wù)包括一個或多個服務(wù)器;業(yè)務(wù) 保持向多個客戶端設(shè)備提供業(yè)務(wù)的數(shù)據(jù)組;其中數(shù)據(jù)組包括多個數(shù)據(jù)子集;在多個客戶端 設(shè)備中存儲數(shù)據(jù)組的子集;其中在多個客戶端設(shè)備中存儲數(shù)據(jù)組的子集的步驟包括,對于 多個客戶端設(shè)備的每個特定客戶數(shù)據(jù),確定應(yīng)該存儲在特定客戶端設(shè)備中的數(shù)據(jù)子集,并 且向特定客戶端設(shè)備發(fā)送數(shù)據(jù)子集,用于存儲在特定客戶端設(shè)備中;探測數(shù)據(jù)組的毀損; 并且響應(yīng)于探測數(shù)據(jù)組的毀損,從存儲在多個客戶設(shè)備中的數(shù)據(jù)子集恢復數(shù)據(jù)組。在實施例中,系統(tǒng)進一步包括接收指示存儲在特定客戶端設(shè)備上的數(shù)據(jù)子集的狀 態(tài);并且基于指示,發(fā)送數(shù)據(jù)用于存儲在特定客戶端設(shè)備上。在實施例中,系統(tǒng)進一步包括,其中至少一個客戶端設(shè)備是DVR、移動設(shè)備或個人 計算機。在實施例中,系統(tǒng)進一步包括,其中數(shù)據(jù)的至少一個子集以加密狀態(tài)被存儲在多 個客戶端設(shè)備中。在實施例中,系統(tǒng)進一步包括,其中數(shù)據(jù)使用加密傳輸被發(fā)送。在實施例中,系統(tǒng)進一步包括,其中存儲在特定設(shè)備上的數(shù)據(jù)的子集與控制該特 定設(shè)備的用戶相關(guān)。
權(quán)利要求
一種方法,包括通過業(yè)務(wù)保持一組數(shù)據(jù),包括一個或多個向多個客戶端設(shè)備提供業(yè)務(wù)的服務(wù)器;其中該組數(shù)據(jù)包括多個數(shù)據(jù)子集;在多個客戶端設(shè)備中存儲所述數(shù)據(jù)組的子集;其特征在于在多個客戶端設(shè)備中存儲所述數(shù)據(jù)組的子集的步驟包括,對于多個客戶端設(shè)備的每個特定客戶數(shù)據(jù),確定應(yīng)該存儲在特定客戶端設(shè)備中的數(shù)據(jù)子集,并且向特定客戶端設(shè)備發(fā)送數(shù)據(jù)子集,用于存儲在特定客戶端設(shè)備中;探測數(shù)據(jù)組中的毀損;并且響應(yīng)于探測數(shù)據(jù)組中的毀損,從存儲在多個客戶端設(shè)備中的所述數(shù)據(jù)子集恢復所述數(shù)據(jù)組。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,保持所述數(shù)據(jù)組進一步包括接收指示存 儲在特定客戶端設(shè)備上的數(shù)據(jù)子集的狀態(tài);并且基于所述指示,發(fā)送數(shù)據(jù)用于存儲在特定客戶端設(shè)備上。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,至少一個客戶端設(shè)備是DVR、移動設(shè)備或 個人計算機。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,數(shù)據(jù)的至少一個子集以加密狀態(tài)被存儲 在多個客戶端設(shè)備中。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于使用加密傳輸發(fā)送數(shù)據(jù)。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于存儲在特定設(shè)備上的數(shù)據(jù)的子集與控制 所述特定設(shè)備的用戶相關(guān)。
7.一種載有指令的一個或多個序列的計算機可讀存儲媒介,當所述指令被一個或多個 處理器執(zhí)行時,引起一個或多個處理器執(zhí)行下列步驟通過業(yè)務(wù)保持一組數(shù)據(jù),包括一個或多個向多個客戶端設(shè)備提供業(yè)務(wù)的服務(wù)器;其中所述數(shù)據(jù)組包括多個數(shù)據(jù)子集;在多個客戶端設(shè)備中存儲所述數(shù)據(jù)組的子集;其特征在于,在多個客戶端設(shè)備中存儲所述數(shù)據(jù)組的子集的步驟包括,對于多個客戶 端設(shè)備的每個特定客戶數(shù)據(jù),確定應(yīng)該存儲在特定客戶端設(shè)備中的數(shù)據(jù)子集,并且向特定 客戶端設(shè)備發(fā)送所述數(shù)據(jù)子集,用于存儲在特定客戶端設(shè)備中;探測所述數(shù)據(jù)組中的毀損;并且響應(yīng)于探測數(shù)據(jù)組中的毀損,從存儲在多個客戶端設(shè)備中的所述數(shù)據(jù)子集恢復數(shù)據(jù)組。
8.根據(jù)權(quán)利要求7所述的計算機可讀存儲媒介,其特征在于,保持所述數(shù)據(jù)組進一步 包括接收指示存儲在特定客戶端設(shè)備上的所述數(shù)據(jù)子集的狀態(tài);并且基于所述指示,發(fā)送數(shù)據(jù)用于存儲在特定客戶端設(shè)備上。
9.根據(jù)權(quán)利要求7所述的計算機可讀存儲媒介,其特征在于,至少一個客戶端設(shè)備是 DVR、移動設(shè)備或個人計算機。
10.根據(jù)權(quán)利要求7所述的計算機可讀存儲媒介,其特征在于,數(shù)據(jù)的至少一個子集以 加密狀態(tài)被存儲在多個客戶端設(shè)備中。
11.根據(jù)權(quán)利要求7所述的計算機可讀存儲媒介,其特征在于,使用加密傳輸發(fā)送數(shù)據(jù)。
12.根據(jù)權(quán)利要求7所述的計算機可讀存儲媒介,其特征在于,存儲在特定設(shè)備上的數(shù) 據(jù)的子集與控制該特定設(shè)備的用戶相關(guān)。
13.一種系統(tǒng),包括多個客戶端設(shè)備;并且包括一個或多個服務(wù)器的業(yè)務(wù);所述業(yè)務(wù)保持向多個客戶端設(shè)備提供業(yè)務(wù)的數(shù)據(jù)組;其中所述數(shù)據(jù)組包括多個數(shù)據(jù)子集;在所述多個客戶端設(shè)備中存儲數(shù)據(jù)組的子集;其特征在于,在多個客戶端設(shè)備中存儲數(shù)據(jù)組的子集的步驟包括,對于多個客戶端設(shè) 備的每個特定客戶數(shù)據(jù),確定應(yīng)該存儲在特定客戶端設(shè)備中的數(shù)據(jù)子集,并且向所述特定 客戶端設(shè)備發(fā)送數(shù)據(jù)子集,用于存儲在所述特定客戶端設(shè)備中;探測數(shù)據(jù)組中的毀損;并且響應(yīng)于探測數(shù)據(jù)組中的毀損,從在多個客戶端設(shè)備中存儲的數(shù)據(jù)子集恢復數(shù)據(jù)組。
14.根據(jù)權(quán)利要求13所述的系統(tǒng),其特征在于,保持數(shù)據(jù)組進一步包括接收指示存儲 在特定客戶端設(shè)備上的數(shù)據(jù)子集的狀態(tài);并且基于所述指示,發(fā)送數(shù)據(jù)用于存儲在特定客戶端設(shè)備上。
15.根據(jù)權(quán)利要求13所述的系統(tǒng),其特征在于,至少一個客戶端設(shè)備是DVR、移動設(shè)備 或個人計算機。
16.根據(jù)權(quán)利要求13所述的系統(tǒng),其特征在于,數(shù)據(jù)的至少一個子集以加密狀態(tài)被存 儲在多個客戶端設(shè)備中。
17.根據(jù)權(quán)利要求13所述的系統(tǒng),其特征在于,使用加密傳輸發(fā)送數(shù)據(jù)。
18.根據(jù)權(quán)利要求13所述的系統(tǒng),其特征在于存儲在特定設(shè)備上的數(shù)據(jù)的子集與控 制該特定設(shè)備的用戶相關(guān)。
全文摘要
本發(fā)明提供一種用于執(zhí)行數(shù)據(jù)的分布式備份和獲取的方法。數(shù)據(jù)被多個客戶端設(shè)備發(fā)送,以便被服務(wù)器處理并且隨后存儲在數(shù)據(jù)庫中。存儲在數(shù)據(jù)庫中的處理過的數(shù)據(jù)的子集被備份到多個客戶端設(shè)備中的每一個。對于用戶擁有的一個或多個特定的客戶端設(shè)備,存儲在所述一個或多個特定的客戶端設(shè)備上的處理過的數(shù)據(jù)的子集是與用戶相關(guān)的處理過的數(shù)據(jù)的子集。服務(wù)器和客戶設(shè)備被更新,以保持數(shù)據(jù)庫中的與備份的已被處理過數(shù)據(jù)的子集處于同樣狀態(tài)。在數(shù)據(jù)庫或客戶設(shè)備失效的情況下,可以利用存儲在數(shù)據(jù)庫或者存儲在多個客戶端設(shè)備上的已處理過的數(shù)據(jù)恢復已處理過的數(shù)據(jù)。
文檔編號G06F13/00GK101918927SQ200980102518
公開日2010年12月15日 申請日期2009年1月12日 優(yōu)先權(quán)日2008年1月18日
發(fā)明者亞當·費德, 布賴恩·比奇, 詹姆斯·巴頓 申請人:Tivo有限公司