JP2009535689A5 - - Google Patents

Download PDF

Info

Publication number
JP2009535689A5
JP2009535689A5 JP2009507676A JP2009507676A JP2009535689A5 JP 2009535689 A5 JP2009535689 A5 JP 2009535689A5 JP 2009507676 A JP2009507676 A JP 2009507676A JP 2009507676 A JP2009507676 A JP 2009507676A JP 2009535689 A5 JP2009535689 A5 JP 2009535689A5
Authority
JP
Japan
Prior art keywords
replica
change
knowledge
filter
stored data
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.)
Granted
Application number
JP2009507676A
Other languages
English (en)
Other versions
JP5021723B2 (ja
JP2009535689A (ja
Filing date
Publication date
Priority claimed from US11/380,579 external-priority patent/US7440985B2/en
Application filed filed Critical
Publication of JP2009535689A publication Critical patent/JP2009535689A/ja
Publication of JP2009535689A5 publication Critical patent/JP2009535689A5/ja
Application granted granted Critical
Publication of JP5021723B2 publication Critical patent/JP5021723B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Claims (20)

  1. ストアされたデータの少なくとも1つの変更を、同期群内のレプリカ間で複製する方法であって、各レプリカは前記同期群内の他のレプリカと独立して変更を行うことができ、該方法は、
    第1のレプリカが認識するストアされたデータの変更の知識を表す第1のレプリカの知識値と、前記ストアされたデータ内の特定のデータ集合を識別するフィルタとを第2のレプリカで受信するステップであって、前記第1のレプリカの知識値は、第1の変更識別子と第2の変更識別子とを含み、第1の変更識別子は、第1のレプリカが第1の変更識別子まで第1のレプリカによってなされた全ての変更を認識することを示し、第2の変更識別子は、第1のレプリカが第2の変更識別子まで第3のレプリカによってなされた全ての変更を認識することを示す、受信するステップと、
    前記第1のレプリカの知識値を、前記第2のレプリカ内にストアされたデータの変更に関連するバージョンと比較して、前記第1のレプリカが認識しておらず前記第2のレプリカが知っている少なくとも1つの変更を識別するステップであって、前記少なくとも1つの変更は前記フィルタにより識別された前記特定のデータ集合に関連する、識別するステップと、
    前記少なくとも1つの変更を前記第1のレプリカに送信するステップと
    を含むことを特徴とする方法。
  2. 前記第2のレプリカが認識するストアされたデータの変更の知識を表す第2のレプリカの知識値を、前記第1のレプリカに対して送信するステップをさらに含むことを特徴とする請求項1に記載の方法。
  3. 前記第1のレプリカの知識値により表されず、且つ前記フィルタにより識別した前記特定のデータ集合にも関連しない、前記ストアされたデータの少なくとも1つの非絞込み変更を前記第2のレプリカに従って識別するステップと、
    前記少なくとも1つの非絞込み変更を識別する情報を前記第1のレプリカに送信するステップと
    をさらに含むことを特徴とする請求項1に記載の方法。
  4. 前記フィルタは伸縮可能フィルタであり、
    前記フィルタにより識別された前記特定のデータ集合は、前記比較するステップの間に適用されるフィルタ基準により識別されたデータと、前記第1のレプリカの知識値により表された時点で適用された前記フィルタ基準により識別されたデータとを備える、
    ことを特徴とする請求項1に記載の方法。
  5. 各々が別々のデータを識別し、前記データが前記フィルタに入ることに関連する少なくとも1つのバージョンを有する、1つまたは複数のストアされたデータ識別子を備える前記フィルタに関連するリストをさらに備えることを特徴とする請求項1に記載の方法。
  6. 前記の1つまたは複数のストアされたデータ識別子の少なくとも1つは、前記フィルタから前記データが出ることに関連する少なくとも1つのバージョンを備えることを特徴とする請求項5に記載の方法。
  7. 前記リストは、
    フィルタ基準を評価することと、
    前記フィルタ内にあるストアされたデータを前記フィルタ基準が識別するときに、前記データが前記フィルタに入ることに関連するバージョンを加えることと、
    前記フィルタ内にないストアされたデータを前記フィルタ基準が識別するときに、前記データが前記フィルタから出ることに関連するバージョンを加えることと
    により保持されることを特徴とする請求項5に記載の方法。
  8. 前記リストは、同期動作の直前または最中に保持されていることを特徴とする請求項7に記載の方法。
  9. 前記リストは、同期動作から離れた時点で保持されることを特徴とする請求項7に記載の方法。
  10. ストアされたデータの少なくとも1つの変更を、同期群内のレプリカ間で複製する方法であって、各レプリカは前記同期群内の他のレプリカと独立して変更を行うことができ、該方法は、
    第1のレプリカが認識するストアされたデータの変更の知識を表す第1のレプリカの知識値と、前記ストアされたデータ内の特定のデータ集合を識別するフィルタとを第2のレプリカに送信するステップであって、前記第1のレプリカの知識値は複数の変更識別子を含み、変更識別子の各々は、第1のレプリカが前記変更識別子まで関連するレプリカによってなされた全ての変更を認識することを示す、送信するステップと、
    前記第1のレプリカが認識しなかった前記第2のレプリカ内に存在するストアされたデータの少なくとも1つの変更を受信するステップであって、前記少なくとも1つの変更は、前記フィルタにより識別された前記特定のデータ集合に関連する、受信するステップと、
    前記少なくとも1つの受信した変更を、前記第1のレプリカにより保持された前記ストアされたデータに取り込むステップと
    を含むことを特徴とする方法。
  11. 前記第2のレプリカが認識する前記ストアされたデータの変更の知識を表す第2のレプリカの知識値を受信するステップと、
    前記フィルタにより識別された前記特定のデータ集合に対してのみ、前記第2のレプリカが認識する前記ストアされたデータの変更の知識を表すように、前記第1のレプリカの知識値を更新するステップと
    をさらに含むことを特徴とする請求項10に記載の方法。
  12. 前記第1のレプリカの知識値により表されず、且つ前記フィルタが識別する前記特定のデータ集合にも関連しない前記ストアされたデータの少なくとも1つの非絞込み変更を識別する情報を、前記第2のレプリカによって受信するステップと、
    前記少なくとも1つの非絞込み変更を識別する情報を用いて、前記第1のレプリカにより保持された前記ストアされたデータを更新するステップと
    をさらに含むことを特徴とする請求項10に記載の方法。
  13. 前記第1のレプリカにより保持された前記ストアされたデータを更新するステップは、
    前記少なくとも1つの非絞込み変更を識別する前記情報に従って前記第1のレプリカの知識値内に少なくとも1つの例外を生成することであって、前記少なくとも1つの例外は、前記少なくとも1つの変更を受信する前に前記第1のレプリカが認識した前記ストアされたデータの前記変更の知識を参照することをさらに含むことを特徴とする請求項12に記載の方法。
  14. 前記第1のレプリカにより保持された前記ストアされたデータを更新するステップは、前記少なくとも1つの非絞込み変更を識別する前記情報に対応した前記ストアされたデータの少なくとも一部を削除することをさらに含むことを特徴とする請求項12に記載の方法。
  15. 前記少なくとも1つの受信した変更を取り込むステップは、
    前記少なくとも1つの受信した変更が前記第2のレプリカ上で行われたときに前記第2のレプリカが認識しなかった前記ストアされたデータの変更の知識を表す知識生成値を前記第2のレプリカから受信することと、
    単一の前記ストアされたデータについて、
    前記第1のレプリカ上で第1の変更を行い、
    前記第2のレプリカ上で第2の変更を行い、
    前記第1の変更に関連する第1の変更IDが前記知識生成値内になく、
    前記第2の変更に関連する第2の変更IDが前記第1のレプリカの知識値内にないと

    にコンフリクトが存在すると判断することと
    を含むことを特徴とする請求項10に記載の方法。
  16. ストアされたデータの変更を同期群内のレプリカ間で管理および複製するシステムであって、各レプリカは前記同期群内の他のレプリカと独立して変更を行うことができ、該システムは、
    プロセッサと、
    前記プロセッサに選択的に結合されたメモリと、
    前記ストアされたデータを管理するよう構成した項目データストアモジュールと、
    前記ストアされたデータの変更の知識を管理するよう構成した知識ストアモジュールと、
    それぞれが前記ストアされたデータ内の特定のデータ集合を識別する1つまたは複数のフィルタを保持するよう構成したフィルタストアモジュールと、
    第1のレプリカが認識する前記ストアされたデータの変更の知識を表す第1のレプリカの知識値と、前記ストアされたデータ内の第1の特定のデータ集合を識別する第1のフィルタとを受信し、
    前記第1のレプリカの知識値と前記項目データストアモジュールが提供する変更に関連するバージョンとを比較して、前記第1のレプリカが認識しない前記システムが知っている少なくとも1つの列挙した変更を識別し、前記少なくとも1つの列挙した変更は前記第1のフィルタが識別する前記第1の特定のデータ集合に関連しており、
    前記第1のレプリカの前記少なくとも1つの列挙した変更を送信する
    よう構成した変更列挙モジュールであって、前記第1のレプリカの知識値は、第1の変更識別子と第2の変更識別子とを含み、第1の変更識別子は、第1のレプリカが第1の変更識別子まで第1のレプリカによってなされた全ての変更を認識することを示し、第2の変更識別子は、第1のレプリカが第2の変更識別子まで第3のレプリカによってなされた全ての変更を認識することを示し、前記第2の変更識別子まで第3のレプリカによってなされた前記変更は、第1のアイテムに対する第1の変更と第2のアイテムに対する第2の変更とを含み、第1の変更および第2の変更は異なる変更識別子に対応する、変更列挙モジュールと、
    前記システムが認識する前記ストアされたデータの変更の知識を表す前記知識ストアにより提供したシステム知識値と、前記ストアされたデータ内の第2の特定のデータ集合を識別する前記フィルタストアが提供する第2のフィルタとを第2のレプリカに送信し、
    前記システムが認識しなかった前記第2のレプリカ内に存在する少なくとも1つの受信した変更を受信し、前記少なくとも1つの受信した変更は、前記第2のフィルタにより識別した前記第2の特定のデータ集合に関連しており、
    前記少なくとも1つの受信した変更を、前記項目データストアモジュールに関連する前記ストアされたデータに取り込む
    よう構成した変更取り込みモジュールと
    を備えることを特徴とするシステム。
  17. 前記システムが認識する前記ストアされたデータの変更の知識を表す前記知識ストアにより提供した前記システム知識値を、前記第1のレプリカに送信するよう前記変更列挙モジュールをさらに構成したことを特徴とする請求項16に記載のシステム。
  18. 前記変更取り込みモジュールは、
    前記第2のレプリカが認識する前記ストアされたデータの変更の知識を表す第2のレプリカの知識値を受信し、
    前記第2のレプリカが認識する前記ストアされたデータの変更の知識を表すように、前記フィルタが識別する前記特定のデータ集合に対してのみ、前記システムの知識値を更新する
    ようにさらに構成したことを特徴とする請求項16に記載のシステム。
  19. 前記変更取り込みモジュールは、
    前記少なくとも1つの受信した変更が前記第2のレプリカ上で行われたときに前記第2のレプリカが認識しなかった前記ストアされたデータの変更の知識を表す知識生成値を前記第2のレプリカから受信し、
    単一の前記ストアされたデータについて、
    前記第1のレプリカ上で第1の変更を行い、
    前記第2のレプリカ上で第2の変更を行い、
    前記第1の変更に関連する第1の変更IDが前記知識生成値内になく、
    前記第2の変更に関連する第2の変更IDが前記システムの知識値内にないとき
    にコンフリクトが存在すると判断する
    ようさらに構成したことを特徴とする請求項16に記載のシステム。
  20. 前記第1のフィルタは伸縮可能フィルタであること、および、
    前記第1のフィルタにより識別した前記第1の特定のデータ集合は、前記比較動作中に適用したフィルタ基準により識別したデータと、前記第1のレプリカの知識値により表す時点で適用した前記フィルタ基準により識別したデータとを備えること
    を特徴とする請求項16に記載のシステム。
JP2009507676A 2006-04-27 2007-01-29 データストアの絞込み複製 Expired - Fee Related JP5021723B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/380,579 US7440985B2 (en) 2003-07-31 2006-04-27 Filtered replication of data stores
US11/380,579 2006-04-27
PCT/US2007/002379 WO2007130178A1 (en) 2006-04-27 2007-01-29 Filtered replication of data stores

Publications (3)

Publication Number Publication Date
JP2009535689A JP2009535689A (ja) 2009-10-01
JP2009535689A5 true JP2009535689A5 (ja) 2010-03-18
JP5021723B2 JP5021723B2 (ja) 2012-09-12

Family

ID=38668068

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009507676A Expired - Fee Related JP5021723B2 (ja) 2006-04-27 2007-01-29 データストアの絞込み複製

Country Status (12)

Country Link
US (1) US7440985B2 (ja)
JP (1) JP5021723B2 (ja)
KR (1) KR20090015900A (ja)
AU (1) AU2007248933A1 (ja)
BR (1) BRPI0710725A2 (ja)
CA (1) CA2646821A1 (ja)
CL (1) CL2007000754A1 (ja)
MX (1) MX2008013645A (ja)
NO (1) NO20084258L (ja)
RU (1) RU2008142428A (ja)
TW (1) TWI364676B (ja)
WO (1) WO2007130178A1 (ja)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7401103B2 (en) * 2003-07-31 2008-07-15 Microsoft Corporation Replication protocol for data stores
US8166101B2 (en) 2003-08-21 2012-04-24 Microsoft Corporation Systems and methods for the implementation of a synchronization schemas for units of information manageable by a hardware/software interface system
US8238696B2 (en) 2003-08-21 2012-08-07 Microsoft Corporation Systems and methods for the implementation of a digital images schema for organizing units of information manageable by a hardware/software interface system
US8131739B2 (en) 2003-08-21 2012-03-06 Microsoft Corporation Systems and methods for interfacing application programs with an item-based storage platform
US7401104B2 (en) * 2003-08-21 2008-07-15 Microsoft Corporation Systems and methods for synchronizing computer systems through an intermediary file system share or device
US20060242277A1 (en) * 2005-03-31 2006-10-26 Tripwire, Inc. Automated change approval
US7689593B2 (en) * 2005-12-30 2010-03-30 Sap Ag Systems and methods for accessing a shared space in a provider-tenant environment
US7917607B2 (en) * 2005-12-30 2011-03-29 Sap Ag Software management systems and methods, including use of such systems and methods in a provider-tenant environment
US7890646B2 (en) * 2006-04-27 2011-02-15 Microsoft Corporation Synchronization orchestration
US20080103977A1 (en) * 2006-10-31 2008-05-01 Microsoft Corporation Digital rights management for distributed devices
US20080104206A1 (en) * 2006-10-31 2008-05-01 Microsoft Corporation Efficient knowledge representation in data synchronization systems
US8527660B2 (en) * 2006-12-22 2013-09-03 Palm, Inc. Data synchronization by communication of modifications
US7933869B2 (en) * 2006-12-29 2011-04-26 Sap Ag Method and system for cloning a tenant database in a multi-tenant system
US20080162589A1 (en) * 2006-12-29 2008-07-03 Microsoft Corporation Weakly-consistent distributed collection compromised replica recovery
US20080162587A1 (en) * 2006-12-29 2008-07-03 Ulrich Auer Server synchronization for maintenance activities
US8069184B2 (en) * 2006-12-29 2011-11-29 Sap Ag Systems and methods to implement extensibility of tenant content in a provider-tenant environment
US7620659B2 (en) * 2007-02-09 2009-11-17 Microsoft Corporation Efficient knowledge representation in data synchronization systems
US20080294701A1 (en) * 2007-05-21 2008-11-27 Microsoft Corporation Item-set knowledge for partial replica synchronization
US8037022B2 (en) * 2007-06-05 2011-10-11 Samsung Electroncis Co., Ltd. Synchronizing content between content directory service and control point
US8505065B2 (en) * 2007-06-20 2013-08-06 Microsoft Corporation Access control policy in a weakly-coherent distributed collection
US7685185B2 (en) * 2007-06-29 2010-03-23 Microsoft Corporation Move-in/move-out notification for partial replica synchronization
US20090006489A1 (en) * 2007-06-29 2009-01-01 Microsoft Corporation Hierarchical synchronization of replicas
US20090083441A1 (en) * 2007-09-24 2009-03-26 Microsoft Corporation Synchronization of web service endpoints in a multi-master synchronization environment
US8078749B2 (en) * 2008-01-30 2011-12-13 Microsoft Corporation Synchronization of multidimensional data in a multimaster synchronization environment with prediction
US8150802B2 (en) * 2008-03-24 2012-04-03 Microsoft Corporation Accumulating star knowledge in replicated data protocol
US8700301B2 (en) 2008-06-19 2014-04-15 Microsoft Corporation Mobile computing devices, architecture and user interfaces based on dynamic direction information
US9200901B2 (en) 2008-06-19 2015-12-01 Microsoft Technology Licensing, Llc Predictive services 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
US20100009662A1 (en) 2008-06-20 2010-01-14 Microsoft Corporation Delaying interaction with points of interest discovered based on directional device information
US20090315775A1 (en) * 2008-06-20 2009-12-24 Microsoft Corporation Mobile computing services based on devices with dynamic direction information
US8458128B2 (en) 2008-08-26 2013-06-04 Microsoft Corporation Minimal extensions required for multi-master offline and collaboration for devices and web services
US10303787B2 (en) 2008-10-21 2019-05-28 Microsoft Technology Licensing, Llc Forgetting items with knowledge based synchronization
US20100169618A1 (en) * 2008-12-30 2010-07-01 Microsoft Corporation Identifying concurrency control from a sequential proof
US8872767B2 (en) 2009-07-07 2014-10-28 Microsoft Corporation System and method for converting gestures into digital graffiti
US9055018B2 (en) 2010-12-03 2015-06-09 International Business Machines Corporation Related message detection and indication
FR2972546B1 (fr) * 2011-03-07 2013-03-08 Bull Sas Procedes, dispositifs et programmes d'ordinateur pour optimiser la replication de donnees dans des systemes informatiques
US10395762B1 (en) 2011-06-14 2019-08-27 Merge Healthcare Solutions Inc. Customized presentation of data
US8867807B1 (en) 2011-09-23 2014-10-21 Dr Systems, Inc. Intelligent dynamic preloading and processing
US8527462B1 (en) 2012-02-09 2013-09-03 Microsoft Corporation Database point-in-time restore and as-of query

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6317754B1 (en) * 1998-07-03 2001-11-13 Mitsubishi Electric Research Laboratories, Inc System for user control of version /Synchronization in mobile computing
US6704925B1 (en) * 1998-09-10 2004-03-09 Vmware, Inc. Dynamic binary translator with a system and method for updating and maintaining coherency of a translation cache
JP4059410B2 (ja) * 1998-10-07 2008-03-12 株式会社バンダイナムコゲームス ゲーム装置及び情報記憶媒体
US6757896B1 (en) 1999-01-29 2004-06-29 International Business Machines Corporation Method and apparatus for enabling partial replication of object stores
GB2382331B (en) * 1999-11-02 2003-10-01 Allan William Stobart Improvements in and relating to road and rail tankers
US6928467B2 (en) * 2000-02-02 2005-08-09 Inno Path Software, Inc. Apparatus and methods for providing data synchronization by facilitating data synchronization system design
US20020165724A1 (en) * 2001-02-07 2002-11-07 Blankesteijn Bartus C. Method and system for propagating data changes through data objects
US7346616B2 (en) * 2002-03-20 2008-03-18 Extended System, Inc. Synchronizing data shared between two devices independent of any other devices that may also share the data
US7406499B2 (en) * 2003-05-09 2008-07-29 Microsoft Corporation Architecture for partition computation and propagation of changes in data replication
US7636776B2 (en) * 2003-07-31 2009-12-22 Microsoft Corporation Systems and methods for synchronizing with multiple data stores
US7440981B2 (en) * 2003-07-31 2008-10-21 Microsoft Corporation Systems and methods for replicating data stores
US7401103B2 (en) * 2003-07-31 2008-07-15 Microsoft Corporation Replication protocol for data stores
US8166101B2 (en) * 2003-08-21 2012-04-24 Microsoft Corporation Systems and methods for the implementation of a synchronization schemas for units of information manageable by a hardware/software interface system
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
US7483923B2 (en) * 2003-08-21 2009-01-27 Microsoft Corporation Systems and methods for providing relational and hierarchical synchronization services for units of information manageable by a hardware/software interface system
US20050055352A1 (en) * 2003-09-08 2005-03-10 Sony Corporation Content directory and synchronization bridge
US7962575B2 (en) * 2003-11-03 2011-06-14 Grape Technology Group, Inc. System and method for data synchronization between devices
US20050177617A1 (en) * 2003-12-23 2005-08-11 Intel Corporation Conflict resolution during data synchronization
US7111139B2 (en) * 2004-03-02 2006-09-19 Hitachi, Ltd. Data synchronization of multiple remote storage
US8200921B2 (en) * 2004-03-12 2012-06-12 Hewlett-Packard Development Company, L.P. Data synchronization for two data mirrors with sidefiles
DE602004006224T2 (de) * 2004-03-18 2008-01-10 Alcatel Lucent Verfahren und Vorrichtung zur Datensynchronisierung eines verteilten Datenbanksystems
TWI243340B (en) * 2004-04-02 2005-11-11 Benq Corp System and method for data synchronization
KR100557192B1 (ko) * 2004-04-06 2006-03-03 삼성전자주식회사 서버와 클라이언트간에 데이터 동기화 시 비정상 종료된경우 데이터 전송 방법 및 그 시스템.

Similar Documents

Publication Publication Date Title
JP2009535689A5 (ja)
JP5021723B2 (ja) データストアの絞込み複製
JP5289063B2 (ja) 同期ピア参加モデル
CN105550229B (zh) 分布式存储系统数据修复的方法和装置
KR101109219B1 (ko) 아이템 수렴(즉, 데이터 수렴)을 강행하기 위한 충돌 해소의 전파를 위한 시스템 및 방법
JP2005322250A5 (ja)
US7761412B2 (en) Synchronization move support systems and methods
CN101331741A (zh) 用于自动同步的电子设备和方法以及通信系统
CN101061475B (zh) 用于同步的低保真度设备的时间-日期信息的维护
US20130117229A1 (en) Method and A System for Integrating Data from a Source to a Destination
US20090070355A1 (en) Transitioning between historical and real time data streams in the processing of data change messages
CN106557339A (zh) 设备固件的升级方法和装置
CN109725926B (zh) 管理基线的方法和装置以及数据处理方法
WO2006044914A3 (en) Method, system and storage medium for managing automated system events
CN105224462A (zh) 控件元素的识别方法和装置
CN106547823B (zh) 无盘符执法仪数据采集装置和方法
JP2012510094A5 (ja)
CN106503158A (zh) 数据同步方法及装置
CN113778957A (zh) 镜像文件同步方法、装置及计算机可读存储介质
JP2007122593A5 (ja)
CN110347672A (zh) 数据表关联更新的验证方法及装置、电子设备及存储介质
CN103701653B (zh) 一种接口热插拔配置数据的处理方法及网络配置服务器
CN109086065A (zh) 一种软件升级方法、系统及终端设备
CN102929661A (zh) 一种功能组件的处理方法、装置及服务器
CN108829753A (zh) 一种信息处理方法及装置