CN101610225B - 一种同步处理方法、系统和装置 - Google Patents

一种同步处理方法、系统和装置 Download PDF

Info

Publication number
CN101610225B
CN101610225B CN2008101269787A CN200810126978A CN101610225B CN 101610225 B CN101610225 B CN 101610225B CN 2008101269787 A CN2008101269787 A CN 2008101269787A CN 200810126978 A CN200810126978 A CN 200810126978A CN 101610225 B CN101610225 B CN 101610225B
Authority
CN
China
Prior art keywords
server
relevant parameter
filter
client
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.)
Active
Application number
CN2008101269787A
Other languages
English (en)
Other versions
CN101610225A (zh
Inventor
王睿
刘海涛
宋悦
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN2008101269787A priority Critical patent/CN101610225B/zh
Publication of CN101610225A publication Critical patent/CN101610225A/zh
Application granted granted Critical
Publication of CN101610225B publication Critical patent/CN101610225B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明实施例公开了一种同步处理方法、系统和装置。该方法包括:接收第一同步请求,所述第一同步请求中包含过滤器Filter,所述Filter用于限定需要同步的数据;记录所述第一同步请求中Filter的相关参数;根据所述Filter相关参数进行数据同步。所述系统包括:客户端和服务器。本发明实施例是客户端与服务器进行数据同步时发送Filter相关参数,服务器接收和记录所述Filter相关参数或者通知客户端记录所述Filter相关参数。当同步失败或同步到达断点条件需再次同步时,客户端或服务器获取所记录Filter相关参数进行同步操作,从而可以减少同步操作时的数量,并且可以缩短同步时间。

Description

一种同步处理方法、系统和装置
技术领域
本发明实施例涉及数据处理技术领域,具体涉及一种同步处理方法、系统和装置。
背景技术
随着信息社会的迅速发展,人们迫切期望个人信息(如电子邮件、日历、通讯录等)能够在不同的设备(包括掌上电脑、移动电话、PDA、台式机)上同时得到更新,保持数据的一致性。例如,用户期望在掌上电脑上阅读了一封新收到的邮件,可以在他的台式机中自动地将这封邮件显示为已读邮件;又例如移动设备用户通过电子邮件收到定单时,就可以立即使用同一移动设备访问公司的存货系统,以确定发货日期。这就要求不同设备间的需要进行数据的同步。
SyncML(Synchronization Markup Language)是一种信息同步标准协议。SyncML协议定义了在客户端和服务器之间消息的交互过程和数据同步的类型。其中的一种同步类型为慢同步,是指客户端与服务器端把自己的所有数据都发送给对方,进行一对一的比对同步。此外,现有技术中还有一种对数据进行比对得到数据同步的方法叫指纹。该指纹方法和慢同步相似,也是通过将所有数据进行一对一的比对恢复数据同步。
通常,服务器包含的数据要比客户端多,并且客户端可能也只需要同步服务器上的一部分数据或者一部分字段。基于这样的思想,目前在处理数据同步时采用一种过滤(Filtering)技术,比如客户端发起一个过滤请求给服务器,服务器根据过滤请求中的设置给客户端发送需要的数据。
现有一种同步处理方法包括:客户端向服务器发送同步请求,该请求中包含Filter相关参数;服务器接收Filter相关参数,并执行同步操作;当同步出现失败,客户端再次发起同步请求,服务器告知客户端需发起同步操作;客户端将本地数据库中的所有数据发送给服务器;服务器收到数据后进行同步操作,根据同步策略更新数据。
而为了恢复数据的同步,现有技术采用慢同步或指纹同步的方法对客户端和服务器的所有数据进行逐条比对,才得以建立同步关系,所以同步时会包含大量的数据,导致同步时间长。
发明内容
本发明实施例提供了一种同步处理方法、系统和装置,能够减少同步数据量,从而缩短同步时间。
本发明实施例提供的同步处理方法,包括:接收第一同步请求,所述第一同步请求中包含过滤器Filter,所述Filter用于限定需要同步的数据;记录所述第一同步请求中Filter的相关参数;根据所述Filter相关参数进行数据同步。
本发明实施例提供的同步处理系统,包括:客户端,用于向服务器发送第一同步请求,根据服务器指示记录所述第一同步请求中的Filter的相关参数;服务器,用于接收第一同步请求进行同步操作,将所述Filter相关参数记录于客户端。
本发明实施例提供的同步处理客户端,包括:发送单元,用于向服务器发送同步请求;接收单元,用于接收服务器的指示;记录单元,用于根据所述接收单元的指示记录第一同步请求中的Filter的相关参数;第一获取单元,获取所述记录单元记录的Filter相关参数;同步单元,用于将Filter相关参数限定的数据与服务器进行同步。
本发明实施例提供的同步处理服务器,包括:接收单元,用于接收第一、第二同步请求;第二获取单元,用于获取第一同步请求中的Filter,将所述Filter的相关参数记录在自身或记录在客户端中;同步执行单元,用于对所述Filter相关参数限定的数据进行同步。
本发明实施例提供的同步处理系统,包括:客户端,用于向服务器发送第一同步请求,所述第一同步请求中包含Filter;服务器,用于接收第一同步请求进行同步操作并记录所述Filter的相关参数。
本发明实施例提供的同步处理客户端,包括:发送单元,用于向服务器发送同步请求;接收单元,用于接收服务器下发的Filter相关参数;第一获取单元,用于获取接收单元接收的Filter相关参数;同步单元,用于将所述Filter相关参数限定的数据与服务器进行同步。
本发明实施例提供的同步处理服务器,包括:接收单元,用于接收第一、第二同步请求;记录单元,用于记录所述第一同步请求中的Filter的相关参数;第二获取单元,用于获取所述记录单元中的Filter相关参数,并将所述Filter相关参数发送给客户端;同步执行单元,用于对所述Filter相关参数限定的数据进行同步。
本发明实施例中,服务器可以对第一同步请求中的Filter相关参数进行记录,所以当后续流程中接收到第二同步请求时,可以根据已经记录的Filter相关参数进行数据同步,因此当数据同步失败导致服务器和客户端间失去同步时,不需要对客户端和服务器中的所有数据重新进行同步,而只对记录的Filter相关参数所限定的一部分数据进行同步,因此减小的同步的数据量,缩短了同步时间。
附图说明
图1为本发明实施例中同步处理方法总体流程图;
图2为本发明实施例中同步失败处理实施例一的流程图;
图3为本发明实施例中同步失败处理实施例二的流程图;
图4为本发明实施例中Filter信息的DS MO结构示意图;
图5为本发明实施例中同步中断处理实施例的流程图;
图6为本发明实施例中同步处理系统示意图;
图7为本发明实施例中同步处理客户端示意图;
图8为本发明实施例中同步处理服务器示意图;
图9为本发明实施例中同步处理系统第二实施例示意图;
图10为本发明实施例中同步处理客户端第二实施例示意图;
图11为本发明实施例中同步处理服务器第二实施例示意图。
具体实施方式
本发明实施例提供了一种同步处理方法、系统和装置,使得在数据同步处理中,客户端仅将上次同步的内容与服务器进行同步操作即可,节约了空口资源。为了便于本发明实施例进一步理解,下面结合附图对本发明实施例方法进行详细描述。
请参阅图1,图1为本发明实施例提供的同步处理方法的流程图,该方法包括步骤:
步骤101:接收第一同步请求,所述第一同步请求中包含Filter。
步骤102:记录所述第一同步请求中的Filter的相关参数。
所述Filter相关参数用于限定需要同步的数据,具体的Filter相关参数相关信息可以包括:
数据库或数据库目录,表示同步的数据库(或数据库目录)的名称或标识;
同步方向,用于表示同步使用的Filter方向,True表示客户端发送Filter给服务器;False表示服务器发送Filter给客户端;
过滤器信息Filter,用于记录同步中使用的Filter的内容。
步骤103:根据所述第一同步请求进行数据同步。
步骤104:接收第二同步请求。
当同步因断电或其他原因造成失败,客户端可以再次向服务器发送同步请求,请求恢复同步的操作;或者,当数据同步到达续传条件时,为了续传需要客户端向服务器发送续传请求,请求继续同步。其中,续传条件可以是运营商自行设置或者用户设置,例如用户发起的续传请求等。
需要说明的是,客户端还可以根据自身的需求向服务器发送第二同步请求。
步骤105:获取所述记录的Filter相关参数,执行与所述Filter相关参数对应的同步操作。
所述同步操作可以采用现有的慢同步或者指纹同步的方法进行。由于同步可以是双向进行的,根据本发明实施例的方法,可以是客户端向服务器同步或者服务器向客户端同步,这是由同步双方之间协商好的同步策略决定的,本发明实施例方法不对此做出限定。客户端和服务器发起慢同步或者指纹同步等重新建立同步关系的同步操作时,它们只同步Filter相关参数中限定的数据内容,以达到节约资源的目的。而Filter相关参数限定之外的数据内容由于在出错的同步操作中未做更改,无需重新建立同步关系。
此外,根据本发明实施例方法,对于Filter相关参数的记录也可以存在以下几种方式,分别是服务器记录Filter相关参数或服务器指示客户端记录Filter相关参数,或客户端自身记录Filter相关参数。结合本发明实施例提供的方法和记录Filter相关参数不同方式,可以将本发明实施例中的同步方法分为以下几种情况:
实施例一:
请参阅图2,图2为本发明实施例提供的一种同步失败处理实施例一的流程图。
在本实施例中,当客户端第二次发起同步请求时,服务器判断同步失败,并获取自身记录的Filter相关参数,将Filter相关参数发送给客户端,客户端按照同步要求将Filter相关参数限定的数据与服务器进行同步操作。具体实施步骤如下:
步骤201:客户端向服务器发送包含Filter的第一同步请求。
步骤202:服务器收到客户端发送的包含Filter的同步请求后,将Filter相关参数记录到自身文件配置表中。
所述文件配置表是服务器用于保存Filter相关参数的表格,位于服务器端。所述保存Filter相关参数的文件配置表如表1所示。
表1
  客户端ID   数据库   同步方向   过滤器
  112   223   false   <Filter>...</Filter>
上述文件配置表中,分别记录了Filter相关参数的客户端ID为112;数据库名称或标识为223;同步方向为False表示服务器向客户端同步;过滤器Filter的内容用于限定需要进行数据同步的数据内容。
步骤203:客户端与服务器进行数据同步。
所述客户端与服务器进行数据同步可以是双向的,也就是说客户端可以将本地数据库中的数据同步到服务器中,也可以是服务器将数据库中的数据同步到客户端去。
在本实施例中,采用服务器将数据库中的数据同步到客户端,同步包括:
增加数据,服务器将生成的数据及其对应的全局唯一标识(GUID)发送给客户端,客户端对数据完成增加处理后为其生成本地唯一标识(LUID)并将生成的LUID返回给服务器,服务器保存数据的LUID与GUID的映射关系;或者
更新数据,服务器将要更新的数据及其对应的LUID发送给客户端,客户端将LUID对应的数据进行更新并保存;或者
删除数据,服务器将要删除的数据及其对应的LUID发送给客户端并删除该数据的LUID与GUID的映射关系条目,客户端将LUID对应的数据进行删除;或者
移动数据,服务器将要移动数据当前的LUID以及移动到目的LUID发送给客户端,客户端将当前LUID对应的数据移动到目的LUID对应的数据条目中。
其中所述LUID与GUID的映射关系如表2所示。
表2
Figure S2008101269787D00061
Figure S2008101269787D00071
从表2可以看出,由于服务器的数量很大,因而其中某条数据对应的全局唯一标识GUID和客户端数据库中某条数据对应的本地唯一表示LUID是不相同的,为了能够将双方要操作的同一条数据条目对应起来,在服务器数据中必须得维护一个ID映射表Server Mapping Table。
当然,在一些情况下客户端也可向服务器同步,对应的同步包括:
增加数据:客户端将生成的数据及其对应的本地唯一标识LUID发送给服务器,服务器对数据完成增加处理后为其生成全局唯一标识GUID,并保存数据的LUID与GUID的映射关系;或者
更新数据:客户端将要更新的数据及其对应的LUID发送给服务器,服务器根据映射关系确定该LUID对应的GUID,将GUID对应的数据进行更新并保存;或者
删除数据:客户端将要删除的数据及其对应的LUID发送给服务器,服务器根据映射关系确定该LUID对应的GUID,将GUID对应的数据进行删除并删除该数据的LUID与GUID的映射关系条目;或者
移动数据:客户端将要移动数据当前的LUID以及移动到目的LUID发送给服务器,服务器根据映射关系确定当前LUID以及目的LUID分别对应的当前GUID以及目的GUID,将当前GUID对应的数据移动到目的GUID对应的数据条目中。
步骤204:客户端向服务器发送第二同步请求,所述第二同步请求包含anchor信息。
所述anchor信息为同步锚点信息,用于指示上次成功完成的同步操作,它可以采用成功完成的同步数据ID表示,所述anchor与客户端数据ID对应关系如表3所示。
表3
  Anchor   LUID   执行操作
  1110   555   增加
  1111   168   移动
  1112   123   删除
  1113   556   增加
同样,服务器也保存一个anchor与GUID的对应表,指示上次同步完成后服务器ID所处的位置。
步骤205:服务器收到所述第二同步请求后判定客户端的同步anchor和服务器的同步anchor不匹配;服务器指示客户端发生同步失败。
在同步过程中,服务器也会相应的记录同步完成后的anchor;正常同步的状态下,每次完成同步后客户端的anchor和服务器端的anchor应当匹配;若两者不匹配,则证明同步失败。
所述同步失败包括:同步出现掉电中断的现象或者是客户端侧的anchor被重置等。
步骤206:服务器读取自身保存Filter相关参数的文件配置表,发现上次与该客户端的同步中使用了Filter,则读取该Filter相关参数,并将它发送给客户端。
其中,服务器通过直接下发Filter相关参数的方式来指示客户端同步所需的Filter相关参数。
步骤207:客户端收到Filter相关参数后,按照同步的要求将Filter相关参数指定范围内的数据与服务器进行慢同步或者指纹同步操作。服务器将收到的数据与自身保存的数据进行比较。
步骤208:服务器与客户端更新数据。
上述实施例是服务器记录Filter相关参数,通过直接下发Filter相关参数的方式来指示客户端同步所需的Filter相关参数,服务器和客户端根据Filter相关参数要求对数据进行同步操作,由于Filter相关参数中限定了需要进行同步的数据,所以客户端和服务器之间不会对所有的数据都进行同步,而只对Filter相关参数限定的一部分数据进行同步,因此能够减少同步的数据量,从而减少同步时间。
实施例二:
请参阅图3,图3为本发明实施例提供的同步失败处理实施例二的流程图。
在本实施例中,当客户端第二次发送同步请求时,服务器判断同步失败,服务器读取客户端中保存的Filter相关参数,将Filter相关参数限定的数据发送给客户端进行同步操作。具体实施步骤如下:
步骤301:客户端向服务器发送包含Filter的第一同步请求。
步骤302:服务器收到所述包含Filter的第一同步请求后,将该Filter相关参数记录到客户端中。
所述将该Filter相关参数记录到客户端中包括:客户端采用数据同步管理对象(DS MO)或文件配置表来保存该Filter相关参数。其中,DS MO主要在客户端,用于存储一些DS的业务参数,比如:服务器的地址、认证信息、数据库信息、同步类型等,服务器通过设备管理(DM,Device Management)协议来对这些参数进行设置,或是获取、修改这些参数。
需要说明的是,本实施例中描述的方式为:服务器直接将Filter相关参数记录到客户端中,可以理解的是,在实际应用中,客户端同样可以自己将该Filter相关参数记录到DS MO或文件配置表中。
请一并参阅图3和图4,图4为本发明实施例提供的记录Filter相关参数信息的部分DS MO结构示意图。其中,
<Sync>401表示DS MO的一个内部节点,记录DS客户端或服务器使用Filter相关参数相关的信息,其相关信息如表4所示。
表4
  状态Status   出现Occurrence   格式Format   访问权限Access
  必须REQUIRED   一次One   节点Node   获取Get
其中,<Sync>/<x>402表示是一个占位符节点,用于包含一个或多个子节点,记录DS客户端或服务器使用Filter的信息,其相关信息如表5所示。
表5
  状态Status   出现Occurrence   格式Format   访问权限Access
  必须REQUIRED   0或多个Zero Or More   节点Node   获取Get
其中,<Sync>/<x>/<server>403是一个叶子节点,用于记录同步的服务器名称或标识,其相关信息如表6所示。
表6
  状态Status   出现Occurrence   格式Format   访问权限Access
  必须REQUIRED   一个One   字符型Chr   获取Get
其中,<Sync>/<x>/<data store>404表示是一个叶子节点,用于记录同步的数据库,或同步数据库的一个目录,其相关信息如表7所示。
表7
  状态Status   出现Occurrence   格式Format   访问权限Access
  必须REQUIRED   一个One   字符型Chr   获取Get
其中,<Sync>/<x>/<direction>405是一个叶子节点,用于记录同步中使用Filter的方向。True表示该Filter是客户端发送给服务器的,False表示该Filter是服务器发送给客户端,相关信息如表8所示。
表8
  状态Status   出现Occurrence   格式Format   访问权限Access
  必须REQUIRED   一个One   布尔型Bool   获取Get
其中,<Sync>/<x>/<Filter>406是一个叶子节点,用于记录同步中使用的Filter的内容,例如表1中的Filter内容。相关信息如表9所示。
表9
  状态Status   出现Occurrence   格式Format   访问权限Access
  必须REQUIRED   一个One   字符型Chr   获取Get
所述DS MO记录Filter相关参数的形式为管理树结构形式,并位于客户端。该管理树内容会根据具体的Filter相关参数改变而发生变化。此外客户端也可以采用文件配置表来记录Filter相关参数,所述文件配置表与表1类似,服务器可以在收到Filter相关参数之后通知客户端将Filter相关参数信息记录到该表中,或在客户端收到了服务器发送的应用了Filter相关参数的同步数据后自动将该Filter相关参数信息记录到该表中,不同之处在于将客户端ID变成服务器ID。每当一次同步发生,服务器或客户端将更新上述信息,并在下一次同步过程中有选择地使用该信息。
步骤303:客户端与服务器进行数据的同步操作。
步骤304:客户端向服务器发送第二次同步请求,所述第二同步请求包含anchor信息。
所述anchor信息为同步锚点信息,用于指示上次成功完成的同步操作,它可以采用成功完成的同步数据ID表示,也可以采用同步发起时的时间表示。
步骤305:服务器收到所述第二同步请求后,判断客户端的同步anchor和服务器的同步anchor不匹配;服务器指示客户端发生同步失败。
步骤306:客户端根据服务器指示的Filter相关参数存放路径,读取自身DS MO或文件配置表中记录的Filter相关参数,发现上次与服务器的同步中使用了Filter相关参数,则客户端根据该Filter相关参数限定的数据与服务器进行同步。
步骤307:服务器与客户端更新数据。
需要说明的是,本实施例中,Filter相关参数被记录于客户端的DS MO或文件配置表中,本实施例中步骤306中描述的是:客户端根据服务器指示的Filter相关参数存放路径,读取自身DS MO或文件配置表中记录的Filter相关参数,并根据该Filter相关参数限定的数据与服务器进行同步。
可以理解的是,由于恢复性数据同步是双向的,在实际应用中,客户端同样可以向服务器发送该存储于客户端侧文件配置表中的Filter相关参数,或服务器直接读取DS MO中的Filter相关参数,由服务器根据该Filter相关参数限定的数据与客户端进行同步。
上述实施例是服务器指示客户端记录Filter相关参数,服务器和客户端根据记录的Filter相关参数要求发送数据进行同步操作,由于Filter相关参数中限定了需要进行同步的数据范围,所以客户端和服务器之间不会对客户端中所有的数据都进行同步,而只对Filter相关参数限定的一部分数据进行同步,因此能够减少同步的数据量,从而节约通信资源且减少同步时间。
为便于理解,下面以一个具体实例进行说明:
下表所示的为保存于服务器中的一张同步数据信息表:
表10
  类型   数据名称   相关信息   是否已经同步
  目录   Contacts   联系人信息   未
  数据   Alice   Business   未
  数据   Bob   Business   是
  数据   Chris   Personal   未
  数据   David   Personal   是
  数据   Edin   Family   是
  数据   Frank   Family   未
  目录   Calendar   日程信息   未
  数据   约会   Business   未
  ...   ...   ...   ...
需要说明的是,在客户端中同样保存一张类似的表,只是相对于表10而言,没有最后一列“是否已经同步”。
流程开始时,客户端与服务器发起同步操作,同步方向为服务器向客户端同步;
(1)客户端向服务器指定应使用的Filter,即向服务器发送包含Filter的第一同步请求;
在该Filter中可以指定需要进行同步的数据,本实施例中假设为需要同步“Contacts”联系人下“Business”分组中的数据以及“Personal”分组中的数据。
(2)服务器接收客户端发送的第一同步请求,并对该第一同步请求中的Filter相关参数进行存储;
本实施例中,假设服务器将该Filter相关参数存储于客户端的DS MO中,可以理解的是,在实际应用中,还可以将该Filter相关参数存储于客户端的文件配置表中,或由服务器存储在服务器侧的文件配置表中,本实施例仅以存储于客户端的DS MO中为例进行说明。
(3)服务器根据该Filter相关参数进行数据同步;
服务器保存Filter相关参数之后,获知需要同步“Business”分组中的数据以及“Personal”分组中的数据,根据查询表10可知,“Bob”和“David”的数据已经进行过同步,则此次同步只需要对“Alice”和“Chris”的数据进行同步,则服务器和客户端之间对这两个数据进行同步,具体同步的过程不作限定,可以为慢同步或指纹同步,也可以为其他类型的同步方式。
需要说明的是,由于网络和设备的不稳定性,或者其他外界原因,同步的过程可能会失败。
(4)客户端向服务器发起第二同步请求,该同步请求中携带anchor;
当客户端或服务器需要再次进行数据同步时,或执行周期性的数据同步时,客户端会再次向服务器发送第二同步请求。
(5)服务器判断上次数据同步是否失败,若失败,则进行恢复性数据同步;
服务器接收到第二同步请求之后,从该同步请求中读取anchor,并判断该anchor与之前第一同步后更新的anchor是否匹配,若不匹配,则确定上次数据同步失败,本实施例中,可以将anchor是否相同作为是否匹配的例子进行说明。
(6)执行恢复性数据同步过程。
服务器判断上次数据同步失败之后,则会与客户端之间执行恢复性数据同步,重新建立服务器与客户端间的同步关系。具体过程可以为:服务器指示客户端查询存储在DS MO中的Filter相关参数,并指示客户端根据该Filter相关参数向服务器发送相应的信息以判别需要进行同步的数据,则客户端查询Filter相关参数可知上次同步的数据为“Business”分组中的数据以及“Personal”分组中的数据,按照该Filter相关参数与服务器之间对这两个分组中的所有四个数据进行同步,而无需对客户端中存储的各种分组下的全部数据进行同步,因此能够减少同步的数据量,减少同步时间。
上述两个实施例中介绍了在同步失败的情况下如何进行恢复性同步的流程,在实际应用中,本发明实施例还可以适用于大数据库的同步中断续传,即断点传输技术。
结合本发明实施例的方法参阅图5,图5为本发明实施例提供的同步中断处理实施例的流程图。在此实施例中,服务器获取自身记录的Filter相关参数,利用Filter相关参数使得客户端采用断点续传的方式进行大数据库的同步时,无需每次都发送Filter相关参数。具体实施步骤如下:
步骤501:客户端向服务器发送同步请求,该同步请求中包含同步使用的Filter。
步骤502:服务器收到请求后,记录所述Filter的相关参数,并根据Filter相关参数进行同步操作。
步骤503:当数据同步满足中断条件时,同步发生中断。
所述中断条件可以由运营商或用户需要设置,包括时间长短、字段的大小、字符内容多少等。
步骤504,当同步发生中断时,客户端向服务器发送断点续传请求。
步骤505,服务器接收请求后,获取自身文件配置表记录的Filter相关参数,利用Filter相关参数获知同步的范围,在该范围内,对上次同步未完成的数据继续执行同步操作,进行断点续传。
上述本发明实施例提供的同步中断处理方法中,当出现中断续传请求时,服务器获取自身记录Filter相关参数,利用Filter相关参数进行断点续传,省去了客户端采用断点续传的方式进行大数据库的同步时,每次都要记录上次同步的情况以及发送Filter相关参数的步骤。
以上对本发明实施例的方法以及具体实施例进行了详细的介绍。下面结合本发明实施例的具体实施例详细介绍本发明实施例的系统和装置。
图6为本发明实施例提供的同步处理系统结构图,该系统包括客户端601和服务器602。其中,
客户端601,用于向服务器602发送第一同步请求,所述第一同步请求中包含Filter;
服务器602,用于接收第一同步请求进行同步操作并记录Filter的相关参数。
所述客户端601还用于发送第二同步请求,接收服务器602发送的Filter相关参数,将所述Filter相关参数限定的数据与服务器进行同步;
所述服务器602还用于接收第二同步请求,获取自身记录Filter相关参数并发送给客户端601,指示所述客户端将所述Filter相关参数限定的数据与服务器进行同步。
所述服务器602还用于判断同步是否失败,如果是,获取自身记录Filter相关参数并发送给客户端601。
结合图2实施例一流程图和图6所示系统,请一并参阅图7和图8,图7为本发明实施例提供的一种同步处理客户端结构图;图8为本发明实施例提供的一种同步处理服务器结构图。所述客户端包括:接收单元701、第一获取单元702,发送单元703以及同步单元704;所述服务器包括:接收单元801、记录单元802、第二获取单元803、判断单元804和同步执行单元805。
其中,客户端和服务器之间的同步处理过程如下:
客户端发送单元703向服务器发送包含Filter的第一同步请求;
服务器接收单元801接收客户端发送单元703发送的包含Filter的同步请求;
服务器记录单元802记录接收单元接收到的Filter相关参数;
第二获取单元获取802中的Filter相关参数,同步执行单元805执行第二获取单元获取802中的Filter相关参数对应的同步操作;
客户端发送单元703向服务器接收单元801发送第二同步请求;所述第二同步请求包含anchor信息;
服务器判断单元804根据第二同步请求anchor与自身保存的anchor比较是否匹配,如果否,则指示所述第二获取单元803将Filter相关参数发送给客户端,并指示同步失败;如果是,则同步执行单元805按照所述第二同步请求执行同步操作;
客户端接收单元701接收服务器第二获取单元803发送的Filter相关参数;
客户端第一获取单元702,获取接收单元701中的Filter相关参数;
客户端同步单元704,将所述Filter相关参数限定的数据与服务器进行同步。
以上结合本发明实施例的具体实施例一和对应的图6所示系统,详细介绍了实施例一的装置。下面再继续介绍本发明实施例具体实施例二所对应的系统和的装置。图9为本发明实施例提供的另一同步处理系统结构图,该另一种同步处理系统包括客户端901和服务器902。其中,
客户端901,用于向服务器902发送第一同步请求,根据服务器902指示记录所述第一同步请求中的Filter相关参数;;
服务器902,用于接收第一同步请求进行同步操作,将所述Filter相关参数记录于客户端901。
所述客户端901还用于向服务器902发送第二同步请求,获取所述记录的Filter相关参数,将记录的Filter相关参数限定的数据与服务器902进行同步;
所述服务器902还用于接收第二同步请求,指示客户端901将记录的Filter相关参数限定的数据与服务器902进行同步。
所述服务器902还用于判断同步是否失败,如果是,指示客户端Filter相关参数存放路径,客户端获取Filter相关参数并将Filter相关参数限定的数据与服务器进行同步。
结合图3本发明实施例二的流程图和图9所示系统,请一并参阅图10和图11,图10为本发明实施例提供的另一种同步处理客户端结构图;图11为本发明实施例提供的另一种同步处理服务器结构图。所述另一种同步处理客户端包括:接收单元101、第一获取单元102、发送单元103,记录单元104以及同步单元105;所述另一种同步处理服务器包括:接收单元111,第二获取单元112、判断单元113和同步执行单元114。
其中,客户端和服务器之间的同步处理过程如下:
客户端发送单元103向服务器发送包含Filter的第一同步请求;
服务器接收单元111接收客户端发送单元103发送的包含Filter的同步请求;
服务器第二获取单元112指示客户端记录所述Filter相关参数;
客户端接收单元101接收所述第二获取单元112指示,告知记录单元104记录所述Filter相关参数;
第二获取单元112获取接收单元111中的Filter相关参数,同步执行单元114执行第二获取单元112中的Filter相关参数对应的同步操作;
客户端发送单元103向服务器接收单元111发送第二同步请求;所述第二同步请求包含anchor信息;
服务器判断单元113根据第二同步请求anchor与自身保存的anchor比较是否匹配,如果否,则通过所述第二获取单元112指示客户端Filter相关参数的存放路径,告知客户端将所述Filter相关参数限定的数据与服务器进行同步,并指示同步失败;如果是,则同步执行单元114按照所述第二同步请求执行同步操作;
客户端接收单元101接收服务器第二获取单元112发送的指示;
客户端第一获取单元102,获取记录单元104中的Filter相关参数;
客户端同步单元105,将Filter相关参数限定的数据与服务器进行同步。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过如下程序来指令相关的硬件来完成:
接收第一同步请求,所述第一同步请求中包含Filter,所述Filter用于限定需要同步的数据;记录所述第一同步请求中Filter的相关参数;根据所述Filter相关参数进行数据同步。
该程序可以存储于一计算机可读存储介质中,存储介质可以包括:ROM、RAM、磁盘或光盘等。
以上对本发明实施例所提供的同步处理方法、系统和装置进行了详细介绍,本文中应用了具体的实施例对本发明实施例的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明实施例的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明实施例的限制。

Claims (11)

1.一种同步处理方法,其特征在于,包括:
接收第一同步请求,所述第一同步请求中包含过滤器Filter相关参数,所述Filter相关参数用于限定需要同步的数据;
记录所述第一同步请求中Filter相关参数;
根据所述Filter相关参数进行数据同步;
接收第二同步请求;
判断上次同步是否失败,如果是,则获取所述记录的Filter相关参数并执行所述的根据所述Filter相关参数进行数据同步的步骤。
2.根据权利要求1所述方法,其特征在于,所述判断上次同步是否失败的步骤包括:
服务器判断自身保存的第一次同步完成后同步锚点anchor与客户端发送的第二同步请求中的anchor是否匹配,如果否,则确定上次同步失败。
3.根据权利要求1所述方法,其特征在于,所述接收第二同步请求的步骤之后包括:
判断上次同步是否满足预置的续传条件,如果是,则服务器获取所述记录的Filter相关参数,利用Filter相关参数进行断点续传。
4.根据权利要求1或3所述方法,其特征在于,所述记录所述第一同步请求中Filter相关参数的步骤包括:
服务器将所述Filter相关参数记录于自身文件配置表;
服务器将所述Filter相关参数记录于客户端的数据同步管理对象DS MO或客户端中的文件配置表;
客户端自身保存Filter相关参数到DS MO或文件配置表中。
5.根据权利要求4所述方法,其特征在于,所述获取所述记录的Filter相关参数,执行与所述的根据所述Filter相关参数进行数据同步的步骤包括:
服务器或客户端中的一方获取记录的Filter相关参数,将所述Filter相关参数发送给另一方;
服务器以及客户端根据所述Filter相关参数进行数据同步。
6.根据权利要求1所述的方法,其特征在于,所述Filter相关参数包括:
数据库或数据库目录,用于表示同步的数据库或数据库目录的名称或标识;
同步方向,用于表示同步使用的Filter方向是由客户端发送Filter给服务器,还是由服务器发送Filter给客户端;
过滤器信息Filter,用于记录同步中使用的Filter的内容。
7.一种同步处理系统,其特征在于,包括:
客户端,用于向服务器发送第一同步请求,并根据服务器的指示记录所述第一同步请求中的Filter的相关参数;
服务器,用于接收第一同步请求进行同步操作,并指示客户端记录所述第一同步请求包含的Filter相关参数。
8.根据权利要求7所述的系统,其特征在于,
所述客户端还用于向服务器发送第二同步请求,并根据所述服务器指示的Filter相关参数存放路径获取所述记录的Filter相关参数,将所述Filter相关参数限定的数据与服务器进行同步;
所述服务器还用于接收第二同步请求,并判断上次同步是否失败,如果是,则指示客户端Filter相关参数存放路径。
9.一种同步处理客户端,其特征在于,包括:
发送单元,用于向服务器发送第一同步请求;
接收单元,用于接收服务器的指示;
记录单元,用于根据所述接收单元接收的指示记录第一同步请求中的Filter的相关参数;
第一获取单元,获取所述记录单元记录的Filter相关参数;
同步单元,用于将Filter相关参数限定的数据与服务器进行同步。
10.一种同步处理服务器,其特征在于,包括:
接收单元,用于接收客户端发送的第一同步请求;
第二获取单元,用于获取第一同步请求中的Filter相关参数,将所述Filter的相关参数记录在自身或记录在客户端中;所述Filter相关参数用于限定需要同步的数据;
同步执行单元,用于将所述Filter相关参数限定的数据与所述客户端进行同步;
所述接收单元,还用于接收所述客户端发送的第二同步请求;
判断单元,用于根据服务器同步的锚点anchor与所述第二同步请求包含的anchor判断上次同步是否失败,如果是,则通过第二获取单元指示所述客户端将Filter相关参数限定的数据与服务器进行同步。
11.一种同步处理系统,其特征在于,包括:
客户端,用于向服务器发送第一同步请求,所述第一同步请求中包含Filter相关参数,所述Filter相关参数用于限定需要同步的数据;
服务器,用于接收所述客户端发送的第一同步请求进行同步操作并记录所述Filter相关参数;
所述客户端还用于向所述服务器发送第二同步请求;
所述服务器还用于接收所述客户端发送的第二同步请求,判断上次同步是否失败,如果是,则获取自身记录的Filter相关参数并发送给客户端,指示所述客户端将所述Filter相关参数限定的数据与服务器进行同步。
CN2008101269787A 2008-06-20 2008-06-20 一种同步处理方法、系统和装置 Active CN101610225B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008101269787A CN101610225B (zh) 2008-06-20 2008-06-20 一种同步处理方法、系统和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008101269787A CN101610225B (zh) 2008-06-20 2008-06-20 一种同步处理方法、系统和装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201210009123.2A Division CN102594874B (zh) 2008-06-20 2008-06-20 一种同步处理方法和装置

Publications (2)

Publication Number Publication Date
CN101610225A CN101610225A (zh) 2009-12-23
CN101610225B true CN101610225B (zh) 2012-01-25

Family

ID=41483815

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008101269787A Active CN101610225B (zh) 2008-06-20 2008-06-20 一种同步处理方法、系统和装置

Country Status (1)

Country Link
CN (1) CN101610225B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105187472A (zh) * 2015-06-02 2015-12-23 小米科技有限责任公司 数据同步方法及装置
CN106202387B (zh) * 2016-07-08 2019-05-21 苏州超块链信息科技有限公司 一种数据一致性并行维护方法
CN106547485B (zh) * 2016-10-20 2020-09-08 Oppo广东移动通信有限公司 数据迁移方法及装置
CN109660584A (zh) * 2017-10-12 2019-04-19 阿里巴巴集团控股有限公司 一种客户端与服务器建立长连接的方法及通信方法与通信系统
CN112711630B (zh) * 2019-10-24 2024-05-17 阿里巴巴集团控股有限公司 数据同步方法、分布式缓存节点及系统、可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1472911A (zh) * 2002-07-31 2004-02-04 鸿富锦精密工业(深圳)有限公司 无线设备同步系统及方法
CN1794724A (zh) * 2005-10-27 2006-06-28 华为技术有限公司 在SyncML层实现数据同步的方法
CN1852309A (zh) * 2005-11-16 2006-10-25 华为技术有限公司 数据同步处理方法及其客户端
CN1956452A (zh) * 2005-10-27 2007-05-02 华为技术有限公司 一种实现数据同步的方法、系统、客户端及服务器

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1472911A (zh) * 2002-07-31 2004-02-04 鸿富锦精密工业(深圳)有限公司 无线设备同步系统及方法
CN1794724A (zh) * 2005-10-27 2006-06-28 华为技术有限公司 在SyncML层实现数据同步的方法
CN1956452A (zh) * 2005-10-27 2007-05-02 华为技术有限公司 一种实现数据同步的方法、系统、客户端及服务器
CN1852309A (zh) * 2005-11-16 2006-10-25 华为技术有限公司 数据同步处理方法及其客户端

Also Published As

Publication number Publication date
CN101610225A (zh) 2009-12-23

Similar Documents

Publication Publication Date Title
US8171171B2 (en) Data synchronization method and system between devices
US6721871B2 (en) Method and apparatus for synchronizing data stores with respect to changes in folders
CN107861686B (zh) 文件存储方法、服务端和计算机可读存储介质
US6996583B2 (en) Real-time database update transaction with disconnected relational database clients
JP4829316B2 (ja) 中断された同期プロセスに対処してデータを同期させる方法、装置、システム
US7404011B2 (en) System and method for accessing different types of back end data stores
US6694335B1 (en) Method, computer readable medium, and system for monitoring the state of a collection of resources
CN101409614B (zh) 一种数据同步方法、系统和设备
CN1656480B (zh) 允许同步具备不同能力的不同设备中的数据的方法和设备
CN101167069B (zh) 文件对等同步的系统和方法
US20070255763A1 (en) Database replication method and system
CN106156359A (zh) 一种云计算平台下的数据同步更新方法
CN101009516A (zh) 一种进行数据同步的方法及系统
KR101545626B1 (ko) Dds-db 연동 시스템
US7860827B1 (en) Data synchronization method for an application database available on multiple wirelessly connected platforms
CN100472523C (zh) 使用设备数据模式同步服务器和设备数据
CN101610225B (zh) 一种同步处理方法、系统和装置
CN102594874A (zh) 一种同步处理方法和装置
WO2012013008A1 (zh) 管理终端数据记录的方法及装置
KR20050031466A (ko) 인터럽트된 동기화 프로세스의 처리를 제공하는 데이터를동기화하는 방법, 장치 및 시스템
CN101778131A (zh) 数据同步系统
CN110830580A (zh) 一种存储数据同步方法及装置
US20050246395A1 (en) Databases synchronization
CN114928620B (zh) 用户信息同步方法、装置、设备、存储介质和程序产品
CN115562849A (zh) 一种基于高可用的缓存数据方法及系统

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