JP4726508B2 - 複数の同期ソースのクロスポリネーション - Google Patents

複数の同期ソースのクロスポリネーション Download PDF

Info

Publication number
JP4726508B2
JP4726508B2 JP2005029647A JP2005029647A JP4726508B2 JP 4726508 B2 JP4726508 B2 JP 4726508B2 JP 2005029647 A JP2005029647 A JP 2005029647A JP 2005029647 A JP2005029647 A JP 2005029647A JP 4726508 B2 JP4726508 B2 JP 4726508B2
Authority
JP
Japan
Prior art keywords
data source
item
synchronization
data
synchronized
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2005029647A
Other languages
English (en)
Other versions
JP2005222552A5 (ja
JP2005222552A (ja
Inventor
ラジーフ バイリセッティ
ホール ゲーリー
エバン シュレイファー ジェーソン
ブイ.エスティブ バルダッチ ジュアン
フォスター マイク
ラマニ プリーシ
ヤン チドン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
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
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2005222552A publication Critical patent/JP2005222552A/ja
Publication of JP2005222552A5 publication Critical patent/JP2005222552A5/ja
Application granted granted Critical
Publication of JP4726508B2 publication Critical patent/JP4726508B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/275Synchronous replication
    • 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
    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01GHORTICULTURE; CULTIVATION OF VEGETABLES, FLOWERS, RICE, FRUIT, VINES, HOPS OR SEAWEED; FORESTRY; WATERING
    • A01G9/00Cultivation in receptacles, forcing-frames or greenhouses; Edging for beds, lawn or the like
    • A01G9/02Receptacles, e.g. flower-pots or boxes; Glasses for cultivating flowers
    • A01G9/021Pots formed in one piece; Materials used therefor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B44DECORATIVE ARTS
    • B44CPRODUCING DECORATIVE EFFECTS; MOSAICS; TARSIA WORK; PAPERHANGING
    • B44C5/00Processes for producing special ornamental bodies
    • B44C5/06Natural ornaments; Imitations thereof
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability

Description

本発明は、複数のコンピューティングデバイス間でアイテムを同期させることに関する。
ユーザは、あるデバイスを別のデバイスと同期(「シンク(sync)」)させることができる。例えば、ユーザは、自分の職場コンピュータを自分のモバイルデバイスと同期させることができる。同期後、モバイルデバイスとコンピュータは、同期されるように選択された同一の情報を含む。同期の基本的な目的は、2つのシステムを互いに最新の状態に保つことである。デバイスが同期されると、一方のソースに対して行われた変更が、他方に伝搬される。
例えば、ユーザが、自分のモバイルデバイス上の連絡先を自分の自宅(Home)PCの連絡先と同期させた場合、自宅PCとモバイルデバイスは、同期が完了した後、同一の連絡先を有する。多くのユーザは、電子メール、連絡先、カレンダ、およびドキュメントを含むアイテムを同期させる。しかし、2つを超える、異なるデバイス間で情報を同期させることは、非常に困難である可能性がある。必要とされているのは、複数の同期ソースと同期させるやり方である。
本発明は、デバイスを複数のコンピューティングデバイス(「同期ソース」)と同期させることを対象とする。
本発明の一態様によれば、複数のデバイスが、そのデータを「クロスポリネート(cross−pollinate)」させる。モバイルデバイスなどのコンピューティングデバイスの1つが、各データソースがアイテムのいずれのバージョンを有するかを常に把握し、データソースをアイテムの最新バージョンに同期させる。ユーザは、アイテムおよびデータソースに関するクロスポリネーションを有効にすること、および無効にすることを選択的に行うことができる。
本発明の別の態様によれば、重複検出アルゴリズムが、デバイス群全体にわたる重複データの生成を回避するのを助ける。
さらに別の態様によれば、アイテムの削除は、もはやユーザのフィルタの中にないアイテムに照らして、削除されたアイテムの区別に応じて異なる形で扱われることが可能である。
さらに別の態様によれば、クロスポリネーションは、複数の同期ソースが異なるバージョンの同期プロトコルを利用していても、行われることが可能である。
本明細書および特許請求の範囲の全体で、次の用語は、文脈によってそうでないことが明らかに規定されない限り、ここで明示的に関連付ける意味を帯びる。「クロスポリネーション」という用語は、複数の同期ソースからのデータを混ぜること(mixing)、または混合すること(co−mingling)を指す。
例示的な動作環境
図1を参照すると、本発明を実施するための1つの典型的なシステムが、コンピューティングデバイス100などのコンピューティングデバイスを含む。非常に基本的な構成では、コンピューティングデバイス100は、通常、少なくとも1つの処理装置102、およびシステムメモリ104を含む。コンピューティングデバイスの正確な構成およびタイプに依存して、システムメモリ104は、揮発性(RAMなどの)、不揮発性(ROM、フラッシュメモリなどの)、またはこの2つの何らかの組み合わせとすることができる。システムメモリ104は、通常、オペレーティングシステム105、1つまたは複数のアプリケーション106を含み、プログラムデータ107を含むことが可能である。一実施形態では、アプリケーション106は、同期アプリケーション120を含むことが可能である。この基本的な構成を図1に破線108内のコンポーネントで例示している。
コンピューティングデバイス100は、追加の機構または機能を有することも可能である。例えば、コンピューティングデバイス100は、例えば、磁気ディスク、光ディスク、またはテープなどの追加のデータ記憶装置群(リムーバブルな装置および/または固定の装置)も含むことが可能である。そのような追加のストレージを図1に、リムーバブルストレージ109および固定ストレージ110で例示している。コンピュータ記憶媒体には、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報を格納するために任意の方法または技術で実装される揮発性媒体と不揮発性媒体、リムーバブルな媒体と固定の媒体が含まれることが可能である。システムメモリ104、リムーバブルストレージ109、および固定ストレージ110はすべて、コンピュータ記憶媒体の例である。コンピュータ記憶媒体には、RAM、ROM、EEPROM、フラッシュメモリまたは他のメモリ技術、CD−ROM、デジタルバーサタイルディスク(DVD)または他の光ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージまたは他の磁気記憶装置、あるいは所望の情報を格納するのに使用することができ、コンピューティングデバイス100がアクセスすることができる他の任意の媒体が含まれるが、以上には限定されない。あらゆるそのようなコンピュータ記憶媒体が、デバイス100の一部とすることができる。コンピューティングデバイス100は、キーボード、マウス、ペン、音声入力デバイス、タッチ入力デバイスなどの入力デバイス112も有することが可能である。ディスプレイ、スピーカ、プリンタなどの出力デバイス114も含まれることが可能である。
コンピューティングデバイス100は、デバイスが、ネットワークなどを介して、他のコンピューティングデバイス群118と通信することができるようにする通信接続116も含むことが可能である。通信接続116は、通信媒体の一例である。通信媒体は、通常、搬送波などの変調されたデータ信号、または他のトランスポート機構におけるコンピュータ可読命令、データ構造、プログラムモジュール、またはその他のデータによって実現され、あらゆる情報配信媒体が含まれる。「変調されたデータ信号」という用語は、信号内に情報を符号化するような形で特性の1つまたは複数が設定、または変更されている信号を意味する。限定としてではなく例として、通信媒体には、有線ネットワークまたは直接有線接続などの有線媒体、ならびに音響媒体、RF媒体、赤外線媒体、およびその他の無線媒体などの無線媒体が含まれる。本明細書で使用するコンピュータ可読媒体という用語には、記憶媒体と通信媒体がともに含まれる。
図2は、本発明の1つの典型的な実施形態で使用することができるモバイルコンピューティングデバイスを示す。図2を参照すると、本発明を実施するための1つの典型的なシステムが、モバイルコンピューティングデバイス200のようなモバイルコンピューティングデバイスを含む。モバイルコンピューティングデバイス200は、プロセッサ260、メモリ262、ディスプレイ228、およびキーパッド232を含む。メモリ262は、一般に、揮発性メモリ(例えば、RAM)および不揮発性メモリ(例えば、ROM、フラッシュメモリなど)を含む。モバイルコンピューティングデバイス200は、メモリ262の中に存在し、プロセッサ260上で実行される、マイクロソフトコーポレーションからのWindows(登録商標) CEオペレーティングシステム、または別のオペレーティングシステムなどのオペレーティングシステム264を含む。キーパッド232は、(通常の電話機上などの)プッシュボタン数字ダイヤリング(numeric dialing)パッド、(従来のキーボードなどの)マルチキーキーボードとすることができる。ディスプレイ228は、液晶ディスプレイ、あるいはモバイルコンピューティングデバイスにおいて一般に使用される他の任意のタイプのディスプレイとすることができる。ディスプレイ228は、タッチセンス型とすることができ、その場合は、入力デバイスとしても動作する。
1つまたは複数のアプリケーションプログラム266が、メモリ262に読み込まれ、オペレーティングシステム264上で実行される。同期アプリケーションが、モバイルコンピューティングデバイス200上に常駐し、同期アプリケーション(タスク)群を実行するようにプログラミングされている。同期アプリケーションは、デバイスのハードウェアまたはソフトウェアの中に存在することが可能である。モバイルコンピューティングデバイス200は、メモリ262内部に不揮発性ストレージ268も含む。不揮発性ストレージ268は、モバイルコンピューティングデバイス200の電源が切られた場合に失われてはならない永続的な情報を格納するのに使用することができる。
モバイルコンピューティングデバイス200は、1つまたは複数の電池として実装することができる電源装置270を含む。電源装置270は、電池を補足する、または充電するACアダプタ、または電源付きドッキングクレイドル(powered docking cradle)などの外部電源をさらに含むことも可能である。
モバイルコンピューティングデバイス200は、2つのタイプのオプションの外部通知機構、すなわち、LED240およびオーディオインタフェース274と共に示されている。これらのデバイスは、電源装置270に直接に結合して、アクティブ化された場合、プロセッサ260、およびその他のコンポーネントが電池の電力を節約するためにシャットダウンしても、通知機構によって決められた期間にわたってオンのままであるようにすることができる。オーディオインタフェース274は、可聴信号をユーザに与えるため、および可聴信号をユーザから受け取るために使用される。例えば、オーディオインタフェース274は、電話の会話を容易にするなどの目的で、可聴出力を提供するためにスピーカに結合し、可聴入力を受け取るためにマイクに結合することができる。
モバイルコンピューティングデバイス200は、通信を送受信する機能を実行する無線インタフェースレイヤ272も含む。無線インタフェースレイヤ272は、モバイルコンピューティングデバイス200と外部世界の間の無線接続を円滑にする。一実施形態によれば、無線インタフェースレイヤ272への伝送、およびレイヤ272からの伝送は、オペレーティングシステム264による制御の下で行われる。つまり、無線インタフェースレイヤ272によって受け取られた通信は、オペレーティングシステム264を介してアプリケーションプログラム群266に伝搬されることが可能であり、その逆も同様に可能である。
複数の同期ソースのクロスポリネーション
図3は、本発明の態様によるクロスポリネーション同期システムを示す。ユーザは、デバイス1(305)などのコンピューティングデバイスを、それぞれが「同期ソース(sync source)」と見なされる複数のコンピューティングデバイスと同期させることができる。
典型的なクロスポリネーションシナリオでは、ユーザは、通常、2つの同期ソースと同期される単一のデバイスを有する。ユーザは、デバイスを両方のソースと同期させ、クロスポリネーションが、それらのソースが互いに常に同期しているようにする。複数のソース上のアイテムに対して変更が同時に行われた場合、ソース間で変更を行き来させ(shuttle)、競合を解決するのにユーザのデバイスが使用される。ユーザのデバイスは、各同期ソースがアイテムのいずれのバージョンを有するかを常に把握しており、ソースのそれぞれをアイテムの最新バージョンに同期させる。
クロスポリネーションの例として、ユーザが、自分のPDAデバイス(305)を自宅PC(315)と同期させ、職場(Work)PC(310)とも同期させるものと想定されたい。同期されると、デバイス(PDAデバイス305、職場PC310、および自宅PC315)のそれぞれは、アイテムA320を含む。ユーザが、自分のPDAを職場PCと同期させた場合、アイテムAが、PDAによって受け取られる。ユーザが、自分のPDAを自宅PCと同期させた場合、職場PCからPDAに来たアイテムAが、自宅PCに自動的に送られる。さらに、自宅PC上で作成されたいずれのアイテムも、クロスポリネーションが有効にされた場合、PDAを介して職場PCに自動的に送られる。
一実施形態によれば、ユーザは、ソース間でクロスポリネーションを有効にすること、および無効にすることができる。つまり、ユーザは、ソース間でクロスポリネートさせること、またはアイテムを別々にしておくことができる。このクロスポリネーション設定は、いつでもオンに切り替えること、およびオフに切り替えることができる。例えば、ユーザは、自宅PC(315)とクロスポリネートする能力をオフにすることができる。自宅PCに対してクロスポリネーションが無効にされている場合、職場PCからのアイテムは、自宅PCに移らない。さらに、ユーザは、1つのソースを別個にしておき、他の2つのソースをクロスポリネートさせておくこともできる。この柔軟性は、どのようにデータが同期されるかをユーザが完全に管理できるようにするのに役立つ。
一実施形態によれば、デバイスが単一のソースともはや同期していない場合、データのすべてが、デバイスから削除される。データは、デバイス上に残されることも可能である。デバイスが2つまたはそれ以上のソースと同期している場合、データは、デバイス上に残される。というのは、デバイスは、別のソースと同期しているからである。同期する相手となっていないデータソースに関するID列がクリアされ、そのソースに関する追跡データが削除される。
図4は、本発明の態様による、クロスポリネーションを有効にすること、および無効にすることを示す。クロスポリネーション同期デバイス群は、デバイス群が同期されている相手のソース群を認知している。一実施形態によれば、同期ソース構成情報が、モバイルデバイス上に格納され、AirSyncプロトコルを利用する。構成情報は、他の場所に格納されることが可能であり、デバイス群は、他の同期プロトコルを利用することができる。
一実施形態によれば、管理者(administrators)が、デバイスが同期することができる相手のソースの数を制限するポリシーを、デバイス上で設定する。この機能を使用して、デバイスが同期することができる相手のソースを所定の数に制限することにより、クロスポリネーションを阻止することができる。他の実施形態によれば、任意の許可されたユーザが、デバイス上でポリシーを設定することができる。
実施例1は、1つのデータソース(職場PC310)をPDA305と同期させることを示す。見て取ることができるとおり、アイテムAが、両方のデバイス上で複製(replicate)されている。
実施例2は、第2のデータソース(自宅PC315)を追加することを示す。PDA305が、職場PCと自宅PCの両方と同期させられ、各デバイスは、すべてのデバイス上のアイテムのそれぞれを含む。最初、職場PC上に存在したアイテムAが、PDA305および自宅PCに複製される。最初、自宅PC上に存在したアイテムBが、PDA305および職場PCに複製される。
実施例3は、デバイス上で作成されたアイテムを職場PCと同期させ、職場PCと自宅PCがクロスポリネートすることを許さないように同期設定を変更することを示す。見て取ることができるとおり、デバイス上で作成されたアイテムCが、職場PCと同期されているが、自宅PCにはクロスポリネートされていない。
実施例4は、デバイス上で作成されたアイテムが職場PCに同期され、自宅PC上で新たに作成されたアイテムが職場PCにクロスポリネートされないことを示す。この実施例では、アイテムDが、自宅PC上で作成され、デバイスと同期されるが、職場PCとは同期されない。
実施例5は、すべてのデバイスにわたって新たに作成されたアイテムをクロスポリネートさせるように同期設定を変更することを示す。この実施例では、アイテムEが、職場PC上で作成され、デバイスおよび自宅PCと同期されている。一実施形態によれば、異なる同期設定の下で作成されたアイテムは、それらの同期設定を保持する。例えば、実施例3および実施例4に示す、異なる同期設定の下で作成されたアイテムCとアイテムDは、クロスポリネートされない。
実施例6は、自宅PC同期ソースを除去することを示す。一実施形態によれば、除去されたデバイス上で作成されたあらゆるアイテムも、それがそのアイテムの唯一のインスタンスである場合、その他同期デバイス群から除去される。この実施例では、アイテムDは、デバイスから除去されるが、アイテムBは、職場PCとも同期されていたため、除去されない。
図5は、本発明の態様による典型的な同期テーブルアーキテクチャを示す。一実施形態によれば、SQL−CEを使用して同期状態が保持される。
DBファイル(510)は、同期される各データタイプについて単一のテーブルを含む。この例は、連絡先、カレンダ、およびタスクを同期させることを示す。あるアイテムに対する変更が、多くのテーブルの中で生じることが可能であるため、アイテムが編集された場合はいつでも、そのアイテムに関連するLastModifiedフィールド(540)が更新される。これは、すべての変更が認識され、同期されることを確実にするのに役立つ。アイテムテーブル、カテゴリ関連付けテーブル、または他のあらゆる関係のあるテーブルの中のアイテムに対する変更により、LastModifiedフィールドの更新がトリガされる。一実施形態によれば、値は、現在のデバイスの日付と時刻(Device Date and Time)に設定される。このフラグは、アイテムに対する更新のたびにタッチ(touch)され、SQL−CE変更追跡システムがあらゆるアイテム変更を適切に追跡することを確実にするのに役立つ。例示するとおり、最終変更日時(last modified)列が、連絡先テーブル(524)、カレンダテーブル(520)、およびタスクテーブル(522)に追加される。最終変更日時列は、アイテムが変更されるたびに毎回、更新される。
以下は、テーブル内のアイテムの典型的な説明である。
Figure 0004726508
Figure 0004726508
本発明の一実施形態によれば、各データソースに関するカスタムプロパティ(Sync Custom Props5560)が、レジストリの中に格納される。それらのカスタムプロパティには、同期エンジンが把握しておく詳細が含まれる。一実施形態によれば、サーバは、ユーザ名、パスワード、ドメイン、および規則を把握している。デスクトップソースは、ユーザ名、パスワード(オプション)、ドメイン、規則、およびマシン名を把握している。
以下は、本発明の態様による典型的なデータソースアプリケーションプログラムインタフェースのリストである。
Figure 0004726508
Figure 0004726508
ハード削除とソフト削除の区別
図6は、本発明の態様によるソフト削除およびハード削除を示す。一実施形態によれば、同期プロトコルは、アイテムがフィルタから脱落する場合(もはや同期されない場合)、または物理的に削除される場合、そのアイテムに関する削除を下降させる(send down)。一実施形態によれば、アイテムクロスポリネーションに関するフィルタ設定は、デバイス全体に及ぶ設定である。複数のクロスポリネーションソースにわたるフィルタ外(out−of−filter)削除の伝播に伴うデータ損失の可能性のため、ソフト削除とハード削除とを区別するのに役立つようにハード削除コマンドが使用される。
「ハード削除」という用語は、ストアのそれぞれからアイテムを物理的に削除することを指す。ハード削除は、すべてのクロスポリネーティングソースにわたって伝播する。「ソフト削除」という用語は、アイテムがフィルタから外れたことを指す。ソフト削除は、デバイスからアイテムを取り除くが、削除を他のいずれのソースにも伝播させない。
同期プロトコルのバージョンがソフト削除をサポートしていない場合、削除コマンドが受け取られると、デバイスは、デバイスのストアからだけアイテムを削除する。つまり、削除は、クロスポリネートされない。アイテムが、前回の同期以来、フィルタに入ることになることが可能であるため、ソフト削除は、同期セッションの終りに行われる。
例えば、削除620で示すとおり、アイテム610が、サーバからソフト削除され、このアイテムは、デバイスから削除されるが、自宅PCからは削除されない。他方、アイテムが職場PCからハード削除された場合、削除625で示すとおり、アイテム610は、デバイスおよび自宅PCから削除される。デバイスが、存在しないアイテムに関する削除コマンドを受け取った場合、削除コマンドは無視される。
重複検出
図7は、本発明の態様により、アイテムをデバイスに追加するコマンドを処理することを示す。アイテムがデバイスに追加される前に、重複検出チェックが完了される。重複検出チェックを実行することは、クロスポリネートされている、異なるデバイス上で重複が作成されないことを確実にするのに役立つ。一実施形態によれば、重複検出は、アイテムプロパティ比較に基づき、重複検出コードが、デバイス(図3に示すデバイス305のような)上に実装される。
ブロック710で、デバイスは、同期されているデータソースから追加コマンドを受け取る。ブロック715に進むと、デバイスは、追加されるべきアイテムのハッシュ値を計算し、同一のハッシュ値を有する他のアイテムがないか、ストアを探索する。ハッシュ値を使用して、アイテムが一意に特定される。アイテムを一意に特定する他のやり方を使用してもよい。判定ブロック720に進むと、デバイスがクロスポリネートしているかどうかについての判定が行われる。
判定ブロック725でハッシュが見つかった場合、デバイスは、そのアイテムを重複と見なし、判定ブロック735に進む。同期ハッシュが見つからなかった場合、プロセスは、ブロック730に進み、アイテムがデバイスに追加され、同期処理保留ビットが設定される。判定ブロック735で、見つかったアイテムが現在、そのデータソースと同期されている場合、ブロック730で、アイテムが作成され、同期処理保留フィールドが設定される。一実施形態によれば、デバイスは、一致する同期ハッシュを有するデバイス上のアイテムが、ソースと既に同期されている場合、いずれのアイテムも重複とは見なさない。
アイテムが現在、データソースと同期されていない場合、プロセスは、ブロック740に進み、そのアイテムが、重複として検出される。その時点で、デバイスは、デバイスが既に有するバージョンを保持し、単に、その新たなアイテムのIDを既存のレコードに追加する。
図8は、本発明の態様による典型的な重複検出シナリオを示す。一般に、アイテムがデバイスに追加されると、アイテムプロパティのサブセットについてSyncHash(810)が計算される。アイテムAは、HASH101(815)という同期ハッシュ値を有する。デバイスは、追加されるべきアイテムを受け取ると、新たなアイテムのSyncHashを既存のアイテムと比較し、デバイスが重複を検出することが可能になる。
ステップ1を参照すると、アイテムAが、サーバ1からデバイスに既に同期されている。その時点で、アイテムAは、HASH101というSyncHash値を有してサーバ1とデバイスの上にある。ステップ2で、ユーザが、自分のデバイスからサーバ1にアイテムAをコピーして、サーバ1上にアイテムBを作成する。アイテムBは、アイテムAと同一のSyncHash値を有する。ステップ3で、デバイスがサーバと同期されると、アイテムBが、デバイス上で作成される。というのは、デバイスは、既にサーバと同期されているからである。
ハッシュを計算すること
同期ハッシュを計算する際、2つのレベルのプロパティレベル照合が使用される。
(正確なデータ比較(1次キーセット)):フィールドのセットが、アイテムを重複と見なすために比較される1次プロパティとして定義される。フィールドのこのセットは、各データタイプに関して異なることが可能である。選択されるフィールドのセットは、大幅なコード変更なしに、コード内で適合させることができなければならない。これには、ヘッダファイルの中でフィールドをリストアップして、試験プロセス中にアルゴリズムを調整できるようにすることが含まれる可能性がある。
(プロパティの存在(2次キーセット)):ほとんど完全に包括的なフィールドのより大きいセットが、それらのプロパティの中にデータが単に存在するかチェックするために使用される。これは、あるアイテムにおいてあるフィールドが設定されており、別のアイテムにおいてそのフィールドが空白である場合、1次キーが一致しても、それらのアイテムは、互いの複製とは見なされないことを確実にするのに役立つ。
ハッシュを格納すること/更新すること
アイテムが最初に同期されると、SyncHashが計算され、アイテム上に格納される。SyncHash値は、既に同期されているアイテムに対して編集が行われた場合に更新される。以下は、本発明の一実施形態による、連絡先、カレンダ、およびタスクに関する典型的な1次キーセットおよび2次キーセットである。同期されるべき他のアイテムに関する1次キーセットおよび2次キーセットを作成するのに、他のプロパティが使用される。
Figure 0004726508
Figure 0004726508
Figure 0004726508
アイテムにクロスポリネーション向けのマークが付けられている場合、デバイス上で利用可能なデータは、その他のデータソース群にクロスポリネートされる。デバイスの制限のために、アイテムの切り詰められた(truncated)バージョンが、クロスポリネートされる可能性がある。一実施形態によれば、切り詰めが行われた場合、テキスト[メッセージが切り詰められました]が、メモ(Notes)フィールドの終りに追加される。したがって、ユーザは、自分が完全な元のコピーを有していないことに気付く。
デバイス上の同期エンジンはまず、データソースからのすべてのAddを要求する。エンジンは、まだ残っているすべてのAddをデータソースに送る(send up)(重複するAddsにはマークが付けられており、したがって、発行されない)。
一実施形態によれば、デバイス上のアイテムは、3つのプロパティを把握している。ServerID値およびSyncHash値が、各アイテム上にカスタムプロパティとして格納される。
Figure 0004726508
ServerIDプロパティは、次の4つの状態を有する。すなわち、
Figure 0004726508
図9は、本発明の態様による、デバイス上に既存するアイテムの複製に関する追加コマンドを処理することを示す。複製と見なされるアイテムに関して、プロセスは、ブロック910に進み、追加コマンドが変更コマンドに変換される。アイテム全体をデバイスにコピーする代りに、アイテムが更新される。ブロック920で、プロパティリストが既知のスキーマと比較される。ブロック930に進み、提供されていなかった既知のプロパティに関して、明示的な削除が変更コマンドに追加される。ブロック940は、更新されたコマンドを示す。ブロック950で、変更コマンドが処理される。
異なる同期バージョンにわたるクロスポリネーション
複数同期プロトコルバージョンクロスポリネーションをサポートするのに役立ち、不要な書き込みを最小限に抑えるため、プロパティレベル変更追跡が実施される。各同期プロバイダは、同期させるプロパティセットを知っていること、およびその同期プロバイダが留意するプロパティの変更が行われた場合にだけ同期を開始することを担う。同期プロバイダは、同期プロバイダが認知しているプロパティだけを変更するため、デバイス上のアイテムが、一部のプロパティはv1サーバからであり、残りのプロパティは、v3サーバだけが同期させる結合されたプロパティセットを含むことが可能である。
図10は、本発明の態様によるv1サーバとv3サーバとをクロスポリネートさせることを示す。異なるバージョンの同期プロトコルは、異なるプロパティをサポートする。図示した例では、V1プロトコルは、プロパティAおよびBをサポートし、V3プロトコルは、プロパティA、B、およびZをサポートする。
最初、デバイスは、V1サーバまたはV3サーバと同期されていない。910で、デバイスはまず、V1サーバと同期され、アイテムAおよびBを受け取る。次に、920で、デバイスは、V3サーバと同期される。アイテムAおよびBは、重複として検出され、アイテムA、B、およびZがデバイスに同期される。930で、デバイスがV1サーバと再び同期される際、同期は全く行われない。とういのは、アイテムZが唯一の変更であり、アイテムZは、V1サーバによってサポートされていないからである。
図11は、本発明の態様による典型的な同期シナリオを示す。ステップ1110は、アイテムAが、自宅PCおよび職場サーバに対して以前にクロスポリネートされていることを示す。1120で、アイテムAが編集され、アイテムAのバージョン2(v2)が作成される。デバイスは、1130で職場サーバと同期され、バージョン2が、デバイスに同期される。次に、ブロック1140で、デバイスは、自宅PCと同期される。デバイスは、サーバwinsに設定されているため、アイテムA(バージョン1)が、この時点で、デバイス上にある。デバイスが職場サーバと再び同期される際、競合は全く存在せず、アイテムA−バージョン1が、その時点で職場サーバ上に存在する(1150)。
図12は、本発明の態様による典型的な同期シナリオを示す。ステップ1210は、アイテムAが、自宅PCと職場サーバに対して以前にクロスポリネートされていることを示す。1220で、同期キーが職場サーバにおいて0の値を有することが特定される。ユーザは、ブロック1230で、職場サーバIDが削除される(1224)ようにクロスポリネーションを行っている。ブロック1240に進むと、同期が白紙の状態から開始され、デバイスが、アイテムAをデバイスに追加することを要求する追加コマンドを受け取る。このアイテムは、重複として検出され、自宅PCからのアイテムが保持される。職場サーバIDが、アイテムタグに追加される。
データソースを作成すること
図13は、本発明の態様によるデータソース作成を示す。開始ブロック後、プロセスは、ブロック1310に進み、新規のデータソースに関するアカウント情報が取得される。ブロック1320の後、新規のデータソースをシステムに登録する要求が行われる。ブロック1330で、データソースタイプが、データソースに関連するタイプに設定される。一実施形態によれば、データソースタイプは、デバイスのタイプ、すなわち、DesktopSyncおよびServerSyncに関連する。次に、ブロック1340で、マシン名が記録される。これは、デスクトップ同期情報が失われた場合に、デバイスがデスクトップに再接続することができる(ほとんどのケースで)ようにするのに役立つ。次に、プロセスは、終了ブロックに進み、他のアクションを処理することに戻る。
データソースを取り除くこと
図14は、本発明の態様によるデータソースを取り除くためのプロセスを示す。データソースを削除することにより、データソース、およびそのデータソースが同期させていたアイテムのすべてが削除される。アイテムが、複数のデータソースに対して同期中であった、または同期処理保留である場合、そのアイテムは削除されない。
開始ブロック後、プロセスは、ブロック1410に進み、デバイスがいくつのソースと同期されているか特定される。判定ブロック1420に進み、1つだけのデータソースが存在する場合、プロセスは、ブロック1430に進み、削除済みのデータソースと同期されているアイテムが、デバイスから取り除かれる。複数のデバイスが存在する場合、プロセスは、ブロック1440に進み、デバイス上のクロスポリネートされていないアイテムが取り除かれる。ブロック1450に進み、削除されたソースのIDが、デバイスから取り除かれる。一実施形態によれば、そのデータソースに関するカスタム列が、アプリケーションテーブル群から取り除かれる。一実施形態によれば、いずれのデータを取り除く前にも、警報メッセージがユーザに与えられる。
以下は、さらに明確化するための実施例である。デバイスが、連絡先およびカレンダを第1のソースと同期させており、デバイスは、カレンダおよびタスクを第2のソースと同期させているものと想定されたい。次に、ユーザが、第1のソースを削除する。第1のソースを削除した結果、連絡先のすべてが、デバイスから削除される。カレンダアイテムおよびタスクはデバイス上に残され、第1のソースのIDが取り除かれる。
同期がずれているデータソース情報の調停
図15は、本発明の態様による同期がずれているデータソース情報の調停を示す。
以下の実施例を使用して説明する。職場PCがもはや認知していないデバイス上にデータソース(職場PC)が存在する。これは、多くの理由で生じる可能性がある。例えば、これは、ユーザが、同期プログラムを再インストールする、またはマシンを再構築する必要がある場合に生じる可能性がある。デバイスデスクトップに接続すると、デスクトップは、デバイスと同期されるようにセットアップされたデータソースをデバイスが既に有することに気付く(1510)。これは、デバイス上のデータソースのネットワークマシン名を職場PCの名前と比較することによって特定される。既存のデスクトップソースが削除され、新規のデスクトップソースが作成される。
デバイスがもはや認知しないデータソースがデスクトップ上に存在する。これは、例えば、デバイスがコールドブート(cold boot)された場合に生じる可能性がある。デスクトップ上に格納されたデータソースのDeviceIDをデバイスのDeviceIDと比較することにより、同期ソース(デスクトップと同期するのに使用したデバイス)を判定することができ、デバイスが、デスクトップと同期されるように再びセットアップされるべきかどうかが判定される。ユーザが「はい」と答えた場合、ユーザに対して新規のデータソースが作成される。
以上の明細、例、およびデータにより、本発明の構成の製造および使用の完全な説明が提供される。本発明の趣旨および範囲を逸脱することなく、本発明の多数の実施形態を実施することができ、本発明は、本明細書に添付した特許請求の範囲に存する。
本発明の1つの典型的な実施形態において使用することができる典型的なコンピューティングデバイス群を示す図である。 本発明の1つの典型的な実施形態において使用することができる典型的なコンピューティングデバイス群を示す図である。 クロスポリネーション同期システムを示す図である。 クロスポリネーションを有効にすること、および無効にすることを示す図である。 典型的な同期テーブルアーキテクチャを示す図である。 ソフト削除およびハード削除を示す図である。 アイテムをデバイスに追加するコマンドを処理することを示す図である。 典型的な重複検出シナリオを示す図である。 デバイス上に既存するアイテムの複製に関する追加コマンドを処理することを示す図である。 v1サーバとv3サーバをクロスポリネートさせることを示す図である。 典型的な同期シナリオを示す図である。 典型的な同期シナリオを示す図である。 データソース作成を示す図である。 データソースを取り除くためのプロセスを示す図である。 本発明の態様による同期がずれているデータソース情報の調停を示す図である。
符号の説明
100 コンピューティングデバイス
102 処理装置
104 システムメモリ
105 オペレーティングシステム
106 アプリケーション群
107 プログラムデータ
109 リムーバブルストレージ
110 固定ストレージ
112 入力デバイス
114 出力デバイス
116 通信接続
118 他のコンピューティングデバイス
120 同期プログラム
200 モバイルコンピューティングデバイス
228 ディスプレイ
232 キーパッド
260 プロセッサ
262 メモリ
266 アプリケーション
268 ストレージ
270 電源装置
272 無線インタフェースレイヤ
274 オーディオインタフェース
305 デバイス1
310 職場PC
315 自宅PC
610 アイテム
620、625 削除

Claims (19)

  1. デバイスをデータソース群と同期させ方法であって、
    第1のデータソースおよび第2のデータソースを作成するステップと、
    前記第1のデータソース、前記第2のデータソースおよび前記デバイスの間で同期させるためのアイテムを決定するステップであって、前記第1のデータソース、前記第2のデータソースおよび前記デバイスは、特定のユーザと関連するユーザデバイスであり、前記デバイスは、前記第1のデータソースおよび前記第2のデータソースの各アイテムのバージョンを判断し、前記第1のデータソースおよび前記第2のデータソースの各々を各アイテムの最新バージョンと同期させるために構成される、アイテムを決定するステップと、
    前記デバイスを前記第1のデータソースに接続するステップと、
    同期後に前記デバイスおよび前記第1のデータソースの各々が同じバージョンのアイテムを含むように、前記デバイスを前記第1のデータソースと同期させるステップと、
    前記デバイスを前記第2のデータソースに接続するステップと、
    前記デバイスを前記第2のデータソースと同期させるステップであって前記第1のデータソース、前記第2のデータソースおよび前記デバイスの各々が同じバージョンのアイテムを含むように、前記デバイスを使用して前記第1のデータソースと前記第2のデータソースとの間で同期を行うステップと
    重複検出チェックを実行して、アイテムが既に同期済みである場合を特定するステップと
    を備えることを特徴とする方法。
  2. 前記重複検出チェックを実行するステップは、プロパティ比較を実行するステップをさらに備えることを特徴とする請求項に記載の方法。
  3. 前記重複検出チェックを実行するステップは、同期ハッシュ値を計算するステップをさらに含むことを特徴とする請求項に記載の方法。
  4. 前記アイテムが既に同期済みである場合、前記アイテムを更新するステップをさらに備えることを特徴とする請求項に記載の方法。
  5. 削除コマンドを受け取り、前記削除コマンドを実行するステップをさらに備え、前記検出コマンドは、ソフト削除およびハード削除から選択されることを特徴とする請求項1に記載の方法。
  6. 前記データソース群の間における同期を制限するステップをさらに備えることを特徴とする請求項に記載の方法。
  7. 前記第1のデータソースおよび前記第2のデータソースを作成するステップは、データソースタイプを示し、前記第1のデータソースおよび前記第2のデータソースのそれぞれに関連する識別子を格納するステップをさらに含むことを特徴とする請求項に記載の方法。
  8. 前記デバイスを前記第1のデータソースと同期させるステップは、第1の同期プロトコルを使用することができ、前記デバイスを前記第2のプロトコルと同期させるステップは、第2の同期プロトコルを使用することができることを特徴とする請求項に記載の方法。
  9. データソース群を同期させるためのプログラムを記録したコンピュータ可読媒体であって、前記プログラムはコンピュータデバイスに、
    前記デバイスと同期させる第1のデータソースを作成し、前記デバイスと同期させる第2のデータソースを作成するステップであって、前記第1のデータソース、前記第2のデータソースおよび前記デバイスは、特定のユーザにより使用されるデバイスである、作成するステップと、
    前記デバイスと同期させるために前記デバイスを第1のアイテムを有する前記第1のデータソースと接続するステップと、
    前記第1のデータソースと前記デバイスとの間で同期させるための第1のアイテムを決定するステップと、
    同期後に前記デバイスおよび前記第1のデータソースの各々が同じバージョンの第1のアイテムを含むように、前記デバイスを前記第1のデータソースと同期させるステップと、
    前記デバイスを前記第1のデータソースと同期させた後、前記デバイスを前記第2のデータソースと接続するステップであって、前記デバイスは、前記第1のデータソースおよび前記第2のデータソースの各アイテムのバージョンを判断し、前記第1のデータソースおよび前記第2のデータソースの各々と各アイテムの最新のバージョンと同期させるステップと、
    前記第2のデータソースと前記デバイスとの間で同期させる第2のアイテムを決定するステップであって、同期させる前記第1のアイテムを決定するステップ、および同期させる前記第2のアイテムを決定するステップは、前記アイテムの各々について計算され前記アイテムの各々と共に格納される同期ハッシュ(SyncHash)値を検査するステップを含み、各アイテムについて計算される前記同期ハッシュ値は、前記同期ハッシュ値が計算されるときに、アイテムが複製であるかどうかを判断するために比較される1次プロパティとして定義されるフィールドのセットである1次キーセットと、前記1次キーセットが2つのアイテムの間で一致しても、前記2つのアイテムは互いの複製と判断されないプロパティ内のデータの存在を検査するために使用されるフィールドのより大きなセットである2次キーセットとからなる2つのレベルのプロパティレベルの照合を含む、第2のアイテムを決定するステップと、
    同期後に前記デバイスおよび前記第2のデータソースの各々が同じバージョンの第2のアイテムを含むように、前記デバイスを前記第2のデータソースと同期させるステップであって、前記第2のデータソースは前記デバイスと前記第1のデータソースとの間で同期した第1のアイテムに対する更新情報を含み、前記デバイスと同期する前記第2のアイテムは、前記デバイスが前記第1のデータソースと再び同期したときに前記第1のデータソースと同期する、前記デバイスを前記第2のデータソースと同期させるステップと
    アイテムが既に同期済みである場合を特定する重複検出チェックを実行するステップと
    を実行させることを特徴とするコンピュータ可読媒体。
  10. 前記重複検出チェックを実行するステップは、同期ハッシュ値を計算するステップをさらに含むことを特徴とする請求項に記載のコンピュータ可読媒体。
  11. 前記プログラムは前記コンピュータに、検出コマンドを受け取り、前記検出コマンドを実行するステップをさらに実行させ、前記検出コマンドは、ソフト削除およびハード削除から選択され、前記ハード削除は前記アイテムを物理的に削除し、前記ハード削除は、前記デバイス、前記第1のデータソースおよび前記第2のデータソースから前記アイテムが除去されるように前記データソースの各々について実行され、ソフト削除は、フィルタから出たアイテムであり、前記ソフト削除は、前記デバイスおよび前記データソースの一方から前記アイテムを削除するが、前記データソースの他方からは削除しないことを特徴とする請求項1に記載のコンピュータ可読媒体。
  12. 前記プログラムは前記コンピュータに、前記データソース群の間における同期を制限するステップをさらに実行させることを特徴とする請求項1に記載のコンピュータ可読媒体。
  13. 前記第1のデータソースおよび前記第2のデータソースを作成するステップは、データソースタイプを示し、前記データソースの各々に関連する識別子を格納するステップをさらに含むことを特徴とする請求項1に記載のコンピュータ可読媒体。
  14. 前記デバイスを前記第1のデータソースと同期させるステップは第1の同期プロトコルを使用し、前記デバイスを前記第2のデータソースと同期させるステップは第2の同期プロトコルを使用することができることを特徴とする請求項1に記載のコンピュータ可読媒体。
  15. デバイスを使用してデータソース同期させるためのシステムであって、
    互いに同期させることができる少なくとも2つのデータソースと、
    前記少なくとも2つのデータソースの間で同期させるためのシャトルとして動作するように構成され、同期、前記デバイスおよび前記少なくとも2つのデータソースが、同期させるために選択された同じバージョンのアイテムを含むように、前記少なくとも2つのデータソースと同期させるように構成されたデバイスとを備え、前記データソースおよび前記デバイスは、特定のユーザに関連するユーザデバイスであり、前記デバイスは、前記データソースの各アイテムのバージョンを判断し、前記データソースの各アイテムを各アイテムの最新バージョンと同期させるように構成され、前記デバイスは、前記デバイスおよび前記第1のソースが同期後にそれぞれ同じバージョンのアイテムを有するように最初に前記第1のデータソースと同期し、前記デバイスと前記第1のデータソースとの同期後に、前記第1のデータソース、前記第2のデータソースおよび前記デバイスがそれぞれ同期後に同じバージョンのアイテムを含むように、前記デバイスと前記第2のデータソースを同期させ、前記第1のデータソースと前記第2のデータソースとの同期中に、アイテムが既に同期済みである場合を特定する重複チェックを実行することを特徴とするシステム。
  16. 前記重複検出チェックの実行は、同期ハッシュ値を計算することをさらに含むことを特徴とする請求項1に記載のシステム。
  17. 前記デバイスは、ソフト削除コマンドおよびハード削除コマンドを処理するように構成されることを特徴とする請求項1に記載のシステム。
  18. 前記デバイスは、前記少なくとも2つのデータソースの間で同期を制限するようにさらに構成されることを特徴とする請求項17に記載のシステム。
  19. 前記デバイスを前記少なくとも2つのデータソースと同期させるステップは、複数の同期プロトコルを使用することができることを特徴とする請求項18に記載のシステム。
JP2005029647A 2004-02-04 2005-02-04 複数の同期ソースのクロスポリネーション Active JP4726508B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/771,896 US7526768B2 (en) 2004-02-04 2004-02-04 Cross-pollination of multiple sync sources
US10/771,896 2004-02-04

Publications (3)

Publication Number Publication Date
JP2005222552A JP2005222552A (ja) 2005-08-18
JP2005222552A5 JP2005222552A5 (ja) 2008-05-01
JP4726508B2 true JP4726508B2 (ja) 2011-07-20

Family

ID=34750440

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005029647A Active JP4726508B2 (ja) 2004-02-04 2005-02-04 複数の同期ソースのクロスポリネーション

Country Status (5)

Country Link
US (3) US7526768B2 (ja)
EP (1) EP1569141A3 (ja)
JP (1) JP4726508B2 (ja)
KR (1) KR101137101B1 (ja)
CN (1) CN100530176C (ja)

Families Citing this family (157)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4386732B2 (ja) * 2002-01-08 2009-12-16 セブン ネットワークス, インコーポレイテッド モバイルネットワークの接続アーキテクチャ
US7853563B2 (en) * 2005-08-01 2010-12-14 Seven Networks, Inc. Universal data aggregation
US8468126B2 (en) * 2005-08-01 2013-06-18 Seven Networks, Inc. Publishing data in an information community
US7917468B2 (en) * 2005-08-01 2011-03-29 Seven Networks, Inc. Linking of personal information management data
US7526768B2 (en) 2004-02-04 2009-04-28 Microsoft Corporation Cross-pollination of multiple sync sources
US9075805B2 (en) * 2004-02-04 2015-07-07 Sony Corporation Methods and apparatuses for synchronizing and tracking content
US7873646B2 (en) 2004-02-25 2011-01-18 Research In Motion Limited Method for modifying notifications in an electronic device
US7398061B2 (en) * 2004-02-26 2008-07-08 Research In Motion Limited Method and apparatus for changing the behavior of an electronic device
WO2006045102A2 (en) 2004-10-20 2006-04-27 Seven Networks, Inc. Method and apparatus for intercepting events in a communication system
US8010082B2 (en) 2004-10-20 2011-08-30 Seven Networks, Inc. Flexible billing architecture
US7706781B2 (en) * 2004-11-22 2010-04-27 Seven Networks International Oy Data security in a mobile e-mail service
US7643818B2 (en) * 2004-11-22 2010-01-05 Seven Networks, Inc. E-mail messaging to/from a mobile terminal
FI117152B (fi) 2004-12-03 2006-06-30 Seven Networks Internat Oy Sähköpostiasetusten käyttöönotto matkaviestimelle
US7877703B1 (en) 2005-03-14 2011-01-25 Seven Networks, Inc. Intelligent rendering of information in a limited display environment
US7796742B1 (en) 2005-04-21 2010-09-14 Seven Networks, Inc. Systems and methods for simplified provisioning
US8438633B1 (en) 2005-04-21 2013-05-07 Seven Networks, Inc. Flexible real-time inbox access
US7657574B2 (en) * 2005-06-03 2010-02-02 Microsoft Corporation Persistent storage file change tracking
WO2006136660A1 (en) 2005-06-21 2006-12-28 Seven Networks International Oy Maintaining an ip connection in a mobile network
US8069166B2 (en) * 2005-08-01 2011-11-29 Seven Networks, Inc. Managing user-to-user contact with inferred presence information
US7996442B2 (en) * 2005-10-17 2011-08-09 Oracle International Corporation Method and system for comparing and re-comparing data item definitions
US9049285B2 (en) * 2005-12-01 2015-06-02 At&T Intellectual Property I, L.P. Synchronization of client application data between POTS telephone and content portal through PSTN
US7769395B2 (en) 2006-06-20 2010-08-03 Seven Networks, Inc. Location-based operations and messaging
KR100789376B1 (ko) * 2006-04-13 2007-12-28 한국전자통신연구원 개인화된 데이터 관리 정책에 따른 정보생명주기관리 서비스 제공 방법
US8165221B2 (en) 2006-04-28 2012-04-24 Netapp, Inc. System and method for sampling based elimination of duplicate data
US8423347B2 (en) * 2006-06-06 2013-04-16 Microsoft Corporation Natural language personal information management
US8370423B2 (en) * 2006-06-16 2013-02-05 Microsoft Corporation Data synchronization and sharing relationships
US20080001717A1 (en) * 2006-06-20 2008-01-03 Trevor Fiatal System and method for group management
US20070290787A1 (en) * 2006-06-20 2007-12-20 Trevor Fiatal Systems and methods for group messaging
WO2007148562A1 (ja) 2006-06-22 2007-12-27 Nec Corporation 共有管理システム、共有管理方法およびプログラム
US8412682B2 (en) 2006-06-29 2013-04-02 Netapp, Inc. System and method for retrieving and using block fingerprints for data deduplication
US7921077B2 (en) * 2006-06-29 2011-04-05 Netapp, Inc. System and method for managing data deduplication of storage systems utilizing persistent consistency point images
US7730404B2 (en) * 2006-07-31 2010-06-01 Research In Motion Limited Electronic device and method of messaging meeting invitees
US20080027955A1 (en) * 2006-07-31 2008-01-31 May Darrell R System and method for storage and display of time-dependent events
US8145200B2 (en) * 2006-07-31 2012-03-27 Research In Motion Limited Method and apparatus for configuring unique profile settings for multiple services
US7827138B2 (en) * 2006-10-02 2010-11-02 Salesforce.Com, Inc. Method and system for synchronizing a server and an on-demand database service
US20080104206A1 (en) * 2006-10-31 2008-05-01 Microsoft Corporation Efficient knowledge representation in data synchronization systems
US20080103977A1 (en) * 2006-10-31 2008-05-01 Microsoft Corporation Digital rights management for distributed devices
US20080109464A1 (en) * 2006-11-06 2008-05-08 Microsoft Corporation Extending Clipboard Augmentation
US8020112B2 (en) * 2006-11-06 2011-09-13 Microsoft Corporation Clipboard augmentation
US8453066B2 (en) 2006-11-06 2013-05-28 Microsoft Corporation Clipboard augmentation with references
US9552571B2 (en) 2007-02-02 2017-01-24 Blackberry Limited Electronic device and method of meeting notification
US7620659B2 (en) * 2007-02-09 2009-11-17 Microsoft Corporation Efficient knowledge representation in data synchronization systems
EP1956499A1 (en) 2007-02-09 2008-08-13 Research In Motion Limited System and method for managing databases associated with respective personal information manager service accounts
US7849056B2 (en) 2007-02-09 2010-12-07 Research In Motion Limited System and method for managing databases associated with respective personal information manager service accounts
US8751442B2 (en) 2007-02-12 2014-06-10 Microsoft Corporation Synchronization associated duplicate data resolution
WO2008102754A1 (ja) * 2007-02-21 2008-08-28 Nec Corporation 情報関連付けシステム、ユーザー情報を関連付ける方法およびプログラム
US7933296B2 (en) * 2007-03-02 2011-04-26 Microsoft Corporation Services for data sharing and synchronization
US7900203B2 (en) * 2007-04-24 2011-03-01 Microsoft Corporation Data sharing and synchronization with relay endpoint and sync data element
US7725456B2 (en) * 2007-04-27 2010-05-25 Microsoft Corporation Item management with data sharing and synchronization
US8762345B2 (en) 2007-05-31 2014-06-24 Netapp, Inc. System and method for accelerating anchor point detection
US7895246B2 (en) 2007-05-31 2011-02-22 Microsoft Corporation Collection bin for data management and transformation
US8693494B2 (en) 2007-06-01 2014-04-08 Seven Networks, Inc. Polling
US8805425B2 (en) 2007-06-01 2014-08-12 Seven Networks, Inc. Integrated messaging
US9143561B2 (en) 2007-11-09 2015-09-22 Topia Technology, Inc. Architecture for management of digital files across distributed network
US8364181B2 (en) * 2007-12-10 2013-01-29 Seven Networks, Inc. Electronic-mail filtering for mobile devices
US8793305B2 (en) 2007-12-13 2014-07-29 Seven Networks, Inc. Content delivery to a mobile device from a content service
US9002828B2 (en) 2007-12-13 2015-04-07 Seven Networks, Inc. Predictive content delivery
US8107921B2 (en) 2008-01-11 2012-01-31 Seven Networks, Inc. Mobile virtual network operator
US8862657B2 (en) * 2008-01-25 2014-10-14 Seven Networks, Inc. Policy based content service
US20090193338A1 (en) * 2008-01-28 2009-07-30 Trevor Fiatal Reducing network and battery consumption during content delivery and playback
US20090248670A1 (en) * 2008-03-31 2009-10-01 Trevor Fiatal Content search engine
US8296671B2 (en) 2008-05-01 2012-10-23 Microsoft Corporation Enabling access to rich data by intercepting paste operations
CA2665601C (en) 2008-05-12 2013-07-16 Research In Motion Limited Electronic device and method for managing storage of data
US8787947B2 (en) * 2008-06-18 2014-07-22 Seven Networks, Inc. Application discovery on mobile devices
US8700301B2 (en) 2008-06-19 2014-04-15 Microsoft Corporation Mobile computing devices, architecture and user interfaces based on dynamic direction information
US20090315766A1 (en) 2008-06-19 2009-12-24 Microsoft Corporation Source switching for devices supporting dynamic direction information
US20090319166A1 (en) * 2008-06-20 2009-12-24 Microsoft Corporation Mobile computing services based on devices with dynamic direction information
US20090315775A1 (en) * 2008-06-20 2009-12-24 Microsoft Corporation Mobile computing services based on devices with dynamic direction information
US8467991B2 (en) * 2008-06-20 2013-06-18 Microsoft Corporation Data services based on gesture and location information of device
US8078158B2 (en) 2008-06-26 2011-12-13 Seven Networks, Inc. Provisioning applications for a mobile device
US8909759B2 (en) * 2008-10-10 2014-12-09 Seven Networks, Inc. Bandwidth measurement
US10303787B2 (en) 2008-10-21 2019-05-28 Microsoft Technology Licensing, Llc Forgetting items with knowledge based synchronization
US8412676B2 (en) * 2008-10-21 2013-04-02 Microsoft Corporation Forgetting items with knowledge based synchronization
US8122092B2 (en) 2008-11-10 2012-02-21 Microsoft Corporation Auto-resolve recipients cache
US8872767B2 (en) 2009-07-07 2014-10-28 Microsoft Corporation System and method for converting gestures into digital graffiti
US8375285B2 (en) * 2009-12-15 2013-02-12 International Business Machines Corporation Enabling access to data files unsupported by a computing device
US20110149086A1 (en) 2009-12-23 2011-06-23 Winbush Iii Amos Camera user content synchronization with central web-based records and information sharing system
US8555187B2 (en) * 2010-02-16 2013-10-08 Google Inc. Server-based data sharing in computer applications using a clipboard
US9043731B2 (en) 2010-03-30 2015-05-26 Seven Networks, Inc. 3D mobile user interface with configurable workspace management
US20110258160A1 (en) * 2010-04-15 2011-10-20 Po-Yen Lee Data synchronization methods for synchronizing data in communication system and communication systems
US9043390B2 (en) * 2010-05-14 2015-05-26 Blackberry Limited Communication system with PIM entry synchronization and related methods
CN102314454A (zh) * 2010-06-30 2012-01-11 百度在线网络技术(北京)有限公司 自动添加内链的方法及系统
CN102314411B (zh) * 2010-06-30 2015-02-18 百度在线网络技术(北京)有限公司 处理词条编创冲突的方法与系统
EP2599003B1 (en) 2010-07-26 2018-07-11 Seven Networks, LLC Mobile network traffic coordination across multiple applications
WO2012018556A2 (en) 2010-07-26 2012-02-09 Ari Backholm Mobile application traffic optimization
US8838783B2 (en) 2010-07-26 2014-09-16 Seven Networks, Inc. Distributed caching for resource and mobile network traffic management
US9077630B2 (en) 2010-07-26 2015-07-07 Seven Networks, Inc. Distributed implementation of dynamic wireless traffic policy
US20120096368A1 (en) * 2010-10-14 2012-04-19 Microsoft Corporation Cloud-based virtual clipboard
WO2012060995A2 (en) 2010-11-01 2012-05-10 Michael Luna Distributed caching in a wireless network of content delivered for a mobile application over a long-held request
WO2012061430A2 (en) 2010-11-01 2012-05-10 Michael Luna Distributed management of keep-alive message signaling for mobile network resource conservation and optimization
US9330196B2 (en) 2010-11-01 2016-05-03 Seven Networks, Llc Wireless traffic management system cache optimization using http headers
US8204953B2 (en) 2010-11-01 2012-06-19 Seven Networks, Inc. Distributed system for cache defeat detection and caching of content addressed by identifiers intended to defeat cache
US8843153B2 (en) 2010-11-01 2014-09-23 Seven Networks, Inc. Mobile traffic categorization and policy for network use optimization while preserving user experience
GB2499534B (en) 2010-11-01 2018-09-19 Seven Networks Llc Caching adapted for mobile application behavior and network conditions
US8166164B1 (en) 2010-11-01 2012-04-24 Seven Networks, Inc. Application and network-based long poll request detection and cacheability assessment therefor
US9060032B2 (en) 2010-11-01 2015-06-16 Seven Networks, Inc. Selective data compression by a distributed traffic management system to reduce mobile data traffic and signaling traffic
US8484314B2 (en) 2010-11-01 2013-07-09 Seven Networks, Inc. Distributed caching in a wireless network of content delivered for a mobile application over a long-held request
EP3422775A1 (en) 2010-11-22 2019-01-02 Seven Networks, LLC Optimization of resource polling intervals to satisfy mobile device requests
CA2798523C (en) 2010-11-22 2015-02-24 Seven Networks, Inc. Aligning data transfer to optimize connections established for transmission over a wireless network
US9325662B2 (en) 2011-01-07 2016-04-26 Seven Networks, Llc System and method for reduction of mobile network traffic used for domain name system (DNS) queries
KR101755421B1 (ko) * 2011-01-10 2017-07-10 삼성전자주식회사 클라이언트 장치를 이용한 호스트 장치의 파일 정보 시스템 편집 방법 및 시스템
GB2505103B (en) 2011-04-19 2014-10-22 Seven Networks Inc Social caching for device resource sharing and management cross-reference to related applications
US8621075B2 (en) 2011-04-27 2013-12-31 Seven Metworks, Inc. Detecting and preserving state for satisfying application requests in a distributed proxy and cache system
US8832228B2 (en) 2011-04-27 2014-09-09 Seven Networks, Inc. System and method for making requests on behalf of a mobile device based on atomic processes for mobile network traffic relief
US8819471B2 (en) * 2011-06-03 2014-08-26 Apple Inc. Methods and apparatus for power state based backup
US9465696B2 (en) 2011-06-03 2016-10-11 Apple Inc. Methods and apparatus for multi-phase multi-source backup
US8868859B2 (en) 2011-06-03 2014-10-21 Apple Inc. Methods and apparatus for multi-source restore
US9411687B2 (en) 2011-06-03 2016-08-09 Apple Inc. Methods and apparatus for interface in multi-phase restore
CN102841897B (zh) * 2011-06-23 2016-03-02 阿里巴巴集团控股有限公司 一种实现增量数据抽取的方法、装置及系统
EP2737742A4 (en) 2011-07-27 2015-01-28 Seven Networks Inc AUTOMATIC PRODUCTION AND DISTRIBUTION OF GUIDELINES INFORMATION ON MOBILE MOBILE TRANSPORT IN A WIRELESS NETWORK
US10599620B2 (en) * 2011-09-01 2020-03-24 Full Circle Insights, Inc. Method and system for object synchronization in CRM systems
KR101888648B1 (ko) * 2011-09-01 2018-08-16 삼성전자주식회사 주소록에서 자동으로 그룹을 생성하고 관리하는 방법 및 그 장치
US8977755B2 (en) 2011-12-06 2015-03-10 Seven Networks, Inc. Mobile device and method to utilize the failover mechanism for fault tolerance provided for mobile traffic management and network/device resource conservation
US8918503B2 (en) 2011-12-06 2014-12-23 Seven Networks, Inc. Optimization of mobile traffic directed to private networks and operator configurability thereof
US9009250B2 (en) 2011-12-07 2015-04-14 Seven Networks, Inc. Flexible and dynamic integration schemas of a traffic management system with various network operators for network traffic alleviation
US9277443B2 (en) 2011-12-07 2016-03-01 Seven Networks, Llc Radio-awareness of mobile device for sending server-side control signals using a wireless network optimized transport protocol
US9396277B2 (en) 2011-12-09 2016-07-19 Microsoft Technology Licensing, Llc Access to supplemental data based on identifier derived from corresponding primary application data
US9832095B2 (en) 2011-12-14 2017-11-28 Seven Networks, Llc Operation modes for mobile traffic optimization and concurrent management of optimized and non-optimized traffic
US8861354B2 (en) 2011-12-14 2014-10-14 Seven Networks, Inc. Hierarchies and categories for management and deployment of policies for distributed wireless traffic optimization
US9021021B2 (en) 2011-12-14 2015-04-28 Seven Networks, Inc. Mobile network reporting and usage analytics system and method aggregated using a distributed traffic optimization system
US9367397B1 (en) * 2011-12-20 2016-06-14 Emc Corporation Recovering data lost in data de-duplication system
WO2013103988A1 (en) 2012-01-05 2013-07-11 Seven Networks, Inc. Detection and management of user interactions with foreground applications on a mobile device in distributed caching
US9203864B2 (en) 2012-02-02 2015-12-01 Seven Networks, Llc Dynamic categorization of applications for network access in a mobile network
US9326189B2 (en) 2012-02-03 2016-04-26 Seven Networks, Llc User as an end point for profiling and optimizing the delivery of content and data in a wireless network
US9110892B2 (en) * 2012-03-13 2015-08-18 Microsoft Technology Licensing, Llc Synchronizing local and remote data
US8812695B2 (en) 2012-04-09 2014-08-19 Seven Networks, Inc. Method and system for management of a virtual network connection without heartbeat messages
WO2013155208A1 (en) 2012-04-10 2013-10-17 Seven Networks, Inc. Intelligent customer service/call center services enhanced using real-time and historical mobile application and traffic-related statistics collected by a distributed caching system in a mobile network
US8775631B2 (en) 2012-07-13 2014-07-08 Seven Networks, Inc. Dynamic bandwidth adjustment for browsing or streaming activity in a wireless network based on prediction of user behavior when interacting with mobile applications
US20150234908A1 (en) * 2012-09-24 2015-08-20 President And Fellows Of Harvard College Techniques for data synchronization using compressive sensing
US9161258B2 (en) 2012-10-24 2015-10-13 Seven Networks, Llc Optimized and selective management of policy deployment to mobile clients in a congested network to prevent further aggravation of network congestion
US20140177497A1 (en) 2012-12-20 2014-06-26 Seven Networks, Inc. Management of mobile device radio state promotion and demotion
US10348821B2 (en) * 2012-12-21 2019-07-09 Dropbox, Inc. Prioritizing structural operations and distributing changes in a synced online content management system
US9542423B2 (en) 2012-12-31 2017-01-10 Apple Inc. Backup user interface
US9271238B2 (en) 2013-01-23 2016-02-23 Seven Networks, Llc Application or context aware fast dormancy
US8874761B2 (en) 2013-01-25 2014-10-28 Seven Networks, Inc. Signaling optimization in a wireless network for traffic utilizing proprietary and non-proprietary protocols
US9326185B2 (en) 2013-03-11 2016-04-26 Seven Networks, Llc Mobile network congestion recognition for optimization of mobile traffic
US9858052B2 (en) * 2013-03-21 2018-01-02 Razer (Asia-Pacific) Pte. Ltd. Decentralized operating system
US9053165B2 (en) 2013-07-08 2015-06-09 Dropbox, Inc. Structured content item synchronization
US9065765B2 (en) 2013-07-22 2015-06-23 Seven Networks, Inc. Proxy server associated with a mobile carrier for enhancing mobile traffic management in a mobile network
US9715548B2 (en) * 2013-08-02 2017-07-25 Google Inc. Surfacing user-specific data records in search
US9892184B1 (en) 2013-08-29 2018-02-13 Servpro Industries, Inc. System and method for synchronizing incident response profiles across distinct computing platforms
JP6116065B2 (ja) * 2013-11-01 2017-04-19 フリュー株式会社 管理装置および管理装置の制御方法
US10091287B2 (en) 2014-04-08 2018-10-02 Dropbox, Inc. Determining presence in an application accessing shared and synchronized content
US10171579B2 (en) 2014-04-08 2019-01-01 Dropbox, Inc. Managing presence among devices accessing shared and synchronized content
US9998555B2 (en) 2014-04-08 2018-06-12 Dropbox, Inc. Displaying presence in an application accessing shared and synchronized content
US10270871B2 (en) 2014-04-08 2019-04-23 Dropbox, Inc. Browser display of native application presence and interaction data
US9661440B2 (en) 2014-07-25 2017-05-23 Qualcomm Incorporated Methods and systems for triggering efficient application synchronization
US9846528B2 (en) 2015-03-02 2017-12-19 Dropbox, Inc. Native application collaboration
US10248933B2 (en) 2015-12-29 2019-04-02 Dropbox, Inc. Content item activity feed for presenting events associated with content items
US10620811B2 (en) 2015-12-30 2020-04-14 Dropbox, Inc. Native application collaboration
US10382502B2 (en) 2016-04-04 2019-08-13 Dropbox, Inc. Change comments for synchronized content items
US10922702B2 (en) 2016-04-29 2021-02-16 Dotalign, Inc. Method, apparatus, and computer-readable medium for identifying
US10956406B2 (en) * 2017-06-12 2021-03-23 Palantir Technologies Inc. Propagated deletion of database records and derived data
CN109711644B (zh) * 2019-02-25 2023-04-18 安徽大学 基于改进花粉算法的火电机组负荷优化分配方法
US11023511B1 (en) * 2019-07-31 2021-06-01 Splunk Inc. Mobile device composite interface for dual-sourced incident management and monitoring system
US10887157B1 (en) 2019-07-31 2021-01-05 Splunk Inc. Dual-sourced incident management and monitoring system
CN112015738A (zh) * 2020-08-28 2020-12-01 支付宝(杭州)信息技术有限公司 用于实现多个数据明细表的联表处理的方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002526864A (ja) * 1998-10-05 2002-08-20 ヴィスト・コーポレーション ネットワークにおいて遠隔データベースを更新するためのシステムおよび方法
WO2003044698A1 (en) * 2001-11-15 2003-05-30 Visto Corporation System and methods for asychronous synchronization

Family Cites Families (76)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6041365A (en) * 1985-10-29 2000-03-21 Kleinerman; Aurel Apparatus and method for high performance remote application gateway servers
US4714992A (en) * 1985-11-26 1987-12-22 International Business Machines Corporation Communication for version management in a distributed information service
US5490765A (en) * 1993-05-17 1996-02-13 Cybor Corporation Dual stage pump system with pre-stressed diaphragms and reservoir
EP0826181A4 (en) * 1995-04-11 2005-02-09 Kinetech Inc IDENTIFYING DATA IN A DATA PROCESSING SYSTEM
US5974238A (en) * 1996-08-07 1999-10-26 Compaq Computer Corporation Automatic data synchronization between a handheld and a host computer using pseudo cache including tags and logical data elements
US6647432B1 (en) * 1996-08-19 2003-11-11 Geoquest, A Division Of Schlumberger Technology Corporation Distributed framework for intertask communication between workstation applications
JP3554115B2 (ja) * 1996-08-26 2004-08-18 株式会社コガネイ 薬液供給装置
US5822758A (en) * 1996-09-09 1998-10-13 International Business Machines Corporation Method and system for high performance dynamic and user programmable cache arbitration
US6044381A (en) * 1997-09-11 2000-03-28 Puma Technology, Inc. Using distributed history files in synchronizing databases
US6405218B1 (en) * 1996-11-13 2002-06-11 Pumatech, Inc. Synchronizing databases
US6909708B1 (en) * 1996-11-18 2005-06-21 Mci Communications Corporation System, method and article of manufacture for a communication system architecture including video conferencing
US5867495A (en) * 1996-11-18 1999-02-02 Mci Communications Corporations System, method and article of manufacture for communications utilizing calling, plans in a hybrid network
US6335927B1 (en) * 1996-11-18 2002-01-01 Mci Communications Corporation System and method for providing requested quality of service in a hybrid network
US7145898B1 (en) * 1996-11-18 2006-12-05 Mci Communications Corporation System, method and article of manufacture for selecting a gateway of a hybrid communication system architecture
US5867494A (en) * 1996-11-18 1999-02-02 Mci Communication Corporation System, method and article of manufacture with integrated video conferencing billing in a communication system architecture
US5999525A (en) * 1996-11-18 1999-12-07 Mci Communications Corporation Method for video telephony over a hybrid network
US6754181B1 (en) * 1996-11-18 2004-06-22 Mci Communications Corporation System and method for a directory service supporting a hybrid communication system architecture
US6731625B1 (en) * 1997-02-10 2004-05-04 Mci Communications Corporation System, method and article of manufacture for a call back architecture in a hybrid network with support for internet telephony
US6633924B1 (en) * 1997-10-02 2003-10-14 Charles Wu Object synchronization between objects stores on different computers
US6260077B1 (en) * 1997-10-24 2001-07-10 Sun Microsystems, Inc. Method, apparatus and program product for interfacing a multi-threaded, client-based API to a single-threaded, server-based API
US6870546B1 (en) * 1998-06-01 2005-03-22 Autodesk, Inc. Protectable expressions in objects having authorable behaviors and appearances
US6317754B1 (en) * 1998-07-03 2001-11-13 Mitsubishi Electric Research Laboratories, Inc System for user control of version /Synchronization in mobile computing
US6275957B1 (en) * 1998-09-21 2001-08-14 Microsoft Corporation Using query language for provider and subscriber registrations
US6367034B1 (en) * 1998-09-21 2002-04-02 Microsoft Corporation Using query language for event filtering and aggregation
US6314533B1 (en) * 1998-09-21 2001-11-06 Microsoft Corporation System and method for forward custom marshaling event filters
US6449622B1 (en) * 1999-03-08 2002-09-10 Starfish Software, Inc. System and methods for synchronizing datasets when dataset changes may be received out of order
US6343299B1 (en) * 1998-11-16 2002-01-29 International Business Machines Corporation Method and apparatus for random update synchronization among multiple computing devices
US6650739B1 (en) * 1998-12-28 2003-11-18 Pitney Bowes Inc. Method of providing personal messaging using a virtual messaging assistant
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
US6678741B1 (en) * 1999-04-09 2004-01-13 Sun Microsystems, Inc. Method and apparatus for synchronizing firmware
US6725281B1 (en) * 1999-06-11 2004-04-20 Microsoft Corporation Synchronization of controlled device state using state table and eventing in data-driven remote device control model
US6401104B1 (en) * 1999-07-03 2002-06-04 Starfish Software, Inc. System and methods for synchronizing datasets using cooperation among multiple synchronization engines
US6609128B1 (en) * 1999-07-30 2003-08-19 Accenture Llp Codes table framework design in an E-commerce architecture
US6718535B1 (en) * 1999-07-30 2004-04-06 Accenture Llp System, method and article of manufacture for an activity framework design in an e-commerce based environment
US6633878B1 (en) * 1999-07-30 2003-10-14 Accenture Llp Initializing an ecommerce database framework
US6523027B1 (en) * 1999-07-30 2003-02-18 Accenture Llp Interfacing servers in a Java based e-commerce architecture
US6704873B1 (en) * 1999-07-30 2004-03-09 Accenture Llp Secure gateway interconnection in an e-commerce based environment
US6601233B1 (en) * 1999-07-30 2003-07-29 Accenture Llp Business components framework
US7100195B1 (en) * 1999-07-30 2006-08-29 Accenture Llp Managing user information on an e-commerce system
US6601195B1 (en) * 1999-09-09 2003-07-29 International Business Machines Corporation Switch adapter testing
US6560720B1 (en) * 1999-09-09 2003-05-06 International Business Machines Corporation Error injection apparatus and method
US6487208B1 (en) * 1999-09-09 2002-11-26 International Business Machines Corporation On-line switch diagnostics
EP1130512A3 (en) * 2000-01-25 2004-04-07 FusionOne, Inc. Data transfer and synchronization system
US6694336B1 (en) * 2000-01-25 2004-02-17 Fusionone, Inc. Data transfer and synchronization system
US6502102B1 (en) * 2000-03-27 2002-12-31 Accenture Llp System, method and article of manufacture for a table-driven automated scripting architecture
US6907546B1 (en) * 2000-03-27 2005-06-14 Accenture Llp Language-driven interface for an automated testing framework
US6701514B1 (en) * 2000-03-27 2004-03-02 Accenture Llp System, method, and article of manufacture for test maintenance in an automated scripting framework
US6598059B1 (en) * 2000-04-22 2003-07-22 Oracle Corp. System and method of identifying and resolving conflicts among versions of a database table
US6470329B1 (en) * 2000-07-11 2002-10-22 Sun Microsystems, Inc. One-way hash functions for distributed data synchronization
US20060031927A1 (en) * 2000-08-23 2006-02-09 Masahiro Mizuno Information management system, information management method, and system control apparatus
WO2002019096A2 (en) * 2000-08-31 2002-03-07 Docubase Reconfiguration and preservation of setup data
US6502170B2 (en) * 2000-12-15 2002-12-31 Intel Corporation Memory-to-memory compare/exchange instructions to support non-blocking synchronization schemes
US7017105B2 (en) * 2001-02-02 2006-03-21 Microsoft Corporation Deleting objects from a store of a device
GB2372590B (en) 2001-02-23 2005-03-23 Proksim Software Inc Duplication space
US7099896B2 (en) * 2001-04-06 2006-08-29 Patientkeeper, Inc. Synchronizing data between disparate schemas using composite version
US6918120B2 (en) * 2001-04-20 2005-07-12 Hewlett-Packard Development Company, L.P. Remote file system using network multicast
AU2002345935A1 (en) * 2001-06-26 2003-03-03 Enterprises Solutions, Inc. Transaction verification system and method
US7054955B2 (en) * 2001-06-27 2006-05-30 Microsoft Corporation System and method for recovering from a failed synchronization session
US7761535B2 (en) * 2001-09-28 2010-07-20 Siebel Systems, Inc. Method and system for server synchronization with a computing device
FI112015B (fi) * 2001-11-12 2003-10-15 Nokia Corp Datan synkronoinnin järjestäminen tietoliikennejärjestelmässä
US7574711B2 (en) * 2001-12-14 2009-08-11 Nvidia International, Inc. System for replaying and synchronizing patterns on a client and external data source devices
US20050073991A1 (en) * 2002-02-19 2005-04-07 Roberts Chad A. Multiple wireless device synchronization server
US7606881B2 (en) * 2002-04-25 2009-10-20 Oracle International Corporation System and method for synchronization of version annotated objects
US6983293B2 (en) * 2002-07-24 2006-01-03 International Business Machines Corporation Mid-tier-based conflict resolution method and system usable for message synchronization and replication
US7890091B2 (en) * 2003-05-08 2011-02-15 Good Technology, Inc. Collaborative data and intelligent synchronization for mobile devices
US7219329B2 (en) * 2003-06-13 2007-05-15 Microsoft Corporation Systems and methods providing lightweight runtime code generation
KR100491541B1 (ko) * 2003-08-01 2005-05-25 니트젠테크놀러지스 주식회사 네트웍 환경에서의 컨텐츠 동기화 시스템 및 동기화 방법
US7584082B2 (en) * 2003-08-07 2009-09-01 The Mathworks, Inc. Synchronization and data review system
US7596790B2 (en) * 2003-08-29 2009-09-29 Intel Corporation Allocating computing resources in a distributed environment
US20050060370A1 (en) * 2003-09-17 2005-03-17 Sony Corporation Version based content distribution and synchronization system and method
US7281006B2 (en) * 2003-10-23 2007-10-09 International Business Machines Corporation System and method for dividing data into predominantly fixed-sized chunks so that duplicate data chunks may be identified
US20070067373A1 (en) * 2003-11-03 2007-03-22 Steven Higgins Methods and apparatuses to provide mobile applications
US7080104B2 (en) * 2003-11-07 2006-07-18 Plaxo, Inc. Synchronization and merge engines
US8909712B2 (en) * 2003-11-25 2014-12-09 Sap Ag System and method for a generic mobile synchronization framework
US20050165884A1 (en) * 2003-12-29 2005-07-28 Masek William J. System and method for automated distributed account maintenance
US7526768B2 (en) * 2004-02-04 2009-04-28 Microsoft Corporation Cross-pollination of multiple sync sources

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002526864A (ja) * 1998-10-05 2002-08-20 ヴィスト・コーポレーション ネットワークにおいて遠隔データベースを更新するためのシステムおよび方法
WO2003044698A1 (en) * 2001-11-15 2003-05-30 Visto Corporation System and methods for asychronous synchronization
JP2005509979A (ja) * 2001-11-15 2005-04-14 ヴィスト・コーポレーション 非同期型同期のシステムおよび方法

Also Published As

Publication number Publication date
US8386558B2 (en) 2013-02-26
EP1569141A2 (en) 2005-08-31
US20060020804A1 (en) 2006-01-26
EP1569141A3 (en) 2006-11-02
CN100530176C (zh) 2009-08-19
US20050172296A1 (en) 2005-08-04
US20130138609A1 (en) 2013-05-30
CN1658195A (zh) 2005-08-24
JP2005222552A (ja) 2005-08-18
US7526768B2 (en) 2009-04-28
US9292585B2 (en) 2016-03-22
KR101137101B1 (ko) 2012-04-19
KR20060041737A (ko) 2006-05-12

Similar Documents

Publication Publication Date Title
JP4726508B2 (ja) 複数の同期ソースのクロスポリネーション
EP1229746B1 (en) Deleting objects from a store of a device
EP1271321B1 (en) System and method for recovering from a failed synchronization session
US7930270B2 (en) Managing files on multiple computing devices
CN102770854B (zh) 自动同步冲突解决
JP4718847B2 (ja) オフラインのグローバルアドレスリスト
JP4369471B2 (ja) ミラーリングプログラム、ミラーリング方法、情報記憶装置
RU2372649C2 (ru) Гранулярное управление полномочиями дублируемой информации при помощи ограничения и снятия ограничения
JP2005322250A (ja) 電子装置間でデータを同期させる方法およびシステム
JP2008537255A (ja) ファイルのピアツーピア同期用システム及び方法
JP2007507030A (ja) データを同期させるための方法、システム及びプログラム
US10831612B2 (en) Primary node-standby node data transmission method, control node, and database system
US20080195739A1 (en) Resolving Synchronization Duplication
JP2004334574A (ja) ストレージの運用管理プログラム、運用管理方法及び管理計算機
AU2007248933A1 (en) Filtered replication of data stores
JP2010134630A (ja) 情報処理装置、分割管理サーバ、情報処理方法、分割管理方法、プログラムおよび情報処理システム
US8275962B2 (en) User roles controlling execution of operations on copy pair volumes
CN102081721A (zh) 数据控制设备和数据控制方法
JP2010072746A (ja) ストレージシステム、及びストレージシステムの運用方法
JP2016530656A (ja) 分散型ディザスタリカバリファイル同期サーバシステム
US8090695B2 (en) Dynamic restoration of message object search indexes
US20070214175A1 (en) Synchronization of metadata in a distributed file system
JP2011522337A (ja) サーバクラスタに配信されるコンピュータシステムのソフトウェアモジュールの同期化方法、同期化システムおよびデータストレージへの適用
JP2004246702A (ja) 計算機システム、計算機装置、計算機システムにおけるデータアクセス方法及びプログラム
US20200089801A1 (en) Disturbance-free partitioning and migration of data from one storage account to another storage account

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080204

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080313

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101008

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110107

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110405

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110412

R150 Certificate of patent or registration of utility model

Ref document number: 4726508

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140422

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250