CN101061475A - 用于同步的低保真度设备的时间-日期信息的维护 - Google Patents

用于同步的低保真度设备的时间-日期信息的维护 Download PDF

Info

Publication number
CN101061475A
CN101061475A CNA2004800016752A CN200480001675A CN101061475A CN 101061475 A CN101061475 A CN 101061475A CN A2004800016752 A CNA2004800016752 A CN A2004800016752A CN 200480001675 A CN200480001675 A CN 200480001675A CN 101061475 A CN101061475 A CN 101061475A
Authority
CN
China
Prior art keywords
time
date
remote
value
time information
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
CNA2004800016752A
Other languages
English (en)
Other versions
CN101061475B (zh
Inventor
B·T·斯塔巴克
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 Technology Licensing LLC
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
Priority claimed from PCT/US2004/024708 external-priority patent/WO2005111808A2/en
Publication of CN101061475A publication Critical patent/CN101061475A/zh
Application granted granted Critical
Publication of CN101061475B publication Critical patent/CN101061475B/zh
Expired - Fee Related 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • 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/964Database arrangement
    • Y10S707/966Distributed
    • 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/99954Version management

Abstract

本发明为没有数据—日期字段的低保真度设备提供了在远程设备中,以标准格式(305)格式化,识别和存储对应于远程属性值的时间—日期信息(350)的方法。所述数据—日期信息可被多个设备进行语法分析并用于消解属性值之间的冲突。其它示例实施例提供了通过比较属性值的远程表示(320)和与相同属性值关联的本地表示,确定自从远程设备和本地机器之间的最近被同步后远程设备中的属性的值是否已变更的方法。其它实施例还提供了通过选择将被赋予用于消解同步值之间冲突的时间—日期信息的属性值,保护内存资源的方法。可基于,如,远程设备的可得到的资源或基于历史信息选择属性值。

Description

用于同步的低保真度设备的时间-日期信息的维护
技术领域
本发明主要涉及分布式计算机系统中的同步数据。更特别地,本发明提供以下方法:(1)当消解两个设备之间的同步冲突时,其中的一个设备不提供带有对应于该属性的时间-日期字段的数据库时,维护时间-日期信息作为属性;(2)判断自从与本地机器最近被同步后,远程低保真度设备上的属性值是否已变更;以及(3)通过限制时间-日期信息作为属性的子集保护存储资源,此时间-日期信息用于解决同步值之间的冲突。
背景技术
随着设备尺寸变得更小及更廉价,膝上电脑,手持电脑,及其它便携计算机或计算设备已得到普及。另外,便携式计算机经改进的运算速度和处理能力已促进其普及。许多便携式计算机能够储存多种应用程序,诸如通讯录,游戏,计算器,及类似程序。这些应用程序可以在制造期间被永久地安装在便携式计算机中(如,在只读存储器(ROM)上)。或者,一个或多个应用程序可由用户在购买便携式计算机后安装。
随着此类设备的普及程度和运算能力的提高,人们正开始不仅仅使用单一计算机设备存储数据和应用。例如,许多人在通常使用常规台式电脑之外常使用膝上电脑。其它设备诸如蜂窝电话,个人数字助理(PDA),互联网服务,和类似设备也被用于存储数据和应用。
这些计算机设备中的每一种可以是分布式计算机系统的一部分,其中相关的信息可被关联和存储在多种上述设备中。例如,用户可将数字通讯录存储在他们的台式工作电脑上,在他们的PDA上,在他们的蜂窝电话上,在互联网服务上,等等。因此,当工作时,对于用户访问联系人信息是方便的,它可包括电话号码和和其它通用的联系人信息。而当不在工作时,用户可用,诸如个人数字助理(PDA)或其它移动信息存储系统来使用移动形式的通讯录。理想的情况是,PDA上联系人信息应与台式工作计算机的联系人信息匹配。
当相同的或相关的信息被储存在两处时,可能会有一个位置的数据变更而另一个位置的数据不变更的情况。此问题可通过同步克服,即一个试图确保分布式系统中的每个设备具有最当前的信息或数据的自动进程。然而,同步有其固有的一系列问题。例如,当两个设备之间开始同步时,当前系统通过比较来自每个设备对应的属性值来检测被变更的属性值。然而,这种比较未给出哪个设备作出变更的指示。如此,当在两个设备均发生属性变更时,就会发生冲突并且必须执行冲突消解进程。
其它系统用表示变更已发生的标签标记变更的属性,如,“变更”,“删除”,“添加”,或其它适当的标签。然而,在这样的系统中,当两个设备开始同步时,一个本地设备在比较那些需被应用的数据后可在存储器中建立这些标记。此外,因为此标签仅在存储器中被跟踪,这些标签未保存在远程数据库中,供与其它设备同步期间使用。换言之,必须首先协调冲突,然后属性才能仅在本地内存中被标记和跟踪。
典型地,可通过比较与提供如时间-日期信息的属性值相关联的元数据来消解冲突。最近的时间-日期信息被认为是最当前的信息,并据此更新属性。当将被同步的数据不包括称为低保真度数据的时间-日期信息时,通过比较时间-日期信息消解冲突变得特别成问题。例如,许多小型电脑设备具有有限的物理资源,无法维护时间-日期信息作为数据结构项的属性。如此,当一台计算机从这种低保真度设备同步数据时,它不知道用户何时最初设置该属性。这使计算机无法从其它计算机设备同步一项属性,并放心地使用“最后写入者胜(last-writer-wins)”方法的逻辑选取最当前的属性。此外,即使不存在冲突,若没有冲突解决进程,通常也无法对接收设备同步属性变更。
发明的内容
本发明克服了当前的同步系统的上述不足和缺陷。例如,在能够在设备间同步数据的分布式计算机系统中,分布式计算机系统可能有一个设备在不具有相应的时间-日期字段的数据库中保存属性。在该情况下,本发明保证了将时间-日期信息与数据库中的属性值相关联。
示例实施例提供了识别对应于在保存无对应的时间-日期字段的属性的远程数据库中的远程属性值的时间-日期信息的方法。经识别的时间-日期信息使用该分布式计算机系统中的设备可进行语法分析的标准格式进行格式化。格式化的时间-日期信息被发送到远程数据库供在与远程属性值相关联的字段中存储。
其它示例实施例提供了一个分布式计算机系统,它具有一个在没有相应的时间-日期字段的数据库中存储属性的设备。格式化的时间-日期信息以用该分布式计算机系统中的设备可进行语法分析的标准格式接收,此格式化的时间-日期信息与属性值关联。此外,格式化的时间-日期信息存储在与属性值关联的数据库字段中,这样就可利用格式化的时间-日期信息消决涉及该属性值的数据冲突。
另一示例实施例还提供了解决在分布式计算机系统中的设备间数据冲突的方法。远程属性值作为远程属性被接收。同样被接收的是来自没有对应的时间-日期字段的数据库的对应的远程时间-日期信息。远程时间-日期信息以该分布式计算机系统中的设备可进行语法分析的标准格式格式化。此外,检测远程值和对应的本地属性值之间的冲突。按照标准格式对远程时间-日期信息进行语法分析以识别指明远程属性值何时变更的远程时间和日期。此外,将远程时间和日期与本地时间和日期比较,本地时间和日期指明一个或多个本地属性值的某处何时被变更。然后基于该比较的结果消解冲突。
本发明还克服了当前同步系统的其它不足和缺陷。例如,在能够在设备之间同步数据的分布式计算机系统中,示例实施例提供了确定自从远程设备和本地设备之间的属性最近被同步以来远程设备上一个属性的值是否已变更的方法。
示例实施例提供了在远程设备和本地设备之间的数据同步期间,接收远程属性的当前值和该远程属性的先前值的远程的表示。然后生成一个来自远程属性的当前值的远程属性的本地表示。据此,比较此远程表示与本地表示,并基于该比较,确定远程属性的先前值在远程表示生成后被变更了。
其它示例实施例提供了在远程设备和本地设备之间的数据同步期间,接收远程属性的远程值和远程属性的远程值的远程的表示。然后从远程属性的远程值生成远程属性的本地表示。据此,比较此远程表示与本地表示,并基于该比较,确定远程属性的远程值在远程表示生成后未变更。
本发明还克服了当前同步系统的其它不足和缺陷。例如,示例实施例提供了通过选择将被赋予用于解决同步值之间冲突的时间-日期信息的属性值,保护内存资源的方法。
示例实施例提供了从远程设备接收多重属性值的方法。来自接收到的多重属性值中的属性值的有限集合是基于远程设备的现存资源选择的。此外,识别来自多个对应于多个属性值时间-日期信息的集合。有限集合中的每个属性值对应于时间-日期信息集合的不同部分,并表示有有限集合中的每个属性值的某处何时被最后修改。然后时间-日期信息的不同部分被存储在远程设备的远程数据库中。
其它示例实施例提供了,属性值的有限集合的选择也可基于与多个属性值的修改关联的历史信息。例如,此历史信息可以是多个属性值的每一个被修改的的频率,然后可以选择被修改最频繁的属性值。或者,或这两者的组合,历史信息可以是多个属性值的时间-日期信息,然后可能会选择最近被修改的属性值。
此外其它示例实施例提供了从上述多个时间-日期信息中识别一部分时间-日期信息,使余下的属性不在属性值的有限集合之中。这部分时间-日期信息对应于一个或多个余下的属性值的某处何时被用户修改。然后被识别的部分时间-日期信息可被存储在远程数据库的一个位置,这样被识别的部分时间-日期信息对应于所有一个或多个余下的属性值。
本发明另外的的特征和优点将在随后的描述中阐明,其中一部分从描述是显而易见的,或可以通过本发明的实施掌握。本发明的特征和优点可依靠所附的权利要求中特别指出的措施及其组合实现和获得。本发明的这些和其它特征将从下面的描述和所附权利要求得以更完全明白,或可通过如下展示的发明的实施获得。
附图的简述
为了描述可获得本发明上述优点和特征的方式,对以上本发明简述的更具体的描述将通过参照附图中示出的具体实施例给出。须理解这些附图仅示出了本发明的典型实施例,而不应据此认为是对其范围的限定,本发明及附加的特征和细节将通过使用附图来描述和解释,其中:
图1A例示了具有高保真度设备和低保真度设备的分布式系统,本发明可在其中实现;
图1B例示了在按照本发明示例实施例的分布式系统中,两个设备之间的冲突的检测;
图2例示了在按照本发明示例实施例的带有低保真度设备的分布式系统中时间-日期信息的更新和使用;
图3例示了按照本发明示例实施例在一字段中的时间-日期信息的示例标准格式;
图4例示了按照本发明示例实施例将时间-日期信息与不具有相应时间-日期字段的数据库中的属性值相关联的方法的流程图;
图5例示了按照本发明示例实施例接收带属性值的时间一日期信息并将其存入不具有相应时间-日期字段的数据库中的方法的流程图;
图6例示了按照本发明示例实施例在分布式计算机系统中使用从不具有相应的时间-日期字段的数据库接收的时间-日期信息,解决设备之间的数据冲突的方法的流程图;
图7例示了按照本发明示例实施例确定自最近属性的同步后,远程的属性值何时变更的方法的流程图;
图8例示了按照本发明示例实施例从将被赋予时间-日期信息的多个属性值中,选择属性值的有限集合的方法的流程图;以及
图9例示了一个为本发明提供合适的操作环境的示例系统。
具体实施方法
本发明扩展到的方法,系统和计算机程序产品,它们为在不具有对应时间-日期字段的数据库中存储属性的装置存储和维护时间-日期信息。此外,本发明提供识别在远程设备上数据何时变更的方法。本发明也提供选择属性值的有限集合来赋予时间-日期信息,以保护被约束或限制的存储器资源的方法。本发明的实施例可包含专用或通用的计算机,包括各种计算机硬件,如下面更详细讨论的。
概括地,本发明提供分布式计算机系统它能够将时间-日期信息与数据库中的属性值关联法。此分布式计算机系统有一个在一不具有对应的时间-日期字段的数据库存中存储属性的设备,因而被称作低保真度或传统的设备。示例实施例提供了在分布式计算机系统中由一个或多个设备可进行语法分析的标准格式来识别的格式化对应于远程属性值的时间-日期信息。经格式化的时间-日期信息被发送到远程数据库,用于存储在与远程属性值关联的字段中。然后经格式化的时间-日期信息可用于消决属性值之间的冲突。
其它示例实施例提供了确定自从远程设备和本地机器的最近被同步以后,远程设备上的属性值何时变更的方法。并且,其它示例实施例提供了基于远程设备的现存资源从多个属性值中选择属性值的有限集合的方法。
现在将参考附图,其中相同的结构将被赋予相同或相似的参考标号。须理解这些图是本发明的实施例的图解表示的示例,并非意在限制或在其它方面缩小本发明的范围。
图1A例示了在分布式计算机网络100中的数个结点,用于说明连接和系统中每个节点如何与其它节点同步。例如,如分布式计算机系统100中所示,工作计算机105可与数台不同的设备,诸如电子邮件服务器110,PDA115,移动电话120,和即时消息服务器125同步。在此分布式计算机系统100中同步数据的目的时为了保证在一个或更个多用户使用的所有设备上提供最当前的信息。
需要被同步的数据可以是,如联系人信息,其中每个项将对应于有关个人,公司,企业,或任何其它相似联系人的信息。与各个联系人相关联的属性的一个示例可以是名,中间名,姓,公司名称,地址,电话号码,电子邮件地址,网站信息,等。然而,人们认识到,本地数据可能会是联系人信息以外的信息。例如,本地信息可以是日程表和/或调度表信息,文件,应用程序或任何其它,需在两个设备之间同步的信息。因此,提到联系人信息仅是用于说明性目的,而非意图限制或在其它方面缩小本发明的范围,除非在明确要求的地方。
与工作计算机105相似,家用膝上电脑130可能与即时信息服务器125,移动电话120,PDA115,和电子邮件服务器110之间同步。分布式计算机系统100可能由低保真度(如,其数据库不能存储时间-日期信息作为属性的设备)和高保真度设备组成。重要的是,从理想的情况考虑,设想每个数据库对一个项中的每个属性应有时间-日期信息,用来指示用户修改该属性的最后时间。如果是这种情况,则同步适配器将可使用“最后写入者胜”规则,让最后的时间-日期信息占据胜利位置。这将解决一些循环问题并导致最佳属性赢得每个冲突(假设分布式计算机系统100中使用的时钟也同步)。因为许多分布式计算机系统100包括至少一些低保真度或传统的客户机,仅有有限的存储器资源供保存这些时间-日期信息,并且因为需要支持这些传统的的客户机,需要其它方法在设备间消解冲突而避免潜在的无限同步循环。
图1B例示了分布式计算机系统100的一部分,包含远程设备116(诸如移动电话120或PDA115)和本地机器132(诸如家用膝上电脑130或工作计算机105)。如所示,远程设备116在远程设备116和本地机器132之间的最近被同步之后的某一点变更属性值从A到B。类似地,本地机器132在两设备116,132之间最近被同步之后变更同一属性值从A到C。因此,远程设备116有一个要求同步的箭头135,显示属性B的值应被向下同步到本地机器132。类似地,本地机器132有一个要求向上同步的箭头140,表示C的值应被向上同步到远程设备115。因为设备116,132都有要求同步的箭头,分别向下和向上同步属性值,将会导致一个冲突。
如前面提到的,如图1B中出现的这一个典型的冲突,可通过比较属性值关联的时间-日期信息得到解决。然而,当要同步的数据不包含时间-日期信息时,如在低保真度设备的情况下,通过比较时间-日期信息消解冲突,变得尤其有问题。这阻碍了计算机与其它计算机设备对属性的同步,以及放心地使用“最后写入者胜”方法的逻辑选取最当前的属性。此外,另一个与低保真度设备有关的相关问题是无法识别何时属性已经变更。因此,即使时间-日期信息可与低保真度数据关联,基于属性可能在低保真度设备已被变更的事实,这种信息或时间-日期信息具有潜在的不可靠性。
上面认识到的当前分布式计算机网络的不足和缺陷通过本发明的示例实施例被克服。例如,在一个设备存储没有对应的时间-日期字段的属性(如,低保真度设备)的场合,本发明提供了关联时间-日期信息与数据库中的属性值的方法。此外,本发明提供了确定自从属性的最近被同步之后,远程设备上的属性值何时已变更的方法,即使该远程设备是一种低保真度设备。
图2例示了按照本发明的示例实施例,具有能够为低保真度设备建立,使用,更新时间-日期信息的系统的分布式计算网络200。分布式计算系统200包括两个高保真度设备,本地机器210和远程机器220。分布式计算机系统200中也包括低保真度设备,如,远程设备205。远程设备205是低保真度的,故与远程设备205关联的数据库无法在每个属性中存储时间-日期信息。换言之,远程设备205在其数据库中存储的属性不具备对应的时间-日期字段。
尽管远程设备205在其数据库中没有属性的时间-日期字段,示例实施例提供了将时间-日期信息与远程设备205中的属性值关联并允许远程设备205用标准格式在一个不使用的字段中存储时间-日期信息的方法。例如,本地机器210可识别对应于远程设备205数据库中的远程属性值的时间-日期信息。然后被识别的时间-日期信息可以用分布式计算机系统200中的数个设备可进行语法分析的标准格式格式化。此标准格式可以是,如,统一资源标识符(URI)。例如,URI可以是同步统一资源定位器(URL)的格式,它识别属性并包括与各个属性关联的被识别的时间-日期信息。如下文关于图3中将会更详细地描述,这个同步URL格式是理想的,因为它容易被许多设备识别进行语法分析,故作为标准格式是理想的。
本地机器210可把格式化的时间-日期信息发送到远程设备205,并存储在与远程属性值关联的字段中。例如,如图2中所示,当与远程设备205同步时,本地机器210发送带有时间-日期(T/D)信息和更新的属性项1(215)。然后远程设备205存储包含时间-日期信息的项1(215)。格式化的时间-日期信息被存储在远程设备205上一个未使用的属性字段中。例如,远程设备205可将格式化的时间-日期信息存储在普通属性,隐藏属性,专用扩展属性或甚至将其附加在注释字段的末尾。应该注意,尽管其它信息可被存储在属性字段中(如,在注释字段中的文本),本发明认为这样的字段是未被使用的,因为这个字段不是被预留用于储存时间-日期信息的。因此,术语“未使用的”属性字段应解释为广泛地包含未被预留为储存时间-日期信息的任何属性字段。
示例实施例提供了格式化的时间-日期信息可被用于数种不同的目的,诸如消解冲突,或识别何时属性已变更。例如,远程设备205和远程机器220之间开始一个同步。据此,项1(215)可随同属性和格式化的时间-日期信息被下传到远程机器220。因为此时间-日期信息的格式是使用一种标准的可进行语法分析的格式,远程机器220可对远程时间-日期信息进行语法分析并识别与各个属性关联的远程时间和日期信息。此远程时间和日期信息随后可与远程机器220的时间-日期信息比较,用于消决属性值之间的任何冲突。
其它示例实施例提供了检测何时在远程设备205上一个属性何时已变更的方法。例如,项1(215)中的格式化的时间-日期信息可能包括时间-日期信息的每个片段中最近与本地机器210同步的属性值的表示。此表示可能是如以散列的形式,它是最近被同步的与时间-日期信息关联的属性值的散列值。当远程机器220接收到项1(215)用于同步时,项1(215)中接收到的属性也可使用对最近被同步的属性值进行散列编码所用的相同的标准散列函数进行散列处理。可被使用的标准散列函数包括,但不限于,SHA-1,MD5,或其它类似的散列函数。
格式化的时间-日期信息中的散列值可与远程机器220生成的散列值进行比较。如果这些值不匹配,可以推断与在远程设备205处时间-日期信息关联的属性值变更了。因此,此时间-日期信息是潜在地不可靠的并可能因此被远程机器220废弃。在这些例子中,因为此时间-日期信息是潜在地不可靠的,为了消解冲突可向用户提供一个用户界面。当然,通过该领域中常见的标准技术也存在消解冲突的其它方法。
须注意,为确定远程设备205上何时发生变更,上述散列值或属性值的表示的使用不限于格式化的时间-日期信息。例如,为确定远程设备205上何时发生变更可使用属性表示的比较,而不用时间-日期信息。这些例子将会在确定属性何时需从远程设备205被向下同步而不必比较远程机器220上存储的属性值的情况是有用的。因此,在同步URL或格式化的时间-日期信息中的散列或远程属性表示的使用,仅是用于说明的目的,并非试图限制或在其它方面缩小本发明的范围,除非另外明确申明。
图3例示了时间-日期信息是如何被格式化并存储在远程设备205的。如图3中所示,项355有多种用于联系人的字段,其包括属性标识符,属性名称和属性的初始值。当然,除了保留的时间-日期属性字段之外也存在其它项目,属性,字段,等。因而,项355联系人的信息和其中的字段的引用仅是用来说明目的,并非意图限制或在其它方面缩小本发明的范围,除了明确申明处。
图3中也显示,格式化的时间-日期信息可作为字段值350存储在属性字段375中。示例实施例提供了格式化可以是用如字段350中所示的同步URL形式。图3中也显示了字段350的被语法分析的部件分解图。字段350的第一个部分包括同步URL305。这个部分识别正在扫描项355的设备,其后的同步URL的片段包括项355中的不同属性的时间-日期信息。须注意的是,同步URL305中,通常留作定位信息的占位符315可被使用,也可不使用。
其后的每个片段可由&符340分隔并通过属性识别过程被识别,如,属性值310。同样包含在字段350中的同步URL305的每个片段中的是与属性识别关联的时间-日期信息(如,时间-日期-1 330与Prop ID-1关联)。示例实施例提供了为节约昂贵的存储资源,可使用时间-日期信息的简单表示。例如,时间-日期信息可以十六进制数储存。为节约更多的空间,时间日期信息也可用较低分辨率储存。例如,时间-日期值通常精确到千分之一秒。然而,示例实施例提供,建立格式化的时间日期信息或带时间-日期值的同步URL精确到秒或分。此外,示例实施例提供了,时间-日期信息可用一种不依赖时区的方法存储。因此,这将使在同步拓扑学中的结点处在不同的时区时,允许进行时间的比较。
同步URL305的每个片段中也提供了属性的表示,如,属性表示320。示例实施例提供了,属性表示320可以是如上文所述的散列的形式,可用于确定自属性表示320生成后属性值是否已变更。这指明了时间-日期信息330是否具有潜在的不可靠性。
除了诸如注释字段的一些字段外,留下的存储格式化的时间-日期信息的存储器是有限的。如此,为单个和每个属性存储时间-日期信息的存储器可能会缺乏或不足。因此,本发明提供了从项355中全部属性值中,确定和选择属性值的有限集合的方法。包括在本发明的同步URL305中的时间-日期信息的属性值的选择,可以是基于不同的考虑选择的。例如,该选择可能基于那些最近被变更的属性值。或者,同步URL305或格式化的时间-日期信息中,被选择的使时间-日期信息与其关联的属性值,可以是基于启发式数据,诸如特定属性值变更的频率。当然,也可提供任何其它不同的用于选择属性值使时间-日期信息与之关联的方法。因此,如何选择属性的使用方法,(如,用最近变更的属性,)仅用于说明性目的,而非意图限制或在其它方面缩小本发明的范围,除非另外明确申明。
因为空间是需考虑的事项,且通常属性的子集需进行选择以使时间-日期信息与之关联,本发明也可提供确定自从最近被同步之后,是否其它的属性已变更的方法,并在缩减的空间中,将时间-日期信息与其关联。例如,本发明提供了用简缩的格式表示剩余的属性,并将其与上界和/或下界时间-日期信息关联。例如,如图3中所示,附加在字段350中同步URL 305末尾的是带有保持剩余值的属性标识符360的片段。属性标识符360向正在扫描同步URL305的设备指出,这样没有与其关联的特定时间日期信息的属性在此片段中出现。因而,余下的属性值的属性表示365可被使用。
如前述其它属性表示,如属性表示320,剩余属性值的属性表示365可以是以所有余下的属性值的散列的形式。如此,此属性表示365可如那些前述属性表示类似的方法,用来识别自从远程机器和本地机器之间的最近被同步之后,余下的属性值中的一个或多个何时已被变更。其它示例实施例也提供了同样可与剩余属性关联的时间-日期信息370,以给出关于余下的属性值何时被变更的一个上界和/或下界。
尽管剩余片段被描述为同步URL的附加片段,人们将认识到剩余片段可在其自身的字段中被格式化。例如,在需要保留空间或存储器的地方,剩余片段可用于识别何时一个或多个整个项355中的属性已变更。因此,附加到同步URL305末尾的剩余片段的使用仅是用于说明性目的,而非意图限制或在其它方面缩小本发明的范围除非明确申明之处。
本发明也可借助包括功能性步骤和/或非功能性动作的方法描述。以下是实现本发明中可能执行的步骤或动作的描述。通常,功能性步骤借助于完成的结果描述本发明,而非功能性动作描述用于得到特定结果的更特定动作。尽管可用任何特定的次序描述或申明功能性步骤和非功能性动作,本发明不一定限于动作和/或步骤的任何特定的次序。并且,在权利要求的复述中和以下图4-8的流程图的描述中,动作和/或步骤的使用是用于表示这些术语所希望的特殊使用。
图4-8例示了本发明的各种示例实施例的示例流程图。图4-8的以下描述将偶尔涉及来自图1B,2和3的对应的部件。尽管可参考这些图中的特定部件,但这些部件仅是用于说明性目的,而非意图限制或在其它方面缩小本发明的范围,除非另外明确申明。
图4例示了在不存储具有对应的时间-日期字段的属性的远程数据库中,将时间-日期信息与一个属性值关联的方法400的示例流程图。方法400包括一个识别时间-日期信息的动作405。此时间-日期信息对应于远程数据库中的一个或多个属性值。方法400也包括一个格式化被识别的时间日期信息的动作410。此时间-日期信息使用分布式计算机系统200中,可被一个或多个设备210,220进行语法分析的标准格式格式化。此标准格式可以是诸如同步URL305的URI。同步URL305可被语法分析为由&符340分隔的片段。每个片段可包括属性识别符310,属性值320的表示和对应于该属性值的时间-日期信息330的表示。示例实施例提供了属性值320的表示,可能是特定属性值的散列。此外,时间-日期信息的表示可以是一个十六进制数和/或可被存储到秒或分和/或不依赖时区的格式。
方法400也包括发送格式化的时间-日期信息的动作420。例如,格式化的时间-日期信息可被发送到远程数据库,用于存储在与远程属性值关联的字段350中。字段350可以是,如,一个注释字段,隐藏属性,专用扩展属性,或任何其它类似的未使用字段。
其它示例实施例提供了,在字段305中将时间-日期信息与其关联的属性值,是所有的属性值的一个子集。该子集可基于与时间-日期信息关联的值选择。例如,最近的时间-日期信息可用于选择被归入该子集的属性值。或者,属性值变更的频率可被用于选择该子集。
在其它实施例中,来自所有的属性值的被余留的部分属性值可被组合在表示值365中,并使时间-日期信息与其关联370。例如,时间-日期信息370可以是对剩余属性中所有属性的最近被变更的值。或者,也可使用较低的时间-日期信息370界定,表示在属性值的余留部分中,其中的一个属性何时最早被同步的时间。并且,被组合的表示值365可采用属性值的余留部分的散列的形式。
图5例示了在数据库中用属性值接收和储存时间-日期信息的方法500,其中数据库中的属性不带对应的时间-日期字段地被存储。方法500包括一个接收格式化的时间-日期信息的动作505。时间-日期信息与属性值关联,并使用可被分布式计算机系统200中一个或多个设备210,220进行语法分析的标准格式格式化。方法500也包括一个存储格式化的时间-日期信息的动作510。被格式化的时间-日期信息可被存储在与属性值关联的数据库字段350中,使得格式化的时间-日期信息可被用于消决涉及该属性值的数据冲突。
示例实施例也考虑了识别和更新格式化的时间-日期信息。例如,当一个属性值已变更,可识别格式化的时间-日期信息为与属性值关联。然后此格式化的时间-日期信息可在数据库字段中按照变更的属性值被更新。示例实施例提供了,这可由远程设备205通过合适的应用软件完成。例如,格式化的时间-日期信息可被接收并存储在远程设备205上,远程设备的一个用户可能已作出变更。或者,本地机器210,220可能已作出变更。存储未格式化的时间日期信息作为属性的本地机器210,220与数据库中的一个或多个属性值关联,并在对应的时间-日期字段中存储此信息。换言之,本地机器210,220是高保真度设备。
图6例示了在分布式系统中消决设备之间的数据冲突的方法600。分布式计算机系统中的一个设备在不带对应的时间-日期字段的数据库中存储属性。方法600包括一个接收一个远程属性值的动作605。此远程属性作为远程属性被接收,对应的远程时间日期信息也被接收。此外,此远程时间-日期信息是以分布式计算机系统中的一个或多个设备可进行语法分析的标准格式格式化的,如,URI或同步URL格式。方法600也包括一个检测冲突的动作610。此冲突存在于远程属性值和对应的本地属性值之间。
方法600也可包括一个利用远程时间-日期信息的面向功能性的结果的步骤620。时间-日期信息可用于选择一个恰当的属性值供本地设备和远程设备之间同步。步骤620和包括一个对远程时间-日期信息进行语法分析的动作622。按照标准格式对此远程时间-日期信息进行语法分析以识别表示远程属性值何时被变更的远程时间和日期。步骤620也可包括一个将远程时间和日期与本地时间和日期比较的动作624。本地时间和日期表示本地属性值何时被变更。最后,步骤620可包括一个消解冲突的动作626。冲突的解决将基于比较的结果。
如上面提及的,标准格式可能是URI的形式。例如,此URI可能是被语法分析成片段的URL。这些片段可能包括对应远程属性值的属性识别,远程属性值的表示和时间-日期信息的表示。此外,远程属性值的表示可能是散列值且时间-日期信息的表示可能是十六进制数。
其它示例实施例提供了从远程属性值生成远程属性的本地表示的方法。然后此本地表示可与上面提及的远程表示比较,以确定是否远程属性值已变更。
图7例示了确定自从远程设备和本地机器之间的最近同步属性之后属性值何时已变更的方法700。方法700包括一个接收远程属性的当前值的动作705。此外,远程属性的先前值的远程表示也被接收。方法700也可包括一个生成远程属性的本地表示的动作710。此本地表示是从远程属性的当前值生成。方法700也包括一个将远程表示与本地表示比较的动作715。最后,方法700包括一个确认先前的远程属性被变更的动作720。该确认表示了属性值在远程表示生成后被变更。因此,若时间-日期信息与如,在同步URL305中的远程属性关联,此信息是潜在不可靠的,且可能会被废弃。
图8例示了从多个属性值中选择属性值的有限集合的方法800。对于在没有对应的时间-日期字段的数据库中存储属性的设备,此属性值将被赋予时间-日期信息。方法800包括了一个从远程设备接收属性值的动作805。方法800也包括一个选择时间-日期信息的有限集合的动作810。属性值的有限集合可基于远程设备的现有资源从多个属性值中选择。方法800也包括一个识别时间-日期信息的集合的动作815。有限集合中的每个属性值对应于时间-日期信息集合的不同部分。方法800也包括一个在远程数据库中存储时间-日期信息的不同部分的动作820。
方法800也可包括识别属性值的保留部分,并将其作为表示值存储,将其与时间-日期信息相关联。例如,对余留的属性值的一部分时间-日期信息可被识别(余留的属性值不在属性值的有限集合中)。被识别的时间-日期信息部分可被存储在远程数据库的一个位置中,使得被识别的时间-日期信息部分对应于所有余留的属性值。
本发明范围中的实施例也包括计算机可读的介质,用于携带或将计算机可执行指令或数据结构存储其上。此计算机可读介质可以是可被通用当用计算机访问的任何可得到的介质。用于示例,而非限制,此计算机可读介质可包括RAM,ROM,EEPROM,CD-ROM或其它光盘存储器,磁盘存储器或其它磁存储设备,或任何其它可用于以计算机可执行指令或数据结构的形式携带或存储所需程序代码方法的,并可被通用或专用计算机访问的介质。当信息通过网络或其它通信连接传输或提供(或有线的,无线的,或有线和无线的组合)到计算机时,计算机恰当地把此连接视作计算机可读介质。因而,任何这样的连接完全被界定在计算机可读介质范围中。以上的组合也应被纳入计算机可读介质的范围中。计算机可执行指令包括,例如,使通用计算机,专用计算机,或特殊用途运算设备实施某种功能或功能群的指令和数据。
图9和以下讨论试图为本发明提供可在其中实现本发明的合适的计算机环境的简要的,概括的描述。尽管未被要求,本发明将以计算机可执行指令的概括的语言描述,诸如正在被网络环境中的计算机执行的程序模块。一般地,程序模块包括例行程序,程序,对象,组件,数据结构,等,它们完成特定任务或实现特定抽象数据类型。计算机可执行指令,相关的数据结构,和程序模块代表公布的方法的执行步骤的程序代码方法的示例。这些可执行指令或相关数据结构的特定顺序代表为实现这些步骤中所述功能的对应动作的示例。
本领域中的熟练技术人员将意识到本发明可在具有许多类型计算机系统配置的网络计算环境中实施,这些配置包括个人电脑,手持设备,多处理器系统,基于微处理器或可编程消费类电子产品,网络PC机,小型计算机电脑,大型计算机,或类似设备。本发明也可在分布式计算机环境中实施,其中任务通过经由通信网络连接的(或通过有线连接,无线连接,或通过有线或无线连接的组合)本地和远程处理设备实施。在分布式计算环境中,程序模块可位于本地和远程记忆存储设备之中。
参考图9,实现本发明的示例系统,包括以常规计算机920形式的通用计算机设备,包括处理单元921,系统存储器922,和耦合包括系统存贮器922的各种部件到处理单元921的系统总线923。系统总线923可以是数种类型的总线结构的任意一种,包括存储总线或存储控制器,外围总线,和使用多种总线体系结构的任一种的局部总线。系统存储器包括只读存储器(ROM)924和随机存取存储器(RAM)925。基本输入/输出系统(BIOS)926,含有在诸如启动期间,在计算机920的元件之间帮助传输信息的基本例行程序,可存储在ROM924中。
计算机920也可包括用于读写硬盘939硬盘驱动器927,用于读写可移动磁盘929的磁盘驱动器928,和用于读写诸如CD-ROM或其它光介质的可移动光盘931的和光盘驱动器930。硬盘驱动器927,磁盘驱动器928,和光盘驱动器930分别通过硬盘驱动器接口932,磁盘驱动器接口933,和光盘驱动器接口934被连接到系统总线923。这些设备及其相关的计算机可读介质为计算机920提供了计算机可执行指令,数据结构,程序模块和其它数据的非易失性存储。尽管这里描述的示例实施例采用了硬盘939,可移动磁盘929和可移动光盘931,可使用其它类型的用于存储数据的计算机可读介质,包括盒式磁带,闪存卡,数字多用盘,伯努利(Bernoulli)盒式带,RAM,ROM和类似设备。
包含一个或多个程序模块的程序代码方法可被存储在硬盘939,磁盘929,光盘931,ROM924或RAM925上,包括操作系统935,一个或多个应用程序936,其它程序模块937,和程序数据938。用户可通过键盘940,定位设备942,或其它输入设备(未显示),诸如话筒,操纵杆,游戏垫,圆盘式卫天线,扫描仪,或类似设备将命令和信息输入计算机920中。这些及其它设备常通过耦合到系统总线923的串行端口接口946连接到处理单元921。或者,这些输入设备可通过其它接口连接,诸如并行端口,游戏端口或通用串行总线(USB)连接。监视器947或其它显示设备也经由诸如视频适配器948的接口连接到系统总线923。除了显示器,个人电脑一般包括其它外围输出设备(未显示),诸如扬声器和打印机。
计算机920可使用诸如远程计算机949a和949b的一个或多个远程计算机的逻辑连接,在网络化环境中运行。远程计算机949a和949b可以各自是另外一台个人电脑,服务器,路由器,网络PC机,对等设备或其它公共网络节点,一般包括许多或所有上述对于计算机920描述的元件,尽管仅有存储器存储设备950a和950b及其相关的应用程序936a和936b被例示在图9中。图9所示的逻辑连接包括出现在此处用于示例而非限制的局域网(LAN)951和广域网(WAN)952。这些网络环境在办公室内或企业内计算机网络,内联网和互联网中是很常见的。
当用于LAN网络环境中时,计算机920通过网络接口或适配器953连接到局部网络951。当用于WAN网络环境中时,计算机920可包括调制解调器954,无线链路,或其它用于在诸如互联网的广域网952范围内建立通信的装置。调制解调器954,可以是内置或外置的,经由串行端口接口946连接到系统总线923。在网络化环境中,对于计算机920示出的程序模块,或其一部分,可存储在远程存储设备中。应认识到所示网络连接是示例性的,可使用其它在广域网952范围内建立通信的方法。
本发明可以在不背离其精神或本质特征的情况下,在其它特定形式中具体化。所述实施例在所有方面仅被认为是说明性的而非限制性的。因此本发明的范围由所附权利要求表明而不是前面的描述。所有来自与权利要求相当的含义和范围的变化将被包含在其范围中。

Claims (100)

1.在能够在设备之间同步数据的分布式计算机系统中,所述分布式计算机系统具有一在无对应时间-日期字段的数据库中存储属性的设备,一种将时间-日期信息与所述数据库中的属性值关联的方法,所述方法包含以下动作:
识别对应于远程数据库中一个或多个远程属性值的时间-日期信息,所述远程数据库存储无对应的时间-日期字段的属性;
用一种可由所述分布式计算机系统中的一个或多个设备进行语法分析的标准格式来格式化所识别的时间-日期信息;以及
发送所格式化的时间-日期信息到远程数据库,以供存储在与一个或多个远程属性值相关联的字段中。
2.如权利要求1所述的方法,其特征在于,所述标准格式是统一资源标识符。
3.如权利要求2所述的方法,其特征在于,所述统一资源标识符是被语法分析成片段的统一资源定位器,每个片段包括一个属性标识符、一个或多个属性值中的一个的表示、以及对应于一个或多个属性值中的一个的时间-日期信息的表示。
4.如权利要求3所述的方法,其特征在于,所述一个或多个属性值中的一个的表示是一个或多个属性值中的一个的散列。
5.如权利要求3所述的方法,其特征在于,对应于所述一个或多个属性值中的一个的时间-日期信息的表示是时间-日期信息的十六进制数的一个或多个,它们被精确到秒存储、被精确到分存储或用一种不依赖时区的格式存储。
6.如权利要求1所述的方法,其特征在于,与所述一个或多个远程属性值关联的字段是注释字段。
7.如权利要求1所述的方法,其特征在于,与所述一个或多个远程属性值关联的字段是未被使用的字段。
8.如权利要求1所述的方法,其特征在于,所述一个或多个属性值是所有相关属性值的一个子集,且选择一个或多个属性值,以使所识别的时间-日期信息用基于与时间-日期信息关联的值的标准格式进行格式化。
9.如权利要求8所述的方法,其特征在于,来自全部未被选择的所述属性值的属性值的余留部分由一组合的表示值在与一个或多个远程属性值关联的字段中表示,所述组合的表示值具有基于属性值的余留部分的时间-日期信息的关联的时间-日期信息。
10.如权利要求9所述的方法,其特征在于,与所述一个或多个属性值的时间-日期信息关联的值是最近的时间-日期值,且其中与组合的表示值关联的时间-日期信息是最近的时间-日期值或与属性值的余留部分关联的最老的时间-日期值中的一个或多个。
11.如权利要求10所述的方法,其特征在于,所述组合的表示是属性值的余留部分的散列。
12.在能够在设备之间同步数据的分布式计算系统中,所述分布式计算机系统具有一在无对应时间-日期字段的数据库中存储属性的设备,一种将时间-日期信息与所述数据库中的属性值关联的方法,所述方法包含以下动作:
接收与一个或多个所述属性值关联的被格式化的时间-日期信息,所述被格式化的时间-日期信息用可由所述分布式计算机系统中一个或多个设备进行语法分析的标准格式来格式化;以及
在与一个或多个所述属性值关联的数据库字段中存储格式化的时间-日期信息,使得所述格式化的时间-日期信息可被用于消解涉及一个或多个属性值的数据冲突。
13.如权利要求12所述的方法,其特征在于,还包括以下动作:
变更一个或多个属性值中的至少一个属性值;
将格式化的时间日期信息标识为与所述一个或多个属性值关联;以及
按照一个或多个属性值中被变更的至少一个属性值来更新数据库字段中格式化的时间-日期信息。
14.如权利要求13所述的方法,其特征在于,接收所述格式化的时间日期信息并将其存储在远程设备上,且其中,远程设备的一个用户作出变更。
15.如权利要求13所述的方法,其特征在于,接收所述格式化的时间-日期信息并将其存储在远程设备上,且本地机器的一个用户作出变更,所述本地机器存储未经格式化的时间-日期信息属性,所述信息属性与具有对应时间-日期字段的数据库中的一个或多个属性值关联。
16.如权利要求12所述的方法,其特征在于,所述标准格式是统一资源标识符。
17.如权利要求16所述的方法,其特征在于,所述统一资源标识符是被语法分析成片段的统一资源定位器,每个片段包括一属性标识符、一个或多个属性值中的一个的表示、以及对应于一个或多个属性值中的一个的时间-日期信息的表示。
18.如权利要求17所述的方法,其特征在于,所述一个或多个属性值中的一个的表示是一个或多个属性值中的一个的散列。
19.如权利要求18所述的方法,其特征在于,对应于一个或多个属性值中的一个的时间-日期信息的表示是所述时间-日期信息的十六进制数的一个或多个,它们被精确到秒存储、被精确到分存储或用一种不依赖时区的格式存储。
20.如权利要求12所述的方法,其特征在于,与所述一个或多个远程属性值关联的字段是注释字段。
21.如权利要求12所述的方法,其特征在于,与所述一个或多个所述远程属性值关联的字段是未被使用的字段。
22.如权利要求12所述的方法,其特征在于,所述一个或多个属性值是所有相关属性值的一个子集,且选择一个或多个属性值,以使所识别的时间-日期信息用基于与所述时间-日期信息关联的值的标准格式进行格式化。
23.如权利要求22所述的方法,其特征在于,来自全部数量的未被选择的属性值的属性值的余留部分由一组合的表示值在与所述一个或多个属性值关联的字段中表示,所述组合的表示具有基于属性值的余留部分的时间-日期信息的关联的时间-日期信息。
24.如权利要求23所述的方法,其特征在于,与所述一个或多个属性值的时间-日期信息关联的值是最近的时间-日期值,且其中,与组合的表示关联的时间-日期信息是最近的时间-日期值,或与属性值的余留部分关联的最老的时间-日期值中的一个或多个。
25.如权利要求24所述的方法,其特征在于,所述组合的表示是属性值的余留部分的散列。
26.在能够在设备之间同步数据的分布式计算系统中,所述分布式计算机系统具有一在无对应时间-日期字段的数据库中存储属性的设备,一种消解所述分布式计算机系统中的设备之间的数据冲突的方法,所述方法包含以下动作:
从一无对应的时间-日期字段的数据库接收一远程属性的远程属性值和对应的远程时间-日期信息,所述远程时间-日期信息用可由所述分布式计算机系统中一个或多个设备进行语法分析的标准格式来格式化;
检测远程属性值和对应的本地属性值之间的冲突;
按照所述标准格式对所述远程时间-日期信息进行语法分析,以识别远程时间和日期,所述远程时间和日期表示所述远程属性值何时被变更;
将远程时间和日期与本地时间和日期比较,所述本地时间和日期表示所述一个或多个本地属性值何时被变更;以及
基于所述比较的结果消解所述冲突。
27.如权利要求26所述的方法,其特征在于,所述标准格式是统一资源标识符。
28.如权利要求27所述的方法,其特征在于,所述统一资源标识符是被语法分析成片段的统一资源定位器,所述片段中的一个包括一对应于远程属性值的属性标识符,所述远程属性值的远程表示、以及对应于所述远程属性值的时间-日期信息的表示。
29.如权利要求28所述的方法,其特征在于,所述远程属性值的远程表示是远程属性值的散列。
30.如权利要求28所述的方法,其特征在于,对应于所述远程属性值的时间-日期信息的表示是时间-日期信息的十六进制数的一个或多个,它们被精确到秒存储、被精确到分存储或用一种不依赖时区的格式存储。
31.如权利要求28所述的方法,其特征在于,还包括以下动作:
从远程属性值生成所述远程属性的本地表示;
将所述远程表示与本地表示比较;以及
基于所述比较,确定在所述远程表示生成之后所述远程属性值未变更。
32.在能够在设备之间同步数据的分布式计算机系统中,所述分布式计算机系统具有一在无对应时间-日期字段的数据库中存储属性的设备,一种消解所述分布式计算机系统中的设备之间的数据冲突的方法,所述方法包括:
从无对应的时间-日期字段的数据库接收远程属性值和对应的远程时间-日期信息的动作,所述远程时间-日期信息用可由所述分布式计算机系统中一个或多个设备进行语法分析的标准格式来格式化;
检测所述远程属性值和对应的本地属性值之间的冲突的动作;以及
利用所述远程时间-日期信息选择适当的属性值以进行本地设备和远程设备之间的同步的步骤。
33.如权利要求32所述的方法,其特征在于,所述标准格式是统一资源标识符。
34.如权利要求33所述的方法,其特征在于,所述统一资源标识符是被语法分析成片段的统一资源定位器,所述片段中的一个包括一对应于所述远程属性值的属性标识符、所述远程属性值的远程表示、以及对应于所述远程属性值的时间-日期信息的表示。
35.一种计算机程序产品,用于能够在设备之间同步数据的分布式计算机系统中,所述分布式计算机系统具有一在无对应的时间-日期字段的数据库中存储属性的设备,所述计算机程序产品用于实现消解分布式计算机系统的设备之间数据冲突的方法,所述计算机程序产品包含其上储存了计算机可执行指令的一个或多个计算机可读介质,当所述指令被处理器执行时,可使所述分布式计算机系统执行以下动作:
从无对应的时间-日期字段的数据库接收一远程属性的远程属性值和对应的远程时间-日期信息,所述远程时间-日期信息用可由所述分布式计算机系统中一个或多个设备进行语法分析的标准格式来格式化;
检测所述远程属性值和对应的本地属性值之间的冲突;
按照所述标准格式对所述远程时间-日期信息进行语法分析,以识别远程时间和日期,所述远程时间和日期表示所述远程属性值何时被变更;
将所述远程时间和日期与本地时间和日期比较,所述本地时间和日期表示一个或多个本地属性值何时被变更;以及
基于所述比较的结果消解冲突。
36.如权利要求35所述的计算机程序产品,其特征在于,所述标准格式是统一资源标识符。
37.如权利要求36所述的计算机程序产品,其特征在于,所述统一资源标识符是被语法分析成片段的统一资源定位器,所述片段中的一个包括对应于所述远程属性值的属性标识,所述远程属性值的远程表示和对应于所述远程属性值的时间-日期信息的表示。
38.如权利要求37所述的方法,其特征在于,所述远程属性值的远程表示是所述远程属性值的散列。
39.如权利要求38所述的方法,其特征在于,对应于所述远程属性值的时间-日期信息的表示是所述时间-日期信息的十六进制数。
40.如权利要求39所述的方法,其特征在于,还包括以下动作:
从所述远程属性值生成远程属性的本地表示;
将所述远程表示与本地表示进行比较;以及
基于所述比较,确定在所述远程表示生成之后所述远程属性值未变更。
41.在能够在设备之间同步数据的分布式计算机系统中,一种确定自从远程设备和本地机器之间的属性的上次同步之后,远程设备上的属性的值是否已变更的方法,所述方法包含以下动作:
接收所述远程属性的当前值和所述远程属性的先前值的远程表示;
从所述远程属性的当前值生成所述远程属性的本地表示;
将所述远程表示和本地表示进行比较;以及
基于所述比较,确定在所述远程表示生成之后所述远程属性的先前值被变更。
42.如权利要求41所述的方法,其特征在于,所述远程表示是远程属性的先前值的散列,所述本地表示是所述远程属性的当前值的散列。
43.如权利要求42所述的方法,其特征在于,所述远程设备是低保真度设备,它在无对应的时间-日期字段的数据库中存储属性。
44.如权利要求41所述的方法,其特征在于,还包括:
接收与所述远程属性关联的时间日期信息的远程表示;以及
基于所述远程属性的先前值被变更的确认,确定时间-日期信息的远程表示是潜在不可靠的。
45.如权利要求44所述的方法,其特征在于,所述时间-日期信息的远程表示是一个或多个十六进制数,它们被精确到秒存储、被精确到分存储或用一种不依赖时区的格式存储。
46.如权利要求44所述的方法,其特征在于,在与所述远程属性关联的所述当前值和本地值之间存在冲突,且其中,所述时间-日期信息的远程表示不用于消解所述冲突。
47.如权利要求41所述的方法,其特征在于,所述本地值用于代替当前值,且所述远程表示被一更新的远程表示代替。
48.如权利要求47所述的方法,其特征在于,所述远程表示是所述远程属性的先前值的散列,所述本地表示是所述远程属性的当前值的散列,所述被更新的远程表示是本地值的散列。
49.在能够在设备之间同步数据的分布式计算机系统中,一种确定自从远程设备和本地机器之间的属性的上次同步之后,远程设备上的属性的值是否已变更的方法,所述方法包含以下动作:
接收远程属性的远程值和所述远程属性的远程值的远程表示;
从远程属性的远程值生成所述远程属性的本地表示;
将所述远程表示和本地表示进行比较;以及
基于所述比较,确定在所述远程表示生成之后所述远程属性的远程值未变更。
50.如权利要求49所述的方法,其特征在于,所述远程表示是所述远程值的散列,所述本地表示是所述远程值的散列。
51.如权利要求50所述的方法,其特征在于,所述远程设备是低保真度设备,它在无对应的时间-日期字段的数据库中存储属性。
52.如权利要求49所述的方法,其特征在于,还包括:
确定在与所述远程值关联的所述远程值和本地值之间存在冲突;
接收与所述远程属性关联的时间日期信息的远程表示;
基于所述远程属性的远程值未变更的确认,将时间日期信息的远程表示与时间日期信息的本地表示作比较,所述时间日期信息的远程表示和时间日期信息的本地表示分别表明了远程值和本地值分别是何时生成的;以及
基于时间日期的所述远程表示和时间日期信息的所述本地表示的比较结果消解冲突。
53.如权利要求52所述的方法,其特征在于,所述时间-日期信息的远程表示是一个或多个十六进制数,它们被精确到秒存储、被精确到分存储或用一种不依赖时区的格式存储。
54.如权利要求52所述的方法,其特征在于,所述本地值用于代替远程值,且所述远程表示被一更新的远程表示代替。
55.如权利要求54所述的方法,其特征在于,所述远程表示是所述远程属性的先前值的散列,所述本地表示是所述远程属性的当前值的散列,所述被更新的远程表示是本地值的散列。
56.在能够在设备之间同步数据的分布式计算机系统中,一种计算机程序产品,用于实现确定自从在远程设备和本地机器之间属性的上次同步之后远程设备上的属性值是否已变更的方法,所述计算机程序产品包含其上存储了计算机可执行指令的一个或多个计算机可读介质,当所述指令被处理器执行时,可使所述分布式计算机系统执行以下动作:
接收所述远程属性的当前值和所述远程属性的先前值的远程表示;
从所述远程属性的当前值生成所述远程属性的本地表示;
将所述远程表示和所述本地表示进行比较;以及
基于所述比较,确定在远程表示生成后所述远程属性的先前值变更了。
57.如权利要求56所述的计算机程序产品,其特征在于,所述远程表示是所述远程属性的先前值的散列,且所述本地表示是所述远程属性的本地值的散列。
58.如权利要求57所述的计算机程序产品,其特征在于,所述远程设备是低保真度设备,它在无对应的时间-日期字段的数据库中存储属性。
59.如权利要求56所述的计算机程序产品,其特征在于,还包括计算机可执行指令,它能使分布式计算机系统执行下列动作:
接收与所述远程属性关联的时间日期信息的远程表示;
基于远程属性的先前值被变更的确认,确定时间-日期信息的所述远程表示是潜在不可靠的。
60.如权利要求59所述的计算机程序产品,其特征在于,所述时间-日期信息的远程表示是一个或多个十六进制数,它们被精确到秒存储、被精确到分存储或用一种不依赖时区的格式存储。
61.如权利要求59所述的计算机程序产品,其特征在于,在与所述远程属性关联的当前值和本地值之间存在冲突,且所述时间-日期信息的远程表示不用于消解该冲突。
62.如权利要求56所述的计算机程序产品,其特征在于,所述本地值用于代替当前值,而所述远程表示被一更新的远程表示代替。
63.如权利要求62所述的计算机程序产品,其特征在于,所述远程表示是所述远程属性的先前值的散列,所述本地表示是远程属性的所述当前值的散列,所述被更新的远程表示是所述本地值的散列。
64.在能够在设备之间同步数据的分布式计算机系统中,一种计算机程序产品,用于实现确定自从在远程设备和本地机器之间属性的上次同步之后远程设备上的属性值是否已变更的方法,所述计算机程序产品包含其上存储了计算机可执行指令的一个或多个计算机可读介质,当所述指令被处理器执行后,可使所述分布式计算机系统执行以下动作:
接收远程属性的远程值和所述远程属性的远程值的远程表示;
从远程属性的远程值生成所述远程属性的本地表示;
将所述远程表示和所述本地表示进行比较;以及
基于所述比较,确定在所述远程表示生成后所述远程属性的远程值未变更。
65.如权利要求64所述的计算机程序产品,其特征在于,所述远程表示是所述远程值的散列,且所述本地表示是所述远程值的散列。
66.如权利要求65所述的计算机程序产品,其特征在于,所述远程设备是低保真度设备,它在无对应的时间-日期字段的数据库中存储属性。
67.如权利要求64所述的计算机程序产品,其特征在于,还包括计算机可执行指令,它们能使分布式计算机系统执行以下动作:
确定在与所述远程值关联的远程值和本地值之间存在冲突;
接收与所述远程属性关联的时间日期信息的远程表示;
基于所述远程属性的远程值未变更的确认,将时间日期信息的远程表示与时间日期信息的本地表示进行比较,时间日期信息的所述远程表示与时间日期信息的所述本地表示指明了所述远程值和所述本地值分别是何时生成的;以及
基于时间日期的所述远程表示与时间日期信息的所述本地表示的比较的结果消解冲突。
68.如权利要求67所述的计算机程序产品,其特征在于,所述时间-日期信息的远程表示是一个或多个十六进制数,它们被精确到秒存储、被精确到分存储或用一种不依赖时区的格式存储。
69.如权利要求67所述的计算机程序产品,其特征在于,所述本地值用于代替远程值,而所述远程表示被一更新的远程表示代替。
70.如权利要求70所述的计算机程序产品,其特征在于,所述远程表示是所述远程属性的先前值的散列,所述本地表示是所述远程属性的当前值的散列,而所述更新的远程表示是本地值的散列。
71.在能够在设备之间同步数据的分布式计算机系统中,一种保护内存资源的方法,所述方法通过选择被赋予用于消解同步值之间冲突的时间-日期信息的属性值,所述方法包括以下动作:
从远程设备接收多个属性值;
基于所述远程设备的可得到的资源从多个属性值中选择属性值的有限集合;
从对应于多个属性值的多个时间-日期信息中识别时间-日期信息的集合,所述有限集合中的每个属性值对应于时间-日期信息集合的不同部分,并表示有限集合的每个属性值的某处何时最近一次被用户修改;以及
在所述远程设备的远程数据库中存储时间-日期信息的不同部分。
72.如权利要求71所述的方法,其特征在于,还包括以下动作:
从来自多个属性值的一个或多个余留的属性值的多个时间-日期信息中识别一部分时间-日期信息,所述一个或多个余留的属性值不在属性值的有限集合中,部分时间-日期信息对应于一个或多个余留的属性值的中的至少一个在某处何时被用户修改;以及
在远程数据库的位置中存储被识别部分的时间-日期信息,使所述被识别部分的时间-日期信息对应于所有一个或多个余留的属性值。
73.如权利要求72所述的方法,其特征在于,所述一个或多个余留的属性值用一组合的表示值表示。
74.如权利要求73所述的方法,其特征在于,所述组合的表示值是属性值的余留部分的散列。
75.如权利要求73所述的方法,其特征在于,所述一个或多个余留属性值的时间-日期信息的被识别部分是最近的时间-日期值、最老的时间-日期值、或其两者。
76.如权利要求75所述的方法,其特征在于,所述一个或多个余留属性值的部分时间-日期信息是时间-日期信息的十六进制数的一个或多个,它们被精确到秒存储、被精确到分存储或用一种不依赖时区的格式存储。
77.如权利要求73所述的方法,其特征在于,所述有限集合中的每个属性值是作为对应的属性值的表示存储的。
78.如权利要求77所述的方法,其特征在于,所述对应的属性值的表示是所述对应的属性值的散列。
79.如权利要求71所述的方法,其特征在于,所述有限集合中的每个属性值是作为对应的属性值的表示存储的。
80.如权利要求79所述的方法,其特征在于,所述对应的属性值的表示是所述对应的属性值的散列。
81.如权利要求71所述的方法,其特征在于,所述时间-日期信息是时间-日期信息的的十六进制数的一个或多个,它们被精确到秒存储、被精确到分存储或用一种不依赖时区的格式存储。
82.如权利要求71所述的方法,其特征在于,所述可得到的资源是有限大小的字段。
83.如权利要求71所述的方法,其特征在于,属性值的所述有限集合的选择也是基于与多个属性值的修改相关的历史信息。
84.如权利要求83所述的方法,其特征在于,所述历史信息是多个属性值的每一个被修改的频率,且其中最频繁被修改的属性值被选择。
85.如权利要求83所述的方法,其特征在于,所述历史信息是多个属性值的时间-日期信息,其中最近被修改的属性值被选择。
86.在能够在设备之间同步数据的分布式计算机系统中,一种计算机程序产品,用于实现一种通过选择被赋予用于消解同步值之间冲突的时间-日期信息的属性值来保护内存资源的方法,所述计算机程序产品包含其上存储了计算机可执行指令的一个或多个计算机可读介质,当所述指令被处理器执行时,可使所述分布式计算机系统执行以下动作:
从远程设备接收多个属性值;
基于所述远程设备的可得到的资源从多个属性值中选择属性值的有限集合;
从对应于所述多个属性值的多个时间-日期信息中识别时间-日期信息的集合,在所述有限集合中的每个属性值对应于时间-日期信息集合的不同部分,并表示所述有限集合的每个属性值某处何时最近一次被用户修改;以及
在所述远程设备的远程数据库中存储时间-日期信息的不同部分。
87.如权利要求86所述的计算机程序产品,其特征在于,还包括计算机可执行指令,它们使所述分布式计算机系统执行以下动作:
从来自多个属性值的一个或多个余留的属性值的多个时间-日期信息中识别一部分时间-日期信息,所述一个或多个余留的属性值不在属性值的所述有限集合中,且所述部分时间-日期信息对应于一个或多个余留的属性值的中的至少一个在某处何时被用户修改;以及
在远程数据库的位置中存储被识别部分的时间-日期信息,使所述被识别部分的时间-日期信息对应于所有一个或多个余留的属性值。
88.如权利要求87所述的计算机程序产品,其特征在于,所述一个或多个余留的属性值用一组合的表示值表示。
89.如权利要求88所述的计算机程序产品,其特征在于,所述组合的表示值是属性值的余留部分的散列。
90.如权利要求88所述的计算机程序产品,其特征在于,所述一个或多个余留属性值的部分时间-日期信息的被识别部分是最近的时间-日期值、最老的时间-日期值、或其两者。
91.如权利要求90所述的计算机程序产品,其特征在于,所述一个或多个余留属性值的部分时间-日期信息是时间-日期信息的十六进制数的一个或多个,它们被精确到秒存储、被精确到分存储或用一种不依赖时区的格式存储。
92.如权利要求88所述的计算机程序产品,其特征在于,所述有限集合中的每个属性值是作为对应的属性值的表示存储的。
93.如权利要求92所述的计算机程序产品,其特征在于,所述对应的属性值的表示是所述对应的属性值的散列。
94.如权利要求86所述的计算机程序产品,其特征在于,所述有限集合中的每个属性值是作为对应的属性值的表示存储的。
95.如权利要求94所述的计算机程序产品,其特征在于,所述对应的属性值的表示是所述对应的属性值的散列。
96.如权利要求86所述的计算机程序产品,其特征在于,所述时间-日期信息是时间-日期信息的的十六进制数的一个或多个,它们被精确到秒存储、被精确到分存储或用一种不依赖时区的格式存储。
97.如权利要求86所述的计算机程序产品,其特征在于,所述可得到的资源是有限大小的字段。
98.如权利要求86所述的计算机程序产品,其特征在于,对属性值的所述有限集合的选择也是基于与多个属性值的修改相关的历史信息。
99.如权利要求98所述的计算机程序产品,其特征在于,所述历史信息是多个属性值的每个被修改的频率,其中最频繁被修改的属性值被选择。
100.如权利要求99所述的计算机程序产品,其特征在于,所述历史信息是所述多个属性值的时间-日期信息,且其中最近被修改的属性值被选择。
CN2004800016752A 2004-04-30 2004-07-30 用于同步的低保真度设备的时间-日期信息的维护 Expired - Fee Related CN101061475B (zh)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US10/835,830 2004-04-30
US10/835,830 US6944636B1 (en) 2004-04-30 2004-04-30 Maintaining time-date information for syncing low fidelity devices
US10/878,095 2004-06-28
US10/878,717 2004-06-28
US10/878,717 US6950835B1 (en) 2004-04-30 2004-06-28 Determining when a low fidelity property value has changed during a sync
US10/878,095 US7007045B2 (en) 2004-04-30 2004-06-28 Preserving memory resources by limiting time-date information for a subset of properties
PCT/US2004/024708 WO2005111808A2 (en) 2004-04-30 2004-07-30 Maintaining time-date information for syncing low fidelity devices

Publications (2)

Publication Number Publication Date
CN101061475A true CN101061475A (zh) 2007-10-24
CN101061475B CN101061475B (zh) 2011-11-30

Family

ID=34912757

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2004800016752A Expired - Fee Related CN101061475B (zh) 2004-04-30 2004-07-30 用于同步的低保真度设备的时间-日期信息的维护

Country Status (4)

Country Link
US (6) US6944636B1 (zh)
JP (1) JP4722124B2 (zh)
KR (1) KR101224821B1 (zh)
CN (1) CN101061475B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104580424A (zh) * 2014-12-26 2015-04-29 珠海格力电器股份有限公司 智能家居系统的数据上报方法和装置

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002023330A2 (en) * 2000-09-11 2002-03-21 Avantgo, Inc. Method, system, and computer program product for synchronization of similar data objects with event information
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
US6944636B1 (en) * 2004-04-30 2005-09-13 Microsoft Corporation Maintaining time-date information for syncing low fidelity devices
US7342555B2 (en) * 2004-04-30 2008-03-11 Microsoft Corporation Detecting low fidelity sync data
RU2367008C2 (ru) * 2004-04-30 2009-09-10 Майкрософт Корпорейшн Поддержание информации времени-даты для синхронизации устройств с низкой достоверностью данных
US7284021B2 (en) * 2004-06-28 2007-10-16 Microsoft Corporation Determining when a low fidelity property value has changed during a SYNC
US7269609B2 (en) * 2004-06-28 2007-09-11 Microsoft Corporation Preserving memory resources by limiting time-date information for a subset of properties
US7788288B1 (en) * 2004-11-01 2010-08-31 At&T Corp. Method for distributed configuration and file distribution based on centralized data
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
US7689593B2 (en) * 2005-12-30 2010-03-30 Sap Ag Systems and methods for accessing a shared space in a provider-tenant environment
US8069184B2 (en) 2006-12-29 2011-11-29 Sap Ag Systems and methods to implement extensibility of tenant content in a provider-tenant environment
US7933869B2 (en) 2006-12-29 2011-04-26 Sap Ag Method and system for cloning a tenant database in a multi-tenant system
GB0718214D0 (en) * 2007-09-19 2007-10-31 Ibm An apparatus for storing a logical statement
US7996357B2 (en) 2008-02-29 2011-08-09 Plaxo, Inc. Enabling synchronization with a difference unaware data source
US8250588B2 (en) * 2009-06-16 2012-08-21 Microsoft Corporation Persisting application state
US8424009B2 (en) 2009-12-04 2013-04-16 Microsoft Corporation Lock resolution for distributed durable instances
US8296780B2 (en) * 2010-03-23 2012-10-23 Microsoft Corporation Reducing persistence commands
US8793402B2 (en) 2011-08-26 2014-07-29 International Business Machines Corporation Synchronizing time across a plurality of devices connected to a network
WO2014060011A1 (en) * 2012-10-15 2014-04-24 Huawei Technologies Co., Ltd. Method and apparatus for managing the coherency for data stored in distributed databases
WO2014100821A1 (en) 2012-12-21 2014-06-26 Nike International Ltd. Woven planar footwear upper
CN109284332B (zh) * 2018-08-29 2021-01-05 江苏奇异点网络有限公司 数据处理方法、客户端、服务器及计算机可读存储介质
KR20220126024A (ko) 2021-03-08 2022-09-15 삼성전자주식회사 호스트 장치 및 스토리지 장치 사이의 시간 동기화 방법 및 이를 수행하는 시스템

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5590305A (en) 1994-03-28 1996-12-31 Altera Corporation Programming circuits and techniques for programming logic
US5758355A (en) 1996-08-07 1998-05-26 Aurum Software, Inc. Synchronization of server database with client database using distribution tables
US5926816A (en) 1996-10-09 1999-07-20 Oracle Corporation Database Synchronizer
US6405218B1 (en) * 1996-11-13 2002-06-11 Pumatech, Inc. Synchronizing databases
US6212529B1 (en) * 1996-11-13 2001-04-03 Puma Technology, Inc. Synchronization of databases using filters
US6044381A (en) 1997-09-11 2000-03-28 Puma Technology, Inc. Using distributed history files in synchronizing databases
US6006241A (en) 1997-03-14 1999-12-21 Microsoft Corporation Production of a video stream with synchronized annotations over a computer network
US6052735A (en) 1997-10-24 2000-04-18 Microsoft Corporation Electronic mail object synchronization between a desktop computer and mobile device
US6442570B1 (en) 1997-10-27 2002-08-27 Microsoft Corporation Object identification and data communication during an object synchronization process
US6223050B1 (en) 1997-12-09 2001-04-24 Bellsouth Intellectual Property Management Corporation System and method for automatically setting a remote timepiece with the correct time
US6295541B1 (en) * 1997-12-16 2001-09-25 Starfish Software, Inc. System and methods for synchronizing two or more datasets
US5956490A (en) 1998-06-30 1999-09-21 Motorola, Inc. Method, client device, server and computer readable medium for specifying and negotiating compression of uniform resource identifiers
US6324544B1 (en) 1998-10-21 2001-11-27 Microsoft Corporation File object synchronization between a desktop computer and a mobile device
US6343299B1 (en) * 1998-11-16 2002-01-29 International Business Machines Corporation Method and apparatus for random update synchronization among multiple computing devices
US6247135B1 (en) * 1999-03-03 2001-06-12 Starfish Software, Inc. Synchronization process negotiation for computing devices
US6463427B1 (en) 1999-03-16 2002-10-08 Microsoft Corporation Use of object signature property as a search parameter during synchronization of objects on a computer
ATE511723T1 (de) * 1999-06-21 2011-06-15 Fieldbus Foundation Blockorientiertes steuerungssystem auf einem hochgeschwindigkeits - ethernet
US6505214B1 (en) 1999-09-28 2003-01-07 Microsoft Corporation Selective information synchronization based on implicit user designation
US7039656B1 (en) 1999-10-20 2006-05-02 Yodlee.Com, Inc. Method and apparatus for synchronizing data records between a remote device and a data server over a data-packet-network
US6694336B1 (en) 2000-01-25 2004-02-17 Fusionone, Inc. Data transfer and synchronization system
US6636873B1 (en) * 2000-04-17 2003-10-21 Oracle International Corporation Methods and systems for synchronization of mobile devices with a remote database
JP3750504B2 (ja) * 2000-08-09 2006-03-01 セイコーエプソン株式会社 データ更新方法および情報処理装置
US6879996B1 (en) * 2000-09-13 2005-04-12 Edward W. Laves Method and apparatus for displaying personal digital assistant synchronization data using primary and subordinate data fields
US6952708B2 (en) 2001-06-27 2005-10-04 Microsoft Corporation Method and system for using a sync key
US7149813B2 (en) 2001-08-14 2006-12-12 Microsoft Corporation Method and system for synchronizing mobile devices
JP4142866B2 (ja) * 2001-11-07 2008-09-03 カシオソフト株式会社 データベース同期化装置及びプログラム
US20030217096A1 (en) * 2001-12-14 2003-11-20 Mckelvie Samuel J. Agent based application using data synchronization
JP2003242013A (ja) * 2002-02-18 2003-08-29 Sony Corp データ同期方法、データ同期システムおよびデータ同期プログラム
GB0226249D0 (en) * 2002-11-11 2002-12-18 Clearspeed Technology Ltd Traffic handling system
RU2367008C2 (ru) 2004-04-30 2009-09-10 Майкрософт Корпорейшн Поддержание информации времени-даты для синхронизации устройств с низкой достоверностью данных
US7342555B2 (en) 2004-04-30 2008-03-11 Microsoft Corporation Detecting low fidelity sync data
US6944636B1 (en) 2004-04-30 2005-09-13 Microsoft Corporation Maintaining time-date information for syncing low fidelity devices
US7284021B2 (en) 2004-06-28 2007-10-16 Microsoft Corporation Determining when a low fidelity property value has changed during a SYNC
US7269609B2 (en) 2004-06-28 2007-09-11 Microsoft Corporation Preserving memory resources by limiting time-date information for a subset of properties

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104580424A (zh) * 2014-12-26 2015-04-29 珠海格力电器股份有限公司 智能家居系统的数据上报方法和装置
CN104580424B (zh) * 2014-12-26 2019-04-30 珠海格力电器股份有限公司 智能家居系统的数据上报方法和装置

Also Published As

Publication number Publication date
US20050246399A1 (en) 2005-11-03
JP2007535757A (ja) 2007-12-06
US6950835B1 (en) 2005-09-27
US7305423B2 (en) 2007-12-04
KR101224821B1 (ko) 2013-01-22
US7370067B2 (en) 2008-05-06
US20050256995A1 (en) 2005-11-17
KR20120006082A (ko) 2012-01-17
US7620663B2 (en) 2009-11-17
CN101061475B (zh) 2011-11-30
US20050246400A1 (en) 2005-11-03
US6944636B1 (en) 2005-09-13
JP4722124B2 (ja) 2011-07-13
US7007045B2 (en) 2006-02-28
US20050246462A1 (en) 2005-11-03

Similar Documents

Publication Publication Date Title
CN101061475A (zh) 用于同步的低保真度设备的时间-日期信息的维护
CN101258487B (zh) 用全异信息系统中的数据批注协作应用中的文档
US20070011142A1 (en) Method and apparatus for non-redundant search results
US20090217199A1 (en) Information Retrieving and Displaying Method and Computer-Readable Medium
US7213039B2 (en) Synchronizing differing data formats
CN1828599A (zh) 幻影同步
CN103052952A (zh) 用于管理内容的设备和方法
US7284021B2 (en) Determining when a low fidelity property value has changed during a SYNC
US20150066785A1 (en) Method and apparatus for controlling digital evidence
CN108255915B (zh) 一种文件管理方法、装置及机器可读存储介质
US20240020305A1 (en) Systems and methods for automatic archiving, sorting, and/or indexing of secondary message content
US7216134B2 (en) Determining when a low fidelity property value has changed during a sync
US20050289194A1 (en) Preserving memory resources by limiting time-date information for a subset of properties
US20080033948A1 (en) Storage apparatus and method therefor
US20050071378A1 (en) Method of storing applications on removable storage
CN103646034A (zh) 一种基于内容可信的Web搜索引擎系统及搜索方法
JP4831152B2 (ja) 宛先情報管理システムおよび通信端末装置および宛先情報管理プログラム
CN102982438A (zh) 从多个联系人来构建人
CA2507424C (en) Maintaining time-date information for syncing low fidelity devices
JP5534556B2 (ja) 電子メールを利用可能な通信端末装置
US20110231794A1 (en) Method and System for Retrieval of Instant Messenger History
JP2011028497A (ja) 情報処理装置、情報処理方法及び情報処理プログラム
KR20070018657A (ko) 저 충실도 장치들을 동기화하기 위한 시간 날짜 정보 유지방법
JP2005327122A (ja) 情報検索装置、情報検索方法及びプログラム
KR20130127566A (ko) Smtp 기반 자동 분류 방식의 지식관리방법 및 지식관리시스템, 및 기록매체

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150429

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150429

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20111130

Termination date: 20200730

CF01 Termination of patent right due to non-payment of annual fee