CN1764915B - 通过比较散列值同步数据库的设备及方法 - Google Patents

通过比较散列值同步数据库的设备及方法 Download PDF

Info

Publication number
CN1764915B
CN1764915B CN03826272XA CN03826272A CN1764915B CN 1764915 B CN1764915 B CN 1764915B CN 03826272X A CN03826272X A CN 03826272XA CN 03826272 A CN03826272 A CN 03826272A CN 1764915 B CN1764915 B CN 1764915B
Authority
CN
China
Prior art keywords
copy
hash information
database
network
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.)
Expired - Lifetime
Application number
CN03826272XA
Other languages
English (en)
Other versions
CN1764915A (zh
Inventor
巴里·林克特
萨利姆·H·奥马尔
詹姆士·戈弗雷
戴维·P·亚奇
朱杰
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.)
BlackBerry Ltd
Original Assignee
Research in Motion Ltd
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 Research in Motion Ltd filed Critical Research in Motion Ltd
Publication of CN1764915A publication Critical patent/CN1764915A/zh
Application granted granted Critical
Publication of CN1764915B publication Critical patent/CN1764915B/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

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
    • 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/975Portable database architecture

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

一种用于通过在无线电通信系统的空中接口上执行的通信使数据库彼此相匹配的同步处理及关联设备。根据数据库信息的移动和网络拷贝,在移动节点和网络部分处执行散列函数。对根据其形成的散列信息的比较提供了对数据库是否彼此相匹配的指示。如果确定数据库不匹配,则对数据进行比较,并响应这样的额外比较,使数据彼此匹配。

Description

通过比较散列值同步数据库的设备及方法
技术领域
本发明大体上涉及一种通过其配置并保持在移动节点处具体实现的数据库与在通信网络处具体实现的相应数据库相匹配的方式。更具体地,本发明涉及一种设备及相关方法,通过其确定数据库是否彼此匹配,并且如果确定数据库不匹配,则使数据库匹配。
以需要减少执行确定的信道容量的大小的方式来实现通过空中接口在移动节点和网络之间的通信,如果需要,使数据库彼此匹配。首先使用散列信息,首要地,确定数据库是否彼此匹配,由此需要在空中接口上的最小带宽。以及,当数据库不匹配时,使用冲突解决方案来使数据库彼此匹配。
背景技术
数据通信服务是现代社会的地方性领域。对于其实际实现,许多变化的功能和服务需要数据通信得更快和更精确。这样的功能和服务有时需要在空间分离的通信站点之间的相当大距离上进行数据通信。
最简单地,通信系统包括形成发送站点的第一通信站点,在通信信道上向形成接收站点的第二通信站点发送数据。按照点对点或点对多点通信服务,许多不同类型的通信服务在许多通信站点集之间有规律地实现。已经开发并实现了许多不同类型的通信系统。随着技术的进步,正在研发提供了扩展通信服务和容量的另外的通信系统。无线电通信系统是典型的通信系统。在无线电通信系统中,形成在发送和接收站点之间的通信信道包括在形成在通信站点之间的无线电链路上定义的无线电通信信道。由于在无线电链路上而不是有线线路上定义通信信道,避免了另外需要使通信站点相互连接的有线线路连接。
伴随着技术的进步的是技术的合并。即,之前完全不同的技术领域正结合在一起。一个技术的进步也逐渐对其它技术领域有益。
例如,数据处理也是现代社会的地方性领域。也已经实现了计算机和数据处理相关技术的进步,且数据处理系统可用于允许存储并处理大量数据。
有规律地使用通信系统,通过其发送要存储或处理的数据。用于数据处理的技术逐渐在通信系统操作期间得到使用。以及,在通信系统中使用的技术逐渐用于数据处理系统。可以将通信设备和允许使用这样的通信设备的系统来执行各种数据处理操作和通信服务。在未来,另外的应用和服务将很可能变得可用。
便携式数据存储和处理设备(有时称为个人数字助理(PDA))是典型的数据处理设备,得到广泛使用。将数据库存储在这样的设备处,且设备的用户可以选择性地检索存储在其中的数据。该数据形成一系列数据记录,每个数据记录包含一个或多个字段。在设备操作期间,对数据进行检索并显示,或者以所需方式使其对用户可用。当数据被包含在设备的一个或多个数据库处时,也可选择性地执行分类以及其它处理操作。设备的用户还可以选择性地改变数据。
提供了备份存储在便携式设备处的数据的方式。通过备份设备,如果在便携式设备处数据丢失发生,则可以恢复数据。各种个人数字助理以及其它数据存储和处理设备提供了在个人计算机或其它为计算站点上、通过形成在其之间的固定连接备份数据的方式。一旦将数据存储在个人计算机或其它计算站点处,就更新(即,改变)在其中存储的数据库的存储数据。
当将数据存储在分离的位置处时,即,便携式设备处以及计算机备份设备处,在存储在这些设备中的任一处的数据库中所存储的数据的任何部分的变化都使得相应数据库不再完全是彼此的拷贝。需要随后对数据库进行同步,以使数据库彼此匹配。例如,在随后的其中对相应数据库的内容相互进行比较的备份操作期间,执行同步操作。以及,响应比较,修改所查找到的不匹配的数据部分,以使数据库彼此匹配。
其它便携设备通过无线电空中接口为计算站点提供存储数据的备份。然而,由于通常与无线电通信系统相关联的带宽限制,通过无线电空中接口执行的备份和同步操作存在许多问题。能够备份并同步在相应数据库处存储的数据的传统方式按照一般规则是禁止带宽消耗的。
如果能够提供通过其更好地提供动态可变数据库的数据的备份和同步的方式,则将有利于使用通过其备份并保持数据库彼此匹配的无线电通信系统。
根据与数据库的数据内容的同步有关的此背景信息,已经实现了本发明的显著改进。
发明内容
因此,本发明有利地提供了一种设备及相关方法,通过其配置并保持在移动节点处具体实现的数据库与在通信网络处具体实现的相应数据库相匹配。
通过本发明实施例的操作,提供了一种方式,通过其能确定数据库是否彼此相匹配,如果确定数据库不匹配,则使数据库匹配。
通过在移动节点和网络之间扩展的空中接口来实现通信。以需要减少执行确定处理和使数据库彼此相匹配的信道容量的大小的方式来实现该通信
首先,响应对表示在相应数据库中所包含的值的散列信息的比较,确定数据库是否彼此相匹配。根据分别在移动节点和网络处具体实现的相应数据库,在移动节点处和网络处形成各自的散列信息。通过空中接口,将在移动节点处形成的散列信息传送到网络部分。以及,当传递到网络部分时,将在移动节点处形成的散列信息与在网络部分处形成的相应散列信息进行比较。使在空中接口上的对散列信息的比较仅需要最小带宽消耗。
如果根据对各自散列信息的比较确定数据库不匹配,则根据额外散列信息进行额外确定。如果额外确定指示数据库不匹配,则空中接口上对数据库的所选部分进行通信,并将该数据库部分互相进行比较。响应这样的比较,并根据冲突解决方案,修改数据库的冲突部分,从而使数据库彼此相匹配。
在本发明的一个方案中,当认为相应数据库处于不匹配状态时(即,认为数据库不同步,或彼此不匹配)触发同步操作。通过网络部分或移动节点触发同步进程。例如,如果网络部分丢失改变历史列表,则触发同步进程,所述改变历史列表将根据同步进程的性能、以其它方式另外使用。例如,当字段映射列表改变时,移动节点触发同步进程。此外,当根据移动节点处的数据库执行恢复操作时,移动节点触发同步处理。
当触发同步处理时,创建表示认为是不匹配的数据库的散列信息,并将其通信给网络部分。
在本发明的另一方案中,移动节点包括形成散列信息产生器的功能实体。选择性地操作散列信息产生器,以根据第一技术以及根据至少第二技术来创建散列信息。第一技术是计算上强度较小的,并且与根据第二技术创建的散列信息相比,根据第一技术形成需要空中接口上通信散列信息的通信信道容量更小的散列信息。首先,根据第一技术创建散列信息。随后,如果响应对根据第一技术创建的散列信息的分析,初步确定在移动节点和网络部分处的数据库不匹配,则根据第二技术创建散列信息。以及,通过移动节点将额外散列信息传送到网络部分,以便进行额外分析。
在本发明的另一方案中,移动节点还包括内容检索器,选择性地对其进行操作以对在移动节点处具体实现的数据库的至少所选部分进行检索。根据对数据库表示为不匹配的额外散列信息的分析,响应确定,内容检索器检索数据库内容的所选部分。以及,当检索到时,通过空中接口将数据传送到网络,以便进行数据库是彼此匹配还是不匹配的最终确定。
在本发明的另一方案中,在网络部分处设置了功能元件,以形成同步服务器或其它设备,以便易于使移动节点和网络部分的数据库同步。连接比较器,以接收移动节点传送到网络部分的散列信息的指示。相应地,比较器使用本地产生的散列信息来执行比较。如果比较指示数据库彼此不匹配,则比较器产生额外信息请求。在其中根据第一技术和至少第二技术形成散列信息的实现中,额外信息请求取决于已经进行比较的散列信息的类型。如果对第一类型的散列信息进行比较,则额外信息请求是针对根据第二技术形成的散列信息的请求。以及,如果已经进行比较的散列信息是第二类型的散列信息,则额外信息请求形成请求数据库的数据内容的提取请求。
当提取在移动节点处的数据库的内容并送回到网络部分时,比较器还将该内容与相应的本地存储的内容进行比较。如果内容不相同,则选择性地修改相应数据库其中一个的内容。根据冲突解决方案来选择要盖写哪一个数据库和要将内容盖写到哪些位置。从而,使数据库彼此相匹配。
从而,提供了一种同步进程,利用其保持在无线电通信系统的移动节点处和网络部分处具体实现的数据库。保持数据库彼此同步,同时仅使用了使移动节点和网络部分互连的空中接口缩减量的带宽。将无线电通信系统中可用信道容量更有效地用于执行同步操作。
因此,在这些和其它方案中,提供了一种针对无线电通信系统的设备及相关方法。无线电通信系统具有保持包括数据的第一数据库的至少一个网络拷贝的网络部分和保持包括数据的第一数据库的移动拷贝的移动节点。当数据库的网络拷贝和移动拷贝彼此相匹配时,第一数据库的网络拷贝和移动拷贝的数据分别相对应。选择性地修改至少第一数据库的网络拷贝和移动拷贝中至少一个的数据以使网络拷贝与移动拷贝彼此相匹配。在移动节点处具体实现散列信息产生器,所述散列信息产生器适用于接收对第一数据库的移动拷贝的至少部分的表示。所述散列信息产生器响应提供给其的表示选择性地形成散列值。将散列值传送到网络部分,以确定网络拷贝与移动拷贝是否彼此相匹配。在移动节点处具体实现内容检索器,所述内容检索器用于在检测到网络拷贝与移动拷贝不匹配的确定时,从至少第一数据库的移动拷贝中检索数据。将所述内容检索器所检索到的数据传送到网络部分,以将其用于使网络拷贝与移动拷贝相匹配。
可以通过以下简短概述的附图、以下对本发明的当前优选实施例的描述、以及所所附权利要求,获得本发明更为完整的评述以及其范围。
附图说明
图1示出了其中可操作本发明实施例的无线电通信系统的功能方框图;
图2示出了图1所示的无线电通信系统的部分的功能方框图;
图3示出了表示在图1-2中所示的无线电通信系统的操作期间所产生的信令的消息时序图;
图4示出了根据本发明实施例的典型方案的在网络和移动节点处具体实现的数据库的记录之间的比较的可能结果的图示;
图5示出了与图4所示的类似、但这里是另一典型方案的图示;
图6示出了与图4-5所示的类似、但这里是本发明另一实施例的方案的另一图示。
具体实施方式
首先,参照图1,无线电通信系统(通常以10表示)提供了与移动节点(移动节点12为其典型示例)的无线电通信。在通信系统操作期间,实现了与移动节点的通信服务。通过在移动节点和通信系统的网络部分之间扩展的无线电链路上定义的上行链路,选择性地传送在移动节点处发起的数据。以及,通过在无线电链路14上定义的、用于向移动节点提供数据的下行链路,通信在通信系统的网络部分处发起的数据。
为了说明的目的,从功能上表示通信系统的网络部分,在这里是所示出单个基站16。基站16对覆盖区域或小区18进行定义,在其中与移动站点的通信通常是可实现的。允许移动节点在由其它小区所定义的覆盖区域中运动,且通常可确定移动节点的位置。通信系统的网络部分还包括中继设备22(这里标识为BES中继器)以及同步(sync)服务器。在典型实现中,在相同设备或平台上具体实现中继器22和服务器24所提供的功能。以及,将同步服务器24与管理(admin)服务器26相连。管理服务器向通信系统提供管理服务,例如,提供同步服务器上的管理控制。
将同步服务器功能上与数据库相连,附图中示出了其中三种典型数据库类型:MicrosoftTM Notes数据库28、基于Exchange的数据库32的ExchangeTM连接器,以及其它类型(这里表示为第三方数据库34)。在典型实现中,数据库为文本格式,这里是可扩展标示语言(XML)格式。在数据库28、32和34以及在其它处保持的数据由格式化为字段的多个数据部分形成。例如,将数据库(诸如数据库28)形成到其中的字段包括记录字段,其选择性地填充有数据。从记录字段中选择一个形成关键字段。
为了示例,移动节点也具体实现为数据库(这里以38、42和44表示),与在同步服务器24处保持的或与同步服务器24相连的数据库28、32、34相对应。在网络部分和移动节点处保持的数据库均可以非对称的方式选择性地进行修改。
在通信系统操作期间,与网络部分一起执行在移动节点处创建(或其它具体实现)的数据库的备份。当数据库彼此匹配时,填充相同数据库的移动拷贝和网络拷贝的字段的数据是相同的。然而,如果对数据库中的一个进行了非对称改变,且并未另外报告给数据库中的另一个,则数据库不再彼此相匹配。由于数据库的拷贝彼此形成备份,因此执行同步操作以使相应数据库彼此相匹配。然而,由于通过空中接口执行同步,因此必须使执行这样的同步所需的带宽最小。无线电通信系统包括本发明实施例的设备50。设备50的部分在移动节点实现,以及,设备50的另一部分在通信系统的同步服务器24或其它网络部分处具体实现。
图2示出了通信系统10的部分。更具体地,图中示出了同步服务器24和移动节点12的部分。通过通信路径在同步服务器和移动节点之间实现通信,所述通信路径包括在通信系统的网络部分和移动节点之间扩展的、在空中接口上形成的部分。
这里,所示出的移动节点包括能够收发包含在通信系统操作期间通信的数据的通信信号的接收电路52和发射电路54。将设备50与接收电路和发射电路相连。根据功能元件表示在移动节点处具体实现的设备50。以任何需要的方式来实现由功能实体执行的功能,诸如利用可由处理电路执行的算法。在另外的实现中,以其它方式实现由各个实体执行的功能。
这里,所述设备包括散列信息产生器58。将散列信息产生器与在其处保持数据库38、42和44的存储元件62相连。选择性地操作散列信息产生器,以从在存储元件62处保持的数据库中的一个或多个中检索内容,从而执行散列函数,以使所存取的数据处于短摘要形式。由散列信息产生器执行的散列函数包括如校验和的计算以及计算上更为密集的散列函数计算。响应触发信号(这里表示为通过线路64将其提供到散列信息产生器),选择性地操作散列信息产生器。将由散列信息产生器形成的散列信息提供给发射电路(这里通过路径66表示)。发射电路将提供给其的散列信息发射到通信系统的网络部分,并将所发射的信息路由到同步服务器24。
在移动节点处具体实现的设备50还包括请求检测器68,与接收电路52相连。请求检测器用于检测向移动节点通信的额外信息请求,诸如额外散列信息或在一个或多个数据库处所存储的数据记录。当请求检测器检测到额外散列信息请求时,检测器通知散列信息产生器(这里通过线路72表示)以请求额外散列信息。以及,当检测器所检测到的请求是针对数据记录时,将该请求转送到内容检索器78(这里是通过线路74)。内容检索器用于从在存储元件62处保持的一个或多个数据库中检索请求数据。内容检索器检索请求数据,并将这种数据提供给发射电路54。发射电路也用于将检索到的数据通过空中接口发射到网络部分,所述空中接口形成在发射电路和网络部分之间。
在移动节点处具体实现的设备50还包括内容写入器82。将内容写入器与接收电路相连,以接收下载到其的数据,从而将其写入到在存储元件62处保持的一个或多个数据库中或在所述一个或多个数据库上盖写。
在同步服务器24处具体实现的设备50的部分包括上行链路接收机和检测器84。接收机和检测器用于根据同步进程检测由移动节点发生的通信。接收机和检测器选择性地向比较器86提供在其中检测到的数据。比较器还与散列信息产生器88相连,所述散列信息产生器88与在其处保持数据库28、32和34的存储元件92相连。散列信息产生器88以与在移动节点处具体实现的散列信息产生器58的操作类似的方式操作。当将散列信息传递到检测器84并提供到比较器时,比较器对在移动节点处计算出的值和本地产生的散列信息进行比较。将比较器得出的比较结果提供给散列信息和数据记录请求产生器94。响应比较器所得出的比较结果,产生器94选择性地进行操作以从移动节点请求额外信息。将这样的请求提供给下行链路发射器96。所述设备还包括改变历史列表98,在其处保持对在同步服务器和移动节点的相应存储元件处具体实现的数据库的任一个所做改变的列表。在随后的同步操作期间对改变历史列表进行存取,以减少另外在移动节点和同步服务器之间的空中接口上通信信息的需要。
在同步服务器处具体实现的设备50还包括数据写入器和盖写器102,与上行链路接收机和检测器84以及比较器86相连。选择性地操作数据写入器,以将数据写入并盖写到在存储元件92处保持的数据库的任一个。
图3示出了消息时序图(通常以112表示),该图示出了通信系统根据本发明实施例的同步进程的操作。使在移动节点12和同步服务器24或其它网络部分处保持的数据库拷贝彼此相匹配或保持彼此匹配。通过同步触发(这里以线段114表示)发起所述进程。产生所述触发,例如,在移动节点处,或在网络部分处并传递到移动节点。响应对该进程的触发,移动节点根据在移动节点处保持的一个或多个数据库中所包含的数据产生散列信息(这里以块116表示)。
当形成散列信息时,通过空中接口将其传送到以线段118表示的网络部分,并路由到同步服务器。当传递到同步服务器时,将该散列信息与本地产生的散列信息(这里表示为通过线段124来提供)进行比较(以块122表示)。
进行确定(以判断块126表示),以检测是否不匹配。即,确定本地产生的散列信息与通过移动节点传递到同步服务器的散列信息是否不同。如果散列信息指示数据库相匹配,则没有分支会延伸到结束块。反之,如果指示不匹配条件,则产生请求诸如在移动节点处保持的一个或多个数据库的移动节点拷贝处保持的记录的散列信息等额外散列信息的请求(以线段132表示)。当传递到移动节点时,形成所请求的散列信息(以块134表示)。以及,将这样的额外散列信息送回到网络部分,并路由到同步服务器24。
当传递到同步服务器时,将额外散列信息与本地产生的散列信息(以线路142来表示)进行比较(以块138表示)。确定(以判断块144表示)额外散列信息表示的数据是否改变。如果没有,则在结束块之前不会发生分支。反之,如果指示改变,则同步服务器产生提取请求,并传送到移动节点(以线段148表示)。再确定是否将数据下载到移动节点(也以块138表示)。若需要,对要下载何种数据的确定基于要执行的同步的类型。以下针对图4-6来说明典型的同步可能结果。当要将数据发送到移动节点时,数据是如“piggybacked”以及提取请求。
当传递到移动节点时,若需要,检索所请求的数据(以块152表示),并送回到同步服务器(以线段154表示)。以及,对数据库适当进行更新(以块166表示)。线段168表示送回到移动节点的“同步成功”指示。以及,对改变历史列表进行更新(以块172表示),保持更新的列表。
对消息时序图的评述显示:在发起同步操作时,移动节点将数据库信息发送到同步服务器。同步服务器对提供给其的数据库散列信息和本地产生的散列信息进行比较。散列信息之间的任何不匹配都指示同步服务器必须对特定数据库进行同步处理。
于是,同步服务器请求移动节点开始发送被指示为不匹配的所选数据库的所有记录的散列信息。根据字段映射,每个记录的关联散列信息是如记录的关键字段的散列信息和记录字段的散列信息。
记录的关键字段的散列信息用于使所选数据库的记录在同步服务器处匹配。记录字段的散列信息用于确定记录内容是否已经改变,这可以指示必须运行内容冲突解决方案策略的可能性。
如果同步服务器确定移动节点处记录的改变必须在同步服务器处反映出来,则同步服务器请求从设备提取记录内容。然后,服务器应用内容改变,如在服务器上。记录提取请求取决于所使用的冲突解决方案。通过明确地向设备发送所有请求更新(如果冲突解决方案要求这样的更新),服务器同样可以反映服务器改变。
选择性地使用至少三种方案。图4示出了单向同步服务器到移动节点方案的图示,通常以元件182表示。用元件184表示移动节点记录。以及,用元件186表示网络保持记录。元件184和186的相交区域(以188表示)表示网络部分和移动节点之间的共有记录改变。如果这些共有记录中的任一个存在冲突,则解决冲突,并根据冲突策略设置,反映出更新,即,对记录中的一个或其它进行更新。区域192表示在服务器上并不存在的移动节点记录改变。以及,区域194表示在移动节点上并不存在的网络处的改变。网络的记录的子集应当反映在移动节点上,并与其通信(以线段196表示)。
图5示出了单向同步到服务器的情况,通常以202表示。这里,元件184和186也分别表示移动节点记录和网络记录。区域188表示移动节点和网络之间的共有记录改变。如果这些值存在冲突,则根据冲突解决方案解决冲突。以及,区域192和194也分别表示记录在服务器上和设备上并不存在的记录改变。应当将移动节点的记录的子集(以区域192表示)反映在服务器上,并执行对关联数据库的数据内容的适当更新。
图6示出了双向同步方案的图示,通常以212表示,还表示根据本发明实施例的操作出现的情况。元件184和196也分别表示移动节点和服务器记录。以及,相交区域188表示共有记录,根据冲突解决方案解决其之间的冲突。这里,在双向同步进程中,将以区域192表示的非共有记录写入到关联数据库的网络拷贝中。以及,将以区域194表示的非共有记录写入到移动节点的关联数据库中。
因此,配置并保持数据库相匹配。由于首先通过空中接口来通信散列信息,以主要确定数据库是否相匹配,相对于传统同步操作所需的信息交换,减小了在空中接口上、进行这样的确定所需的带宽。
之前的描述是用于实现本发明的优选实例的,本发明的范围并不必受此描述的限制。通过所附权利要求定义本发明的范围。

Claims (19)

1.一种设备,用于在具有至少保持包括数据的网络拷贝第一数据库(28,32,34)的网络部分(16)和至少保持包括数据的移动拷贝第一数据库(38,42,44)的移动节点(12)的无线电通信系统(10)中,当第一数据库的网络拷贝(28,32,34)和移动拷贝(38,42,44)彼此相匹配时,第一数据库的网络拷贝(28,32,34)和移动拷贝(38,42,44)的数据分别相对应,其中,第一数据库的网络拷贝(28,32,34)和移动拷贝(38,42,44)的数据分别由填充有数据的分别格式化为记录字段的多个数据部分形成,所选中的一个记录字段为关键字段,
所述设备用于选择性地修改至少第一数据库的网络拷贝(28,32,34)和移动拷贝(38,42,44)中至少一个的数据以使网络拷贝(28,32,34)与移动拷贝(38,42,44)彼此相匹配,所述设备包括:
在移动节点处具体实现的散列信息产生器,适用于接收对至少第一数据库的至少移动拷贝(38,42,44)的表示,所述散列信息产生器用于响应提供给其的表示选择性地形成移动拷贝第一数据库的第一散列信息,将第一散列信息传送到网络部分,以确定网络拷贝(28,32,34)与移动拷贝(38,42,44)是否彼此相匹配;以及当网络拷贝(28,32,34)与移动拷贝(38,42,44)彼此不匹配时,所述散列信息产生器选择性地形成第一数据库的数据记录的至少关键字段的第二散列信息;
在移动节点处具体实现的内容检索器,所述内容检索器用于在检测到网络拷贝(28,32,34)与移动拷贝的记录的关键字段不匹配的确定时,从至少第一数据库的移动拷贝的记录的关键字段中检索数据,其中,所述至少第一数据库的移动拷贝的关键字段与网络拷贝(28,32,34)不匹配的确定是根据关键字段的第二散列信息做出的;
将所述内容检索器所检索到的数据传送到网络部分,以将其用于使网络拷贝(28,32,34)与移动拷贝相匹配。
2.根据权利要求1所述的设备,其特征在于所述散列信息产生器响应外部触发事件产生散列信息,所述外部触发事件的发生可在移动节点处检测到。
3.根据权利要求2所述的设备,其特征在于:在检测到外部触发事件时,所述散列信息产生器产生第一散列信息,所述外部触发事件的发生指示可在移动节点处检测到;以及响应对所述散列信息产生器所产生的第一散列信息的不匹配的确定,所述散列信息产生器利用网络部分所计算出的值产生第二散列信息。
4.根据权利要求3所述的设备,其特征在于在至少第一数据库的网络拷贝和移动拷贝处保持的数据由数据记录组成,每个数据记录由包括至少一个第一关键字段和至少一个第一记录字段的字段形成;以及由所述散列信息产生器选择性产生的第二散列信息由至少一个第一关键字段的值形成。
5.根据权利要求4所述的设备,其特征在于:响应由至少一个关键字段的值形成的第二散列信息,对网络拷贝和移动拷贝不匹配进行确定。
6.根据权利要求4所述的设备,其特征在于:由所述内容检索器检索到的数据包括至少一个第一关键字段和至少一个第一记录字段。
7.根据权利要求1所述的设备,还包括:
确定器,适用于接收由所述散列信息产生器产生的散列信息,所述确定器用于确定所述散列信息是否与本地产生的值相对应;以及
请求器,与所述确定器相连,用于接收对在确定器中所进行的确定的指示,所述请求器选择性地请求与至少第一数据库的移动拷贝相关联的额外的第二散列信息。
8.根据权利要求7所述的设备,其特征在于:由所述散列信息产生器产生的散列信息是第一散列信息以及至少第二散列信息之一;以及本地产生值相应地是第一散列信息和第二散列信息之一。
9.根据权利要求7所述的设备,其特征在于:由所述请求器请求的额外信息包括请求移动节点向比较器传递第二散列信息的请求。
10.根据权利要求7所述的设备,其特征在于:在至少第一数据库的网络拷贝和移动拷贝处保持的数据由数据记录组成;以及由所述请求器请求的额外信息包括请求移动节点传递数据记录的至少部分的值的请求。
11.根据权利要求10所述的设备,其特征在于还包括比较器,适用于响应对移动节点的请求接收数据记录的至少部分的值,所述比较器用于将该值与至少第一数据库的网络拷贝的相应值进行比较。
12.根据权利要求11所述的设备,其特征在于还包括数据库值更新器,与所述比较器相连,所述数据库值更新器响应所述比较器进行的比较选择性地进行操作,以修改至少第一数据库的移动拷贝和网络拷贝中所选一个的至少一个数据记录。
13.根据权利要求12所述的设备,其特征在于所述数据库值更新器根据所选冲突解决方案协议操作。
14.一种在无线电通信系统中通信的方法,所述无线电通信系统具有至少保持包括数据的网络拷贝第一数据库的网络部分和至少保持包括数据的移动拷贝第一数据库的移动节点,当第一数据库的网络拷贝和移动拷贝彼此相匹配时,第一数据库的网络拷贝和移动拷贝的数据分别相对应,其中,第一数据库的网络拷贝和移动拷贝的数据分别由选择性地填充有数据的格式化为记录字段的多个数据部分形成,所选中的一个记录字段为关键字段,
实现了能选择性地修改至少第一数据库的网络拷贝和移动拷贝中至少一个的数据以使网络拷贝与移动拷贝彼此相匹配的方法,所述方法包括步骤:
有选择地将第一散列信息从移动节点发送到网络部分,其中第一散列信息表示移动拷贝第一数据库的移动拷贝;
在网络部分处,将在选择性发送操作期间发送的第一散列信息与相应网络拷贝第一散列信息进行比较(124);以及
响应在所述比较第一散列信息的操作期间所进行的比较,选择性地请求与第一数据库移动拷贝有关的额外的第二散列信息(132),其中,所述第二散列信息是第一数据库的数据记录的至少关键字段的第二散列信息。
15.根据权利要求14所述的方法,其特征在于:在所述选择性请求操作期间所请求的额外的第二散列信息包括从移动节点到网络部分的第二散列信息,所述第二散列信息也表示至少第一数据库的移动拷贝的所有数据记录的相应字段。
16.根据权利要求15所述的方法,其特征在于还包括以下操作:将所述第二散列信息从移动节点发送到网络部分(136);
在网络部分处,将在所述发送第二散列信息的操作期间发送的第二散列信息与相应网络拷贝第二散列信息进行比较(144);以及
响应在所述比较第二散列信息操作期间所进行的比较,选择性地请求至少第一数据库的移动拷贝的至少部分(152)。
17.根据权利要求16所述的方法,其特征在于还包括以下操作:将所述移动拷贝的至少部分传递到网络部分(154),将在所述传递操作期间传递的移动拷贝的部分与至少第一数据库的网络拷贝的相应部分进行比较,以及响应在所述比较移动拷贝的部分的操作期间所进行的比较,从网络拷贝和移动拷贝中选择一个,选择性地对所述部分进行盖写(166)。
18.根据权利要求17所述的方法,其特征在于根据冲突解决方案来选择要选择性地对其所述部分进行盖写的网络拷贝和移动拷贝中的一个。
19.根据权利要求17所述的方法,其特征在于还包括通过指示对在所述选择性操作期间所选部分进行盖写来创建改变历史的操作(172)。
CN03826272XA 2003-02-06 2003-02-06 通过比较散列值同步数据库的设备及方法 Expired - Lifetime CN1764915B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CA2003/000181 WO2004070625A1 (en) 2003-02-06 2003-02-06 Apparatus and method for synchronizing databases by comparing hash values

Publications (2)

Publication Number Publication Date
CN1764915A CN1764915A (zh) 2006-04-26
CN1764915B true CN1764915B (zh) 2012-01-25

Family

ID=32831526

Family Applications (1)

Application Number Title Priority Date Filing Date
CN03826272XA Expired - Lifetime CN1764915B (zh) 2003-02-06 2003-02-06 通过比较散列值同步数据库的设备及方法

Country Status (5)

Country Link
US (1) US7856422B2 (zh)
CN (1) CN1764915B (zh)
AU (1) AU2003303878A1 (zh)
CA (1) CA2515323C (zh)
WO (1) WO2004070625A1 (zh)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6671757B1 (en) 2000-01-26 2003-12-30 Fusionone, Inc. Data transfer and synchronization system
US7505762B2 (en) * 2004-02-27 2009-03-17 Fusionone, Inc. Wireless telephone data backup system
US7143117B2 (en) * 2003-09-25 2006-11-28 International Business Machines Corporation Method, system, and program for data synchronization by determining whether a first identifier for a portion of data at a first source and a second identifier for a portion of corresponding data at a second source match
ATE364291T1 (de) 2005-01-28 2007-06-15 Research In Motion Ltd Automatische integration von inhalt aus mehreren datenspeichern mittels eines mobilkommunikationsgeräts
US7317907B2 (en) * 2005-01-31 2008-01-08 Research In Motion Limited Synchronizing server and device data using device data schema
ATE384389T1 (de) * 2005-01-31 2008-02-15 Research In Motion Ltd Synchronisation von server- und geräte-daten unter benutzung von geräte-daten-schemata
CN101317164B (zh) * 2005-09-29 2011-09-07 捷讯研究有限公司 通过比较代表信息的有效数据库同步
WO2007056842A1 (en) 2005-11-17 2007-05-24 Research In Motion Limited System and method for communication record logging
US7613739B2 (en) * 2005-11-17 2009-11-03 Research In Motion Limited Method and apparatus for synchronizing databases connected by wireless interface
US7421542B2 (en) 2006-01-31 2008-09-02 Cisco Technology, Inc. Technique for data cache synchronization
US8813021B1 (en) 2006-02-16 2014-08-19 Cypress Semiconductor Corporation Global resource conflict management for an embedded application design
US8238882B2 (en) * 2006-10-19 2012-08-07 Research In Motion Limited System and method for storage of electronic mail
US20080162486A1 (en) * 2006-12-27 2008-07-03 Research In Motion Limited Method and apparatus for storing data from a network address
US8099386B2 (en) 2006-12-27 2012-01-17 Research In Motion Limited Method and apparatus for synchronizing databases connected by wireless interface
US8275741B2 (en) * 2006-12-27 2012-09-25 Research In Motion Limited Method and apparatus for memory management in an electronic device
US10156953B2 (en) * 2006-12-27 2018-12-18 Blackberry Limited Method for presenting data on a small screen
US8359337B2 (en) 2008-12-09 2013-01-22 Ingenix, Inc. Apparatus, system and method for member matching
CN103514177A (zh) * 2012-06-20 2014-01-15 盛趣信息技术(上海)有限公司 数据存储方法及系统
CN103929763A (zh) * 2013-01-11 2014-07-16 阿尔卡特朗讯 一种用于比较和重构地理冗余的数据库的方法
CN104639651A (zh) * 2015-03-04 2015-05-20 成都维远艾珏信息技术有限公司 一种移动设备信息传输方法
US10896201B2 (en) 2018-05-18 2021-01-19 International Business Machines Corporation Synchronization of block based volumes
CA3058225C (en) * 2019-03-04 2022-04-12 Alibaba Group Holding Limited Updating blockchain world state merkle patricia trie subtree
WO2020254889A1 (en) 2019-06-21 2020-12-24 Datametica Solutions Pvt Ltd System and method for data reconciliation

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1360787A (zh) * 1999-07-05 2002-07-24 艾利森电话股份有限公司 用于同步便携式通信设备中的数据库的方法和设备

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5684990A (en) * 1995-01-11 1997-11-04 Puma Technology, Inc. Synchronization of disparate databases
US6138158A (en) * 1998-04-30 2000-10-24 Phone.Com, Inc. Method and system for pushing and pulling data using wideband and narrowband transport systems
US6401104B1 (en) * 1999-07-03 2002-06-04 Starfish Software, Inc. System and methods for synchronizing datasets using cooperation among multiple synchronization engines
US20020059299A1 (en) * 2000-07-14 2002-05-16 Frederic Spaey System and method for synchronizing databases
US7363325B2 (en) * 2000-08-10 2008-04-22 Nec Laboratories America, Inc. Synchronizable transactional database method and system
US7054618B1 (en) * 2002-05-23 2006-05-30 Openwave Systems Inc. Method of registering a communication device with a proxy server based service

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1360787A (zh) * 1999-07-05 2002-07-24 艾利森电话股份有限公司 用于同步便携式通信设备中的数据库的方法和设备

Also Published As

Publication number Publication date
AU2003303878A1 (en) 2004-08-30
US7856422B2 (en) 2010-12-21
CA2515323C (en) 2012-05-01
WO2004070625A1 (en) 2004-08-19
US20040224672A1 (en) 2004-11-11
CN1764915A (zh) 2006-04-26
CA2515323A1 (en) 2004-08-19

Similar Documents

Publication Publication Date Title
CN1764915B (zh) 通过比较散列值同步数据库的设备及方法
CN100394423C (zh) 数据同步接口
CN101313495B (zh) 数据同步方法、系统及装置
US6643669B1 (en) Method for optimization of synchronization between a client's database and a server database
US6571278B1 (en) Computer data sharing system and method for maintaining replica consistency
CN101317164B (zh) 通过比较代表信息的有效数据库同步
CN101689164B (zh) 服务器辅助的对等同步
US6944623B2 (en) Method for data synchronization in web-based communications management system
CA2496375C (en) Apparatus, and associated method, for synchronizing databases connected by way of a radio air interface
KR20050044311A (ko) 통신 시스템의 데이터 동기화 장치
CN101500208A (zh) 设备间数据同步的方法和系统
CN101595669A (zh) 服务器时间协议消息和方法
CN101459503A (zh) 一种实现数据同步的方法和装置
US20050186975A1 (en) Apparatus, and associated method, for facilitating initiation of synchronization of database copies connected by way of a radio air interface
US11176111B2 (en) Distributed database management system with dynamically split B-tree indexes
CN107547245A (zh) 一种版本升级方法和装置
CN106385382A (zh) 一种数据同步方法、装置和系统
CN1271812C (zh) 无线设备同步系统及方法
EP1903459B1 (en) Method and apparatus for memory management in an electronic device
CN100559794C (zh) 用于识别与相同标签匹配的多个节点的计算机网络
CN111144578A (zh) 一种分布式环境下的人工智能模型管理系统及管理方法
CN110321462A (zh) 信息动态更新方法、装置、计算机设备及存储介质
CA2496383A1 (en) Apparatus, and associated method, for facilitating efficient communication of data communicated pursuant to a synchronization session
EP2381620A1 (en) Method for retrieving object from device management client and associated device management system
EP1564654B1 (en) Apparatus and method for determining synchronization status of database copies connected by a radio air interface of a radio communication system

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
CX01 Expiry of patent term

Granted publication date: 20120125

CX01 Expiry of patent term