数据同步方法及设备的制作方法
【专利摘要】本发明实施例提供了一种数据同步方法及设备。一种方法包括:接收来自请求设备的数据同步请求;确定本地与所述数据同步请求匹配的至少一个第一数据;根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送时延;根据所述至少一个第一数据各自对应的发送时延,发送所述至少一个第一数据。本发明实施例提供了一种数据同步方案。
【专利说明】数据同步方法及设备
【技术领域】
[0001]本发明实施例涉及设备间交互【技术领域】,尤其涉及一种数据同步方法及设备。
【背景技术】
[0002]随着技术的进步和市场的不断成熟,人均拥有的智能设备数不断增加,其中包括:移动设备、可穿戴设备、智能家居设备等。在用户跨设备进行工作或娱乐的过程中,数据的同步是一类较为普遍的需求。一个典型的例子:用户在两台不同的设备上均操作过同一文档,当其再使用第三台设备操作该文档时,需要向其他设备获取之前的操作记录,以便选择最近的操作记录并继续操作。
[0003]事实上,无线广播是适用于上述应用场景的一类高效解决方案,也就是说,第三台设备可通过广播请求的方式获取前两个设备上的数据,但这里需要解决的一个问题是多个设备同时回复时产生的冲突。
【发明内容】
[0004]有鉴于此,本发明实施例的一个目的在于一种数据同步方案。
[0005]为实现上述目的,根据本发明实施例的一个方面,提供一种数据同步方法,包括:
[0006]接收来自请求设备的数据同步请求;
[0007]确定本地与所述数据同步请求匹配的至少一个第一数据;
[0008]根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送时延;
[0009]根据所述至少一个第一数据各自对应的发送时延,发送所述至少一个第一数据。
[0010]为实现上述目的,根据本发明实施例的又一个方面,提供一种数据同步方法,包括:
[0011]接收来自请求设备的数据同步请求;
[0012]确定本地与所述数据同步请求匹配的至少一个第一数据;
[0013]根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送信道;
[0014]在所述至少一个第一数据各自对应的发送信道上,发送所述至少一个第一数据。
[0015]为实现上述目的,根据本发明实施例的又一个方面,提供一种用户设备,包括:
[0016]接收模块,用于接收来自请求设备的数据同步请求;
[0017]数据确定模块,用于确定所述用户设备本地与所述数据同步请求匹配的至少一个
第一数据;
[0018]时延确定模块,用于根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送时延;
[0019]发送模块,用于根据所述至少一个第一数据各自对应的发送时延,发送所述至少
一个第一数据。[0020]为实现上述目的,根据本发明实施例的又一个方面,提供一种用户设备,包括:
[0021]接收模块,用于接收来自请求设备的数据同步请求;
[0022]数据确定模块,用于确定所述用户设备本地与所述数据同步请求匹配的至少一个
第一数据;
[0023]信道确定模块,用于根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送信道;
[0024]发送模块,用于在所述至少一个第一数据各自对应的发送信道上,发送所述至少
一个第一数据。
[0025]以上多个技术方案中的至少一个技术方案具有如下有益效果:
[0026]本发明实施例通过接收来自请求设备的数据同步请求,确定本地与所述数据同步请求匹配的至少一个第一数据,根据所述至少一个第一数据各自的更新时间确定所述至少一个第一数据各自对应的发送时延,根据所述至少一个第一数据各自对应的发送时延发送所述至少一个第一数据,提供了一种数据同步方案,且由于根据数据的更新时间确定其发送时延,可以错开同一设备的多个数据的发送以及不同设备的多个数据的发送,一定程度上减轻了冲突。
【专利附图】
【附图说明】
[0027]图1为本发明提供的一种数据同步方法实施例一的流程图;
[0028]图2为本发明提供的一种数据同步方法实施例二的流程图;
[0029]图3a为本发明提供的一种用户设备实施例一的结构图;
[0030]图3b、图3c分别为图3a所示实施例的一种实现方式的结构图;
[0031]图4为本发明提供的一种用户设备实施例二的结构图;
[0032]图5为本发明提供的一种用户设备实施例三的结构图;
[0033]图6为本发明提供的一种用户设备实施例四的结构图。
【具体实施方式】
[0034]下面结合附图和实施例,对本发明的【具体实施方式】作进一步详细说明。以下实施例用于说明本发明,但不用来限制本发明的范围。
[0035]图1为本发明提供的一种数据同步方法实施例一的流程图。如图1所示,本实施例包括:
[0036]101、接收来自请求设备的数据同步请求。
[0037]举例来说,一用户设备接收来自请求设备的数据同步请求。其中,所述请求设备可以是用户正在使用的另一用户设备,可选地,基于用户的操作,请求设备欲获取其他用户设备上的数据,相应地,请求设备发出数据同步请求。为了方便描述,将本实施例的执行主体称为本地用户设备。可选地,所述数据同步请求是所述请求设备在无线局域网中广播的,其中,所述无线局域网可以采用以下至少一种无线技术:蓝牙、WiF1、Zigbee。
[0038]在一种可选的实现方式中,所述数据同步请求包括:数据描述。其中,所述数据描述用于描述所述请求设备预获取的数据,所述请求设备预获取的数据可以是文件本身,或是文件的操作记录。[0039]可选地,所述数据同步请求是针对某个文件的,相应地,所述数据描述包括文件标识,进一步地,当所述请求设备预获取文件的操作记录时,所述数据描述还可以包括操作类型,所述操作类型包括以下至少一种:编辑、观看等。
[0040]可选地,所述数据同步请求是针对某种类型的文件的,相应地,所述数据描述包括文件类型,进一步地,当所述请求设备预获取文件的操作记录时,所述数据描述还可以包括操作类型,所述操作类型包括以下至少一种:编辑、观看等。其中,文件类型包括以下至少一种:音频、视频、网页、文档等。
[0041]102、确定本地与所述数据同步请求匹配的至少一个第一数据。
[0042]在上述数据同步请求包括数据描述的实现方式中,可选地,所述确定本地与所述数据同步请求匹配的至少一个第一数据,包括:
[0043]确定本地与所述数据描述匹配的至少一个第一数据。
[0044]举例来说,当所述数据描述仅包括一文件标识“A.doc”,确定本地的文件名为“A.doc”的文档与所述数据描述匹配;当所述数据描述包括一文件标识“B.rmvb”和操作类型“观看”,确定本地的文件名为“B.rmvb”的视频的观看记录与所述数据描述匹配。
[0045]103、根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送时延。
[0046]本实施例中,更新时间通常指最近更新时间,第一数据的更新时间指所述第一数据最近一次被更新的时间。
[0047]在一种可选的实现方式中,所述数据同步请求还包括:更新时间与发送时延的第
一对应关系。
[0048]可选地,所述根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送时延,包括:
[0049]根据所述第一对应关系和所述至少一个第一数据各自的更新时间,确定至少一个第一数据各自对应的发送时延。
[0050]具体地,在所述第一对应关系中,不同的更新时间对应不同的发送时延,或者,在一定范围内的更新时间对应相同的发送时延且不同范围内的更新时间对应不同的发送时延。举例来说,2013年12月的更新时间对应的发送时延为10毫秒(ms),2014年I月的更新时间对应的发送时延为5ms,相应地,更新时间在2013年12月的第一数据对应的发送时延为10ms,更新时间在2014年I月的第一数据对应的发送时延为5ms。
[0051]可选地,所述第一对应关系为一哈希函数,该哈希函数可以将一更新时间映射到一个设定的时延范围中的某个时延值,该时延范围举例来说可以是O?10ms。
[0052]在又一种可选的实现方式中,所述数据同步请求还包括:请求时间、时间间隔与发送时延的第二对应关系。
[0053]其中,所述请求时间可以为所述请求设备发出所述数据同步请求的时间。
[0054]可选地,所述根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送时延,包括:
[0055]根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自的更新时间与所述请求时间的时间间隔;
[0056]根据所述第二对应关系和所述至少一个第一数据各自的更新时间与所述请求时间的时间间隔,确定所述至少一个第一数据各自对应的发送时延。
[0057]具体地,在所述第二对应关系中,不同的时间间隔对应不同的发送时延,或者,在一定范围内的时间间隔对应相同的发送时延且不同范围内的时间间隔对应不同的发送时延。举例来说,I天内的时间间隔对应的发送时延为10ms,I?2天的时间间隔对应的发送时延为5ms,相应地,若请求时间为2014年I月10日上午10点半,则更新时间在2014年I月9日上午10点半到2014年I月10日上午10点半范围内的第一数据对应的发送时延为10ms,更新时间在2014年I月8日上午10点半到2014年I月9日上午10点半范围内的第一数据对应的发送时延为5ms。
[0058]可选地,所述第二对应关系为一哈希函数,该哈希函数可以将一时间间隔映射到一个设定的时延范围中的某个时延值,该时延范围举例来说可以是O?10ms。
[0059]在又一种可选的实现方式中,所述时间间隔与发送时延的第二对应关系预设在本地用户设备中,所述数据同步请求还包括:请求时间。类似地,本地用户设备可以参照上一实现方式确定所述至少一个第一数据各自对应的发送时延。
[0060]在又一种可选的实现方式中,所述时间间隔与发送时延的第二对应关系预设在本地用户设备中,且本地用户设备将接收到所述数据同步请求的时间作为请求时间,并参照上一实现方式确定所述至少一个第一数据各自对应的发送时延。
[0061]在上述任一实现方式中,可选地,更新时间越晚的第一数据对应的发送时延越短,即,越晚的更新时间对应的发送时延越短或越短的时间间隔对应的发送时延越短。相应地,所述请求设备可以更早地接收到更新时间较晚即较新的数据,用户体验可能更好一些。
[0062]104、根据所述至少一个第一数据各自对应的发送时延,发送所述至少一个第一数据。
[0063]举例来说,若一第一数据的发送时延为2ms,则从当前时刻起算到达2ms时发送所述第一数据,其中,当前时刻可以是所述本地用户设备准备好了发送所述至少一个第一数据的时刻。
[0064]其中,所述发送的方式可以有多种,具体地,发送可以是针对所述请求设备的定向发送,或是,在一定范围内以广播的方式发送。
[0065]可选地,所述发送所述至少一个第一数据,包括:
[0066]在无线局域网中广播所述至少一个第一数据。
[0067]其中,所述无线局域网可以采用以下至少一种无线技术:蓝牙、WiF1、Zigbee。
[0068]由于不同的用户设备上的第一数据的更新时间很可能不同,尤其是在这些用户设备均为同一用户使用的场景下,并且,同一用户设备上不同的第一数据的更新时间也很可能不同,因此,可以通过不同的发送时延将多个用户设备上的第一数据以及同一用户设备上的多个第一数据的发送错开,在此基础上,进一步地,还可以通过不同的信道将多个用户设备上的第一数据以及同一用户设备上的多个第一数据的发送错开。
[0069]在一种可选的实现方式中,所述数据请求还包括:更新时间与发送信道的第三对应关系。
[0070]可选地,所述方法还包括:
[0071]根据所述第三对应关系和所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送信道;[0072]所述根据所述至少一个第一数据各自对应的发送时延,发送所述至少一个第一数据,包括:
[0073]在所述至少一个第一数据各自对应的发送信道上,根据所述至少一个第一数据各自对应的发送时延发送所述至少一个第一数据。
[0074]具体地,在所述第三对应关系中,不同的更新时间对应不同的发送信道,或者,在一定范围内的更新时间对应相同的发送信道且不同范围内的更新时间对应不同的发送信道。举例来说,2013年12月的更新时间对应的发送信道为信道I,2014年I月的更新时间对应的发送信道为信道2,相应地,更新时间在2013年12月的第一数据对应的发送信道为信道1,更新时间在2014年I月的第一数据对应的发送信道为信道2。
[0075]在又一种可选的实现方式中,所述数据请求还包括:请求时间,时间间隔与发送信道的第四对应关系。
[0076]其中,所述请求时间可以为所述请求设备发出所述数据同步请求的时间。
[0077]可选地,所述方法还包括:
[0078]根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自的更新时间与所述请求时间的时间间隔;
[0079]根据所述第四对应关系和所述至少一个第一数据各自的更新时间与所述请求时间的时间间隔,确定所述至少一个第一数据各自对应的发送信道;
[0080]所述根据所述至少一个第一数据各自对应的发送时延,发送所述至少一个第一数据,包括:
[0081]在所述至少一个第一数据各自对应的发送信道上,根据所述至少一个第一数据各自对应的发送时延发送所述至少一个第一数据。
[0082]具体地,在所述第四对应关系中,不同的时间间隔对应不同的发送信道,或者,在一定范围内的时间间隔对应相同的发送信道且不同范围内的时间间隔对应不同的发送信道。举例来说,I天内的时间间隔对应的发送信道为信道1,I?2天的时间间隔对应的发送信道为信道2,相应地,若请求时间为2014年I月10日上午10点半,则更新时间在2014年I月9日上午10点半到2014年I月10日上午10点半范围内的第一数据对应的发送信道为信道I,更新时间在2014年I月8日上午10点半到2014年I月9日上午10点半范围内的第一数据对应的发送信道为信道2。
[0083]在又一种可选的实现方式中,所述时间间隔与发送信道的第四对应关系预设在本地用户设备中,所述数据同步请求还包括:请求时间。类似地,本地用户设备可以参照上一实现方式确定所述至少一个第一数据各自对应的发送信道。
[0084]在又一种可选的实现方式中,所述时间间隔与发送信道的第四对应关系预设在本地用户设备中,且本地用户设备将接收到所述数据同步请求的时间作为请求时间,并参照上一实现方式确定所述至少一个第一数据各自对应的发送信道。
[0085]在综合考虑发送时延和发送信道的实现方式中,一种可能的场景是,所述数据同步请求还包括:所述第一对应关系和所述第三对应关系。又一种可能的场景是,所述数据同步请求还包括:所述请求时间、所述第二对应关系和所述第三对应关系。又一种可能的场景是,所述数据同步请求还包括:所述请求时间、所述第一对应关系和所述第四对应关系。又一种可能的场景是,所述数据同步请求还包括:所述请求时间、所述第二对应关系和所述第四对应关系。需要说明的是,上述各对应关系也可以不包含在所述数据同步请求中,而是预设在本地用户设备中,和/或,上述请求时间也可以不包含在所述数据同步请求中,而是由本地用户设备将接收到所述数据同步请求的时间作为请求时间。另外,若需以广播的方式发送第一数据,则将广播信道设定为第三对应关系或第四对应关系中的发送信道即可。
[0086]在一种可选的实现方式中,本地用户设备还可以接收其它设备的数据,并判断是否更新或删除本地的数据。相应地,所述方法还包括:
[0087]接收来自其它设备的一第二数据;
[0088]若本地存在与所述第二数据对应的且更新时间与所述第二数据的更新时间不同的至少一个第三数据,则更新或删除本地的所述至少一个第三数据。
[0089]其中,第三数据与第二数据对应是指,当所述第三数据、所述第二数据均为一文件时,所述第三数据的文件标识与所述第二数据的文件标识相同,当所述第三数据、所述第二数据均为一文件的操作记录时,所述第三数据对应的文件的文件标识与所述第二数据对应的文件的文件标识相同。
[0090]通常,数据的更新时间基于该数据得到。举例来说,本地用户设备本地存在一文件“A.doc”,其更新时间为2013年12月30日20:02,当本地用户设备接收到来自其它设备的一第二数据,所述第二数据为文件“A.doc”且其更新时间为2014年I月3日10:12或2013年12月25日16:08,则所述本地用户设备本地的文件“A.doc”为所述第三数据,相应地,本地用户设备可以根据用户策略选择将所述第三数据删除,或者,将所述第三数据更新为所述第二数据,或者,在本地保存所述第二数据,或者,不进行任何操作。
[0091]具体地,在针对请求设备的数据同步请求,除所述请求设备之外的各用户设备均采用广播地方式响应数据时,包括所述请求设备在内的各用户设备均可能收到其它用户设备发送的数据,相应地,均可以按照上述实现方式判断是否更新或删除本地的数据。
[0092]在一种可选的场景中,局域网内的所有用户设备均可以执行本实施例,可选地,根据相同的第一对应关系或相同的第二对应关系确定发送时延,进一步地,根据相同的第三对应关系或相同的第四对应关系确定发送信道,如此,请求设备在发出数据同步请求后,接收到各其它设备响应该数据同步请求的数据的时间和该数据的更新时间之间的规律是基本一致的。
[0093]举例来说,在本实施例的一种应用场景中,用户张三回到家里,打开智能电视,选择视频A,智能电视作为请求设备在无线局域网中数据同步请求,所述数据同步请求用于请求视频A的观看记录,此时,与所述智能电视处于同一无线局域网的设备有:张三的手机、张三的PAD,这两个设备均执行本实施例的方法,比如,张三的手机上视频A的观看记录表明观看到20分10秒且其更新时间为2014年I月20日上午8:30,张三的手机确定该观看记录的发送时延为IOms,并在IOms后发送该观看记录,同时,张三的PAD上视频A的观看记录表明观看到30分20秒且其更新时间为2014年I月21日下午10:30,张三的PAD确定该观看记录的发送时延为5ms,并在5ms后发送该观看记录,相应地,智能电视依次接收到来自PAD的观看记录和来自手机的观看记录,并展示给用户张三,用户张三可以依此选择从该视频A的30分20秒开始播放。在本实施例的又一种应用场景中,用户张三回到家里,打开笔记本电脑,选择文档B,笔记本电脑作为请求设备在无线局域网中数据同步请求,所述数据同步请求用于文档B,此时,与所述笔记本电脑处于同一无线局域网的设备有:张三的手机、张三的PAD,这两个设备均执行本实施例的方法,比如,张三的手机上文档B的更新时间为2014年I月20日上午8:30,张三的手机确定该文档B的发送时延为10ms,并在IOms后发送该文档B,同时,张三的PAD上文档B的更新时间为2014年I月21日下午10:30,张三的PAD确定该文档B的发送时延为5ms,并在5ms后发送该文档B,相应地,笔记本电脑依次接收到来自PAD的文档B和来自手机的文档B,并展示给用户张三,用户张三可以依此选择浏览来自PAD的文档B,或,在来自PAD的文档B的基础上继续编辑文档B。
[0094]本实施例通过接收来自请求设备的数据同步请求,确定本地与所述数据同步请求匹配的至少一个第一数据,根据所述至少一个第一数据各自的更新时间确定所述至少一个第一数据各自对应的发送时延,根据所述至少一个第一数据各自对应的发送时延发送所述至少一个第一数据,提供了一种数据同步方案,且由于根据数据的更新时间确定其发送时延,可以错开同一设备的多个数据的发送以及不同设备的多个数据的发送,一定程度上减轻了冲突。
[0095]图2为本发明提供的一种数据同步方法实施例二的流程图。如图2所示,本实施例包括:
[0096]201、接收来自请求设备的数据同步请求。
[0097]举例来说,一用户设备接收来自请求设备的数据同步请求。其中,所述请求设备可以是用户正在使用的另一用户设备,可选地,基于用户的操作,请求设备欲获取其他用户设备上的数据,相应地,请求设备发出数据同步请求。为了方便描述,将本实施例的执行主体称为本地用户设备。可选地,所述数据同步请求是所述请求设备在无线局域网中广播的,其中,所述无线局域网可以采用以下至少一种无线技术:蓝牙、WiF1、Zigbee。
[0098]在一种可选的实现方式中,所述数据同步请求包括:数据描述。其中,所述数据描述用于描述所述请求设备预获取的数据,所述请求设备预获取的数据可以是文件本身,或是文件的操作记录。
[0099]可选地,所述数据同步请求是针对某个文件的,相应地,所述数据描述包括文件标识,进一步地,当所述请求设备预获取文件的操作记录时,所述数据描述还可以包括操作类型,所述操作类型包括以下至少一种:编辑、观看等。
[0100]可选地,所述数据同步请求是针对某种类型的文件,相应地,所述数据描述包括文件类型,进一步地,当所述请求设备预获取文件的操作记录时,所述数据描述还可以包括操作类型,所述操作类型包括以下至少一种:编辑、观看等。其中,文件类型包括以下至少一种:音频、视频、网页、文档等。
[0101]202、确定本地与所述数据同步请求匹配的至少一个第一数据。
[0102]在上述数据同步请求包括数据描述的实现方式中,可选地,所述确定本地与所述数据同步请求匹配的至少一个第一数据,包括:
[0103]确定本地与所述数据描述匹配的至少一个第一数据。
[0104]举例来说,当所述数据描述仅包括一文件标识“A.doc",确定本地的文件名为“A.doc”的文档与所述数据描述匹配;当所述数据描述包括一文件标识“B.rmvb”和操作类型“观看”,确定本地的文件名为“B.rmvb”的视频的观看记录与所述数据描述匹配。
[0105]203、根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送信道。[0106]本实施例中,更新时间通常指最近更新时间,第一数据的更新时间指所述第一数据最近一次被更新的时间。
[0107]在一种可选的实现方式中,所述数据同步请求还包括:更新时间与发送信道的第
一对应关系。
[0108]可选地,所述根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送信道,包括:
[0109]根据所述第一对应关系和所述至少一个第一数据各自的更新时间,确定至少一个第一数据各自对应的发送信道。
[0110]具体地,在所述第一对应关系中,不同的更新时间对应不同的发送信道,或者,在一定范围内的更新时间对应相同的发送信道且不同范围内的更新时间对应不同的发送信道。举例来说,2013年12月的更新时间对应的发送信道为信道I,2014年I月的更新时间对应的发送信道为信道2,相应地,更新时间在2013年12月的第一数据对应的发送信道为信道1,更新时间在2014年I月的第一数据对应的发送信道为信道2。
[0111]在又一种可选的实现方式中,所述数据同步请求还包括:请求时间、时间间隔与发送信道的第二对应关系。
[0112]其中,所述请求时间可以为所述请求设备发出所述数据同步请求的时间。
[0113]可选地,所述根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送信道,包括:
[0114]根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自的更新时间与所述请求时间的时间间隔;
[0115]根据所述第二对应关系和所述至少一个第一数据各自的更新时间与所述请求时间的时间间隔,确定所述至少一个第一数据各自对应的发送信道。
[0116]具体地,在所述第二对应关系中,不同的时间间隔对应不同的发送信道,或者,在一定范围内的时间间隔对应相同的发送信道且不同范围内的时间间隔对应不同的发送信道。举例来说,I天内的时间间隔对应的发送信道为信道1,I?2天的时间间隔对应的发送信道为信道2,相应地,若请求时间为2014年I月10日上午10点半,则更新时间在2014年I月9日上午10点半到2014年I月10日上午10点半范围内的第一数据对应的发送信道为信道I,更新时间在2014年I月8日上午10点半到2014年I月9日上午10点半范围内的第一数据对应的发送信道为信道2。
[0117]在又一种可选的实现方式中,所述时间间隔与发送信道的第二对应关系预设在本地用户设备中,所述数据同步请求还包括:请求时间。类似地,本地用户设备可以参照上一实现方式确定所述至少一个第一数据各自对应的发送信道。
[0118]在又一种可选的实现方式中,所述时间间隔与发送信道的第二对应关系预设在本地用户设备中,且本地用户设备将接收到所述数据同步请求的时间作为请求时间,并参照上一实现方式确定所述至少一个第一数据各自对应的发送信道。
[0119]204、在所述至少一个第一数据各自对应的发送信道上,发送所述至少一个第一数据。
[0120]其中,所述发送的方式可以有多种,具体地,发送可以是针对所述请求设备的定向发送,或是,在一定范围内以广播的方式发送。[0121]可选地,所述至少一个第一数据各自对应的发送信道为无线局域网中的广播信道。其中,所述无线局域网可以采用以下至少一种无线技术:蓝牙、WiF1、Zigbee。
[0122]以低功耗蓝牙(BluetoothLowEnergy,简称BLE)为例,可用的广播信道集合包括37、38、39三个广播信道。
[0123]由于不同的用户设备上的第一数据的更新时间很可能不同,尤其是在这些用户设备均为同一用户使用的场景下,并且,同一用户设备上不同的第一数据的更新时间也很可能不同,因此,可以通过不同的发送信道将多个用户设备上的第一数据以及同一用户设备上的多个第一数据的发送错开。
[0124]在一种可选的实现方式中,本地用户设备还可以接收其它设备的数据,并判断是否更新或删除本地的数据。相应地,所述方法还包括:
[0125]接收来自其它设备的一第二数据;
[0126]若本地存在与所述第二数据对应的且更新时间与所述第二数据的更新时间不同的至少一个第三数据,则更新或删除本地的所述至少一个第三数据。
[0127]其中,第三数据与第二数据对应是指,当所述第三数据、所述第二数据均为一文件时,所述第三数据的文件标识与所述第二数据的文件标识相同,当所述第三数据、所述第二数据均为一文件的操作记录时,所述第三数据对应的文件的文件标识与所述第二数据对应的文件的文件标识相同。
[0128]通常,数据的更新时间基于该数据得到。举例来说,本地用户设备本地存在一文件“A.doc”,其更新时间为2013年12月30日20:02,当本地用户设备接收到来自其它设备的一第二数据,所述第二数据为文件“A.doc”且其更新时间为2014年I月3日10:12或2013年12月25日16:08,则所述本地用户设备本地的文件“A.doc”为所述第三数据,相应地,本地用户设备可以根据用户策略选择将所述第三数据删除,或者,将所述第三数据更新为所述第二数据,或者,在本地保存所述第二数据,或者,不进行任何操作。
[0129]需要说明的是,当本地用户设备拥有多天线时,本地用户设备可同时在多个信道上接收数据和发送数据或数据同步请求。
[0130]具体地,在针对请求设备的数据同步请求,除所述请求设备之外的各用户设备均采用广播地方式响应数据时,包括所述请求设备在内的各用户设备均可能收到其它用户设备发送的数据,相应地,均可以按照上述实现方式判断是否更新或删除本地的数据。
[0131]在一种可选的场景中,局域网内的所有用户设备均可以执行本实施例,可选地,根据相同的第一对应关系或相同的第二对应关系确定发送信道,如此,请求设备在发出数据同步请求后,接收到各其它设备响应该数据同步请求的数据的信道和该数据的更新时间之间的规律是基本一致的。
[0132]举例来说,在本实施例的一种应用场景中,用户张三回到家里,打开智能电视,选择视频A,智能电视作为请求设备在无线局域网中数据同步请求,所述数据同步请求用于请求视频A的观看记录,此时,与所述智能电视处于同一无线局域网的设备有:张三的手机、张三的PAD,这两个设备均执行本实施例的方法,比如,张三的手机上视频A的观看记录表明观看到20分10秒且其更新时间为2014年I月20日上午8:30,张三的手机确定该观看记录的发送信道为信道1,并在信道I上发送该观看记录,同时,张三的PAD上视频A的观看记录表明观看到30分20秒且其更新时间为2014年I月21日下午10:30,张三的PAD确定该观看记录的发送信道为信道2,并在信道2上后发送该观看记录,相应地,智能电视在信道1、2分别接收到来自PAD的观看记录和来自手机的观看记录,并展示给用户张三,用户张三可以依此选择从该视频A的30分20秒开始播放。在本实施例的又一种应用场景中,用户张三回到家里,打开笔记本电脑,选择文档B,笔记本电脑作为请求设备在无线局域网中数据同步请求,所述数据同步请求用于文档B,此时,与所述笔记本电脑处于同一无线局域网的设备有:张三的手机、张三的PAD,这两个设备均执行本实施例的方法,比如,张三的手机上文档B的更新时间为2014年I月20日上午8:30,张三的手机确定该文档B的发送信道为信道1,并在信道I上发送该文档B,同时,张三的PAD上文档B的更新时间为2014年I月21日下午10:30,张三的PAD确定该文档B的发送信道为信道2,并在信道2上后发送该文档B,相应地,笔记本电脑在信道1、2上分别接收到来自PAD的文档B和来自手机的文档B,并展示给用户张三,用户张三可以依此选择浏览来自PAD的文档B,或,在来自PAD的文档B的基础上继续编辑文档B。
[0133]本实施例通过接收来自请求设备的数据同步请求,确定本地与所述数据同步请求匹配的至少一个第一数据,根据所述至少一个第一数据各自的更新时间确定所述至少一个第一数据各自对应的发送信道,在所述至少一个第一数据各自对应的发送信道上发送所述至少一个第一数据,提供了一种数据同步方案,且由于根据数据的更新时间确定其发送信道,可以错开同一设备的多个数据的发送以及不同设备的多个数据的发送,一定程度上减轻了冲突。
[0134]图3a为本发明提供的一种用户设备实施例一的结构图。如图3a所示,用户设备300包括:
[0135]接收模块31,用于接收来自请求设备的数据同步请求;
[0136]数据确定模块32,用于确定用户设备300本地与所述数据同步请求匹配的至少一个第一数据;
[0137]时延确定模块33,用于根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送时延;
[0138]发送模块34,用于根据所述至少一个第一数据各自对应的发送时延,发送所述至少一个第一数据。
[0139]其中,所述请求设备可以是用户正在使用的另一用户设备,可选地,基于用户的操作,请求设备欲获取其他用户设备上的数据,相应地,请求设备发出数据同步请求。可选地,所述数据同步请求是所述请求设备在无线局域网中广播的,其中,所述无线局域网可以采用以下至少一种无线技术:蓝牙、WiF1、Zigbee。
[0140]在一种可选的实现方式中,所述数据同步请求包括:数据描述。其中,所述数据描述用于描述所述请求设备预获取的数据,所述请求设备预获取的数据可以是文件本身,或是文件的操作记录。
[0141]可选地,所述数据同步请求是针对某个文件的,相应地,所述数据描述包括文件标识,进一步地,当所述请求设备预获取文件的操作记录时,所述数据描述还可以包括操作类型,所述操作类型包括以下至少一种:编辑、观看等。
[0142]可选地,所述数据同步请求是针对某种类型的文件,相应地,所述数据描述包括文件类型,进一步地,当所述请求设备预获取文件的操作记录时,所述数据描述还可以包括操作类型,所述操作类型包括以下至少一种:编辑、观看等。其中,文件类型包括以下至少一种:音频、视频、网页、文档等。
[0143]在上述数据同步请求包括数据描述的实现方式中,可选地,数据确定模块32具体用于:确定用户设备300本地与所述数据描述匹配的至少一个第一数据。
[0144]举例来说,当所述数据描述仅包括一文件标识“A.doc”,数据确定模块32确定用户设备300本地的文件名为“A.doc”的文档与所述数据描述匹配;当所述数据描述包括一文件标识“B.rmvb”和操作类型“观看”,数据确定模块32确定用户设备300本地的文件名为“B.rmvb”的视频的观看记录与所述数据描述匹配。
[0145]本实施例中,更新时间通常指最近更新时间,第一数据的更新时间指所述第一数据最近一次被更新的时间。
[0146]在一种可选的实现方式中,所述数据同步请求还包括:更新时间与发送时延的第
一对应关系。
[0147]可选地,时延确定模块33具体用于:
[0148]根据所述第一对应关系和所述至少一个第一数据各自的更新时间,确定至少一个第一数据各自对应的发送时延。
[0149]具体地,在所述第一对应关系中,不同的更新时间对应不同的发送时延,或者,在一定范围内的更新时间对应相同的发送时延且不同范围内的更新时间对应不同的发送时延。举例来说,2013年12月的更新时间对应的发送时延为10毫秒(ms),2014年I月的更新时间对应的发送时延为5ms,相应地,时延确定模块33确定更新时间在2013年12月的第一数据对应的发送时延为10ms,更新时间在2014年I月的第一数据对应的发送时延为5ms ο
[0150]可选地,所述第一对应关系为一哈希函数,该哈希函数可以将一更新时间映射到一个设定的时延范围中的某个时延值,该时延范围举例来说可以是O?10ms。
[0151]在又一种可选的实现方式中,所述数据同步请求还包括:请求时间、时间间隔与发送时延的第二对应关系。
[0152]其中,所述请求时间可以为所述请求设备发出所述数据同步请求的时间。
[0153]可选地,时延确定模块33具体用于:
[0154]根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自的更新时间与所述请求时间的时间间隔;
[0155]根据所述第二对应关系和所述至少一个第一数据各自的更新时间与所述请求时间的时间间隔,确定所述至少一个第一数据各自对应的发送时延。
[0156]具体地,在所述第二对应关系中,不同的时间间隔对应不同的发送时延,或者,在一定范围内的时间间隔对应相同的发送时延且不同范围内的时间间隔对应不同的发送时延。举例来说,I天内的时间间隔对应的发送时延为10ms,I?2天的时间间隔对应的发送时延为5ms,相应地,若请求时间为2014年I月10日上午10点半,则时延确定模块33确定更新时间在2014年I月9日上午10点半到2014年I月10日上午10点半范围内的第一数据对应的发送时延为10ms,更新时间在2014年I月8日上午10点半到2014年I月9日上午10点半范围内的第一数据对应的发送时延为5ms。
[0157]可选地,所述第二对应关系为一哈希函数,该哈希函数可以将一时间间隔映射到一个设定的时延范围中的某个时延值,该时延范围举例来说可以是O?10ms。
[0158]在又一种可选的实现方式中,所述时间间隔与发送时延的第二对应关系预设在用户设备300本地,所述数据同步请求还包括:请求时间。类似地,时延确定模块33可以参照上一实现方式确定所述至少一个第一数据各自对应的发送时延。
[0159]在又一种可选的实现方式中,所述时间间隔与发送时延的第二对应关系预设在用户设备300本地,且接收模块31将接收到所述数据同步请求的时间作为请求时间,时延确定模块33参照上一实现方式确定所述至少一个第一数据各自对应的发送时延。
[0160]在上述任一实现方式中,可选地,更新时间越晚的第一数据对应的发送时延越短,即,越晚的更新时间对应的发送时延越短或越短的时间间隔对应的发送时延越短。相应地,所述请求设备可以更早地接收到更新时间较晚即较新的数据,用户体验可能更好一些。
[0161]举例来说,若一第一数据的发送时延为2ms,则发送模块34从当前时刻起算到达2ms时发送所述第一数据,其中,当前时刻可以是发送模块34准备好了发送所述至少一个第一数据的时刻。
[0162]具体地,发送模块34的发送所述至少一个第一数据的方式可以有多种,具体地,发送模块34可以针对所述请求设备定向发送所述至少一个第一数据,或是,在一定范围内以广播的方式发送所述至少一个第一数据。
[0163]可选地,发送模块34具体用于:根据所述至少一个第一数据各自对应的发送时延,在无线局域网中广播所述至少一个第一数据。
[0164]其中,所述无线局域网可以采用以下至少一种无线技术:蓝牙、WiF1、Zigbee。
[0165]由于不同的用户设备上的第一数据的更新时间很可能不同,尤其是在这些用户设备均为同一用户使用的场景下,并且,同一用户设备上不同的第一数据的更新时间也很可能不同,因此,本实施例可以通过不同的发送时延将多个用户设备上的第一数据以及同一用户设备上的多个第一数据的发送错开,在此基础上,进一步地,还可以通过不同的信道将多个用户设备上的第一数据以及同一用户设备上的多个第一数据的发送错开。
[0166]在一种可选的实现方式中,所述数据请求还包括:更新时间与发送信道的第三对应关系。
[0167]可选地,如图3b所示,用户设备300还包括:
[0168]第一信道确定模块35,用于根据所述第三对应关系和所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送信道;
[0169]相应地,发送模块34具体用于:
[0170]在所述至少一个第一数据各自对应的发送信道上,根据所述至少一个第一数据各自对应的发送时延发送所述至少一个第一数据。
[0171]具体地,在所述第三对应关系中,不同的更新时间对应不同的发送信道,或者,在一定范围内的更新时间对应相同的发送信道且不同范围内的更新时间对应不同的发送信道。举例来说,2013年12月的更新时间对应的发送信道为信道I,2014年I月的更新时间对应的发送信道为信道2,相应地,第一信道确定模块35确定更新时间在2013年12月的第一数据对应的发送信道为信道1,更新时间在2014年I月的第一数据对应的发送信道为信道2。
[0172]在又一种可选的实现方式中,所述数据请求还包括:请求时间,时间间隔与发送信道的第四对应关系。
[0173]其中,所述请求时间可以为所述请求设备发出所述数据同步请求的时间。
[0174]可选地,如图3c所示,用户设备300还包括:
[0175]第二信道确定模块36,用于根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自的更新时间与所述请求时间的时间间隔,根据所述第四对应关系和所述至少一个第一数据各自的更新时间与所述请求时间的时间间隔,确定所述至少一个第一数据各自对应的发送信道;
[0176]相应地,发送模块34具体用于:
[0177]在所述至少一个第一数据各自对应的发送信道上,根据所述至少一个第一数据各自对应的发送时延发送所述至少一个第一数据。
[0178]具体地,在所述第四对应关系中,不同的时间间隔对应不同的发送信道,或者,在一定范围内的时间间隔对应相同的发送信道且不同范围内的时间间隔对应不同的发送信道。举例来说,I天内的时间间隔对应的发送信道为信道1,I?2天的时间间隔对应的发送信道为信道2,相应地,若请求时间为2014年I月10日上午10点半,则第二信道确定模块36确定更新时间在2014年I月9日上午10点半到2014年I月10日上午10点半范围内的第一数据对应的发送信道为信道I,更新时间在2014年I月8日上午10点半到2014年I月9日上午10点半范围内的第一数据对应的发送信道为信道2。
[0179]在又一种可选的实现方式中,所述时间间隔与发送信道的第四对应关系预设在用户设备300本地,所述数据同步请求还包括:请求时间。类似地,第二信道确定模块36可以参照上一实现方式确定所述至少一个第一数据各自对应的发送信道。
[0180]在又一种可选的实现方式中,所述时间间隔与发送信道的第四对应关系预设在用户设备300本地,且接收模块31将接收到所述数据同步请求的时间作为请求时间,第二信道确定模块36参照上一实现方式确定所述至少一个第一数据各自对应的发送信道。
[0181]在综合考虑发送时延和发送信道的实现方式中,一种可能的场景是,所述数据同步请求还包括:所述第一对应关系和所述第三对应关系。又一种可能的场景是,所述数据同步请求还包括:所述请求时间、所述第二对应关系和所述第三对应关系。又一种可能的场景是,所述数据同步请求还包括:所述请求时间、所述第一对应关系和所述第四对应关系。又一种可能的场景是,所述数据同步请求还包括:所述请求时间、所述第二对应关系和所述第四对应关系。需要说明的是,上述各对应关系也可以不包含在所述数据同步请求中,而是预设在用户设备300本地,和/或,上述请求时间也可以不包含在所述数据同步请求中,而是由接收模块31将接收到所述数据同步请求的时间作为请求时间。另外,若需发送模块34以广播的方式发送第一数据,则将广播信道设定为第三对应关系或第四对应关系中的发送信道即可。
[0182]在一种可选的实现方式中,用户设备300还可以接收其它设备的数据,并判断是否更新或删除本地的数据。相应地,接收模块31还用于:接收来自其它设备的一第二数据;
[0183]用户设备300还包括:数据处理模块,用于若用户设备300本地存在与所述第二数据对应的且更新时间与所述第二数据的更新时间不同的至少一个第三数据,则更新或删除用户设备300本地的所述至少一个第三数据。
[0184]其中,第三数据与第二数据对应是指,当所述第三数据、所述第二数据均为一文件时,所述第三数据的文件标识与所述第二数据的文件标识相同,当所述第三数据、所述第二数据均为一文件的操作记录时,所述第三数据对应的文件的文件标识与所述第二数据对应的文件的文件标识相同。
[0185]通常,数据的更新时间基于该数据得到。举例来说,用户设备300本地有一文件“A.doc”,其更新时间为2013年12月30日20:02,当接收模块31接收到来自其它设备的一第二数据,所述第二数据为文件“A.doc”且其更新时间为2014年I月3日10:12或2013年12月25日16:08,则用户设备300本地的文件“A.doc”为所述第三数据,相应地,所述数据处理模块可以根据用户策略选择将所述第三数据删除,或者,将所述第三数据更新为所述第二数据,或者,在用户设备300本地保存所述第二数据,或者,不进行任何操作。
[0186]具体地,在针对请求设备的数据同步请求,除所述请求设备之外的各用户设备均采用广播地方式响应数据时,包括所述请求设备在内的各用户设备均可能收到其它用户设备发送的数据,相应地,均可以按照上述实现方式判断是否更新或删除用户设备300本地的数据。
[0187]在一种可选的场景中,局域网内的所有用户设备均可以执行本实施例,可选地,根据相同的第一对应关系或相同的第二对应关系确定发送时延,进一步地,根据相同的第三对应关系或相同的第四对应关系确定发送信道,如此,请求设备在发出数据同步请求后,接收到各其它设备响应该数据同步请求的数据的时间和该数据的更新时间之间的规律是基本一致的。
[0188]举例来说,在本实施例的一种应用场景中,用户张三回到家里,打开智能电视,选择视频A,智能电视作为请求设备在无线局域网中数据同步请求,所述数据同步请求用于请求视频A的观看记录,此时,与所述智能电视处于同一无线局域网的设备有:张三的手机、张三的PAD,这两个设备均可以作为本实施例的用户设备300,比如,张三的手机上视频A的观看记录表明观看到20分10秒且其更新时间为2014年I月20日上午8:30,张三的手机确定该观看记录的发送时延为IOms,并在IOms后发送该观看记录,同时,张三的PAD上视频A的观看记录表明观看到30分20秒且其更新时间为2014年I月21日下午10:30,张三的PAD确定该观看记录的发送时延为5ms,并在5ms后发送该观看记录,相应地,智能电视依次接收到来自PAD的观看记录和来自手机的观看记录,并展示给用户张三,用户张三可以依此选择从该视频A的30分20秒开始播放。在本实施例的又一种应用场景中,用户张三回到家里,打开笔记本电脑,选择文档B,笔记本电脑作为请求设备在无线局域网中数据同步请求,所述数据同步请求用于文档B,此时,与所述笔记本电脑处于同一无线局域网的设备有:张三的手机、张三的PAD,这两个设备均可以作为本实施例的用户设备300,比如,张三的手机上文档B的更新时间为2014年I月20日上午8:30,张三的手机确定该文档B的发送时延为10ms,并在IOms后发送该文档B,同时,张三的PAD上文档B的更新时间为2014年I月21日下午10:30,张三的PAD确定该文档B的发送时延为5ms,并在5ms后发送该文档B,相应地,笔记本电脑依次接收到来自PAD的文档B和来自手机的文档B,并展示给用户张三,用户张三可以依此选择浏览来自PAD的文档B,或,在来自PAD的文档B的基础上继续编辑文档B。
[0189]本实施例通过用户设备接收来自请求设备的数据同步请求,确定本地与所述数据同步请求匹配的至少一个第一数据,根据所述至少一个第一数据各自的更新时间确定所述至少一个第一数据各自对应的发送时延,根据所述至少一个第一数据各自对应的发送时延发送所述至少一个第一数据,提供了一种数据同步方案,且由于根据数据的更新时间确定其发送时延,可以错开同一设备的多个数据的发送以及不同设备的多个数据的发送,一定程度上减轻了冲突。
[0190]图4为本发明提供的一种用户设备实施例二的结构图。如图4所示,用户设备400包括:
[0191]接收模块41,用于接收来自请求设备的数据同步请求;
[0192]数据确定模块42,用于确定用户设备400中与所述数据同步请求匹配的至少一个
第一数据;
[0193]信道确定模块43,用于根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送信道;
[0194]发送模块44,用于在所述至少一个第一数据各自对应的发送信道上,发送所述至少一个第一数据。
[0195]其中,所述请求设备可以是用户正在使用的另一用户设备,可选地,基于用户的操作,请求设备欲获取其他用户设备上的数据,相应地,请求设备发出数据同步请求。可选地,所述数据同步请求是所述请求设备在无线局域网中广播的,其中,所述无线局域网可以采用以下至少一种无线技术:蓝牙、WiF1、Zigbee。
[0196]在一种可选的实现方式中,所述数据同步请求包括:数据描述。其中,所述数据描述用于描述所述请求设备预获取的数据,所述请求设备预获取的数据可以是文件本身,或是文件的操作记录。
[0197]可选地,所述数据同步请求是针对某个文件的,相应地,所述数据描述包括文件标识,进一步地,当所述请求设备预获取文件的操作记录时,所述数据描述还可以包括操作类型,所述操作类型包括以下至少一种:编辑、观看等。
[0198]可选地,所述数据同步请求是针对某种类型的文件,相应地,所述数据描述包括文件类型,进一步地,当所述请求设备预获取文件的操作记录时,所述数据描述还可以包括操作类型,所述操作类型包括以下至少一种:编辑、观看等。其中,文件类型包括以下至少一种:音频、视频、网页、文档等。
[0199]在上述数据同步请求包括数据描述的实现方式中,可选地,数据确定模块42具体用于:确定用户设备400本地与所述数据描述匹配的至少一个第一数据。
[0200]举例来说,当所述数据描述仅包括一文件标识“A.doc”,数据确定模块42确定用户设备400本地的文件名为“A.doc”的文档与所述数据描述匹配;当所述数据描述包括一文件标识“B.rmvb”和操作类型“观看”,数据确定模块42确定用户设备400本地的文件名为“B.rmvb”的视频的观看记录与所述数据描述匹配。
[0201]本实施例中,更新时间通常指最近更新时间,第一数据的更新时间指所述第一数据最近一次被更新的时间。
[0202]在一种可选的实现方式中,所述数据同步请求还包括:更新时间与发送信道的第
一对应关系。
[0203]可选地,信道确定模块43具体用于:
[0204]根据所述第一对应关系和所述至少一个第一数据各自的更新时间,确定至少一个第一数据各自对应的发送信道。
[0205]具体地,在所述第一对应关系中,不同的更新时间对应不同的发送信道,或者,在一定范围内的更新时间对应相同的发送信道且不同范围内的更新时间对应不同的发送信道。举例来说,2013年12月的更新时间对应的发送信道为信道I,2014年I月的更新时间对应的发送信道为信道2,相应地,信道确定模块43确定更新时间在2013年12月的第一数据对应的发送信道为信道1,更新时间在2014年I月的第一数据对应的发送信道为信道2。
[0206]在又一种可选的实现方式中,所述数据同步请求还包括:请求时间、时间间隔与发送信道的第二对应关系。
[0207]其中,所述请求时间可以为所述请求设备发出所述数据同步请求的时间。
[0208]可选地,信道确定模块43具体用于:
[0209]根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自的更新时间与所述请求时间的时间间隔;
[0210]根据所述第二对应关系和所述至少一个第一数据各自的更新时间与所述请求时间的时间间隔,确定所述至少一个第一数据各自对应的发送信道。
[0211]具体地,在所述第二对应关系中,不同的时间间隔对应不同的发送信道,或者,在一定范围内的时间间隔对应相同的发送信道且不同范围内的时间间隔对应不同的发送信道。举例来说,I天内的时间间隔对应的发送信道为信道1,I?2天的时间间隔对应的发送信道为信道2,相应地,若请求时间为2014年I月10日上午10点半,则信道确定模块43确定更新时间在2014年I月9日上午10点半到2014年I月10日上午10点半范围内的第一数据对应的发送信道为信道1,更新时间在2014年I月8日上午10点半到2014年I月9日上午10点半范围内的第一数据对应的发送信道为信道2。
[0212]在又一种可选的实现方式中,所述时间间隔与发送信道的第二对应关系预设在本地用户设备中,所述数据同步请求还包括:请求时间。类似地,信道确定模块43可以参照上一实现方式确定所述至少一个第一数据各自对应的发送信道。
[0213]在又一种可选的实现方式中,所述时间间隔与发送信道的第二对应关系预设在用户设备400本地,且接收模块41将接收到所述数据同步请求的时间作为请求时间,信道确定模块43可以参照上一实现方式确定所述至少一个第一数据各自对应的发送信道。
[0214]具体地,发送模块44发送所述至少一个第一数据的方式可以有多种,具体地,发送模块44可以针对所述请求设备定向发送所述至少一个第一数据,或是,在一定范围内以广播的方式发送所述至少一个第一数据。
[0215]可选地,所述至少一个第一数据各自对应的发送信道为无线局域网中的广播信道。其中,所述无线局域网可以采用以下至少一种无线技术:蓝牙、WiF1、Zigbee。
[0216]以低功耗蓝牙(BluetoothLowEnergy,简称BLE)为例,可用的广播信道集合包括37、38、39三个广播信道。
[0217]由于不同的用户设备上的第一数据的更新时间很可能不同,尤其是在这些用户设备均为同一用户使用的场景下,并且,同一用户设备上不同的第一数据的更新时间也很可能不同,因此,可以通过不同的发送信道将多个用户设备上的第一数据以及同一用户设备上的多个第一数据的发送错开。
[0218]在一种可选的实现方式中,用户设备400还可以接收其它设备的数据,并判断是否更新或删除本地的数据。相应地,接收模块41还用于:接收来自其它设备的一第二数据;
[0219]相应地,用户设备400还包括:数据处理模块,用于若用户设备400本地存在与所述第二数据对应的且更新时间与所述第二数据的更新时间不同的至少一个第三数据,则更新或删除用户设备400本地的所述至少一个第三数据。
[0220]其中,第三数据与第二数据对应是指,当所述第三数据、所述第二数据均为一文件时,所述第三数据的文件标识与所述第二数据的文件标识相同,当所述第三数据、所述第二数据均为一文件的操作记录时,所述第三数据对应的文件的文件标识与所述第二数据对应的文件的文件标识相同。
[0221]通常,数据的更新时间基于该数据得到。举例来说,本地用户设备本地存在一文件“A.doc”,其更新时间为2013年12月30日20:02,当接收模块41接收到来自其它设备的一第二数据,所述第二数据为文件“A.doc”且其更新时间为2014年I月3日10:12或2013年12月25日16:08,则用户设备400本地的文件“A.doc”为所述第三数据,相应地,所述数据处理模块可以根据用户策略选择将所述第三数据删除,或者,将所述第三数据更新为所述第二数据,或者,在用户设备400本地保存所述第二数据,或者,不进行任何操作。
[0222]需要说明的是,当用户设备400拥有多天线时,用户设备400可同时在多个信道上接收/发送数据或数据同步请求,即,在接收模块41在多个信道上同时接收数据和/或数据同步请求,或者,发送模块44同时在多个信道上同时发送数据和/或数据同步请求,或者,在接收模块41接收的同时发送模块44发送。
[0223]具体地,在针对请求设备的数据同步请求,除所述请求设备之外的各用户设备均采用广播地方式响应数据时,包括所述请求设备在内的各用户设备均可能收到其它用户设备发送的数据,相应地,均可以按照上述实现方式判断是否更新或删除本地的数据。
[0224]在一种可选的场景中,局域网内的所有用户设备均可以执行本实施例,可选地,根据相同的第一对应关系或相同的第二对应关系确定发送信道,如此,请求设备在发出数据同步请求后,接收到各其它设备响应该数据同步请求的数据的信道和该数据的更新时间之间的规律是基本一致的。
[0225]举例来说,在本实施例的一种应用场景中,用户张三回到家里,打开智能电视,选择视频A,智能电视作为请求设备在无线局域网中数据同步请求,所述数据同步请求用于请求视频A的观看记录,此时,与所述智能电视处于同一无线局域网的设备有:张三的手机、张三的PAD,这两个设备均可以作为本实施例的用户设备400,比如,张三的手机上视频A的观看记录表明观看到20分10秒且其更新时间为2014年I月20日上午8:30,张三的手机确定该观看记录的发送信道为信道1,并在信道I上发送该观看记录,同时,张三的PAD上视频A的观看记录表明观看到30分20秒且其更新时间为2014年I月21日下午10:30,张三的PAD确定该观看记录的发送信道为信道2,并在信道2上后发送该观看记录,相应地,智能电视在信道1、2分别接收到来自PAD的观看记录和来自手机的观看记录,并展示给用户张三,用户张三可以依此选择从该视频A的30分20秒开始播放。在本实施例的又一种应用场景中,用户张三回到家里,打开笔记本电脑,选择文档B,笔记本电脑作为请求设备在无线局域网中数据同步请求,所述数据同步请求用于文档B,此时,与所述笔记本电脑处于同一无线局域网的设备有:张三的手机、张三的PAD,这两个设备均可以作为本实施例的用户设备400,比如,张三的手机上文档B的更新时间为2014年I月20日上午8:30,张三的手机确定该文档B的发送信道为信道1,并在信道I上发送该文档B,同时,张三的PAD上文档B的更新时间为2014年I月21日下午10:30,张三的PAD确定该文档B的发送信道为信道2,并在信道2上后发送该文档B,相应地,笔记本电脑在信道1、2上分别接收到来自PAD的文档B和来自手机的文档B,并展示给用户张三,用户张三可以依此选择浏览来自PAD的文档B,或,在来自PAD的文档B的基础上继续编辑文档B。
[0226]本实施例通过用户设备接收来自请求设备的数据同步请求,确定本地与所述数据同步请求匹配的至少一个第一数据,根据所述至少一个第一数据各自的更新时间确定所述至少一个第一数据各自对应的发送信道,在所述至少一个第一数据各自对应的发送信道上发送所述至少一个第一数据,提供了一种数据同步方案,且由于根据数据的更新时间确定其发送信道,可以错开同一设备的多个数据的发送以及不同设备的多个数据的发送,一定程度上减轻了冲突。
[0227]图5为本发明提供的一种用户设备实施例三的结构图。如图5所示,用户设备500包括:
[0228]处理器(processor)51、通信接口(CommunicationsInterface) 52、存储器(memory) 53、以及通信总线54。其中:
[0229]处理器51、通信接口 52、以及存储器53通过通信总线54完成相互间的通信。
[0230]通信接口 52,用于与其它用户设备包括请求设备等外部设备的通信。
[0231]处理器51,用于执行程序532,具体可以执行上述方法实施例一中的相关步骤。
[0232]具体地,程序532可以包括程序代码,所述程序代码包括计算机操作指令。
[0233]处理器51可能是一个中央处理器CPU,或者是特定集成电路ASICXApplicationSpecificIntegratedCircuit),或者是被配置成实施方法实施例一的一个或多个集成电路。
[0234]存储器53,用于存放程序532。存储器53可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。程序532具体可以用于使得用户设备500执行以下步骤:
[0235]接收来自请求设备的数据同步请求;
[0236]确定本地与所述数据同步请求匹配的至少一个第一数据;
[0237]根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送时延;
[0238]根据所述至少一个第一数据各自对应的发送时延,发送所述至少一个第一数据。
[0239]程序532中各步骤的具体实现可以参见上述方法实施例一中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例一中的对应过程描述,在此不再赘述。
[0240]图6为本发明提供的一种用户设备实施例四的结构图。如图6所示,用户设备600包括:
[0241]处理器(processor)61、通信接口(CommunicationsInterface) 62、存储器(memory) 63、以及通信总线64。其中:
[0242]处理器61、通信接口 62、以及存储器63通过通信总线64完成相互间的通信。
[0243]通信接口 62,用于与其它用户设备包括请求设备等外部设备的通信。[0244]处理器61,用于执行程序632,具体可以执行上述方法实施例二中的相关步骤。
[0245]具体地,程序632可以包括程序代码,所述程序代码包括计算机操作指令。
[0246]处理器61可能是一个中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecificIntegratedCircuit),或者是被配置成实施方法实施例二的一个或多个集成电路。
[0247]存储器63,用于存放程序632。存储器63可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。程序632具体可以用于使得用户设备600执行以下步骤:
[0248]接收来自请求设备的数据同步请求;
[0249]确定本地与所述数据同步请求匹配的至少一个第一数据;
[0250]根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送信道;
[0251 ] 在所述至少一个第一数据各自对应的发送信道上,发送所述至少一个第一数据。
[0252]程序632中各步骤的具体实现可以参见上述方法实施例二中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例二中的对应过程描述,在此不再赘述。
[0253]本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0254]所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对原有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM, RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0255]以上实施方式仅用于说明本发明,而并非对本发明的限制,有关【技术领域】的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。
【权利要求】
1.一种数据同步方法,其特征在于,所述方法包括: 接收来自请求设备的数据同步请求; 确定本地与所述数据同步请求匹配的至少一个第一数据; 根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送时延; 根据所述至少一个第一数据各自对应的发送时延,发送所述至少一个第一数据。
2.根据权利要求1所述的方法,其特征在于,所述数据同步请求包括:数据描述。
3.根据权利要求2所述的方法,其特征在于,所述确定本地与所述数据同步请求匹配的至少一个第一数据,包括: 确定本地与所述数据描述匹配的至少一个第一数据。
4.根据权利要求2或3所述的方法,其特征在于,所述数据同步请求还包括:更新时间与发送时延的第一对应关系。
5.根据权利要求4所述的方法,其特征在于,所述根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送时延,包括: 根据所述第一对应关系和所述至少一个第一数据各自的更新时间,确定至少一个第一数据各自对应的发送时延。
6.根据权利要求2或3所述的方法,其特征在于,所述数据同步请求还包括:请求时间、时间间隔与发送时延的第二对应关系。`
7.根据权利要求6所述的方法,其特征在于,所述根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送时延,包括: 根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自的更新时间与所述请求时间的时间间隔; 根据所述第二对应关系和所述至少一个第一数据各自的更新时间与所述请求时间的时间间隔,确定所述至少一个第一数据各自对应的发送时延。
8.根据权利要求2或3所述的方法,其特征在于,所述数据请求还包括:更新时间与发送信道的第三对应关系。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括: 根据所述第三对应关系和所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送信道; 所述根据所述至少一个第一数据各自对应的发送时延,发送所述至少一个第一数据,包括: 在所述至少一个第一数据各自对应的发送信道上,根据所述至少一个第一数据各自对应的发送时延发送所述至少一个第一数据。
10.根据权利要求2或3所述的方法,其特征在于,所述数据请求还包括:请求时间,时间间隔与发送信道的第四对应关系。
11.根据权利要求10所述的方法,其特征在于,所述方法还包括: 根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自的更新时间与所述请求时间的时间间隔; 根据所述第四对应关系和所述至少一个第一数据各自的更新时间与所述请求时间的时间间隔,确定所述至少一个第一数据各自对应的发送信道; 所述根据所述至少一个第一数据各自对应的发送时延,发送所述至少一个第一数据,包括: 在所述至少一个第一数据各自对应的发送信道上,根据所述至少一个第一数据各自对应的发送时延发送所述至少一个第一数据。
12.根据权利要求1~11中任一所述的方法,其特征在于,所述发送所述至少一个第一数据,包括: 在无线局域网中广播所述至少一个第一数据。
13.根据权利要求1~12中任一所述的方法,其特征在于,更新时间越晚的第一数据对应的发送时延越短。
14.一种数据同步方法,其特征在于,所述方法包括: 接收来自请求设备的数据同步请求; 确定本地与所述数据同步请求匹配的至少一个第一数据; 根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送信道; 在所述至少一个第一数据各自对应的发送信道上,发送所述至少一个第一数据。
15.根据权利要求14所述的方法,其特征在于,所述数据同步请求包括:数据描述。
16.根据权利要求15所述的方法,其特征在于,所述确定本地与所述数据同步请求匹配的至少一个第一数据,包括: 确定本地与所述数据描述匹配的至少一个第一数据。
17.根据权利要求15所述的方法,其特征在于,所述数据同步请求还包括:更新时间与发送信道的第一对应关系。
18.根据权利要求17所述的方法,其特征在于,所述根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送信道,包括: 根据所述第一对应关系和所述至少一个第一数据各自的更新时间,确定至少一个第一数据各自对应的发送信道。
19.根据权利要求15所述的方法,其特征在于,所述数据同步请求还包括:请求时间、时间间隔与发送信道的第二对应关系。
20.根据权利要求19所述的方法,其特征在于,所述根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送信道,包括: 根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自的更新时间与所述请求时间的时间间隔; 根据所述第二对应关系和所述至少一个第一数据各自的更新时间与所述请求时间的时间间隔,确定所述至少一个第一数据各自对应的发送信道。
21.根据权利要求14~20中任一所述的方法,其特征在于,所述所述至少一个第一数据各自对应的发送信道为无线局域网中的广播信道。
22.—种用户设备,其特征在于,所述设备包括: 接收模块,用于接收来自请求设备的数据同步请求; 数据确定模块,用于确定所述用户设备本地与所述数据同步请求匹配的至少一个第一数据; 时延确定模块,用于根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送时延; 发送模块,用于根据所述至少一个第一数据各自对应的发送时延,发送所述至少一个第一数据。
23.根据权利要求22所述的设备,其特征在于,所述数据同步请求包括:数据描述; 所述数据确定模块具体用于: 确定所述用户设备本地与所述数据描述匹配的至少一个第一数据。
24.根据权利要求23所述的设备,其特征在于,所述数据同步请求还包括:更新时间与发送时延的第一对应关系; 所述时延确定模块具体用于: 根据所述第一对应关系和所述至少一个第一数据各自的更新时间,确定至少一个第一数据各自对应的发送时延。
25.根据权利要求23所述的设备,其特征在于,所述数据同步请求还包括:请求时间、时间间隔与发送时延的第二对应关系; 所述时延确定模块具体用于: 根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自的更新时间与所述请求时间的时间`间隔; 根据所述第二对应关系和所述至少一个第一数据各自的更新时间与所述请求时间的时间间隔,确定所述至少一个第一数据各自对应的发送时延。
26.根据权利要求23所述的设备,其特征在于,所述数据请求还包括:更新时间与发送信道的第三对应关系; 所述设备还包括:第一信道确定模块,用于根据所述第三对应关系和所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送信道; 所述发送模块具体用于: 在所述至少一个第一数据各自对应的发送信道上,根据所述至少一个第一数据各自对应的发送时延发送所述至少一个第一数据。
27.根据权利要求23所述的设备,其特征在于,所述数据请求还包括:请求时间,时间间隔与发送信道的第四对应关系; 所述设备还包括:第二信道确定模块,用于根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自的更新时间与所述请求时间的时间间隔,根据所述第四对应关系和所述至少一个第一数据各自的更新时间与所述请求时间的时间间隔,确定所述至少一个第一数据各自对应的发送信道; 所述发送模块具体用于: 在所述至少一个第一数据各自对应的发送信道上,根据所述至少一个第一数据各自对应的发送时延发送所述至少一个第一数据。
28.根据权利要求22所述的设备,其特征在于,所述发送模块具体用于: 根据所述至少一个第一数据各自对应的发送时延,在无线局域网中广播所述至少一个第一数据。
29.一种用户设备,其特征在于,所述设备包括: 接收模块,用于接收来自请求设备的数据同步请求; 数据确定模块,用于确定所述用户设备本地与所述数据同步请求匹配的至少一个第一数据; 信道确定模块,用于根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自对应的发送信道; 发送模块,用于在所述至少一个第一数据各自对应的发送信道上,发送所述至少一个第一数据。
30.根据权利要求29所述的设备,其特征在于,所述数据同步请求包括:数据描述; 所述数据确定模块具体用于: 确定所述用户设备本地与所述数据描述匹配的至少一个第一数据。
31.根据权利要求30所述的设备,其特征在于,所述数据同步请求还包括:更新时间与发送信道的第一对应关系; 所述信道确定模块具体用于: 根据所述第一对应关系和所述至少一个第一数据各自的更新时间,确定至少一个第一数据各自对应的发送信道。
32.根据权利要求30所述的设备,其特征在于,所述数据同步请求还包括:请求时间、时间间隔与发送信道的第二对应关系;` 所述信道确定模块具体用于: 根据所述至少一个第一数据各自的更新时间,确定所述至少一个第一数据各自的更新时间与所述请求时间的时间间隔; 根据所述第二对应关系和所述至少一个第一数据各自的更新时间与所述请求时间的时间间隔,确定所述至少一个第一数据各自对应的发送信道。
33.根据权利要求29~32中任一所述的设备,其特征在于,所述所述至少一个第一数据各自对应的发送信道为无线局域网中的广播信道。
【文档编号】H04L29/08GK103873565SQ201410073280
【公开日】2014年6月18日 申请日期:2014年2月28日 优先权日:2014年2月28日
【发明者】刘嘉 申请人:北京智谷睿拓技术服务有限公司