TWI454934B - 用於部份項目改變之追跡及同步化之方法、電腦儲存媒體及計算裝置 - Google Patents

用於部份項目改變之追跡及同步化之方法、電腦儲存媒體及計算裝置 Download PDF

Info

Publication number
TWI454934B
TWI454934B TW095126585A TW95126585A TWI454934B TW I454934 B TWI454934 B TW I454934B TW 095126585 A TW095126585 A TW 095126585A TW 95126585 A TW95126585 A TW 95126585A TW I454934 B TWI454934 B TW I454934B
Authority
TW
Taiwan
Prior art keywords
group
properties
property
item
changed
Prior art date
Application number
TW095126585A
Other languages
English (en)
Other versions
TW200712912A (en
Inventor
Alec C Dun
Joseph R Warren
Robert R Novitskey
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=37758031&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=TWI454934(B) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of TW200712912A publication Critical patent/TW200712912A/zh
Application granted granted Critical
Publication of TWI454934B publication Critical patent/TWI454934B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/278Data partitioning, e.g. horizontal or vertical partitioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/02Comparing digital values
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/216Handling conversation history, e.g. grouping of messages in sessions or threads
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/234Monitoring or handling of messages for tracking messages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/275Synchronous replication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail

Description

用於部份項目改變之追跡及同步化之方法、電腦儲存媒體及計算裝置
本發明係有關於在一含有一經組態設定以按本地方式快取自一伺服器所下載之各項目並且將該等項目之變化予以週期性地同步之客戶端的分散式計算系統中,藉由僅對一項目中既已改變之選定局部進行同步,而無須監視該項目內各個別性質的變化,來提高該客戶端與該伺服器間之同步速率的方法。
膝上型、手持式及其他可攜式電腦或計算裝置隨著裝置變得愈來愈小且愈來愈價廉而日益普及。此外,可攜式電腦的經改良操作速度及處理能力既已提高其普遍性。許多可攜式電腦能夠儲存多個應用程式,像是聯絡簿、遊戲、計算機等等。可在製造過程中將這些應用程式永久地安裝在可攜式電腦內(即如在「唯讀記憶體(ROM)」上)。或另者,可由使用者在購買可攜式電腦之後安裝一或更多的應用程式。
藉由此等裝置與日俱增的普及度與計算能力,人們開始利用不止一個單一計算裝置來儲存資料及應用程式。例如,除其常規的桌上型電腦外,許多人經常會另利用膝上型電腦。而也會使用其他裝置,像是行動電話、「個人數位助理(PDA)」、「網際網路服務」等等,以儲存資料及應用程式。
這些計算裝置各者可為一分散式計算系統的一部分,其中可將相關資訊關聯且儲存在許多該等裝置上。例如,一在一快取模式下運行的電子郵件客戶端,係經設計以在該客戶端上按本地方式保留一份郵件箱的拷貝。據此,若一使用者擁有一PDA及一桌上型工作電腦,則各裝置可按本地方式將電子郵件項目儲存於其上。理想上,PDA的電子郵件資訊應與在該桌上型工作電腦處的電子郵件資訊相符合。
當將相同或相關資訊儲存在兩地方時,對於資料而言有可能在一位置處改變,而在另一處則不變。可透過同步化作業來克服這個問題,這一種自動化處理程序,嘗試著確保在該分散式系統內的各裝置會具有最新近的資訊或資料。然而,同步化作業本身就有一些問題。例如,當兩個裝置彼此相互同步時,通常該等系統會按逐一項目的基礎來追蹤變化,即如每份電子郵件訊息、每位聯絡人、每個約會(appointment)等等。從而,當兩個裝置或計算系統試圖要進行同步時,就會將整個項目下載,而無論經改變之性質(即如旗標、附件、本體、收信人等等)的大小究係如何地微小皆然。對於一些高頻寬傳送系統而言,這種完整項目追蹤及同步處理雖不會造成太大的問題,若確有,然藉較慢的鏈結,即如無線連接,下載或串流傳送整個項目或將會嚴重地限制住資料傳送速率。
例如考慮一電子郵件訊息,其中,除他者外,含有一後續(follow-up)旗標性質,收信人性質、一本體性質以及一或更多附件性質。若該後續旗標在顏色上有所改變,則當與另一裝置進行同步處理時,即必須下載整個項目。若在該電子郵件內的附件及其他資料相當龐大,則在該後續旗標內此相對微小位元組大小的變化會造成需下載整個項目;從而在緩慢資料鏈結上會致生大量的資料傳送時間。
即使是使用高頻寬資料鏈結,吾人或仍不欲下載整個項目。例如,當一客戶是根據所下載之位元組的數量來支付下載項目時,若在一項目上僅有少量資料改變,即如前述的後續旗標,則該客戶必須支付待予下載的整個項目。此一金錢浪費可造成使用者產生挫折感。
有些複製系統可按逐一項目之基礎對各裝置進行追蹤及同步,而為一種對於上述系統缺陷的解決方案。一些複製系統雖提供以性質為基礎的變化追蹤功能,然這些系統仍具有其內含性的問題。例如,對於大量項目進行各項個別性質的追蹤會造成高儲存及高處理兩者的要求。從而,這些追蹤及同步處理系統對於多數應用來說不實用。
可透過本發明之示範性具體實施例,克服如前論證之現有同步化作業系統的各項瑕疵與缺點。請注意,後載概述係為供以介紹一種按一較簡化形式,而在後文詳細說明所進一步描述的選擇概念。然本發明內容並非為以識別所主張之標的之各項關鍵或基本特徵,亦非用以作為在決定所主張標的之範圍上的輔助。
在一具體實施例裡,提供各項方法、系統及電腦程式產品,可僅藉由選擇一項目中既經變動之各局部以提高一客戶端與一伺服器之間的同步速率,而無需監視在該項目內之各個別性質的變化。在此具體實施例中,收到一為對自前次於一伺服器與一客戶端間同步之後即已改變的各資料項目進行同步之請求,其中該資料項目代表一項具有複數個可經修改或另予異動之性質的完整訊息。回應於該資料同步請求,首先決定一資料項目確已自前次同步之後出現變化。此資料項目包含複數個性質群組,而根據針對於如何將複數個性質群組各者內之性質相關聯的業界智慧及語意瞭解,來預先定義該等群組。其次,其決定了自從前次同步之後複數個性質群組中之至少一性質群組確已改變。從而,可對該至少一性質群組進行同步,而無須串流傳送整個至少一資料項目,藉此在當進行同步時,可減少客戶端與伺服器之間的資料傳送時間。
在另一具體實施例裡,提供各項用以追蹤變化之方法、系統及電腦程式產品,俾選擇一項目之各局部以提供一客戶端與一伺服器之間的同步速率,而無需監視在該項目內之各個別性質的變化。在此具體實施例,將為同步目的以監視複數個資料項目,其中該等複數個資料項目之各者呈現一具複數個可被修改或另異動之性質的完整訊息。在此監視過程中,決定自從該客戶端及該伺服器間的前次同步之後一資料項目既已改變,其中該資料項目包含複數個性質群組其係根據針對於如何將複數個性質群組各者內之性質相關聯的業界智慧及語意瞭解,來預先定義該等群組。
根據資料項目既已改變的決定結果,將一關聯於資料項目的項目變化識別碼加以更新,此者可用以識別資料項目既已改變之狀態,藉以供與該客戶端進行同步。從而,亦可決定自從前次同步之後複數個性質群組中之至少一性質群組確已改變。根據至少一性質群組既已改變的決定結果,將一關聯於至少一性質群組的性質群組變化識別碼加以更新,而這將被用來識別該至少一性質群組既已改變之狀態,使得只有該至少一性質群組與該客戶端同步,藉以縮短該客戶端與該伺服器之間的資料傳送時間。
在另一具體實施例裡,本發明亦提供一或更多於其上已儲存一項目資料結構的電腦可讀取媒體。該項目資料結構包含下列各項:複數個性質,該等能夠被修改或另改變;一項目變化識別碼,此係用以表示自從前次同步之後一或更多複數個性質是否既經修改或另變化;複數個性質群組,各者包含來自該等複數個性質之一或更多性質,其係根據針對於如何將複數個性質群組各者內之性質相關聯的業界智慧及語意瞭解,來預先定義該等群組;以及複數個群組變化識別碼,該等係為表示該等複數個性質群組中哪些既已改變,藉以僅對該等既已改變之性質群組進行同步,而無須同步整個項目。
本發明之其他特性與優點將在後續說明中敘述,且某些部分自該說明看來可屬顯見,或者可由本發明之實作所學得。可藉由在後載申請專利範圍中所特別指出之各項設備及組合,來瞭解並獲致本發明的各項特性與優點。本發明之該等及其他特性將可自後載說明及各隨附圖式而更加顯見,或者可藉如後文所列陳的本發明實作所學得。
本發明可延伸至用於藉由僅一項目中既已改變之各選定局部進行同步,以提高同步速率的方法、系統及電腦程式產品。本發明之各項目具體實施例可包含一含有各種電腦硬體或模組之特殊目的或一般目的電腦,即如底下按進一步細節所討論者。
在本處詳細討論各項具體實施例之前,定義一些全篇申請案文中將使用的術語會有所幫助。首先,一「資料項目」或「項目」在此是用以表示一具有可經修改或另改變之性質的完整訊息。例如,一資料項目可為完整電子郵件訊息、一完整聯絡人、一完整約會、一完整任務、一完整便利貼,或是可在兩個計算裝置間經予同步之任何其他型式的訊息。一項目之「性質」是代表一訊息中可獨立於其他性質而經修改或另改變的局部。此等性質之範例包含像是後隨旗標、優先權旗標、一項目之本體、個別附件、個別收信人、一訊息狀態、訊息優先權,或是一訊息之任何其他眾知性質的事項。各示範性具體實施例說明可將各性質劃分成「性質群組」,而這可如後文所詳述般,根據針對於如何將該等性質群組內之各者的各性質相關聯的業界智慧與語意瞭解,來預先定義該等群組。
在此之各項具體實施例可改變處置項目同步處理,以及在即如一伺服器與一客戶端之兩個裝置間進行追蹤的方式。可將對於各項目的變化放置在上述之經良好定義的性質群組內,並且按獨立於其他者的方式來追蹤各群組。例如,某一群組可含有一項目的本體,另一群組可含有附件,而又另一群組可含有高度變動性質,像是一後隨旗標、一讀取狀態、一優先權旗標等等。注意,由於各性質群組係基於業界智慧而經良好定義,因此在此之具體實施例可在一資料傳送速率與對於實體複製系統所需要的儲存及/或處理要求之間取得平衡。換言之,本發明可藉由僅對一項目之各選定局部進行同步,以提高一客戶端與一伺服器之間的同步速率,而無須監視該項目內之各個別性質的變化。從而,若對在一相當龐大電子郵件訊息上的一微小資料性質加以變動(即如後續旗標),則此變化將不再觸發在一快取模式下運行之對一客戶端的大量下載作業,亦將不會有對各項個別性質進行追蹤之高度儲存與處理的要求。
在描述本發明各項具體實施例的進一步細節之前,將參照於第3圖以描述一可用於實作本發明原理的適當計算架構。在後文說明中,除另指出外,將參照於由一或更多電腦所執行之各種動作與象徵性操作表示來描述本發明的各項具體實施例。據此,應瞭解此等經常被稱為由電腦所執行之動作及操作,包含由該電腦之處理單元對於各電子信號的操縱作業,而該等信號表示按一結構化形式的資料。此一操縱作業可將資料加以轉換,或是將該等維持在該電腦之記憶體系統內的各位置處,如此可按一熟諳本項技藝之人士所眾知的方式,將電腦操作重新組態設定或另予變更。其中保留有資料的資料結構,係在該記憶體裡具有由該資料之格式所定義出的各特定性質之各實體位置。然而,本發明原理雖係按如前述內文所述,然此非為以具備限制性質,即如熟諳本項技藝之人士將能瞭解亦可按硬體方式實作出如後文所述的多項動作及操作。
現請參照各圖式,其中各類似參考編號是指各相仿構件,而本發明之原理係按在一適當之計算環境下而實作所敘述。後續說明係基於所述之各項本發明具體實施例,而即以在此並未明確地描述的替代性具體實施例而言,不應被視為限制本發明。
第3圖顯示一可用於該等裝置的示範性電腦架構略圖。為加以說明,該架構僅描繪一適當環境的單一範例,且非為意指任何有關於本發明之使用範圍或功能性的限制。亦不應將各計算系統解譯為具有任何與第3圖中所述各元件之任一者或組合相關聯的依賴性或要求性。
本發明原理可藉無數種其他一般目的或特殊目的之計算或通訊環境或者組態而運作。適合於運用在本發明的眾知計算系統、環境及組態範例包含,然不限於此,行動電話、口袋型電腦、個人電腦、伺服器、多重處理器系統、微處理器式系統、迷你電腦、主機電腦,以及含有任何上述系統或裝置的分散式計算環境。
在其多數的基本組態中,一計算系統300通常會含有至少一處理單元302及記憶體304。該記憶體304可為揮發性(像是RAM)、非揮發性(即如ROM、快取記憶體等),或是一些兩者之組合。此多數基本組態可如第3圖中由虛線306所示。在本說明以及在申請專利範圍中,一「計算系統」係經定義如任何硬體元件,或者是能夠運行軟體、韌體或微程式碼俾執行一功能之硬體的組合。而甚至可將該計算系統分散,藉以達到一分散式功能。
該儲存媒體裝置可擁有額外的特性與功能性。例如,該等可包含額外儲存(可移除及非可移除),這些包含,但不限於此,PCMCIA卡、磁性及光碟片,以及磁帶。此等額外儲存在第3圖中係按如可移除儲存308及非可移除儲存310所述。電腦儲存媒體可包含按任何用以儲存即如電腦可讀取指令、資料結構、程式模組或其他資料之資訊的方法或技術所實作之揮發性及非揮發性、可移除及非可移除媒體。記憶體304、可移除儲存308及非可移除儲存310皆為電腦儲存媒體的範例。電腦儲存媒體包含,但不限於此,RAM、ROM、EEPROM、快取記憶體、其他記憶體技術、CD-ROM、數位光碟片、其他光學儲存、磁匣、磁帶、磁碟儲存、其他磁性儲存裝置,以及任何其他可用以儲存所欲資訊並且可由該計算系統所存取的媒體。
即如在此所用,該術語「媒體」或「元件」可指在該計算系統上所執行之軟體物件或副程式。可按如在該計算系統上所執行之物件或處理程序(即如按個別的執行緒方式),以實作出在此所述的不同元件、模組、引擎及服務。本揭所述之各項系統及方法雖係較佳地按軟體所實作,然亦可且慮及按硬體,或是軟體及硬體之組合,的實作方式。在本說明中,一「計算實體」可如本揭前文中所定義之任意計算系統,或是任何運行於一計算系統上的模組或各模組之組合。
該計算系統300亦可含有各通訊頻道312,該等可讓主機能夠與其他的系統及裝置在例如該網路320上進行通訊。各通訊頻道312為通訊媒體之範例。通訊媒體通常是具體化為在一像是載波或其他傳送機制之經調變資料信號中的電腦可續取指令、資料結構、程式模組或其他資料,並且含有任何資訊遞送媒體。藉由範例,而非限制,通訊媒體包含像是有線網路及直接網路連接之有線媒體,以及像是音響、RF、紅外線及其他無線媒體的無線網路。該術語「電腦可讀取媒體」,即如在此所用,包含儲存媒體及通訊媒體兩者。
該計算系統300亦可具有各種輸入元件314,像是鍵盤、滑鼠、光筆、語音輸入元件、觸控輸入裝置等等。輸出元件316包含螢幕顯示器、喇叭、印表機等等,以及為以驅動該等的顯析模組(通常是稱為「配接器」)。該計算系統300具有一電源供應器318。所有這些元件皆屬業界眾知者,並且無須在此詳細討論。
第1A圖說明一分散式系統100,此係為以根據各項示範性具體實施例,在一客戶端105與一伺服器125之間對各性質群組104進行同步處理。該分散式系統100可類似於前文參照第3圖所敘述之計算系統300,但並非必然如此。即如在第1A圖所述,該分散式系統100包含一客戶端105,此者可為數個計算裝置110、115等等中的任一者。例如,該客戶端105可為一無線裝置,像是一電話110、PDA 110、膝上型電腦115或任何其他計算裝置。
注意,本發明在其中資料鏈結為緩慢的系統,即如無線通訊,之中是最為有利。然本發明並不限於此等鏈結,且可運用於任何環境下。例如,即如前述,可將本發明運用在要求使用者依照自一伺服器125傳送至一客戶端105之資料量來支付服務的系統。從而,除經明確主張者外,在此任何對於在一伺服器125與一客戶端105間之特定資料鏈結的特定參考是僅為說明性質之目的所運用,並且非為以意指限制或另窄化本發明之範圍。
進一步注意到本發明雖將根據一伺服器125及一客戶端105所描述,然確可互換這些裝置在描述本揭各項目具體實施例中的角色。例如,後文說明將根據各項目170所描述,該等出現在該伺服器125上,其中該等變化是藉由將該等變化串流傳送至該客戶端105所同步。然注意到亦可追蹤在該客戶端105上的變化並更新至該伺服器125。據此,除另明確地主張以外,在該伺服器125與該客戶端105-以及在此為該客戶端105或該伺服器125所運用的任何特定裝置-之間所進行的後文敘述內容,僅係在此為以示範之目的,而非為意圖限制或另窄化本發明範圍。
即如第1A圖中所示,該伺服器125含有複數個檔案夾165(即如檔案夾「A」),其中各檔案夾165可代表或含有某種型式的項目170。例如,一檔案夾165可含有或包含電子郵件項目訊息,而其中另一檔案夾165可含有聯絡人項目資訊。當然,即如前述,存在有廣泛各種可根據本文所提供之各項具體實施例而經同步的項目型式。此外,在實作本發明上可運用除該等檔案夾165以外的其他拓樸(topology)及資料組態。例如,亦可將表單或是其他各種區隔並儲存不同型式項目170之方式運用於本發明。因而,任何特定的拓樸、資料格式及/或儲存階層在此僅係用於示範目的,且非為以限制或另窄化本發明範圍。
各檔案夾165如前述般將含有複數個項目170(即如項目「A」)。與各項目170相關者係一項目變化識別碼(ID)175,而即如後文中所詳述,當自該伺服器125與該客戶端105間的前次同步處理之後一項目170及其性質既經改變後,可利用此識別碼進行識別。同時在各項目170中亦含有各性質群組170(即如性質群組「A」)。即如前述,該等性質群組180係依照對於該等複數個性質群組180內之各性質如何地相關聯的業界智慧及與語意瞭解所預先定義。例如,可根據各性質的變化性、典型的記憶體大小要求及/或其他考量,來決定各性質群組。此外,一性質群組180可包含具有高度變化性的性質,像是訊息狀態、後續旗標、優先權旗標,或是其他經頻繁修改及/或改變的性質。
替代地,或併同,可依照各性質當相較於其他性質時的相對大小來定義該性質群組180。例如,附件通常比起其他性質會具有較大的大小,並因此可常駐於單一性質群組內,而較小的資料大小,像是收信人及/或一訊息的本體,可常駐於另一性質群組180內。對於那些與其他性質並不關聯的性質而言可甚至有一雜項(miscellaneous)性質群組180。
注意,各性質群組180雖係基於目前業界智慧而預先定義,然確可對此等知識加以變更。從而,提供各性質群組180的各具體實施例具有可延展性、可插置性及可擴充性。亦即各性質群組180係按一可對各個性質群組180內之各性質進行移動、刪除、新增及/或另予修改的方式所組態設定。類似地,可對各性質群組180本身予以重新定義、建立及/或刪除。此外,各性質群組180的定義可根據項目170的型式而改變。例如,對於一電子郵件項目170所定義之各性質群組180可為異於對聯絡人項目170所定義的各性質群組180。從而-即如後文中所進一步描述-該客戶端105將需要知道對於各種檔案夾165內之各項目170現所使用的適當對映方式190。
無論是如何地定義各性質群組180,各性質群組180通常既已指配有一性質群組變化ID 185,而此者可在當對該特定性質群組180出現變化時用以進行識別。例如,項目/性質群組模組150可監視出現於一項目170,並且在此一項目170內的各性質群組180,的變化。當發生變化時,變化ID產生器160可改變該項目變化ID 175以及適當的性質群組變化ID 185。
在一些具體實施例裡,該項目變化ID 175及該性質群組變化ID 185可為相同的識別碼,此者表示即如該項目及性質群組被同時地更新。然而,應注意例如在當使用「全球唯一識別碼(GUID)」時則並不必然如此。應進一步注意到該等變化ID 175、185可為任何眾知之文數字或其他識別性資料物件。例如,該等變化ID 175、185可分別地為該項目170及/或性質群組185的雜湊。當然,即如前述,可根據一簡單的GUID計數器來產生該等變化識別資料175、185。亦注意到本發明可利用其他為以對各項目170及性質群組180之變化進行識別的機制。從而,除另明確主張者外,任何特定型式之變化識別碼175、185,及/或如在此所示為以識別各項變化之使用方式皆僅具示範目的,而非為以限制或另窄化本發明範圍。
無論識別碼175、185之型式如何,或是如何地識別輸出各性質群組的變化,當該伺服器125內之項目/性質模組150識別出該等一或更多項目170的變化時,即可向該客戶端105發出一此項目變化120的通知,以嘗試提示該客戶端105與該伺服器125進行同步。當然,本發明亦可使用其他為提示一客戶端105以與該伺服器125進行同步的機制。例如,該客戶端105可週期性地,亦即按某一預定間隔,向該伺服器125詢查以與其進行同步。因此,任何於一客戶端105與一伺服器125間之特定同步化程序的啟動作業在此僅係為用以於示範目的,且非為以限制或另窄化本發明範圍。
然而,當啟動同步程序後,該伺服器125應收到一來自該客戶端105的同步請求130。示範性具體實施例提供該同步請求130可包含一或更多的項目符號135(即如項目符號「A」),該等可用於決定自從一客戶端105與一伺服器125間之前次同步後是否出現變化。在詳細地討論該項目符號135之前,應注意並不必然地需要將各項目符號135納入在該同步請求130之內。例如,其他的交握(handshake)機制可另提示該客戶端105以將該等項目符號135發送至該伺服器125。或另者,可既已將該等項目符號135儲存在該伺服器125上。從而,除另明確地主張以外,在此所用的將該等項目符號135納入該同步請求130內僅為示範目的,而非為以限制或另窄化本發明範圍。
與各項目符號135相關聯者為一項目變化ID 140。對於各項目變化ID 140或項目符號135,亦存在有複數個性質群組變化ID 145(即如性質群組「A」變化ID)。該項目變化ID 145及各性質群組變化ID 145代表該等之前關聯於對該客戶端105與該伺服器125間之前次同步的各項目170與相對應性質群組180的識別碼。換言之,可在前次與該伺服器125進行同步之過程中,既已將各項目符號135交傳予該客戶端105,而作為應存資料的一部分。然後可由該變化識別碼比較器155利用此資料部分135,藉以決定出自從前次同步之後既已改變的各項目170,而更詳細地說是在各項目170內的各性質群組180。
例如,各項目符號135可與各項目170相比較。更詳細地說,可利用該變化識別碼比較器155,來比較在各項目符號135及真實項目170兩者內的各變化ID 175、140及性質群組ID 185、145。若數值不同,亦即對於該項目符號135之項目變化ID 140及一性質群組ID 145並不相符於該項目變化ID 175及性質群組ID 185,則在該項目170及該性質群組180內出現有一變化。即如前文所述,雖然用於項目符號135之變化ID係與在該伺服器125上的各項目170及性質群組180相比較,以決定自從前次同步之後項目170及性質群組180是何時已改變,,但其他用於決定項目170及性質群組180何時或是否已發生變化的決定方法亦可用於本發明。例如,該伺服器125可將為以決定哪些變化所需要的所有資訊儲存在該伺服器125側上,而無需變化ID 140、145、175、185。從而,除了明確地主張者外,在此所述般該等變化ID 140、145、175、185之特定使用,係僅作為說明目的,且非為以限制或另窄化本發明範圍。
無論是如何地識別出該等既已改變的性質群組104,皆可將此等既已改變之性質群組104納入在該同步項目串流102內,然後根據後文所述之示範性具體實施例將此串流發送至該客戶端105。此外,即如前述,亦可在該同步項目串流102之前、之間或之後發送一由一特定版本化ID 195所識別的對映190。同時亦如後文中所將詳細討論者,在該同步項目串流102內的各性質群組104應能識別出用於此一性質群組104之特定對映190的版本化195。
第1B圖說明一對於一特定版本識別碼195之對映190的範例區塊圖。即如所示,該對映190包含對於各項目106之複數個項目106及各性質群組108、114。當然,在任何特定項目106內可有任意數量的可經識別性質群組108、114。此外,各性質112、116亦對於各個特定性質群組108所對映。例如,該性質群組「A」108可含有性質112「C」及「E」,而性質群組「B」114可含有性質「A」106。
現考量一範例,其中該對映190可識別出一電子郵件項目106,此者具一對於相對微小、變化不定之資料性質的性質群組「A」108,而。對於性質群組「B」114之對映則含有較龐大的性質。據此,在該性質群組「A」108內的性質「C」112及性質「E」112可分別地為一後續旗標及優先權旗標。另一方面,對於性質群組「B」114的性質「A」115可為附件檔案。當然,亦可將其他提供對映190的眾知方式運用於本發明。從而,除另明確地主張者外,在第1B圖中所提供的對映組態在此僅為以說明之目的,而非為以限制或另窄化本發明範圍。
注意,該等目前及先前性質群組對映190可為固著於該伺服器資料庫上,且可由該版本ID 195所存取。若遭遇到一具有未知版本識別碼195的項目170,或是該者並未擁有一群組識別碼,則應將其對待如該者並未具有任何性質群組180,並且應按如一整體方式而對待。據此,若需要將一即如該等之項目170下載至一客戶端105,則可將整體項目170串流至102。
一具體實施例透過一在此稱為快速傳送之串流傳送機制提供同步化作業。此程序可讓該伺服器125能夠藉由將經改變性質群組104分開,並且將該等序列化為一原始二進位串流,以回應於該同步請求130。該伺服器125將盡其可能多的訊息102裹裝在一固定大小的回應緩衝器內,並將該資料102送返至該客戶端105。然後該客戶端105可剖析該資料,並且藉由將該位元組串流102解序列化以重建各性質群組104。後文中將根據第1C圖以顯示該位元組串流102之一範例格式,此圖說明一同步項目串流102的範例,亦即該同步項目串流102或將看似之一有線傳送(或無線傳送)資料表示方式。
該同步項目串流102的第一局部為一IncrSyncProgressItem 118,此者經新增於該串流102的開始處,以提供關於所有在該回應串流102內所後隨而來之各項目的總體大小之資訊。其次,IncrSyncProgressPerltem 122表示該同步項目串流102之次一項目的總體大小。在該同步項目串流102內的下一個群組124為如該標號IncrSyncPropGroupMap所表示的對映,此者告知該客戶端105在該串流102內之次一或各項目所使用的為哪一性質群組對映。因此,可利用該IncrSyncPropGroup標號,以及一在各個性質群組180內之各性質ID的陣列或列表,來識別出各種性質群組180。換言之,該同步項目串流102可含有一對於如本文所述之各種版本ID 195的對映190或一組對映190。然應注意,即如前述,並非必然地需將該等對映190納入在該同步項目串流102內,而是可後隨或前領(lead)於該同步串流102。
下一組標籤126,亦即IncrSynPropGroup ID,可表示在該串流內之次一或各項目所使用的是哪一性質群組對映。亦即,在此群組126內的各版本ID可識別出對於後隨項目的對映190版本識別碼195。其次,該IncrSnyChgltem 128為一表示一經改變項目之開始的標號,此者可經後隨以一在該項目內應予改變之各性質群組的陣列。例如,即如在IncrSnyChgPropGroup 132標號中所示’可識別出各項既已改變的性質群組。例如,即如串流134中所示,該IncrSnyChgPropGroup可藉由首先令DelProp構件刪除目前的ItemRecipients,然後利用StartRecip及EndRecip標號來替換該收信人性質,以改變各收信人性質。即如另一範例,串流136內的構建包含一對於各項目附件的IncrSyncChgPropGroup,而使得能夠利用DelProp,並且利用NewAttach及EndAttach標號來替換該收信人性質,以刪除該目前ItemAttachments。當然,可將其他的性質群組納入在該串流內,即如由底下提供之橢圓形所表示者。
其他的示範性具體實施例經提供以藉由在此所提供之目前具體實施例,將對各項目進行同步處理之各現有方法加以合併。例如,在其中並未提供該項對映的傳統系統裡,或會在該同步項目串流102內下載整個項目。例如,即如在各構件138中所示,一IncrSyncProgressPerltem表示次一項目之總體大小,並且該IncrSyncChgltem標註出改變一項目的開始處。後隨之各標號,亦即對於IncrSyncDel、IncrSyncRead及IncrSyncEnd的各標號142,則表示下列事項:分別地為(1)一待自該客戶端105刪除之各項目的列表;(2)一如下之讀取狀態移轉;以及(3)一表示該同步化作業之會期結束的標號。最後,IncrSyncStateBegin表示在該位元組串流中所後隨的最終同步化狀態,並且IncrySyncStateEnd表示該同步化狀態為完成的標號。
亦可根據包含各項功能性步驟及/或非功能性步驟的方法來描述本發明。底下為在實作本發明過程中可執行之各項步驟及/或動作的說明。通常,各功能性步驟是根據所完成之結果來描述本發明,而非功能動作則描述為達到一特定結果之更為特定動作。雖可按一特定次序來描述或主張各功能性步驟及/或非功能性動作,然本發明並不必然地受限於任何特定的步驟及/或動作的排序方式或組合。此外,在各申請專利範圍之表述中-以及在後文對於第2A及2B圖的流程圖說明中-使用各步驟及/或動作是用以表示此等項目之所欲特定使用方式。
第2A及2B圖說明對於本發明之各式示範性具體實施例的流程圖。第2A及2B圖的下列說明有時會是指自第1A-C圖的相對應構件。雖可參照於一來自該等圖式之特定構件,然除明確地主張者外,該等構件僅係為以說明之目的,而非為以限制或窄化本發明範圍。
第2A圖說明一對於一方法200的流程圖,其中該方法可藉由僅對一項目之各選定局部進行同步,以提高一客戶端與一伺服器之間的同步速率,而無須監視該項目內之各個別性質的變化。該方法200包含一接收205一對各資料項目進行同步之請求的動作。例如,該伺服器125可接收同步請求130以對該等自從在該伺服器125及該客戶端105間之前次同步後既已改變之各資料項目170進行同步,其中各資料項目170代表具有各種可經修改或另改變之性質的完整訊息。例如,一資料項目170可為一電子郵件訊息、聯絡人、約會、行事曆資訊、任務、便利貼等等。性質可包含收信人、位址、本體、附件、旗標、狀態識別碼,或是一訊息的任何其他無數種性質。同時注意到在該伺服器125與該客戶端105間為以同步該資料項目170之資料鏈結可為一無線連接,或一有線連接,其中在該客戶端105上之一客戶根據自該伺服器125下載之位元組來支付該資料項目170的同步處理。
該方法200亦包含一為以縮短225客戶端與伺服器間之資料傳送的時間之步驟。更詳細地說,225的步驟包含一決定210的動作,其係自從該前次同步之後一資料項目既已改變。例如,該伺服器125可決定(利用變化ID比較器155或其他本揭方法)一資料項目170自該客戶端105及該伺服器125間的前次同步之後確已改變。即如前述,各資料項目170包含根據對於在各個性質群組內之一或更多性質是如何地相關聯的業界智慧及語意瞭解所預先定義之各性質群組170。例如,在一電子郵件訊息內,各種性質群組可包含本體性質、收信人性質群組、主題性質群組、附件性質群組、優先權旗標性質群組、讀取狀態性質群組、其他性質群組及/或該等之任何組合。當然,可定義其他的性質群組並且可予以延展、插置及擴充,使得能夠增加、刪除或於其內另重新定義在該等性質群組內的各性質,並且使得能夠根據業界智慧的變化增加、刪除或另重新定義該等性質群組各者。
對於225的步驟亦包含決定215在該資料項目內自從前次同步之後哪一性質群組既已改變的動作。例如,可利用該項目/性質群組模組155及變化ID比較器155以決定哪些性質群組180自前次同步後既已改變。從而,對於225之步驟包含一對已改變之群組或各群組進行同步220,而無需串流傳送整個資料項目的動作。特別是,可將具有自前次同步後既已改變之各式性質群組104的同步項目串流102串流傳送至該客戶端105,而無需串流傳送整個資料項目170,藉此在當進行同步時可縮短該客戶端與該伺服器之間的資料傳送時間。
在該資料項目170,以及該性質群組180,內之變化的決定作業可為基於該資料項目與該性質群組的變化識別碼140、145、175、185。此外,對於該資料項目170及該性質群組180的各變化識別碼140、145、175、185可為相同。此外,對於該資料項目170及該性質群組180的各變化識別碼140、145、175、185可為一文數字號碼、全球唯一識別碼或一雜湊值。
其他的具體實施例提供該資料項目170,以及其內的性質群組180,之一對映190。可在發送該等既已改變之性質群組104的同步項目串流之前、之間或之後發送該對映。在任何情況下,該客戶端105可使用該對映190,以知悉有哪些性質被納入該等性質群組180各者之內。此外,可決定一第二資料項目170既已改變,然不具有一性質群組180。在此一實例中,可將整個第二資料170項目串流傳送至該客戶端105。
第2B圖說明一對於一方法250的流程圖,其中該方法可對一項目之各選定局部的變化進行追蹤,以提高一客戶端與一伺服器之間的同步速率,而無須監視該項目內之各個別性質的變化。方法250包含一監視225複數個資料項目為以進行同步之目的的動作。例如,該項目/性質群組模組150或其他元件可監視資料項目170,其中各資料項目170代表一具有複數個可被修改或另改變之性質的完整訊息。該等性質包含如該等先前在此所述者,即如附件、旗標、本體部分等等,但並不侷限於此。
該方法250亦包含一決定260一資料項目自一客戶端及一伺服器間之前次同步後既已改變的動作。例如,可利用該變化識別碼比較器155以決定自從在該伺服器125與該客戶端105間之前次同步後一資料項目170既已改變。即如前述,該資料項目包含複數個性質群組180,而該等係根據對於在各個性質群組內之性質如何相關聯的業界智慧及語意瞭解所預先定義。基於該資料項目既已改變的決定結果,該方法250進一步包含一更新265一項目變化識別碼的動作。例如,可利用該變化識別碼產生器160以更新關聯於一資料項目170之項目變化ID 175,而這將被用以識別該資料項目170既已改變而為以與該客戶端105進行同步。
類似地,該方法250包含一決定270在該資料項目中的哪一性質群組既已改變的動作。亦即,可利用在項目/性質群組模組150內的變化識別碼比較器155,決定出哪些性質群組180既已在一於該客戶端105與該伺服器125間的前次同步之後改變。根據一性質群組既已改變的決定結果,該方法250包含一將一性質群組變化識別碼加以更新275的動作。例如,可利用該變化識別碼產生器160以更新對於該性質群組180的變化ID 185,而這將被用來識別出該性質群組180既已改變,使得僅會將該性質群組180同步於該客戶端105,藉此縮短該客戶端105與該伺服器125之間的資料傳送時間。亦注意也可將上述的其他替代性具體實施例運用於該方法250。
可按其他特定形式具體實作本發明,而不致悖離其精神或基本特徵。所述之各項具體實施例在各方面皆應被視為僅具有示範性質,而非限制性質者。因此,本發明範圍是由後載申請專利範圍,而非由前述說明所表示。所有歸屬於本申請專利範圍等同項目之意義與範疇中的變化皆應被涵蓋於其範圍內。
100...分散式系統
102...同步項目串流
104...性質群組
105...客戶端
106...項目
108...性質群組
110...計算裝置
112...性質
114...性質群組
115...計算裝置
116...性質
118...IncrSyncProgressItem
120...項目變化
122...IncrSyncProgressPerltem
124...IncrSyncPropGroup Map
125...伺服器
126...IncrSynPropGroup ID
128...IncrSnyChgltem
130...同步請求
132...IncrSnyChgPropGroup
134...IncrSnyChgPropGroup
135...項目符號
136...IncrSyncChgPropGroup
138...IncrSyncProgressPe rltem
140...項目變化ID
142...標號(IncrSyncDel、IncrSyncRead及IncrSyncEnd)
144...標號(IncrSyncStateBegin及IncrySyncStateEnd)
145...性質群組變化ID
150...項目/性質群組模組
155...變化識別碼較器
160...變化ID產生器
165...檔案夾
170...項目
175...項目變化ID
180...性質群組
185...性質群組變化ID
190...對映
195...版本化ID
300...計算系統
302...處理單元
304...記憶體
306...基本組態(虛線)
308...可移除儲存
310...非可移除儲存
312...通訊頻道
314...各輸入元件
316...各輸出元件
318...電源供應器
為說明其中可從本發明獲致之前述及其他優點與特性的方式,以上簡述之本發明的更特別敘述將藉由參照於在該等附加圖式中所繪之特定具體實施例來加以顯析。吾人瞭解到這些圖繪說明僅描述本發明之各項典型具體實施例,並因而不應被視為限制其範圍,從而將透過使用附加圖式,藉由額外的特定性與細節以描述並解釋本發明,其中:第1A圖說明一分散式系統,此者係為根據各示範性具體實施例以僅對各性質群組進行同步;第1B圖說明一根據各示範性具體實施例而對於一項目之性質群組的對映;第1C圖說明一根據各示範性具體實施例之示範性同步項目串流;第2A圖說明一根據各示範性具體實施例,為提高一客戶端與一伺服器間之同步速率的方法之流程圖;第2B圖說明一根據各示範性具體實施例,對變化進行追蹤藉以選擇一項目之各局部的方法之流程圖;以及第3圖說明一示範性計算系統,此者可提供一為以實作本發明之各式特性的適當作業環境。
分散式系統...100
同步項目串流...102
性質群組...104
客戶端...105
計算裝置...110
計算裝置...115
項目變化...120
伺服器...125
同步請求...130
項目符號...135
項目變化ID...140
性質群組變化ID...145
項目/性質群組模組...150
變化識別碼比較器...155
變化ID產生器...160
檔案夾...165
項目...170
項目變化識別碼(ID)...175
性質群組...180
性質群組變化ID...185
對映...190
特定版本化ID...195

Claims (49)

  1. 一種提高一客戶端裝置與一伺服器裝置間之同步速率的方法,該方法包含以下步驟:在該伺服器裝置處從該客戶端裝置接收一請求,以對一或更多個資料項目進行同步處理,該一或更多個資料項目在該客戶端裝置與該伺服器裝置間之一前次同步後已改變,該一或更多個資料項目中之每一者包含複數個可修改性質,該一或更多個資料項目中之每一者之該等複數個可修改性質區分為複數個性質群組,該等複數個性質群組包括至少一讀取性質群組與一後續旗標性質群組,該讀取性質群組包括指示該資料項目是否已讀取之一性質,該後續旗標性質群組包括指示該資料項目上是否已設定一後續旗標之一性質,該等性質群組中之至少一者含有該等可修改性質之二或更多者;回應於對該前次同步後已改變之該一或更多個資料項目進行同步之該請求,在該伺服器裝置處決定在該前次同步後已改變之該一或更多個資料項目中之一第一資料項目;在該伺服器裝置處決定該第一資料項目之該等複數個性質群組是否包括一已修改性質群組,其中在該已修改性質群組中之一性質之一值已在該前次同步後改變;以及藉由該伺服器裝置對該已修改性質群組與該客戶端 裝置進行同步,而無須串流傳送該第一資料項目之該等複數個性質群組中之一或更多個未修改性質群組至該客戶端裝置,其中在該等未修改性質群組中之該等性質沒有在該前次同步後改變之值。
  2. 如申請專利範圍第1項所述之方法,其中該第一資料項目係為一電子郵件訊息。
  3. 如申請專利範圍第1項所述之方法,其中該第一資料項目之該等複數個性質群組進一步包括一本體性質群組、一收信人性質群組、一回覆日期性質群組、一主題性質群組、一附件性質群組、一優先權旗標性質群組及一其他性質群組。
  4. 如申請專利範圍第1項所述之方法,其中依據在該等性質群組之每一者內之該一或更多個性質的變化性,來預先定義該等複數個性質群組。
  5. 如申請專利範圍第1項所述之方法,其中該方法進一步包含以下步驟:在該伺服器裝置處重新定義在該等性質群組之一者內的一性質;以及在該伺服器裝置處重新定義該等性質群組之每一者。
  6. 如申請專利範圍第1項所述之方法,其中對該已修改性質群組進行同步之步驟包含經由一有線連接串流傳送該已修改性質群組之步驟。
  7. 如申請專利範圍第1項所述之方法,其中該已修改性質群組係為該等複數個性質群組中之一第一性質群組;其中該方法進一步包含以下步驟:當該第一資料項目改變時,在該伺服器裝置處更新與該第一資料項目相關聯之一項目變化識別碼;以及當該第一性質群組中之該等性質中之一者改變時,在該伺服器裝置處更新與該第一性質群組相關聯之一性質群組變化識別碼;以及其中決定該第一資料項目之該等複數個性質群組是否包括一已修改性質群組之步驟包含以下步驟:在該伺服器裝置處使用該項目變化識別碼與該性質群組變化識別碼以決定該第一性質群組是否已在前次同步後改變。
  8. 如申請專利範圍第1項所述之方法,進一步包含以下步驟:藉由該伺服器裝置將該第一資料項目與該已修改性質群組之一對映從該伺服器裝置發送至該客戶端裝置。
  9. 如申請專利範圍第8項所述之方法,進一步包含以下步驟:在該伺服器裝置處決定一第二資料項目已改變,其中該第二資料項目不具有至少一個性質群組;以及將該第二資料項目之所有者從該伺服器裝置串流傳送至該客戶端裝置。
  10. 一種提高一客戶端裝置與一伺服器裝置間之同步速率的方法,該方法包含以下步驟:在該伺服器裝置處為同步之目的監視複數個資料項目,該等複數個資料項目中之每一者包含複數個可修改性質,在該等複數個資料項目中之每一資料項目中之該等複數個可修改性質區分為複數個預先定義性質群組;在該伺服器裝置處決定該等複數個資料項目中之一第一資料項目是否已在該伺服器裝置與該客戶端裝置間之一前次同步後改變;當決定該第一資料項目已在該前次同步後改變時:在該伺服器裝置處更新與該第一資料項目相關聯之一項目變化識別碼以指示該第一資料項目已在該前次同步後改變;在該伺服器裝置處決定該第一資料項目之該等複數個性質群組是否包括一已修改性質群組,其中在該已修 改性質群組中之一性質之一值已在該前次同步後改變;以及當該伺服器裝置決定該第一資料項目包括一已修改性質群組時:在該伺服器裝置處更新與該已修改性質群組相關聯之一性質群組變化識別碼以指示該已修改性質群組已在該前次同步後改變;以及藉由該伺服器裝置對該已修改性質群組與該客戶端裝置進行同步,而無須同步該第一資料項目之該等複數個性質群組中之一或更多個未修改性質群組,其中在該等未修改性質群組中之該等性質沒有在該前次同步後改變之值。
  11. 如申請專利範圍第10項所述之方法,其中該項目變化識別碼與該性質群組變化識別碼相同。
  12. 如申請專利範圍第10項所述之方法,其中對於該第一資料項目的該項目變化識別碼及該性質群組變化識別碼為文數字號碼資料物件。
  13. 如申請專利範圍第10項所述之方法,其中該項目變化識別碼係為該第一資料項目之一雜湊值,而該性質群組變化識別碼為該已修改性質群組之一雜湊值。
  14. 如申請專利範圍第10項所述之方法,其中依據在該等性質群組之每一者內之該一或更多個性質之典型記憶體大小,來預先定義該等性質群組。
  15. 如申請專利範圍第10項所述之方法,其中該等複數個經預先定義之性質群組為可延展、可插置且可擴充,使得在該等性質群組之每一者內的該等複數個性質可重新定義,並且使得該等性質群組之每一者可重新定義。
  16. 如申請專利範圍第10項所述之方法,其中對該已修改性質群組進行同步之步驟包含使用一資料鏈結從該伺服器裝置下載該已修改性質群組至該客戶端裝置之步驟,該資料鏈結為一無線連接。
  17. 一種電腦儲存媒體,該電腦儲存媒體不由暫態信號構成,該電腦儲存媒體具有下列各者儲存於其上:複數個資料項目;其中該等資料項目係由電子郵件、聯絡人訊息、約會訊息、任務訊息及便利貼訊息所選出;其中該等資料項目之每一者係為一資料結構,該資料結構包含:複數個性質,該等複數個性質中之每一性質具有可修改之一值; 一項目變化識別碼,該項目變化識別碼係指示該等複數個性質中之任何性質之該值是否已在與一客戶端裝置的一前次同步後修改;複數個性質群組,該等複數個性質群組中之每一性質群組包括該等複數個性質中的一或更多個性質,其中依據針對於如何將該等複數個性質群組之每一者內之該一或更多個性質相關之語意瞭解,來預先決定該等複數個性質群組;以及複數個性質群組變化識別碼,該等複數個性質群組變化識別碼中之每一性質群組變化識別碼係指示該等複數個性質群組中之一性質群組中之一值是否已在與該客戶端裝置的該前次同步後改變;以及電腦可執行指令,當藉由一伺服器裝置之一處理器執行該等電腦可執行指令時,造成該伺服器裝置實行以下步驟:從該客戶端裝置接收一請求,以對一或更多個資料項目進行同步處理,該一或更多個資料項目已在該客戶端裝置與該伺服器裝置間之該前次同步後改變;回應於對已在該前次同步後改變之該一或更多個資料項目進行同步之該請求:使用該等複數個資料項目之一給定資料項目之該項目變化識別碼,以決定該給定資料項目之該等複數個性質中之一性質之一值是否已在該前次同步後改變; 使用該給定資料項目之該性質群組變化識別碼,以決定該給定資料項目之該等複數個性質群組中是否包括一已修改性質群組,其中該已修改性質群組中之該等性質中之一者之一值已在該前次同步後改變;以及對該已修改性質群組與該客戶端裝置進行同步,而無須串流傳送該給定資料項目之該等複數個性質群組中之一或更多個未修改性質群組至該客戶端裝置,其中在該等未修改性質群組中之該等性質沒有在該前次同步後改變之值。
  18. 如申請專利範圍第17項所述之電腦儲存媒體,其中該項目變化識別碼、該等複數個性質群組變化識別碼、或是兩者係為該資料結構的一雜湊值、該等複數個性質群組之至少一者、或兩者皆是。
  19. 如申請專利範圍第17項所述之電腦儲存媒體,其中該等資料項目之每一者中之該等複數個性質群組包含以下一或更多者:一本體性質群組、收信人性質群組、回覆日期性質群組、主題性質群組、附件性質群組、優先權旗標性質群組、後續性質群組、一讀取狀態性質群組或是一其他性質群組的。
  20. 一種在一第一裝置與一第二裝置之間對資料項目進行同步之方法,該方法包含以下步驟:在該第一裝置處儲存一電子郵件訊息,該電子郵件訊息包括複數個性質群組,該等性質群組之每一者包括一或更多個性質,該等性質群組之至少一者包括多個性質;以及實行一同步處理,該同步處理對該第一裝置與該第二裝置上之該電子郵件訊息進行同步,該同步處理包括串流傳送一已改變群組至該第二裝置,該電子郵件訊息在該第一裝置與該第二裝置上進行同步,而無須從該第一裝置串流傳送整個該電子郵件訊息至該第二裝置,該已改變群組在該電子郵件訊息之該等性質群組中,該已改變群組中之一或更多個性質已由於一前次同步而改變。
  21. 如申請專利範圍第20項所述之方法,其中該等複數個性質群組包括一後續性質群組與一讀取狀態性質群組。
  22. 如申請專利範圍第20項所述之方法,進一步包含以下步驟:從該第一裝置發送一同步請求至該第二裝置;以及從該第二裝置接收該已改變群組,以作為該同步請求之一回應。
  23. 如申請專利範圍第22項所述之方法, 其中該方法進一步包含以下步驟:在該前次同步期間從該第二裝置接收一項目符號;以及在該第一裝置處儲存該項目符號;以及其中該同步請求包含該項目符號。
  24. 如申請專利範圍第23項所述之方法,其中該項目符號可用於決定已由於該前次同步而改變之該電子郵件訊息中之性質群組。
  25. 如申請專利範圍第20項所述之方法,其中該已改變群組包括該電子郵件訊息之該等性質之多於一者。
  26. 如申請專利範圍第20項所述之方法,進一步包含以下步驟:為同步之目的監視複數個資料項目,該等複數個資料項目包括該電子郵件訊息;決定該電子郵件訊息已在該前次同步後改變;以及在決定該電子郵件訊息已在該前次同步後改變之後,決定在電子郵件訊息中之性質群組已改變。
  27. 如申請專利範圍第26項所述之方法,其中決定該電子郵件訊息已在該前次同步後改變之步 驟包含以下步驟:使用一項目變化識別碼以決定該電子郵件訊息已在該前次同步後改變;其中決定在該電子郵件訊息中之性質群組已改變之步驟包含以下步驟:使用該等性質群組之改變ID以識別該電子郵件訊息中之該已改變群組;以及其中該方法包含以下步驟:在決定該電子郵件訊息已在該前次同步後改變之後,更新該項目變化識別碼;以及在使用該等性質群組之改變ID以識別該已改變群組之後,更新該已改變群組之該改變ID。
  28. 如申請專利範圍第20項所述之方法,其中實行該同步處理之步驟包含以下步驟:在該第一裝置處接收一同步項目串流,該同步項目串流包括指示一對映之一標記,該對映告訴該第一裝置該電子郵件訊息使用哪個性質群組對映;以及其中該性質群組對映係將該電子郵件訊息中之該等性質對映至該等性質群組。
  29. 如申請專利範圍第20項所述之方法,進一步包含以下步驟: 在該第一裝置處接收一項目改變之通知,該項目改變之通知引起該第一裝置與該第二裝置同步。
  30. 如申請專利範圍第20項所述之方法,其中依據該等性質之相關大小而決定該等性質群組。
  31. 一種計算裝置,包含:一或更多個電腦儲存媒體,該一或更多個電腦儲存媒體儲存指令與一電子郵件資料項目,該電子郵件資料項目包含複數個性質,該等複數個性質區分為複數個性質群組,該等性質群組之每一者含有該等性質之一或更多者,該等性質群組之至少一者含有多個性質;以及一處理單元,該處理單元讀取並執行該等指令,藉由該處理單元之該等指令之執行造成該計算裝置對該電子郵件資料項目中之一已改變群組進行同步,而無須從另一計算裝置串流傳輸整個該電子郵件資料項目,該已改變群組在該電子郵件資料項目中之該等性質群組中,該已改變群組中之一或更多個性質已由於該計算裝置與該其他計算裝置間之一前次同步而改變。
  32. 如申請專利範圍第31項所述之計算裝置,其中藉由該處理單元之該等指令之執行造成該計算裝置在該計算裝置從該其他計算裝置接收一項目改變之通知後發送一同步 請求至該其他計算裝置,該同步請求為同步已由於該其他計算裝置與該計算裝置間之該前次同步而改變之資料項目之一請求。
  33. 如申請專利範圍第31項所述之計算裝置,其中該等性質群組係依據該等性質之變化性。
  34. 如申請專利範圍第31項所述之計算裝置,其中該等性質群組係以該等性質群組可重新定義之方式而配置。
  35. 如申請專利範圍第31項所述之計算裝置,其中藉由該處理單元之該等指令之執行造成該計算裝置執行以下步驟:決定在一特定性質群組之一性質已改變;在決定在該特定性質群組之該性質已改變之後,更新該特定性質群組之一性質群組變化識別碼;以及當改變發生於該特定性質群組時,使用該性質群組變化識別碼來識別。
  36. 如申請專利範圍第35項所述之計算裝置,其中藉由該處理單元之該等指令之執行造成該計算裝置執行以下步驟:依據該電子郵件資料項目已改變之一決定來更新與該 資料項目相關聯之一項目變化識別碼;以及當該項目變化識別碼不同於從該其他計算裝置接收之一項目變化識別碼時,決定該電子郵件資料項目已改變。
  37. 如申請專利範圍第31項所述之計算裝置,其中該計算裝置係為一客戶端,而該其他計算裝置係為一伺服器。
  38. 一種不由一暫態信號構成之電腦儲存媒體,該電腦儲存媒體儲存指令,而藉由一客戶端之一處理單元之該等指令之執行配置該客戶端以執行以下步驟:在該客戶端本地快取一電子郵件資料項目,該電子郵件資料項目包含複數個性質群組,該等性質群組之每一者對映至該電子郵件資料項目之一或更多個性質,該等性質群組之至少一者對映至該電子郵件資料項目之多個性質,該等複數個性質群組包括至少一後續性質群組與一讀取狀態性質群組;發送一同步請求至一伺服器;以及從該伺服器接收一同步項目串流,以回應於該同步請求,該同步項目串流包括在該電子郵件資料項目中之已改變性質群組,但非整個該電子郵件資料項目,對映至該等已改變性質群組之一或更多個性質已由於該客戶端與該伺服器間之一前次同步而改變。
  39. 如申請專利範圍第38項所述之電腦儲存媒體,其中該同步項目串流指定一對映,該對映將該電子郵件資料項目之該等性質對映至該等性質群組;以及其中藉由該處理單元之該等指令之執行配置該客戶端以使用該對映以決定該電子郵件資料項目的哪些性質係包括於該等性質群組之每一者中。
  40. 一種提高一客戶端裝置之同步速率之方法,該方法包含以下步驟:從該客戶端裝置發射一請求,以對已在一前次同步後改變之一或更多個電子郵件資料項目進行同步,該一或更多個電子郵件資料項目之每一者包含複數個可修改性質,在該一或更多個電子郵件資料項目之每一者中之該等複數個可修改性質區分為複數個性質群組,該等複數個性質群組包括至少一讀取性質群組與一後續旗標性質群組,該讀取性質群組包括指示該電子郵件資料項目是否已讀取之一性質,該後續旗標性質群組包括指示該電子郵件資料項目上是否已設定一後續旗標之一性質;回應於對該前次同步後已改變之該一或更多個電子郵件資料項目進行同步之該請求,在該客戶端裝置處接收一已修改性質群組,而無須接收來自該一或更多個電子郵件資料項目中之一第一電子郵件資料項目之該等複數個性質群組之一或更多個未修改性質群組,其中在該等未修改性 質群組中之該等性質沒有在該前次同步後改變之值。
  41. 如申請專利範圍第40項所述之方法,其中該電子郵件資料項目係為一電子郵件訊息。
  42. 如申請專利範圍第40項所述之方法,其中從該客戶端裝置發射一請求之步驟包括發射該請求至一伺服器裝置之步驟。
  43. 如申請專利範圍第40項所述之方法,進一步包含以下步驟:決定一第二電子郵件資料項目已改變,其中該第二電子郵件資料項目缺乏該等複數個性質群組;以及在該客戶端裝置處接收該第二電子郵件資料項目之所有者。
  44. 如申請專利範圍第40項所述之方法,其中依據在該等性質群組之每一者內之該一或更多個性質的變化性,來預先定義該等複數個性質群組。
  45. 如申請專利範圍第40項所述之方法,其中接收該已修改性質群組之步驟包含經由一有線連接接收包括該已修改性質群組之串流資料之步驟。
  46. 一種提高一客戶端裝置之同步速率之方法,該方法包含以下步驟:從一客戶端裝置發射一請求,以對已在一前次同步後改變之一或更多個電子郵件資料項目進行同步,該一或更多個電子郵件資料項目之每一者包含複數個可修改性質,在該一或更多個電子郵件資料項目之每一者中之該等複數個可修改性質區分為複數個性質群組,該等複數個性質群組包括至少一讀取性質群組與一後續旗標性質群組,該讀取性質群組包括指示該電子郵件資料項目是否已讀取之一性質,該後續旗標性質群組包括指示該電子郵件資料項目上是否已設定一後續旗標之一性質;決定該一或更多個資料項目之一第一電子郵件資料項目已在該前次同步後改變;決定該第一電子郵件資料項目之該等複數個性質群組是否包括一可修改性質群組,其中該可修改性質群組中之一性質之一值已在該前次同步後改變;以及對該已修改性質群組進行同步,而無須串流傳送該第一電子郵件資料項目之該等複數個性質群組中之一或更多個未修改性質群組,其中在該等未修改性質群組中之該等性質沒有在該前次同步後改變之值。
  47. 如申請專利範圍第46項所述之方法,其中依據在該 等性質群組之每一者內之該一或更多個性質的典型記憶體大小,來預先定義該等性質群組。
  48. 如申請專利範圍第46項所述之方法,其中對該已修改性質群組進行同步之步驟包含使用一資料鏈結從該伺服器裝置下載該已修改性質群組至該客戶端裝置之步驟,該資料鏈結為一無線連接。
  49. 如申請專利範圍第46項所述之方法,其中該第一電子郵件資料項目為一電子郵件訊息。
TW095126585A 2005-08-15 2006-07-20 用於部份項目改變之追跡及同步化之方法、電腦儲存媒體及計算裝置 TWI454934B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/204,067 US7962585B2 (en) 2005-08-15 2005-08-15 Partial item change tracking and synchronization

Publications (2)

Publication Number Publication Date
TW200712912A TW200712912A (en) 2007-04-01
TWI454934B true TWI454934B (zh) 2014-10-01

Family

ID=37758031

Family Applications (1)

Application Number Title Priority Date Filing Date
TW095126585A TWI454934B (zh) 2005-08-15 2006-07-20 用於部份項目改變之追跡及同步化之方法、電腦儲存媒體及計算裝置

Country Status (17)

Country Link
US (2) US7962585B2 (zh)
EP (2) EP1915670B1 (zh)
JP (2) JP4959703B2 (zh)
KR (1) KR101312810B1 (zh)
CN (2) CN101385017B (zh)
AU (1) AU2006280352B2 (zh)
BR (1) BRPI0614287A8 (zh)
CA (1) CA2616103C (zh)
EG (1) EG25523A (zh)
HK (1) HK1162711A1 (zh)
IL (1) IL188781A (zh)
MX (1) MX2008002169A (zh)
MY (2) MY147049A (zh)
NZ (1) NZ565592A (zh)
RU (1) RU2421780C2 (zh)
TW (1) TWI454934B (zh)
WO (1) WO2007021454A2 (zh)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7962585B2 (en) 2005-08-15 2011-06-14 Microsoft Corporation Partial item change tracking and synchronization
CN101159757B (zh) * 2007-10-25 2011-11-30 中兴通讯股份有限公司 双归属同步数据传输方法
CN101447886B (zh) * 2007-11-26 2011-07-27 华为技术有限公司 一种比较海量数据的方法及装置
US20090203389A1 (en) * 2008-02-07 2009-08-13 Syncplanet Llc Systems and methods for synchronizing information using short message services and email services
US8280963B2 (en) * 2008-04-10 2012-10-02 Microsoft Corporation Caching and exposing pre-send data relating to the sender or recipient of an electronic mail message
TWI400623B (zh) * 2008-11-06 2013-07-01 Acer Inc 遠端電腦同步傳輸檔案技術
US8463246B2 (en) * 2009-05-26 2013-06-11 Sony Corporation Contact management
US20110122810A1 (en) * 2009-11-25 2011-05-26 T-Mobile Usa, Inc. Router-Based Home Network Synchronization
CN101719904B (zh) * 2009-11-26 2012-07-04 华平信息技术股份有限公司 互联网应用中减少服务器和客户端业务通讯量的方法
US8745037B2 (en) * 2009-12-17 2014-06-03 Microsoft Corporation Exploiting partitioning, grouping, and sorting in query optimization
US9141919B2 (en) 2010-02-26 2015-09-22 International Business Machines Corporation System and method for object migration using waves
CN102184375A (zh) * 2010-04-30 2011-09-14 华为终端有限公司 Sim卡中数据的管理方法及终端
US8392369B2 (en) 2010-09-10 2013-03-05 Microsoft Corporation File-backed in-memory structured storage for service synchronization
CN101989989A (zh) * 2010-11-17 2011-03-23 中兴通讯股份有限公司 一种企业通信录和个人通信录的数据同步方法和系统
US8566336B2 (en) * 2011-03-30 2013-10-22 Splunk Inc. File identification management and tracking
GB2497793A (en) * 2011-12-21 2013-06-26 Ninian Solutions Ltd Pre-emptive caching of potentially relevant content from a collaborative workspace at a client device
US9110892B2 (en) 2012-03-13 2015-08-18 Microsoft Technology Licensing, Llc Synchronizing local and remote data
US10095672B2 (en) * 2012-06-18 2018-10-09 Novaworks, LLC Method and apparatus for synchronizing financial reporting data
US20140331148A1 (en) * 2012-10-12 2014-11-06 Unify Gmbh & Co. Kg Method and apparatus for displaying e-mail messages
CN104951238A (zh) * 2014-03-24 2015-09-30 国际商业机器公司 用于在分布式虚拟环境中管理数据存储的方法和装置
US10992748B1 (en) 2015-06-18 2021-04-27 EMC IP Holding Company LLC Verification of event-based synchronization
US10242024B1 (en) 2015-06-18 2019-03-26 EMC IP Holding Company LLC Dynamic reprioritization of content download during synchronization
US10721298B1 (en) 2015-06-18 2020-07-21 EMC IP Holding Company LLC Learning client preferences to optimize event-based synchronization
US10235331B1 (en) 2015-06-18 2019-03-19 EMC IP Holding Company LLC Event-based synchronization in a file sharing environment
US10129357B2 (en) 2015-08-21 2018-11-13 International Business Machines Corporation Managing data storage in distributed virtual environment
US10237218B2 (en) 2016-08-29 2019-03-19 International Business Machines Corporation Message delivery management based on device accessibility
US10091148B2 (en) 2016-08-29 2018-10-02 International Business Machines Corporation Message delivery management based on device accessibility
US11055274B2 (en) 2019-04-24 2021-07-06 Microsoft Technology Licensing, Llc Granular change detection in distributed storage systems
US11080265B2 (en) 2019-04-24 2021-08-03 Microsoft Technology Licensing, Llc Dynamic hash function composition for change detection in distributed storage systems
US11061936B2 (en) 2019-04-24 2021-07-13 Microsoft Technology Licensing, Llc Property grouping for change detection in distributed storage systems

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040044920A1 (en) * 2002-08-28 2004-03-04 Jean-Marie Hullot Method of synchronising three or more electronic devices and a computer system for implementing that method
TW200506649A (en) * 2003-07-25 2005-02-16 Ibm Method and system for sharing device-session data with multiple devices
US20050144044A1 (en) * 2003-09-29 2005-06-30 Samsung Electronics Co., Ltd. System and apparatus for efficiently utilizing network capacity in a healthcare setting

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5966714A (en) * 1995-04-28 1999-10-12 Intel Corporation Method and apparatus for scaling large electronic mail databases for devices with limited storage
US5923848A (en) * 1996-05-31 1999-07-13 Microsoft Corporation System and method for resolving names in an electronic messaging environment
US5794254A (en) * 1996-12-03 1998-08-11 Fairbanks Systems Group Incremental computer file backup using a two-step comparison of first two characters in the block and a signature with pre-stored character and signature sets
US6036945A (en) 1997-04-11 2000-03-14 Shamrock Technologies, Inc. Delivery systems for active ingredients including sunscreen actives and methods of making same
US6052735A (en) * 1997-10-24 2000-04-18 Microsoft Corporation Electronic mail object synchronization between a desktop computer and mobile device
US6295541B1 (en) * 1997-12-16 2001-09-25 Starfish Software, Inc. System and methods for synchronizing two or more datasets
US6018762A (en) * 1998-03-31 2000-01-25 Lucent Technologies Inc. Rules-based synchronization of mailboxes in a data network
US6226650B1 (en) * 1998-09-17 2001-05-01 Synchrologic, Inc. Database synchronization and organization system and method
US6862617B1 (en) * 1998-10-12 2005-03-01 Microsoft Corp. System and method for synchronizing objects between two devices
US6463427B1 (en) * 1999-03-16 2002-10-08 Microsoft Corporation Use of object signature property as a search parameter during synchronization of objects on a computer
US6751634B1 (en) 1999-08-26 2004-06-15 Microsoft Corporation Method and system for detecting object inconsistency in a loosely consistent replicated directory service
US6694336B1 (en) * 2000-01-25 2004-02-17 Fusionone, Inc. Data transfer and synchronization system
US6941326B2 (en) * 2001-01-24 2005-09-06 Microsoft Corporation Accounting for update notifications in synchronizing data that may be represented by different data structures
US6993522B2 (en) * 2001-06-27 2006-01-31 Microsoft Corporation System and method for resolving conflicts detected during a synchronization session
TW579463B (en) * 2001-06-30 2004-03-11 Ibm System and method for a caching mechanism for a central synchronization server
US7149813B2 (en) 2001-08-14 2006-12-12 Microsoft Corporation Method and system for synchronizing mobile devices
CN1195359C (zh) * 2001-12-13 2005-03-30 互慧科技股份有限公司 数据同步系统及方法
US20030177171A1 (en) * 2002-01-22 2003-09-18 Brown Bruce Loring Electronic mail retrieval
US7024429B2 (en) * 2002-01-31 2006-04-04 Nextpage,Inc. Data replication based upon a non-destructive data model
US7650364B2 (en) * 2002-10-09 2010-01-19 Hewlett-Packard Development Company, L.P. Portable database system
US7386590B2 (en) * 2003-01-03 2008-06-10 Microsoft Corporation System and method for improved synchronization between a server and a client
US7768234B2 (en) * 2004-02-28 2010-08-03 Janik Craig M System and method for automatically synchronizing and acquiring content for battery powered devices
KR100491541B1 (ko) * 2003-08-01 2005-05-25 니트젠테크놀러지스 주식회사 네트웍 환경에서의 컨텐츠 동기화 시스템 및 동기화 방법
US20050033777A1 (en) * 2003-08-04 2005-02-10 Moraes Mark A. Tracking, recording and organizing changes to data in computer systems
US7512638B2 (en) * 2003-08-21 2009-03-31 Microsoft Corporation Systems and methods for providing conflict handling for peer-to-peer synchronization of units of information manageable by a hardware/software interface system
GB2406660A (en) 2003-09-30 2005-04-06 Ibm A system for retrieving data from a partially indexed data store
US7080104B2 (en) * 2003-11-07 2006-07-18 Plaxo, Inc. Synchronization and merge engines
JP4211982B2 (ja) * 2003-12-19 2009-01-21 矢崎総業株式会社 ワイヤハーネス分岐部の製造方法
US7594022B2 (en) * 2004-04-21 2009-09-22 Microsoft Corporation Regulating client requests in an electronic messaging environment
US7383291B2 (en) * 2004-05-24 2008-06-03 Apple Inc. Method for sharing groups of objects
US20060123087A1 (en) * 2004-12-04 2006-06-08 Gibson David W Email storage format including partially ordered logs of updates to email message attributes
US7962585B2 (en) 2005-08-15 2011-06-14 Microsoft Corporation Partial item change tracking and synchronization

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040044920A1 (en) * 2002-08-28 2004-03-04 Jean-Marie Hullot Method of synchronising three or more electronic devices and a computer system for implementing that method
TW200506649A (en) * 2003-07-25 2005-02-16 Ibm Method and system for sharing device-session data with multiple devices
US20050144044A1 (en) * 2003-09-29 2005-06-30 Samsung Electronics Co., Ltd. System and apparatus for efficiently utilizing network capacity in a healthcare setting

Also Published As

Publication number Publication date
CN101385017B (zh) 2011-06-08
AU2006280352B2 (en) 2011-03-17
TW200712912A (en) 2007-04-01
MY188203A (en) 2021-11-24
CA2616103A1 (en) 2007-02-22
CA2616103C (en) 2017-06-20
JP5356561B2 (ja) 2013-12-04
BRPI0614287A8 (pt) 2017-01-10
EP1915670B1 (en) 2018-12-05
AU2006280352A1 (en) 2007-02-22
EG25523A (en) 2012-02-01
EP1915670A4 (en) 2011-10-05
WO2007021454A3 (en) 2008-10-02
JP2012133795A (ja) 2012-07-12
US20110218963A1 (en) 2011-09-08
MY147049A (en) 2012-10-15
US9524329B2 (en) 2016-12-20
RU2421780C2 (ru) 2011-06-20
WO2007021454A2 (en) 2007-02-22
KR20080039387A (ko) 2008-05-07
EP2400405A1 (en) 2011-12-28
US20070078941A1 (en) 2007-04-05
IL188781A (en) 2014-07-31
IL188781A0 (en) 2008-08-07
CN102207957A (zh) 2011-10-05
MX2008002169A (es) 2008-04-22
BRPI0614287A2 (pt) 2011-03-22
US7962585B2 (en) 2011-06-14
EP1915670A2 (en) 2008-04-30
CN101385017A (zh) 2009-03-11
RU2008105763A (ru) 2009-08-20
NZ565592A (en) 2010-02-26
CN102207957B (zh) 2014-06-04
JP2009507276A (ja) 2009-02-19
HK1162711A1 (zh) 2012-08-31
JP4959703B2 (ja) 2012-06-27
KR101312810B1 (ko) 2013-09-27

Similar Documents

Publication Publication Date Title
TWI454934B (zh) 用於部份項目改變之追跡及同步化之方法、電腦儲存媒體及計算裝置
US10755234B2 (en) System and method for offline synchronization of exception items of shared services for client applications
US8655840B2 (en) Method, apparatus and computer program product for sub-file level synchronization
CN102349062B (zh) 浏览器缓存与远程仓库同步的方法和系统
JP4722124B2 (ja) 低忠実度デバイスを同期させるための時刻−日付情報の保持
CN101689182B (zh) 用于分布式文件系统的高效更新
EP2932666B1 (en) Attachment collaboration within message environments
US11348072B2 (en) Techniques for sharing electronic calendars between mailboxes in an online application and collaboration service
CN100547545C (zh) 用于网络边缘计算的应用拆分的方法和系统
US8412687B1 (en) System and method for delivering content to a communication device in a content delivery system
EP2201479A2 (en) Data-driven synchronization
US11163793B2 (en) Ordered list management in a replicated environment
US20150220882A1 (en) Asset creation and utilization using an asset creation tool
CN110018875B (zh) 一种基于idv的桌面同步实现方法
AU2011202919B2 (en) Partial item change tracking and synchronization

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees