CN101496000A - 通过web聚合的双向多主同步 - Google Patents

通过web聚合的双向多主同步 Download PDF

Info

Publication number
CN101496000A
CN101496000A CNA2007800286971A CN200780028697A CN101496000A CN 101496000 A CN101496000 A CN 101496000A CN A2007800286971 A CNA2007800286971 A CN A2007800286971A CN 200780028697 A CN200780028697 A CN 200780028697A CN 101496000 A CN101496000 A CN 101496000A
Authority
CN
China
Prior art keywords
web
items
web syndication
version
syndication
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
CNA2007800286971A
Other languages
English (en)
Other versions
CN101496000B (zh
Inventor
M·克斯拉维
M·R·克拉克
O·李
L·诺维克
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
Publication of CN101496000A publication Critical patent/CN101496000A/zh
Application granted granted Critical
Publication of CN101496000B publication Critical patent/CN101496000B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • 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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

在发布者和订阅者之间通过真正简单聚合(RSS)格式来同步web聚合项目。发布者通过包括与其相关联的媒体内容来创建web聚合项目。同步元数据被定义为包括与所创建的web聚合项目相关联的第一虚拟时钟值。该第一虚拟时钟值指示该web聚合项目最后更新是何时。从订阅者接收到订阅所发布的web聚合项目的请求。响应于所接收到的请求,所发布的web聚合项目被发送到发布者远程的且可由订阅者访问的位置。向订阅者提供第一虚拟时钟值,以在订阅者修改与该web聚合项目相关联的媒体内容时,供订阅者用来修改该第一时钟值。

Description

通过web聚合的双向多主同步
背景
诸如真正简单聚合(RSS)协议、Atom协议、或RSS协议的其它分支等web聚合格式使得媒体内容能够通过使用非常简单的规范来描述数据以供其它端点使用而从不同的端点传输。在一简单的示例中,假定用户A希望与其他用户共享其摄影收藏。用户A通过RSS频道发布他/她的摄影。用户B可以订阅该RSS频道以从用户A接收摄影。
通常,web聚合项目的用户,或初始发布者或订阅者,可能希望更新源项目并发布经更新的版本。例如,在用户A的情况下,一个或多个摄影可能是错误的或在描述摄影的一部分时存在印刷错误。取代将经更新的摄影作为新项目或“插曲”来提交,发布者可能希望更新现有的聚合项目。同样,订阅者可能希望向现有项目做出贡献并提供更新。
当前,发布者不能够提供更新。同样,即使更新是可能的,订阅者(例如,用户B)也不能够确定订阅者是否已经接收到经更新的聚合项目。另外,当前的RSS协议不能够提供web聚合项目的同步更新,因为当前与web聚合项目相关联的RSS元数据没有考虑这种更新。此外,现有RSS协议不提供统一的或通用的时钟来通知发布者或订阅者特定web聚合项目的现行性程度如何。
概述
本发明的各实施例通过定义关于每一web聚合项目的同步元数据来增强现有惯例和web聚合方案。通过使每一web聚合项目包括同步元数据,用户(发布者和订阅者)可以方便地且高效地发布、更新、订阅、或管理web聚合项目。本发明的各方面还将该同步元数据配置为检测和解决web聚合项目的各版本之间的冲突。另外,本发明的各替换实施例提供关于聚合频道的同步摘要,以提供对与该聚合频道相关联的一个或多个web聚合项目的更新历史。
提供本概述以便以简化的形式介绍将在以下详细描述中进一步描述的一些概念。该概述不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
其它特征的一部分将是显而易见的,一部分将在下文中指出。
附图简述
图1是示出根据本发明的实施例的通过发布者和订阅者之间的web聚合频道更新web聚合项目的图。
图2A到图2C是示出根据本发明的实施例的同步元数据和更新元数据的示例性实现的框图。
图3是示出根据本发明的实施例的用于更新web聚合频道的同步摘要的系统的框图。
图4A到图4C是示出根据本发明的实施例的同步web聚合项目和web聚合频道的流程图。
图5是示出根据本发明的实施例的启用web聚合项目同步的数据结构的框图。
图6和图7是示出在其上可以存储本发明的各方面的示例性计算机可读介质的框图。
相应的参考字符在全部附图中指示相应的部分。
详细描述
首先参考图1,一个框图示出根据本发明的实施例的用于通过发布者和订阅者之间的web聚合频道更新web聚合项目的系统100。在一示例性示例中,系统100示出发布者A操作的第一设备102和订阅者B操作的第二设备104。第一设备102和第二设备104可以是一般的计算设备,如计算机、移动计算设备(例如,个人数字助理(PDA)、蜂窝电话、便携式游戏控制台等)、或其组合。例如,第一设备102可以包括能够处理计算机可执行指令、代码、例程、应用程序、软件等的处理器(112)。第一设备102还包括计算机存储介质116和用户界面(UI)114。
例如,计算机存储介质116包括RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储、磁带盒、磁带、磁盘存储或其它磁存储设备、或可以用于存储所需信息并可由通用计算机(例如,服务器计算机104或客户机设备108)访问的任何其它介质。同样,第一设备102可以包括通信介质,通信介质一般用诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并且包括任何信息传递介质。本领域技术人员熟悉已调制数据信号,其一个或多个特征以将信息编码在该信号中的方式来设置与改变。诸如有线网络或直接线连接等有线介质,以及如声学、RF、红外线及其它无线介质等无线介质都是通信介质的示例。以上的任一种的组合也包括在计算机可读介质116的范围之内。
仍参考图1,发布者A可能拥有可用来提供给订阅者B的媒体内容。例如,发布者A可能拥有要与可能对其感兴趣的其他人共享的文章。如此,发布者A建立聚合频道(例如,RSS源)106以使订阅者B可经由聚合频道106获得聚合项目(例如,文章)110。回过来,订阅者B订阅聚合频道106以接收聚合项目110。在另一示例中,发布者A可以通过同一聚合频道106发布或张贴一个或多个项目(例如,同步项目110-2和同步项目110-3)。一旦聚合项目110经由常见的通信网络108(例如,互联网、内联网等)从第一设备102传输到第二设备104,则订阅者B可以接收发布者A所发布的聚合项目110的一个副本。
例如,发布者A可以操作其中发布者A提供聚合频道以供订阅(例如,RSS源)的网站,其中订阅者B可以直接订阅。在另一示例中,发布者A可以向web聚合聚集网站或服务提供/发布聚合项目110以便诸如订阅者B等其它用户可以订阅聚合频道106。需要理解,虽然使用RSS协议描述了本发明的各实施例的示例,但也可以使用其它web聚合格式或协议而不背离本发明的范围。
现参考图2A到图2C,各框图示出根据本发明的实施例的同步元数据202、更新元数据228和同步摘要230的示例性实现。例如,如图1所示,订阅者B接收发布者A发布或张贴的聚合项目110。然而,假定订阅者B发现发布者A所发布的文章中存在印刷错误并想要更新或修改该文章。当前协议或惯例只准许订阅者B对聚合频道106张贴批注,通知发布者A存在印刷错误。如此,现有协议准许单主和单向系统,其中发布者A是可以修改或更新包括在web聚合项目110中的媒体内容的唯一个人。如果订阅者B一收到文章并将其存储在第二设备104中,他或她就希望修改该文章,则现有web聚合协议不准许将经更新的或经修改的文章同步传输到发布者A。
现参考图2A,其示出在聚合项目的每一个(例如,聚合项目110-1)中建立或定义同步元数据202的实现。本发明的各方面将同步元数据202应用于每一聚合项目110以实现对聚合项目的高效且同步的更新。在该示例中,同步元数据202包括表1中的以下字段及其相应描述:
  字段   类型   描述   必需
  项目ID   串   项目的全局唯一ID。其可以是16字节UUID的表示。
  最后更新者   串   最后更新项目ID所标识的项目的个人的全局唯一ID。其可以是16字节UUID的表示。
  已删除   布尔   表示项目的删除并指定墓碑。   否
表1:同步元数据字段。
在一实施例中,同步元数据202可以使用可扩展标记语言(XML)中的“<history>”(历史)标签在RSS格式下实现。在一实施例中,web聚合项目包括诸如数据226等描述与其相关联的媒体内容的其它数据或元数据。例如,RSS协议下的每一web聚合项目都使用“<item>”(项目)元素,并且同步元数据202被包括在“<history>”(历史)子元素下。每一<history>子元素都至少包括项目ID(ID)字段204、“最后更新者(LASTUPDATER)”字段206、和可任选的“已删除(DELETED)”字段208。在一实施例中,每一web聚合项目110都恰好包括一个与其相关联的<history>子元素。
使用先前的文章作为说明,发布者A可以在项目ID字段204中将该文章标识为“0000000000000001”而“最后更新者”字段206标识发布者A。发布者A可能希望将“已删除”字段208保留为空白,因为其是可任选字段。
在每一<history>子元素中,更新元数据228的一个或多个实例等于对web聚合项目110做出改变或修改的独特端点(例如,发布者A或订阅者B)的数量。每一组更新元数据228都包括“由(BY)”字段210和“序列号(SN)”时间字段212。例如,表2更详细地描述了更新元数据228:
  字段   类型   描述   必需
  由   串   最后更新项目ID所标识的项目的个人的全局唯一ID。必须是16字节UUID的表示。
  序列号   64位或更多整数值   表示由端点“何时”做出改变的整数。(由每次做出持久保存到RSS源的更新或一组改变,则递增“由”字段的时间信号计数)。
表2:更新元数据。
例如,最初,在发布者A首先发布web聚合项目110时,“由”字段210可以包括“发布者A”且“序列号”时间字段212可以包括指示何时记录了更新和改变的时间值。在一实施例中,“序列号”时间字段212可以是来自时钟向量(或还被称为向量时钟)的值,该时钟向量是用来使用事件上的逻辑时钟来对分布式系统中的事件进行排序的数据结构。换言之,在发布者A更新web聚合项目110时,“序列号”时间字段212可以不直接与第一设备102中的时钟相关联(例如,格林尼治标准时间2006年7月12日,周三,下午5:05)。在另一实施例中,“序列号”时间字段212可以是虚拟或逻辑时钟值。还可以使用虚拟或逻辑时钟值的其它表示而不背离本发明的范围。
通过定义同步元数据202和更新元数据228,本发明的各实施例使用户或端点(例如,发布者A和订阅者B)能够通过RSS高效地同步任意数据。另外,在用户修改web聚合项目110中的媒体内容时,本发明的各方面向其呈现同步元数据202和更新元数据228(即,包括“序列号”时间字段212),如图2B示出的用户界面(UI)。在该替换实施例中,对话窗口214示出,web聚合项目一旦被更新(或被首次创建),则可以向用户呈现对话窗口214以更新同步元数据202和更新元数据228。例如,用户可以确认或修改与要发布的web聚合项目110相对应的项目ID字段204。类似地,用户在“最后更新者”字段206中输入标识用户的标识值。用户还可以任选地在“已删除”字段208中输入适当的信息。在更新元数据228中,用户可以适当地输入“由”字段210并递增“序列号”字段212。
在操作中,发布者A通过将媒体内容(例如,文档文章)与web聚合项目110相关联来在第一设备102处创建该web聚合项目110。在创建web聚合项目110时,发布者A定义同步元数据202包括诸如项目ID、“最后更新者”和/或“已删除”等值。发布者A经由web聚合频道(web聚合频道106)发布web聚合项目110以供其他用户(例如,订阅者B)订阅web聚合频道106。
如此,发布者A从订阅者B接收订阅请求并向订阅者B发送所发布的web聚合项目110。在订阅者B修改或更新web聚合项目110时,最初可能为空的同步元数据202和更新元数据228被提供给订阅者B。因为订阅者B和其他订阅者对web聚合项目110的媒体内容的修改做出贡献,所以本发明的各实施例提供使用web聚合频道的双向多主(例如,具有内容修改权限的多用户)通信。同样,无需向web聚合的发布者或订阅者洪泛与web聚合项目相关联的不必要的元数据,本发明的各方面简化该方案并提供最相关的信息来实现所需结果。
尽管上述同步元数据202和更新元数据228中的字段要求特定字符长度或数据类型(例如,16字节或“串”数据类型),但也可以使用或实现其他数据类型、要求或数据表示而不背离本发明的范围。
在一实施例中,各实施例启用web聚合项目的冲突检测和冲突解决。例如,假定在订阅者B从发布者A接收到web聚合项目110之后,订阅者B希望通过修改媒体内容(例如,校正印刷错误)来更新web聚合项目。订阅者B可以着手对媒体内容做出改变并在同步元数据202(例如,“最后更新者”=订阅者B)和更新元数据228(例如,“由”=订阅者B,且“序列号”=50)中输入适当的信息。为将该信息/改变传递回发布者A或也订阅同一web聚合频道106的其他用户,订阅者B可以着手发布经更新的web聚合项目。
现参考图2C,一框图示出web聚合频道106的同步摘要230的示例性实现。在一实施例中,同步摘要230包括关于给定源的所有项目的数据、元数据、和/或其它信息。在另一实施例中,同步摘要230还包括对与web聚合频道106相关联的所有web聚合项目做出的所有更新。在替换实施例中和例外的情况下,同步摘要230可能不包括与可以具有向量信息的项目相关联的数据、元数据、和/或信息。换言之,每一聚合项目将具有列出对每一聚合项目所做出的更新和与其相关联的其它信息的同步摘要。
仅出于说明目的且不作限制,因为聚合频道106只包括一个聚合项目,所以图2C中的同步摘要230与图2A中示出的更新元数据相匹配。使用同步摘要230,用户(包括发布者A和订阅者B)可以审阅属于web聚合频道106的web聚合项目的更新历史。
在一实施例中,订阅者B一旦更新了web聚合项目,则在同步摘要230中自动地传输并更新该经更新的信息。例如,在订阅者B完成对发布者A所发布的文章的改变之后,更新信息(例如,“最后更新者”=订阅者B和“序列号”=50)则与web聚合频道的同步摘要230进行了同步。在一实施例中,首先分析web聚合频道的同步摘要230来确定web聚合项目的更新元数据228中是否已包括相同的摘要内容。如果否,则用更新元数据228中的信息更新同步摘要230。
在替换实施例中,在发布者A从订阅者B接收到经更新的媒体内容时,本发明的各实施例使发布者A能根据更新元数据228和同步元数据202来确定媒体内容的两个版本之间是否存在冲突。在该示例中,在从订阅者B接收到经更新的媒体内容时,发布者A将来自订阅者B的经更新的媒体内容中的“最后更新者”中的值与他或她包括在web聚合项目中的原始媒体内容中的“最后更新者”值进行比较。如果值彼此相等,则发布者A下一步可以比较虚拟时钟值(例如,“序列号”值)来确定哪一版本是在较晚的时间更新的。如果经更新的媒体内容的“序列号”值大于原始媒体内容的“序列号”值,则经更新的媒体内容是该媒体内容的经更新的版本。如果经更新的媒体内容的“序列号”值小于或等于原始媒体内容的“序列号”值,则原始媒体内容比来自订阅者B的版本更新近。
另选地,如果“最后更新者”值不同,则发布者A可以着手评估更新元数据228是否包括与来自经更新的媒体内容的版本中的“最后更新者”信息相匹配的信息(例如,“由”值),或反之亦然。如果包括,则不存在关于哪一版本更新近的冲突。否则,存在关于哪一版本更新近的冲突。
在发布者A创建的文章的示例中,“最后更新者”是不同的,因为订阅者B对原始媒体内容做出了改变。在发布者A检查经更新的媒体内容的更新元数据228时,他或她将看到他或她在订阅者B更新该媒体内容之前创建了该媒体内容。如此,不存在冲突且同步摘要230适当地包括该媒体内容的完整的更新历史,且原始媒体内容由经更新的媒体内容所替换。
在存在冲突的情况下,在一实施例中,经由UI(例如,UI 310)向发布者呈现用于解决冲突的任意选择的列表。在一示例中,在两个端点或用户不知道其他人的改变而对web聚合项目做出独立的改变时,产生冲突。检测该冲突的一个示例可以是检查同步元数据202中的“最后更新者”字段(将在图4C中详细描述)和更新元数据228中的“由”字段。还可采用其它冲突检测机制或方法而不背离本发明的范围。在本发明的另一方面,可以禁用冲突检测机制。在又一替换实施例中,冲突检测机制可以评估与web聚合项目、web聚合频道或两者相关联的其它和附加元数据或信息。还可使用其它冲突检测和/或解决机制和方案而不背离本发明的范围。
一旦检测到冲突,则可以向用户提供选项列表来选择媒体内容的哪一版本应被用作web聚合项目的占优势的版本。例如,选项可以包括:
1.本地版本总是占优势;
2.远程版本总是占优势;
3.如果远程版本的“最后更新者”值等于原始发布者,则该远程版本占优势。否则,本地版本占优势。用户可以配置和定制其它冲突解决方案而不背离本发明的范围。
一旦解决了冲突,则在更新元数据228、同步元数据202和同步摘要230中更新占优势的版本。在替换实施例中,提供可任选的冲突元数据来指示由于冲突解决技术而选择或不选择特定版本。
在另一替换实施例中,如果发布者A希望删除web聚合项目的媒体内容,则发布者A可以任选地在“已删除”字段208中输入信息且同步元数据202也将包括这一删除信息。
现参考图3,一框图示出根据本发明的实施例的用于更新web聚合频道的同步摘要的系统300。在该图示中,一个或多个web聚合用户302订阅web聚合频道(例如RAA源)304或对其做出贡献。例如,web聚合用户302可以既是发布者又是订阅者,因为web聚合用户可以更新web聚合项目110。web聚合项目110可以存储在数据存储306中且在其首次被发布后在服务器计算机312处可用。例如,web聚合项目110可在发布者所维护的网站处可用且处理器308执行用于处理web聚合用户302和web聚合项目110之间的交互的计算机可执行指令。
在另一实施例中,处理器308被配置为管理用于在web聚合用户302和web聚合项目110之间提供交互的用户界面(UI)310。例如,UI 310可以向web聚合用户302呈现或触发对话窗口,如图2B中的窗口214。在另一实施例中,UI 310可以向web聚合用户302投影更新元数据228或同步元数据202的各部分以影响对web聚合项目110的同步更新。还应理解,web聚合用户302的每一个在物理上都可以位于服务器计算机312或其他web聚合用户302远程的位置。
在存在web聚合项目110的各种版本的情况下,同步摘要230适当地包括web聚合项目110的每一版本的更新元数据228和同步元数据202中所指示的信息。例如,假定接收到web聚合项目的第一版本和web聚合项目的第二版本(例如,在第一设备102、第二设备104或服务器计算机312处)。web聚合项目的第一版本指示对该web聚合项目的第一更新而web聚合项目的第二版本指示对该web聚合项目的第二更新。为该web聚合频道定义同步摘要230(如果尚未定义的话),且同步摘要230描述与给定web聚合频道的所有web聚合项目相关联的历史。聚集Web聚合项目110的各版本的每一个的同步元数据202并确定所聚集的同步元数据的次序。同步摘要230下一步用该web聚合项目的各版本的同步元数据的所确定的次序来更新。
在一实施例中,同步摘要230合并web聚合项目的所有版本的同步元数据。在该示例中,假定同步摘要230正在合并web聚合项目110的两个版本的同步元数据202并且假定已经确定这两个版本中的一个胜过另一个(例如,使用上述一种或多种冲突解决技术)。同步摘要230首先将同步摘要230中的“最后更新者”值设置为等于占优势的“最后更新者”。下一步,对于两个版本的更新元数据228中的每一更新条目,同步摘要230包括两个版本中具有共同的“由”属性的每一更新条目并将两个版本的较大的“序列号”值应用于同步摘要230。
例如,如果两个版本在其更新元数据中都包括发布者A处于一个“由”字段中,但占优势的版本具有为250的“序列号”值而非占优势的版本具有为200的“序列号”值。在这种情况下,同步摘要将具有条目:“由”=“发布者A”,“序列号”=“250”。
同样,同步摘要230添加更新元数据228中对两个版本而言不共有的剩余更新条目。
在另一实施例中,服务器计算机312可以包括同步摘要230中所列举的web聚合项目110的各版本的每一个的副本,以便用户可以选择web聚合项目110的各个版本。
现参考图4A到图4C,各流程图示出根据本发明的实施例的同步web聚合项目和web聚合频道的操作。图4A示出用于创建其中嵌入有同步元数据的web聚合项目的流程图。在402处,用户(例如,发布者A)通过相关联或在其中包括媒体内容(例如,文档文章)来准备web聚合项目(例如,RSS源项目)。在404处,用户创建或生成与该web聚合项目相关联的适当的元数据。例如,用户可以输入同步元数据中的字段(例如,<history>子元素中的字段)。在406处,通过检查该web聚合项目的更新元数据来确定该web聚合项目是否是首次创建的。如果该web聚合项目是首次创建的,则在410处,创建更新元数据。在412处,用户在更新元数据中输入适当的信息,如“由”字段和“序列号”值。在414处,用户下一步发布该web聚合项目。
如果确定该web聚合项目不是新创建的项目,则图4B示出用户如何前进至408来进一步执行用于更新与该web聚合项目相关联的元数据的操作。例如,用户(其可以是发布者A或订阅者B)可以更新web聚合项目的现有媒体内容。如此,在416处,确定该web聚合项目是否在被更新。如果不需要更新,则在418处,用户返回到图4A的414。如果该web聚合项目在被更新,则在420处,标识同步元数据。
例如,根据本发明的各实施例的同步元数据至少包括以下:<history>子元素和<update>(更新)元素列表(更多细节请参见以上图2A)。一旦标识了同步元数据,则在422处,用户可以更新该web聚合项目的更新元数据和同步元数据。例如,用户将输入信息,如“由”值、“序列号”值和“最后更新者”值。可任选地,用户可以输入指示是否要删除该web聚合项目的信息。
现参考图4C,一流程图示出根据本发明的实施例的用于根据同步元数据和更新元数据来同步web聚合项目的一个或多个版本的操作。仅出于说明目的且不作限制,本地同步项目446表示web聚合项目的一个版本而远程同步项目则表示web聚合项目的另一版本。在424处,用户(例如,发布者A、订阅者B、或服务器计算机312)接收远程同步项目。在426处,将本地同步项目446的同步元数据与远程同步项目的同步元数据进行比较。在428处,确定远程同步项目的“最后更新者”值是否等于本地同步项目的“最后更新者”值。如果值相等,则确定不存在冲突。下一步是在432处确定哪一版本应被用作占优势的版本。根据一种技术,如果本地同步项目的“序列号”值小于或等于远程同步项目的“序列号”值,则在434处,远程同步项目是占优势的版本。如果远程同步项目的“序列号”值小于或等于本地同步项目的“序列号”值,则在43 6处,本地同步项目应当占优势。
另一方面,如果本地和远程同步项目的“最后更新者”值不同,则在430处,确定本地同步项目的“最后更新者”是否在远程同步项目的更新元数据中。例如,在确定本地同步项目的“最后更新者”是否在远程同步项目的更新元数据中时,将本地同步项目的“序列号”字段(例如,虚拟时钟值)与远程同步项目的“序列号”字段进行比较。在另一示例中,可以使用其它虚拟或逻辑时钟值或表示,以便该虚拟或逻辑时钟值可被用作时钟向量包含检查以确定哪一版本(即,本地同步项目还是远程同步项目)应当占优势。
如果判定是肯定的,则在440处,远程同步项目是占优势的版本。另一方面,如果远程同步项目的“最后更新者”在本地同步项目的更新元数据中,则本地同步项目是占优势的版本。如果在web聚合项目的两个版本的更新元数据中都未发现“最后更新者”值,则存在冲突,且在438处,向用户呈现解决该冲突的各种选项。一旦确定了占优势的版本或解决了冲突,则在444中,更新同步元数据和更新元数据以包括来自占优势的版本的适当信息。
图5示出根据本发明的实施例的启用web聚合项目同步的数据结构500。在一示例中,聚合频道530可以包括一个或多个聚合项目,如聚合项目502。聚合项目502包括媒体内容532和与媒体内容532相关联的相关数据或元数据。数据结构500还包括一组标准元数据504,如以XML标签的形式。数据结构500包括用于同步媒体内容532的各版本的同步元数据506。例如,同步元数据506被表示为XML格式的<history>子元素且包括以下字段:项目ID字段510、最后更新者字段512和可任选的已删除字段514。同步元数据506还包括更新元数据508,其包括一个或多个更新字段516。每一更新字段516都包括以下子字段:“由”和“序列号”。
聚合频道530还包括同步摘要522(和如图2C中示出的标准元数据230),其包括一个或多个更新字段524。每一聚合项目502都包括同步摘要,其包括对聚合项目502所做出的所有更新。更新字段524的每一个还包括以下子字段:“由”和“序列号”。
图6是示出在其上可以存储本发明的各方面的示例性计算机可读介质602的框图。例如,计算机可读介质602包括用于发布包括与其相关联的媒体内容的web聚合项目的发布者组件604。定义组件606定义包括与所发布的web聚合项目相关联的第一虚拟时钟值的同步元数据,该第一虚拟时钟值指示该web聚合最后更新是何时。计算机可读介质602还包括用于从订阅者接收订阅所发布的web聚合项目的请求的接口组件608。通信组件610响应于所接收到的请求将所发布的web聚合项目发送到发布者远程的且可由订阅者访问的位置。接口组件608向订阅者提供包括第一虚拟时钟值的聚合元数据,且同步组件612在订阅者在发布者远程的位置处修改媒体内容时准许订阅者修改(例如,递增)第一虚拟时钟值。
在一实施例中,同步组件612准许订阅者添加新的虚拟时钟值而代替修改。在另一实施例中,冲突组件614可在所发布的web聚合项目被发送到发布者远程的位置时在该位置处检测web聚合项目的版本。在替换实施例中,冲突组件614可以确定所发布的web聚合项目是否引起冲突组件614所检测到的、与在发布者远程的位置处的web聚合项目的版本的冲突。冲突组件614可以向订阅者呈现解决冲突的一个或多个选择或可以经由自动的或预设的首选项来解决所确定的冲突。在另一替换实施例中,版本组件616可以根据包括在同步元数据中的修改历史列表来向订阅者提供一个或多个版本。
图7是示出在其上可以存储本发明的各替换方面的示例性计算机可读介质702的框图。例如,计算机可读介质702包括用于通过web聚合频道来定义关于web聚合订阅的聚合摘要和关于web聚合项目的一个或多个版本的web同步元数据的存储器组件704。聚集组件706在web同步摘要中聚集来自用户的web聚合项目的一个或多个版本的web同步元数据。例如,web聚合项目的一个或多个版本包括用户的一个或多个更新和与这些更新相关联的各个时间段,各时间段可被包括在web聚合元数据中。
计算机可读介质702还包括用于根据所指示的更新和各时间段来确定聚合摘要中的各版本的一个或多个所聚集的web同步元数据的次序的判定组件708。更新组件710根据所确定的次序来更新web聚合摘要以向用户提供该一个或多个所聚集的版本。在替换实施例中,UI组件712以所确定的次序向用户提供该一个或多个所聚集的版本。
除非另有指定,否则此处所示和所述的本发明各实施例的操作的执行或进行的次序不是必需的。即,除非另有指明,否则各操作可按照任何次序执行,且本发明的实施例可以包括比本文所公开的更多或更少的操作。例如,构想了在另一操作之前、同时或之后执行或进行某一操作是在本发明各方面的范围之内的。
本发明的各实施例可以用计算机可执行指令来实现。计算机可执行指令可以被组织为一个或多个计算机可执行组件或模块。本发明的各方面可以用任何数量的这些组件或模块及其任何组织来实现。例如,本发明的各方面不限于在各附图和本文中示出的特定的计算机可执行指令或者特定的组件或模块。本发明的其他实施例可以包括具有比在本文中示出和描述的更多或更少的功能的不同计算机可执行指令或组件。
当介绍本发明或其实施例的各方面的各元素时,冠词“一”、“一个”、“该”和“所述”指的是存在该元素的一个或多个。术语“包括”、“包含”、“具有”旨在是包括性的并且指的是可以有除所列元素之外的其它元素。
在详细描述了本发明的各方面之后,可以清楚,修改和变化是有可能的,而不背离所附权利要求书中定义的本发明各方面的范围。在不背离本发明各方面的范围的情况下,可对以上构造、产品和方法进行各种改变,以上描述中所包含的以及在附图中所示出的所有一切旨在应被解释为说明性并且没有限制意义。

Claims (20)

1.一种在发布者和订阅者之间通过真正简单聚合(RSS)格式来同步web聚合项目(110)的方法,所述方法包括:
由所述发布者发布所述包括与其相关联的媒体内容的web聚合项目(110);
定义包括与所发布的web聚合项目(110)相关联的第一虚拟时钟值的同步元数据(202),所述第一虚拟时钟值指示所述web聚合项目最后更新是何时;
从所述订阅者接收订阅所发布的web聚合项目(110)的请求;
响应于所接收到的请求,将所发布的web聚合项目(110)发送到所述发布者远程的且可由所述订阅者访问的位置;
向所述订阅者提供包括所述第一虚拟时钟值的所述同步元数据(202);以及
在所述订阅者在所述发布者远程的位置处修改所述媒体内容时,准许所述订阅者修改所述第一虚拟时钟值。
2.如权利要求1所述的方法,其特征在于,还包括准许所述订阅者通过插入对应于所述订阅者何时修改与所述web聚合项目(110)相关联的媒体内容的另一虚拟时钟值,将对所述第一虚拟时钟值的修改保存到所述同步元数据(202)。
3.如权利要求1所述的方法,其特征在于,还包括在所发布的web聚合项目(110)被发送到所述发布者远程的位置时,在所述位置处检测所述web聚合项目(110)的版本,所述web聚合项目(110)的版本在所述同步元数据(202)中包括指示所发布的web聚合项目(110)的媒体内容已在与所述第一虚拟时钟值不同的时间被修改的第二虚拟时钟值。
4.如权利要求3所述的方法,其特征在于,还包括确定所发布的web聚合项目是否引起与所述发布者远程的位置处的web聚合项目(110)的版本的冲突,所述冲突指示,根据所述第一虚拟时钟值、所述第二虚拟时钟值和最后更新所发布的web聚合内容的媒体内容的用户,所述web聚合项目(110)的媒体内容是不同的。
5.如权利要求4所述的方法,其特征在于,确定包括将所述第一虚拟时钟值与所述第二虚拟时钟值进行比较。
6.如权利要求5所述的方法,其特征在于,还包括响应于如权利要求5中所述的比较步骤,向所述订阅者提供冲突解决选项的列表。
7.如权利要求3所述的方法,其特征在于,还包括基于所述确定步骤向所述订阅者呈现修改历史列表。
8.如权利要求7所述的方法,其特征在于,还包括根据所述修改历史列表向所述订阅者提供一个或多个版本。
9.如权利要求1所述的方法,其特征在于,一个或多个计算机可读介质具有用于执行如权利要求1所述的方法的计算机可执行指令。
10.一种用于通过真正简单聚合(RSS)格式来更新web聚合频道(106)的方法,所述方法包括:
接收web聚合项目(110)的第一版本和所述web聚合项目(110)的第二版本,所述web聚合项目(110)的第一版本指示对所述web聚合项目(110)的第一更新且所述web聚合项目(110)的第二版本指示对所述web聚合项目(110)的第二更新;
定义关于所述web聚合频道的聚合摘要(230),所述定义的聚合摘要(230)描述与所述web聚合项目(110)相关联的信息;
在所述聚合摘要(230)中聚集与所述web聚合项目(110)的第一版本和第二版本相关联的web同步元数据(202);
根据所指示的更新来确定所述聚合摘要(230)中的各版本的所聚集的web同步元数据(202)的次序;以及
根据所确定的次序来更新所述聚合摘要(230),以向用户提供所述一个或多个所聚集的版本。
11.如权利要求10所述的方法,其特征在于,确定包括分析与所述web聚合项目(110)的第一版本和第二版本相关联的同步元数据(202),所述同步元数据(202)包括对应于所述web聚合项目(110)的各版本的虚拟时钟值。
12.如权利要求11所述的方法,其特征在于,分析包括比较所述web聚合项目(110)的各版本的每一个的虚拟时钟值的每一个来确定所述聚合摘要(230)中所述一个或多个所聚集的版本的次序。
13.如权利要求10所述的方法,其特征在于,还包括检测所述web聚合项目(110)的第一版本和第二版本之间的冲突,所述冲突指示,根据所述第一版本、所述第二版本、所述第一虚拟时钟值、所述第二虚拟时钟值和最后更新所述web聚合项目(110)的用户,所述web聚合项目(110)的各版本是不同的。
14.如权利要求13所述的方法,其特征在于,更新包括如果不存在冲突,则在所述web聚合摘要(230)中将所述第一版本的web同步元数据(202)与所述第二版本的同步元数据(202)合并。
15.如权利要求13所述的方法,其特征在于,还包括向所述用户提供所述用户执行的冲突解决方案的结果。
16.一种用于同步基于web聚合订阅来发送的web聚合项目(110)的系统,所述系统包括:
用于存储关于所述web聚合订阅的web聚合摘要和关于所述web聚合项目(110)的一个或多个版本的web同步元数据(202)的数据存储(306);
被配置成执行用于以下步骤的计算机可执行指令的处理器(308):
定义所述web聚合订阅的聚合摘要(230)以包括与所述web聚合项目(110)相关联的信息;
在所述web聚合摘要(230)中从用户聚集所述web聚合项目(110)的一个或多个版本的web同步元数据(202),所述一个或多个版本指示所述用户在各时间段的一个或多个更新;
根据所指示的更新和所述各个时间段来确定所述聚合摘要(230)中的各版本的一个或多个所聚集的web同步元数据(202)的次序;以及
根据所确定的次序来更新所述web聚合摘要(230),以向用户提供所述一个或多个所聚集的版本。
17.如权利要求16所述的系统,其特征在于,还包括用于以所确定的次序向所述用户提供所述一个或多个所聚集的版本的用户界面(UI)(310)。
18.如权利要求16所述的系统,其特征在于,所述web聚合项目(110)的各版本的每一个都包括描述所述用户对所述web聚合项目(110)的更新历史的web同步元数据(202)。
19.如权利要求16所述的系统,其特征在于,所述web同步元数据(202)包括标识最后更新所述web聚合项目(110)的用户的元数据和描述所述最后更新被执行的时间段的元数据。
20.如权利要求16所述的系统,其特征在于,所述处理器(308)被配置为在所述web聚合摘要(230)中合并所述web聚合项目(110)的一个或多个版本的web同步元数据(202)。
CN2007800286971A 2006-07-31 2007-07-26 通过web聚合的双向多主同步 Expired - Fee Related CN101496000B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/461,351 2006-07-31
US11/461,351 US7653640B2 (en) 2006-07-31 2006-07-31 Two-way and multi-master synchronization over web syndications
PCT/US2007/017006 WO2008016560A1 (en) 2006-07-31 2007-07-26 Two-way and multi-master synchronization over web syndications

Publications (2)

Publication Number Publication Date
CN101496000A true CN101496000A (zh) 2009-07-29
CN101496000B CN101496000B (zh) 2011-05-25

Family

ID=38997471

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007800286971A Expired - Fee Related CN101496000B (zh) 2006-07-31 2007-07-26 通过web聚合的双向多主同步

Country Status (7)

Country Link
US (1) US7653640B2 (zh)
EP (1) EP2047382B1 (zh)
JP (1) JP5007339B2 (zh)
KR (1) KR101485613B1 (zh)
CN (1) CN101496000B (zh)
TW (1) TWI363996B (zh)
WO (1) WO2008016560A1 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101977217A (zh) * 2010-10-15 2011-02-16 中兴通讯股份有限公司 Widget更新方法、系统、Widget客户端及Widget服务器
WO2011143853A1 (zh) * 2010-05-21 2011-11-24 中兴通讯股份有限公司 提高简单资讯聚合业务同步效率的方法、装置和系统
CN102693270A (zh) * 2011-03-02 2012-09-26 微软公司 用于内容管理和组件测试的可发布元数据
CN103220336A (zh) * 2013-03-21 2013-07-24 中国科学院计算技术研究所 一种文件同步中向量时钟的实现方法及系统
CN113778329A (zh) * 2021-06-30 2021-12-10 济南浪潮数据技术有限公司 一种数据聚合方法、装置、设备及计算机可读存储介质

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8370423B2 (en) * 2006-06-16 2013-02-05 Microsoft Corporation Data synchronization and sharing relationships
JP2007334723A (ja) * 2006-06-16 2007-12-27 Yokogawa Electric Corp 情報配信システム
JP5106943B2 (ja) * 2006-08-21 2012-12-26 株式会社リコー 電子装置、システムおよび制御方法
US8453066B2 (en) 2006-11-06 2013-05-28 Microsoft Corporation Clipboard augmentation with references
US8751442B2 (en) 2007-02-12 2014-06-10 Microsoft Corporation Synchronization associated duplicate data resolution
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
US20080288983A1 (en) 2007-05-18 2008-11-20 Johnson Bradley G System and Method for Providing Sequential Video and Interactive Content
US20090049380A1 (en) * 2007-08-16 2009-02-19 Joshua Allen Rehling Page Modules and States
US8302013B2 (en) * 2007-08-16 2012-10-30 Yahoo! Inc. Personalized page modules
US9401957B2 (en) * 2007-09-14 2016-07-26 International Business Machines Corporation System and method for synchronization between servers
US8386387B2 (en) * 2007-12-21 2013-02-26 Utrom Processing Co. L.L.C. System and method for tracking syndication of internet content
US8185495B2 (en) * 2008-02-01 2012-05-22 Microsoft Corporation Representation of qualitative object changes in a knowledge based framework for a multi-master synchronization environment
US20090199242A1 (en) * 2008-02-05 2009-08-06 Johnson Bradley G System and Method for Distributing Video Content via a Packet Based Network
US8296671B2 (en) 2008-05-01 2012-10-23 Microsoft Corporation Enabling access to rich data by intercepting paste operations
US20090282100A1 (en) * 2008-05-12 2009-11-12 Kim Sang J Method for syndicating blogs and communities across the web
US8265990B2 (en) * 2008-05-15 2012-09-11 Utrom Processing Co. L.L.C. Method and system for selecting and delivering media content via the internet
US20100131940A1 (en) * 2008-11-26 2010-05-27 Microsoft Corporation Cloud based source code version control
US8341099B2 (en) * 2010-03-12 2012-12-25 Microsoft Corporation Semantics update and adaptive interfaces in connection with information as a service
CN101931624B (zh) * 2010-08-06 2014-09-10 中兴通讯股份有限公司 一种rss订阅方法、rss移动终端及订阅服务器
US9247272B2 (en) * 2011-10-05 2016-01-26 Timothy Murphy Network of collaborative online shows
CN103634410B (zh) * 2013-12-12 2017-01-11 北京奇安信科技有限公司 基于内容分发网络cdn的数据同步方法,客户端及服务器
US9953033B2 (en) * 2014-05-29 2018-04-24 Apple Inc. Wireless content synchronization
US10051020B2 (en) * 2015-06-26 2018-08-14 Microsoft Technology Licensing, Llc Real-time distributed coauthoring via vector clock translations

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6098078A (en) * 1995-12-29 2000-08-01 Lucent Technologies Inc. Maintaining consistency of database replicas
US6023708A (en) * 1997-05-29 2000-02-08 Visto Corporation System and method for using a global translator to synchronize workspace elements across a network
WO1999027476A2 (en) 1997-11-26 1999-06-03 The Taylor Trust As A system and method for implementing an auction on a computer network
US6324587B1 (en) * 1997-12-23 2001-11-27 Microsoft Corporation Method, computer program product, and data structure for publishing a data object over a store and forward transport
US6493720B1 (en) * 1998-01-26 2002-12-10 International Business Machines Corporation Method and system for synchronization of metadata in an information catalog
US6185608B1 (en) * 1998-06-12 2001-02-06 International Business Machines Corporation Caching dynamic web pages
US7024430B1 (en) * 1998-12-08 2006-04-04 Starfish Software, Inc. Method and system for implementing a filter in a data synchronization system
US20010053996A1 (en) * 2000-01-06 2001-12-20 Atkinson Paul D. System and method for distributing and controlling the output of media in public spaces
US20010027472A1 (en) * 2000-03-27 2001-10-04 Feng Guan Dynamic information sharing based on unique individual ID
US7013316B1 (en) * 2000-07-13 2006-03-14 Microsoft Corporation System and method for synchronizing multiple database files
US6917950B2 (en) * 2001-01-10 2005-07-12 Intel Corporation Modifying a shared resource
US6643670B2 (en) * 2001-02-27 2003-11-04 Microsoft Corporation Efficient replication of an expanded partial database
JP2002259676A (ja) * 2001-03-06 2002-09-13 Hitachi Ltd 文書管理・ediシステム連携装置、文書管理・ediシステム連携方法、情報記録媒体及び文書処理プログラム
TW579463B (en) * 2001-06-30 2004-03-11 Ibm System and method for a caching mechanism for a central synchronization server
US20040153473A1 (en) * 2002-11-21 2004-08-05 Norman Hutchinson Method and system for synchronizing data in peer to peer networking environments
US20040193952A1 (en) * 2003-03-27 2004-09-30 Charumathy Narayanan Consistency unit replication in application-defined systems
US7251669B1 (en) * 2003-03-31 2007-07-31 Microsoft Corporation System and method for database versioning
WO2004114130A2 (en) * 2003-06-23 2004-12-29 Red Bend Ltd. Method and system for updating versions of content stored in a storage device
US7177881B2 (en) * 2003-06-23 2007-02-13 Sony Corporation Network media channels
US8200775B2 (en) * 2005-02-01 2012-06-12 Newsilike Media Group, Inc Enhanced syndication
US8825502B2 (en) 2003-09-30 2014-09-02 Epic Systems Corporation System and method for providing patient record synchronization in a healthcare setting
GB2407176A (en) * 2003-10-14 2005-04-20 Boc Group Plc Remote monitoring of equipment
CN101228521B (zh) * 2004-03-15 2013-02-13 雅虎公司 用于将用户门户页面订阅到聚合馈信的系统和方法
US9811600B2 (en) * 2004-03-26 2017-11-07 Paradigm Shifting Solutions Exchange of newly-added information over the internet
JP2005284334A (ja) * 2004-03-26 2005-10-13 Oki Electric Ind Co Ltd Webページ更新通知方法及び装置
JP2006059032A (ja) * 2004-08-18 2006-03-02 Business Online:Kk 商品情報の提供装置、提供方法、提供プログラム及びそのプログラムを記録した記録媒体
US20060064470A1 (en) * 2004-09-23 2006-03-23 Sargent Antony J Method, system, and computer program product for improved synchronization efficiency for mobile devices, including database hashing and caching of web access errors
JP2006099341A (ja) * 2004-09-29 2006-04-13 Bank Of Tokyo-Mitsubishi Ufj Ltd 更新履歴生成装置及びプログラム
US7530077B2 (en) * 2004-10-07 2009-05-05 International Business Machines Corporation Dynamic update of changing data in user application via mapping to broker topic
KR20050012881A (ko) 2005-01-13 2005-02-02 (주)씽크비즈 웹 브라우저 기반 알에스에스/에이티오엠 규격 문서실시간 구독 시스템 및 그 방법
US20060282822A1 (en) * 2005-04-06 2006-12-14 Guoqing Weng System and method for processing RSS data using rules and software agents
KR100573037B1 (ko) 2005-10-20 2006-05-03 (주)인트로모바일 알에스에스 기반의 컨텐츠 추출 서버와 방법 및 그 서버관리 장치, 이를 이용하는 이동통신 단말장치의 대기화면 제공 시스템
KR20060069369A (ko) * 2006-02-16 2006-06-21 (주)오픈데이타컨설팅 알에스에스를 이용한 다자간 통신시스템 및 그 방법
US20070219908A1 (en) * 2006-03-02 2007-09-20 Yahoo! Inc. Providing syndicated media to authorized users

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011143853A1 (zh) * 2010-05-21 2011-11-24 中兴通讯股份有限公司 提高简单资讯聚合业务同步效率的方法、装置和系统
CN101977217A (zh) * 2010-10-15 2011-02-16 中兴通讯股份有限公司 Widget更新方法、系统、Widget客户端及Widget服务器
CN102693270A (zh) * 2011-03-02 2012-09-26 微软公司 用于内容管理和组件测试的可发布元数据
CN102693270B (zh) * 2011-03-02 2017-08-15 微软技术许可有限责任公司 用于内容管理和组件测试的可发布元数据
CN103220336A (zh) * 2013-03-21 2013-07-24 中国科学院计算技术研究所 一种文件同步中向量时钟的实现方法及系统
CN103220336B (zh) * 2013-03-21 2016-01-27 中国科学院计算技术研究所 一种文件同步中向量时钟的实现方法及系统
CN113778329A (zh) * 2021-06-30 2021-12-10 济南浪潮数据技术有限公司 一种数据聚合方法、装置、设备及计算机可读存储介质
CN113778329B (zh) * 2021-06-30 2023-12-22 济南浪潮数据技术有限公司 一种数据聚合方法、装置、设备及计算机可读存储介质

Also Published As

Publication number Publication date
TWI363996B (en) 2012-05-11
CN101496000B (zh) 2011-05-25
JP5007339B2 (ja) 2012-08-22
EP2047382A4 (en) 2011-04-20
KR20090034898A (ko) 2009-04-08
WO2008016560A1 (en) 2008-02-07
JP2009545815A (ja) 2009-12-24
EP2047382B1 (en) 2016-04-27
US20080126364A1 (en) 2008-05-29
TW200813870A (en) 2008-03-16
US7653640B2 (en) 2010-01-26
KR101485613B1 (ko) 2015-01-23
EP2047382A1 (en) 2009-04-15

Similar Documents

Publication Publication Date Title
CN101496000B (zh) 通过web聚合的双向多主同步
US11921798B2 (en) Generating a contextual search stream
CN102754411B (zh) 使用客户端-服务器网桥管理对象
CN104321743B (zh) 用于开发在通信网络上查询内容和服务的应用程序的方法和系统
US20120221940A1 (en) Guided attachment of policies in a service registry environment
CN101689180B (zh) 用于确定目录方案中改变的系统和方法
CN102722439B (zh) 一种提高flash组件运行稳定性的方法、装置及系统
US20090234880A1 (en) Remote storage and management of binary object data
CN102142014B (zh) 导入和导出位于元数据注册系统中的元数据的系统和方法
CN101978369A (zh) 计算环境表示
CN102187314A (zh) 可视地建模、调试和执行面向资源的程序的交互式设计环境
US20170228356A1 (en) System Generator Module for Electronic Document and Electronic File
CN105094868A (zh) 一种软件升级方法、服务器及终端
CN101802808A (zh) 从脚本和其他编程环境访问设备主存的服务
CN102023998B (zh) 用于处理网页以便在手持设备上显示的方法和装置
US20220358433A1 (en) Methods, systems, and devices for producing video projects
CN112612449A (zh) 一种网页页面的同步方法及装置、设备、存储介质
US20080177707A1 (en) Information processing apparatus, information processing method and information processing program
US9947039B2 (en) Order item recognition system
US20060074696A1 (en) Information processing device, information processing method, information processing program and medium
Bradley The XML schema companion
CN107807927B (zh) 基于下发规则的页面解析方法、装置、客户端设备及系统
Brunette Open Data Kit 2: building mobile application frameworks for disconnected data management
Alsaig Context-Aware Service Registry: Modeling and Implementation
US20100205144A1 (en) Creating searchable revisions of a resource in a repository

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: 20150504

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

Effective date of registration: 20150504

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: 20110525

Termination date: 20170726

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