访问不同类型后端数据存储器的系统和方法技术方案

技术编号:2921126 阅读:221 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一个框架,它允许同步引擎在移动设备和后端数据存储器之间同步数据而独立于后端数据存储器的体系结构和数据格式。该框架引入内容适配器,它们访问来自后端数据系统的同步数据。这些适配器将数据转换成独立于后端数据存储器的表现形式,这种表现形式能由需要以通用的方式访问不同后端的所有应用或模块使用。用于检测和解决冲突的通用同步引擎是这类模块的一个例子。能使用内容适配器的其他应用是通知框架或门户以及所有其他聚集数据的应用。(*该技术在2023年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术涉及不同客户机之间数据交换和同步的方法和系统,特别是涉及使用与不同类型后端数据存储器链接的中央同步服务器对客户机之间数据的同步。同步可定义为保持不同客户机之间数据的一致性,例如笔记本日历和个人数字助理(PDA)日历,并在这些客户机将数据存入具有不同标识符的不同数据格式中。同步数据还能包含完全的计算机程序或这些程序的一些部分。经常是使用中央同步服务器,数据能通过它在不同的客户机之间进行交换(附图说明图1)。中央同步服务器或者能本机存储全部数据(即当使用专有数据格式时),它通常由具有高负载的通信公司(carrier)(如Yahoo)使用,或者能直接访问后端数据存储器(store),如DB2、Domino或Exchange(见图2)。后端数据存储器有它们自己的协议和机制用于访问和存储信息。尽管关系数据库使用ODBC作为公共接口,例如存储个人信息管理(PIM)的数据库,但数据通常被以专有方式访问并依赖于内容的很特定的数据结构。这造成基于万维网(Web)服务器的应用依赖于特定的数据库和被访问内容的特定类型。当对于现有的软件采用新的数据库和新的内容类型时便需要付出很大的努力。例如,在下列情况中下,要开发一个涉及很多不同数据库制造商和多种多媒体内容的大规模同步解决方案是相当困难的同步引擎(它包括同步多个客户机设备的逻辑)需要适应于每个被支持内容类型和每个被连接的数据库。事实上,今天的同步引擎强烈依赖于含有这些数据的后端存储器。为实现复杂的同步引擎而进行的大量投资只是使一个或几个后端系统受益(图3)。如果一个通知系统要通过发送那些被收集和存储在不同后端系统中的数据来通知用户的话,也会出现同样的问题。同样,从不同系统聚集数据的门户需要不依赖于系统的方法去访问信息。美国专利5,974,238描述了一种装置,用于实现在手持计算机和主计算机中存储的数据之间的动态同步,每个计算机有多个数据集,包括至少一个共同数据集,每个计算机有该共同数据集的副本。该手持计算机有处理器、通信端口和数据同步引擎。该数据同步引擎有一个伪高速缓存以及与该伪高速缓存连接的一个或多个标记(tag)。每当数据被写入主存储器和/或当相关联的伪高速缓存标记变为无效时,数据便被同步。通过严格地遵守一组协议实现了数据的一致性,因为系统总是知道谁拥有该数据,谁有该数据的副本和谁已修改了该数据。数据同步引擎消除各副本之间的任何差别并允许在主计算机中和在手持计算机中存储共同数据集的相同副本。这一现有技术专利没有针对使用后端数据存储器的同步体系结构。所以,上述与后端数据存储器有关的问题或者没有被上述专利应对或者没有被上述专利解决。所以,本专利技术的目的是提供一种新的方法和系统,用于在使用与不同类后端数据存储器链接的中央同步服务器的体系结构中数据的交换和同步,然而又避免现有技术解决方案中的缺点。这一目的由独立权利要求的特征来实现。在附属权利要求中列出进一步的优选实施例。本专利技术公开说明了一个框架,它允许同步引擎独立于后端数据存储器的体系结构和数据格式进行移动设备和后端数据存储器之间的数据同步。该框架引入内容适配器,它们从后端数据存储器中访问同步数据。这些适配器将数据转换成独立于后端数据存储器的表现形式,需要以通用方式访问不同后端的所有应用或模块都能使用这种表现形式。用于检测和解决冲突的通用同步引擎是这类模块的一个例子。能使用内容适配器的其他应用是“通知框架”或门户以及所有其他聚集数据的应用。针对任何后端数据存储器的问题由内容适配器的依赖后端的部分处置,这部分能容易地由第三方提供并插入该框架。下面将参考附图更详细地描述本专利技术,其中图1显示本专利技术可基于的简化的同步体系结构,图2显示直接访问后端存储器的现有技术同步体系结构,图3显示具有不同后端数据存储器的现有技术同步体系结构,图4显示可由本专利技术优选实现的SyncML通信协议,图5显示本专利技术的内容适配器框架(CAF)的基本体系结构,图6显示CAF的一个优选实现,图7显示CAF接口,图8显示客户机、同步引擎、CAF以及具有会话认证的后端系统之间的通信流,图9显示如由CAF使用的继承模型,以及图10显示CAF特有过程流。使用中央同步服务器进行不同客户机之间的同步基于一种同步协议,它通常由下列步骤构成预同步为准备实际同步,在发生这种同步之前必须采取一些行动。这些行动归属于以下各组认证、授权以及确定客户机能力。“认证”保证服务器是它自称的那个服务器,客户机是它自称的那个客户机。“授权”检验该客户机是否被允许进行所请求的行动(例如删除、更新或只创建新条目)。最后,服务器确定设备能力(如最大缓存区大小)以优化到客户机的数据流。同步这是进行同步数据交换的部分。在两个同步伙伴之间,数据条目的所有局部ID被映射为两个伙伴都知道的全局ID。所以,每个伙伴有一个映射表,将局部ID映射为全局ID。然后,只有被更新的、新的或被删除的条目被交换。如果两个伙伴更新同一数据条目,则将会有一个冲突产生。能以不同的方式解决这一更新冲突试图合并这些更新,复制条目,让一个条目战胜另一个,或者只是什么也不做并报告该冲突,从而用户能解决它。后同步在后同步阶段进行所有的清理任务,如更新映射表,报告未解决的冲突等。一种广泛使用的同步协议是SyncML。SyncML提供基于XML的传输协议,用于不依赖该传输协议的同步。每个同步消息是一个XML文档。一个典型的SyncML系统示于图4,其中应用B(例如个人数字助理)在通过它的客户机同步引擎向SyncML框架(framework)发送同步数据。SyncML框架将API调用(如更新、创建)和数据翻译成有效的SyncML文档并将其发送给服务器。在服务器一侧,SyncML框架接收该文档,对其进行解析,然后将命令和数据发送给服务器同步引擎,然后该引擎与应用A(例如一个笔记本的Lotus Notes日历)对话。图5显示本专利技术的内容适配器框架(CAF)的基本体系结构,该内容适配器框架用于移动客户机和不同类型后端数据存储器之间的通信体系结构中。不同的移动客户机2、4、6经由无线或有线网关8和通过万维网服务器10访问同步引擎12,而同步引擎12经由CAF 20与不同类型的后端数据存储器24、26通话。CAF 20提供通过单一后端中性(neutral)接口(CAF接口22)访问不同后端数据存储器24、26的数据并容易地添加新的后端数据存储器的基础设施(infrastructure)。CAF 20由至少一个单一CAF接口22和一个或多个内容适配器28、30构成。CAF接口22代表同步服务器10访问后端数据的单一接口,所以使数据检索与同步服务器分离。通过CAF接口22,同步引擎12能独立地从特定后端数据存储器24、26中访问内容。为了CAF接口22和同步服务器10之间的数据交换,优选地使用“数据对象”作为数据格式。内容适配器基本上能提供所有数据存储器所特有的依赖关系。在本专利技术的优选实施例中,每个内容适配器28、30包括一个抽象的独立于后端的部分(Back End independent part)和一个依赖后端的部分(Back End dependent part)。依赖后端的部分含有所有数据存储器特有的依赖性。它实现对同步的后端数本文档来自技高网...

【技术保护点】
一种使用中央同步服务器(10)在不同客户机(2、4、6)之间进行数据交换的系统,该中央同步服务器具有与所述客户机(2、4、6)的连接和与后端数据存储器(24、26)的连接,其中所述客户机具有用于创建被同步数据的程序和利用所述中央同步服务器(10)进行同步的同步引擎(12),其中所述系统的特征在于进一步包含:与所述同步引擎(12)接口的单一后端中性接口(CAF接口;22),以及至少一个包含依赖后端的部分的部件(内容适配器;28、30),该依赖后端的部分具有与所述 单一后端中性接口(22)及所述后端数据存储器(24、26)接口的接口。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:乌维汉斯曼斯特凡海波劳萨尔梅尔克托马斯斯托伯
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1