JP2007503050A5 - - Google Patents

Download PDF

Info

Publication number
JP2007503050A5
JP2007503050A5 JP2006523857A JP2006523857A JP2007503050A5 JP 2007503050 A5 JP2007503050 A5 JP 2007503050A5 JP 2006523857 A JP2006523857 A JP 2006523857A JP 2006523857 A JP2006523857 A JP 2006523857A JP 2007503050 A5 JP2007503050 A5 JP 2007503050A5
Authority
JP
Japan
Prior art keywords
synchronization
replica
hardware
instance
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
JP2006523857A
Other languages
English (en)
Other versions
JP2007503050A (ja
JP4583376B2 (ja
Filing date
Publication date
Priority claimed from PCT/US2003/026150 external-priority patent/WO2005029363A1/en
Priority claimed from US10/646,575 external-priority patent/US8131739B2/en
Application filed filed Critical
Priority claimed from PCT/US2004/024288 external-priority patent/WO2005024665A1/en
Publication of JP2007503050A publication Critical patent/JP2007503050A/ja
Publication of JP2007503050A5 publication Critical patent/JP2007503050A5/ja
Application granted granted Critical
Publication of JP4583376B2 publication Critical patent/JP4583376B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Claims (30)

  1. ハードウェア/ソフトウェアインタフェースシステム用のストレージプラットフォームシステムであり少なくとも部分的に計算器によって実施されるストレージプラットフォームであって、
    ストレージプラットフォームの複数のインスタンスであって、各インスタンスはデータを格納し、データはプログラム可能に定義された変更ユニットに分割される、複数のインスタンスと、
    順次的に列挙され変更ユニットごとに追跡された変更に基づいて、前記システムが前記ストレージプラットフォームの前記複数のインスタンスに格納されたデータの同期をとることができるように同期オペレーションを実効する前記ハードウェア/ソフトウェアインタフェースシステムのネイティブの同期サブシステムと
    を備えたことを特徴とするストレージプラットフォームシステム。
  2. 前記同期サブシステムは、同期オペレーション時に、前記ストレージプラットフォーム上のデータ全体の中からデータの部分集合のみを同期させることを特徴とする請求項1に記載のシステム。
  3. 前記ストレージプラットフォームの第1のインスタンスは、前記同期サブシステムを持つハードウェア/ソフトウェアインタフェースシステム上で実行されているレプリカであり、前記ストレージプラットフォームの第2のインスタンスは、前記同期サブシステムを持たないハードウェア/ソフトウェアインタフェースシステム上で実行されているデータソースであることを特徴とする請求項1に記載のシステム。
  4. 前記レプリカと前記データソースとの間の前記同期は、前記レプリカの前記ハードウェア/ソフトウェアインタフェースシステムのアプリケーションプログラミングインタフェースインタフェースすることにより前記データソースを仮想化する同期アダプタにより円滑にされることを特徴とする請求項3に記載のシステム。
  5. インスタンスの第1のペアは、インスタンスの第2のペアと無関係に同期し、インスタ
    ンスの前記第1のペアとインスタンスの前記第2のペアは共通同期コミュニティの一部で
    あることを特徴とする請求項1に記載のシステム。
  6. 同期の競合は、定義済み決定可能基準に基づいて自動的に検出され、解決されることを
    特徴とする請求項1に記載のシステム。
  7. 前記競合のいくつかは、エンドユーザによる手作業による解決のためログに記録される
    ようにすることにより解決されることを特徴とする請求項6に記載のシステム。
  8. 前記同期サブシステムは、同期パートナとの前の同期状態を追跡し、それによって、最後の同期以降変化した変更ユニットそのパートナとの同期のみをとることを特徴とする請求項1に記載のシステム。
  9. ハードウェア/ソフトウェアインタフェースシステム用のストレージプラットフォーム複数のインスタンスに格納されたデータの同期をとる方法であって、
    前記ストレージプラットフォームに格納された前記データプログラム可能な変更ユニットに分割することと、
    前記データへの変更を順次列挙し、変更ユニット毎に前記変更を追跡することと、
    前記ストレージプラットフォームの各インスタンスについて、そのインスタンスに対する変更の前記状態とともに、同期コミュニティの他の知られている複数のインスタンスに対する変更の前記状態を追跡することと、
    同期のために、特定のインスタンスに対する前記列挙された変更とそのインスタンスに対する変更の前記状態とを比較することにより新しい変更を識別すること
    とを備えることを特徴とする方法。
  10. 第1のインスタンスである、レプリカは、Itemベースの同期を直接サポートするハードウェア/ソフトウェアインタフェースシステム上でインスタンス化され、第2のインスタンスである、データソースは、Itemベースの同期を直接サポートしないハードウェア/ソフトウェアインタフェースシステム上でインスタンス化され、前記方法は、同期処理アプリケーションプログラミングインタフェースを介して前記第2のインスタンスを仮想化するためにアダプタを使用することをさらに備えることを特徴とする請求項9に記載の方法。
  11. 変更ユニット精度のレベルで同期競合を検出することをさらに備えることを特徴とする
    請求項10に記載の方法。
  12. 変更アプリケーションの個々の変更ユニットレベルで成功、失敗、および/または競合を報告するインスタンスと、
    バックエンド状態を更新するために同期データを使用するアプリケーション
    をさらに備えることを特徴とする請求項10に記載の方法。
  13. レプリカとデータソースとの同期をとる方法であって、前記レプリカと前記データソースは両方とも、それぞれの同期パートナにより保持される変更状態情報を持ち、前記データソース、アダプタを使用して前記レプリカハードウェア/ソフトウェアシステムとインタフェースし、前記方法は、
    前記レプリカが前記アダプタに前記レプリカに対する更新された状態情報を送ることであって、前記更新された状態情報は、前記データソースに対する前記最後の状態情報内に反映されているような前記最後の同期以降に加えられた変更を、前記データソースに対する最後の状態情報に基づき反映する前記レプリカに対する更新された状態情報を送ることと、
    前記アダプタが、前記レプリカに対する前記更新された状態情報および前記新しい変更を受け取り、複数の競合解決ポリシーから選択された競合解決ポリシーを適用し、特定された競合解決ポリシーに関してデータソースへのできる限り多くの変更を実装し、変更ユニット毎に各変更成功または失敗を追跡し、変更は順次的に列挙され変更ユニット毎に追跡されていることと
    を備えることを特徴とする方法。
  14. 前記アダプタが、変更ユニット毎の各変更前記成功または失敗に基づき前記データソースの前記新しい状態を計算し、この新しい状態情報を格納し、この新しい状態情報を前記レプリカのハードウェア/ソフトウェアインタフェースシステム送信することと、
    前記レプリカの前記ハードウェア/ソフトウェアインタフェースシステム前記レプリカにより将来使用できるように前記データソースに対する前記新しい状態情報を格納することと
    をさらに備えることを特徴とする請求項13に記載の方法。
  15. 前記アダプタが、前記レプリカの前記ハードウェア/ソフトウェアインタフェースシス
    テム、変更ユニット毎に各変更前記成功または失敗を送信することと、
    前記レプリカの前記ハードウェア/ソフトウェアインタフェースシステム、変更ユニット毎の前記データソースへの変更前記成功または失敗に基づいて前記データソースに対する新しい状態情報を計算することと、
    前記レプリカの前記ハードウェア/ソフトウェアインタフェースシステム前記新しい状態情報を前記アダプタに送信し、前記レプリカにより将来使用できるように前記新しい状態情報を格納することと、
    前記アダプタは、前記新しい状態情報を受け取って格納することと
    をさらに備えることを特徴とする請求項13に記載の方法。
  16. ハードウェア/ソフトウェアインタフェースシステム上のストレージプラットフォーム
    システムのコンピュータ可読命令を格納するコンピュータ可読媒体であって、前記ストレージプラットフォームシステムは、ストレージプラットフォームの複数のインスタンスのうちから1つのローカルインスタンスの同期をとる命令を備え、データは、プログラム可能に定義された変更ユニットに分割されたストレージプラットフォームに、変更ユニットごとに順次的に列挙され追跡された変更に基づいて格納されたことを特徴とするコンピュータ可読格納媒体
  17. 前記同期サブシステムは、同期オペレーション時に、前記ストレージプラットフォーム上のデータ全体の中からデータの部分集合のみを同期させることを特徴とする請求項16に記載のコンピュータ可読格納媒体
  18. 前記ストレージプラットフォームの第1のインスタンスは、前記同期サブシステムを持つハードウェア/ソフトウェアインタフェースシステム上で実行されているレプリカであり、前記ストレージプラットフォームの第2のインスタンスは、前記同期サブシステムを持たないハードウェア/ソフトウェアインタフェースシステム上で実行されているデータソースであることを特徴とする請求項16に記載のコンピュータ可読格納媒体
  19. 前記レプリカと前記データソースとの間の前記同期は、前記第1のインスタンスの前記
    ハードウェア/ソフトウェアインタフェースシステムのアプリケーションプログラミング
    インタフェースインタフェースすることにより前記第2のインスタンスを仮想化する同期アダプタにより円滑にされることを特徴とする請求項18に記載のコンピュータ可読格納媒体
  20. インスタンスの第1のペアは、インスタンスの第2のペアと無関係に同期し、インスタンスの前記第1のペアとインスタンスの前記第2のペアは共通同期コミュニティの一部であることを特徴とする請求項16に記載のコンピュータ可読格納媒体
  21. 同期の競合は、定義済み決定可能基準に基づいて自動的に検出され、解決されることを特徴とする請求項16に記載のコンピュータ可読格納媒体
  22. 前記競合のいくつかは、エンドユーザによる手作業による解決のためログに記録されるようにすることにより解決されることを特徴とする請求項21に記載のコンピュータ可読格納媒体
  23. 前記同期サブシステムは、同期パートナとの前の同期状態を追跡し、それによって、最後の同期以降変化した変更ユニットのみ、そのパートナとの同期をとることを特徴とする請求項16に記載のコンピュータ可読格納媒体
  24. ハードウェア/ソフトウェアインタフェースシステム用のストレージプラットフォーム複数のインスタンスに格納されたデータの同期をとるためのコンピュータ可読命令を格納するコンピュータ可読媒体であって、前記コンピュータ可読命令は、
    前記ストレージプラットフォームに格納されたデータプログラム可能に定義された変更ユニットに分割する命令と、
    前記データへの変更を順次列挙し、変更ユニット毎に前記変更を追跡する命令と、
    前記ストレージプラットフォームのインスタンスそれぞれについて、そのインスタンスに対する前記変更状態とともに、同期コミュニティの他の知られている複数のインスタンスに対する前記変更状態を追跡する命令と、
    同期のために、特定のインスタンスに対する前記列挙された変更とそのインスタンスに対する前記変更状態とを比較することにより新しい変更を識別する命令とを含むことを特徴とするコンピュータ可読格納媒体
  25. 第1のインスタンスである、レプリカがItemベースの同期を直接サポートするハードウェア/ソフトウェアインタフェースシステム上でインスタンス化されるようにする命令、第2のインスタンスである、データソースがItemベースの同期を直接サポートしないハードウェア/ソフトウェアインタフェースシステム上でインスタンス化されるようにする命令をさらに含み、前記方法は、同期処理アプリケーションプログラミングインタフェースを介して前記第2のインスタンスを仮想化するためにアダプタを使用することをさらに含むことを特徴とする請求項24に記載のコンピュータ可読格納媒体
  26. 変更ユニット精度のレベルで同期競合を検出することさらに含むことを特徴とする請求
    項25に記載のコンピュータ可読格納媒体
  27. 変更アプリケーションの個々の変更ユニットレベルで成功、失敗、および/または競合を報告するインスタンスと、
    バックエンド状態を更新するために同期データを使用するアプリケーション
    をさらに含むことを特徴とする請求項25に記載のコンピュータ可読格納媒体
  28. レプリカとデータソースの同期をとるためのコンピュータ可読命令を格納するコンピュータ可読媒体であって、前記レプリカと前記データソースは両方とも、それぞれの同期パートナにより保持される変更状態情報を持ち、前記データソース、アダプタを使用して前記レプリカハードウェア/ソフトウェアシステムとインタフェースし、前記コンピュータ可読命令は前記レプリカの更新された状態情報を前記アダプタに送る命令を有し、前記レプリカの更新された状態情報は、前記データソース最後の状態情報に基づいて、前記データソース前記最後の状態情報内に反映されているような前記最後の同期以降に加えられた変更反映して、前記アダプタが前記レプリカおよび前記新しい変更に対する前記更新された状態情報を受け取ると、複数の競合解決ポリシーから選択された競合解決ポリシーを適用でき、特定された競合解決ポリシーに関して前記データソースに対するできる限り多くの変更を実装し変更ユニット毎に各変更の成功または失敗を追跡できるようにする命令を含むことを特徴とするコンピュータ可読格納媒体
  29. 前記レプリカにより将来使用できるように前記データソースに対する前記新しい状態情報を格納する前記レプリカの前記ハードウェア/ソフトウェアインタフェースシステム対する命令をさらに含み、前記アダプタが、変更ユニット毎の各変更前記成功または失敗に基づいて前記データソースの新しい状態をすでに計算しており、この新しい状態情報を持ち、この新しい状態情報を前記レプリカのハードウェア/ソフトウェアインタフェースシステム送信していることを条件とすることを特徴とする請求項28に記載のコンピュータ可読格納媒体
  30. 前記アダプタは、前記レプリカの前記ハードウェア/ソフトウェアインタフェースシス
    テム、変更ユニット変更前記成功または失敗を送信し、
    前記レプリカの前記ハードウェア/ソフトウェアインタフェースシステムが、変更ユニット毎の前記データソースへの変更前記成功または失敗に基づいて前記データソースに対する新しい状態情報を計算するための命令と、
    前記レプリカの前記ハードウェア/ソフトウェアインタフェースシステムが、前記新しい状態情報を前記アダプタに送信し、前記レプリカにより将来使用できるように前記新しい状態情報を格納し、前記アダプタが前記新しい状態情報を受信し、格納できるようにするための命令と
    をさらに含むことを特徴とする請求項28に記載のコンピュータ可読格納媒体
JP2006523857A 2003-08-21 2004-07-29 ハードウェア/ソフトウェアインタフェースシステムにより管理可能な情報のユニットに対する同期処理サービスを実現するシステムおよび方法 Expired - Fee Related JP4583376B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
PCT/US2003/026150 WO2005029363A1 (en) 2003-08-21 2003-08-21 Systems and methods for interfacing application programs with an item-based storage platform
US10/646,575 US8131739B2 (en) 2003-08-21 2003-08-21 Systems and methods for interfacing application programs with an item-based storage platform
US10/692,515 US7743019B2 (en) 2003-08-21 2003-10-24 Systems and methods for providing synchronization services for units of information manageable by a hardware/software interface system
PCT/US2004/024288 WO2005024665A1 (en) 2003-08-21 2004-07-29 Systems and methods for providing synchronization services for units of information manageable by a hardware/software interface system

Publications (3)

Publication Number Publication Date
JP2007503050A JP2007503050A (ja) 2007-02-15
JP2007503050A5 true JP2007503050A5 (ja) 2007-09-20
JP4583376B2 JP4583376B2 (ja) 2010-11-17

Family

ID=34279606

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006523857A Expired - Fee Related JP4583376B2 (ja) 2003-08-21 2004-07-29 ハードウェア/ソフトウェアインタフェースシステムにより管理可能な情報のユニットに対する同期処理サービスを実現するシステムおよび方法

Country Status (7)

Country Link
EP (1) EP1581894A4 (ja)
JP (1) JP4583376B2 (ja)
AU (1) AU2004271525B2 (ja)
BR (1) BRPI0406612A (ja)
CA (1) CA2512185C (ja)
MX (1) MXPA05007092A (ja)
WO (1) WO2005024665A1 (ja)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8131739B2 (en) 2003-08-21 2012-03-06 Microsoft Corporation Systems and methods for interfacing application programs with an item-based storage platform
US7590643B2 (en) 2003-08-21 2009-09-15 Microsoft Corporation Systems and methods for extensions and inheritance 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
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
US8095940B2 (en) 2005-09-19 2012-01-10 Citrix Systems, Inc. Method and system for locating and accessing resources
US8613048B2 (en) 2004-09-30 2013-12-17 Citrix Systems, Inc. Method and apparatus for providing authorized remote access to application sessions
US7711835B2 (en) 2004-09-30 2010-05-04 Citrix Systems, Inc. Method and apparatus for reducing disclosure of proprietary data in a networked environment
US7748032B2 (en) 2004-09-30 2010-06-29 Citrix Systems, Inc. Method and apparatus for associating tickets in a ticket hierarchy
US7680758B2 (en) 2004-09-30 2010-03-16 Citrix Systems, Inc. Method and apparatus for isolating execution of software applications
US8171479B2 (en) 2004-09-30 2012-05-01 Citrix Systems, Inc. Method and apparatus for providing an aggregate view of enumerated system resources from various isolation layers
US8024568B2 (en) 2005-01-28 2011-09-20 Citrix Systems, Inc. Method and system for verification of an endpoint security scan
US7805422B2 (en) 2005-02-28 2010-09-28 Microsoft Corporation Change notification query multiplexing
US7478102B2 (en) * 2005-03-28 2009-01-13 Microsoft Corporation Mapping of a file system model to a database object
US7930346B2 (en) 2005-08-24 2011-04-19 Microsoft Corporation Security in peer to peer synchronization applications
US8131825B2 (en) 2005-10-07 2012-03-06 Citrix Systems, Inc. Method and a system for responding locally to requests for file metadata associated with files stored remotely
US7779034B2 (en) 2005-10-07 2010-08-17 Citrix Systems, Inc. Method and system for accessing a remote file in a directory structure associated with an application program executing locally
US20070174429A1 (en) 2006-01-24 2007-07-26 Citrix Systems, Inc. Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment
US8533846B2 (en) 2006-11-08 2013-09-10 Citrix Systems, Inc. Method and system for dynamically associating access rights with a resource
US7853678B2 (en) 2007-03-12 2010-12-14 Citrix Systems, Inc. Systems and methods for configuring flow control of policy expressions
US7865589B2 (en) 2007-03-12 2011-01-04 Citrix Systems, Inc. Systems and methods for providing structured policy expressions to represent unstructured data in a network appliance
US8490148B2 (en) 2007-03-12 2013-07-16 Citrix Systems, Inc Systems and methods for managing application security profiles
US8631147B2 (en) 2007-03-12 2014-01-14 Citrix Systems, Inc. Systems and methods for configuring policy bank invocations
US7853679B2 (en) 2007-03-12 2010-12-14 Citrix Systems, Inc. Systems and methods for configuring handling of undefined policy events
US8171483B2 (en) 2007-10-20 2012-05-01 Citrix Systems, Inc. Method and system for communicating between isolation environments
US8090797B2 (en) 2009-05-02 2012-01-03 Citrix Systems, Inc. Methods and systems for launching applications into existing isolation environments
US9298391B2 (en) * 2012-12-19 2016-03-29 Dropbox, Inc. Application programming interfaces for data synchronization with online storage systems
US9398090B2 (en) 2013-01-07 2016-07-19 Dropbox, Inc. Synchronized content library
US9697228B2 (en) 2014-04-14 2017-07-04 Vembu Technologies Private Limited Secure relational file system with version control, deduplication, and error correction
US11340919B2 (en) * 2020-06-23 2022-05-24 Vmware, Inc. Transitioning application windows between local and remote desktops
CN112527420A (zh) * 2020-12-23 2021-03-19 平安普惠企业管理有限公司 接口数据流转处理方法、装置、计算机设备及介质

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5774717A (en) * 1995-12-15 1998-06-30 International Business Machines Corporation Method and article of manufacture for resynchronizing client/server file systems and resolving file system conflicts
US6317754B1 (en) * 1998-07-03 2001-11-13 Mitsubishi Electric Research Laboratories, Inc System for user control of version /Synchronization in mobile computing
US6553391B1 (en) * 2000-06-08 2003-04-22 International Business Machines Corporation System and method for replicating external files and database metadata pertaining thereto
EP1187421A3 (en) * 2000-08-17 2004-04-14 FusionOne, Inc. Base rolling engine for data transfer and synchronization system
US6877111B2 (en) * 2001-03-26 2005-04-05 Sun Microsystems, Inc. Method and apparatus for managing replicated and migration capable session state for a Java platform
US7711771B2 (en) * 2001-05-25 2010-05-04 Oracle International Corporation Management and synchronization application for network file system
US6772178B2 (en) * 2001-07-27 2004-08-03 Sun Microsystems, Inc. Method and apparatus for managing remote data replication in a distributed computer system
CA2467404A1 (en) * 2001-11-15 2003-05-30 Visto Corporation System and methods for asychronous synchronization
GB0128243D0 (en) * 2001-11-26 2002-01-16 Cognima Ltd Cognima patent

Similar Documents

Publication Publication Date Title
JP2007503050A5 (ja)
RU2005120694A (ru) Системы и способы для обеспечения услуг синхронизации для блоков информации, управляемых аппаратной/программной интерфейсной системой
US7480654B2 (en) Achieving cache consistency while allowing concurrent changes to metadata
EP2790112B1 (en) Method and system for data synchronization and data access apparatus
CN110209726A (zh) 分布式数据库集群系统、数据同步方法及存储介质
CA2512185A1 (en) Systems and methods for providing synchronization services for units of information manageable by a hardware/software interface system
ES2703901T3 (es) Sistema de archivo distribuido mediante nodos de consenso
US9910739B1 (en) Inverse star replication
CN103793258B (zh) 基于管理程序的服务器复制系统及其方法
US6643671B2 (en) System and method for synchronizing a data copy using an accumulation remote copy trio consistency group
US9026492B1 (en) Multisite replication with uncoordinated cycle switching
US8935498B1 (en) Splitter based hot migration
US7657782B2 (en) Creating and managing multiple virtualized remote mirroring session consistency groups
US8060714B1 (en) Initializing volumes in a replication system
US7032089B1 (en) Replica synchronization using copy-on-read technique
US8521691B1 (en) Seamless migration between replication technologies
US8458127B1 (en) Application data synchronization
US10430290B2 (en) Method and system for star replication using multiple replication technologies
US8862541B1 (en) N-site asynchronous replication
US9619172B1 (en) Method and system for managing changed block tracking and continuous data protection replication
US7882061B1 (en) Multi-thread replication across a network
US20150347250A1 (en) Database management system for providing partial re-synchronization and partial re-synchronization method of using the same
US10180812B2 (en) Consensus protocol enhancements for supporting flexible durability options
US20100023564A1 (en) Synchronous replication for fault tolerance
US20140279912A1 (en) Client object replication between a first backup server and a second backup server