本技术实施例涉及终端,尤其涉及一种数据同步方法、电子设备及系统。
背景技术:
1、随着终端技术的发展,电子设备能够与多种类型的其他电子设备建立连接,形成分布式通信系统。在分布式通信系统中,电子设备能够通过数据拉取的方式,实现与其他设备的数据同步,以保证多端电子设备数据的一致性。
2、其中,在数据拉取过程中,电子设备需要无差别的唤醒对端设备,并从所有对端设备中拉取最新的数据到本地。但是在此过程中,若对端设备不存在数据变更,那么此次对于对端设备的唤醒为无效唤醒,增加不必要的功耗。
技术实现思路
1、为了解决上述的技术问题,本技术提供了一种数据同步方法、电子设备及系统。本技术提供的技术方案,第一电子设备维护有用于记录多个数据类型的数据的水位变化情况的水位指示矩阵,第一电子设备依据水位指示矩阵向第二电子设备发送水位信息,以同步数据水位,从而有效降低数据同步的功耗。
2、为了实现上述的技术目的,本技术提供了如下技术方案:
3、第一方面,提供一种数据同步方法,应用于第一电子设备。该方法包括:在确定第一应用生成第一数据类型的数据后,确定第一应用对应的第二电子设备,第二电子设备安装有第一应用。在第二电子设备对应的水位指示矩阵中记录第一应用的第一数据类型的数据的水位已变化,水位指示矩阵用于记录多个数据类型的数据的水位变化情况。向第二电子设备发送水位信息,水位信息用于指示第二电子设备根据水位指示矩阵中记录的水位变化情况进行数据同步。
4、如此,电子设备通过构建设备间的水位指示矩阵,在确定生成数据的情况下,能够通过该水位指示矩阵,向其他设备指示自身的数据更新情况,以实现同步不同设备之间数据的水位。从而对端设备后续能够根据水位情况,按需进行数据同步,降低不必要的设备唤醒产生的功耗。
5、此外,电子设备通过水位指示矩阵记录不同数据类型的数据的水位变化情况,在对端设备处于睡眠状态等无法接收水位信息的情况下,电子设备也可基于水位指示矩阵轮询等待对端设备切换为活跃状态,再向对端设备发送水位信息,实现水位同步。从而避免由于对端设备无法接收水位信息,导致的水位同步失败。
6、根据第一方面,在确定第一应用生成第一数据类型的数据后,确定第一应用对应的第二电子设备之前,方法还包括:向第二电子设备发送第一应用列表,第一应用列表用于指示第一电子设备的应用安装情况。以及接收第二电子设备发送的第二应用列表,第二应用列表用于指示第二电子设备的应用安装情况。
7、根据第一方面,或者以上第一方面的任意一种实现方式,方法还包括:根据第二应用列表,确定第一电子设备和第二电子设备均安装的目标应用,目标应用包括第一应用。建立对应于第二电子设备的水位指示矩阵,水位指示矩阵用于指示目标应用的数据水位变化情况。
8、如此,第一电子设备在接入通信系统后,通过与通信系统中的其他电子设备之间的交互,确定与其他电子设备的应用交集,从而建立对应于不同电子设备的水位指示矩阵,用于指示不同数据类型的数据的水位变化情况。
9、根据第一方面,或者以上第一方面的任意一种实现方式,在向第二电子设备发送水位信息之后,方法还包括:清除水位指示矩阵中记录的第一应用的第一数据类型的数据的水位变化情况。
10、可选地,第一电子设备也可在确定第二电子设备与第一电子设备已完成第一应用的第一数据类型的数据的水位同步之后,再清除水位指示矩阵中记录的第一应用的第一数据类型的数据的水位变化情况。
11、如此,第一电子设备通过更新水位指示矩阵,实现根据水位指示矩阵确定不同电子设备之间的水位差异,满足不同电子设备之间的水位同步需求。
12、根据第一方面,或者以上第一方面的任意一种实现方式,向第二电子设备发送水位信息,包括:与第二电子设备中的第三电子设备建立第一连接,通过第一连接向第三电子设备发送数据包,数据包中包括应用标识字段和数据类型字段,应用标识字段用于指示第一应用,数据类型字段用于指示第一数据类型。
13、根据第一方面,或者以上第一方面的任意一种实现方式,向第二电子设备发送水位信息,包括:向第二电子设备中的第四电子设备发送广播报文,广播报文中包括应用标识字段和数据类型字段,应用标识字段用于指示第一应用,数据类型字段用于指示第一数据类型。
14、如此,电子设备通过不同的方式,按需同步数据的水位,能够避免不必要的数据同步,从而降低开销。
15、第二方面,提供一种数据同步方法,应用于第二电子设备。该方法包括:接收第一电子设备发送的水位信息,水位信息用于指示第一电子设备中的第一应用的第一数据类型的数据的水位已变化,第二电子设备中安装有第一应用。根据水位信息,与第一电子设备同步第一应用的第一数据类型的数据。
16、根据第二方面,根据水位信息,与第一电子设备同步第一应用的第一数据类型的数据,包括:根据水位信息,确定第一应用和第一数据类型。获取第一应用对应的同步寻址数组,在同步寻址数组中记录第一电子设备的第一数据类型的数据的水位已变化,同步寻址数组用于记录已变化第一应用的数据的水位的电子设备。在确定消费第一应用的第一数据类型的数据的情况下,根据同步寻址数组,与第一电子设备同步第一应用的第一数据类型的数据。
17、如此,电子设备基于各个设备发送的水位信息,更新同步寻址数组,实现数据水位的同步。后续,电子设备可基于同步寻址数组,按需定位需要进行数据同步的设备,有效较少冗余唤醒,从而降低数据同步过程中产生的功耗开销,延长设备工作时间,并且能够减少分布式数据同步场景中各个设备节点的通信压力。
18、根据第二方面,或者以上第二方面的任意一种实现方式,方法还包括:更新同步寻址数组,更新后的同步寻址数组中记录的已变化第一数据类型的数据的水位的电子设备不包括第一电子设备。
19、如此,第二电子设备通过更新同步寻址数组,实现根据同步寻址数组确定待进行数据同步的电子设备,实现按需的数据拉取同步,有效降低数据同步过程的功耗。
20、根据第二方面,或者以上第二方面的任意一种实现方式,在接收第一电子设备发送的水位信息之前,方法还包括:向第一电子设备发送第二应用列表,第二应用列表用于指示第二电子设备的应用安装情况。以及接收第一电子设备发送的第一应用列表,第一应用列表用于指示第一电子设备的应用安装情况。
21、根据第二方面,或者以上第二方面的任意一种实现方式,在接收第一电子设备发送的第一水位信息之前,方法还包括:与第一电子设备建立第一连接。接收第一电子设备发送的水位信息,包括:通过第一连接接收第一电子设备发送的数据包,数据包中包括应用标识字段和数据类型字段,应用标识字段用于指示第一应用,数据类型字段用于指示第一数据类型。
22、根据第二方面,或者以上第二方面的任意一种实现方式,接收第一电子设备发送的水位信息,包括:接收第一电子设备发送的广播报文,广播报文中包括应用标识字段和数据类型字段,应用标识字段用于指示第一应用,数据类型字段用于指示第一数据类型。
23、第三方面,提供一种电子设备。该电子设备包括:处理器和存储器,存储器与处理器耦合,存储器用于存储计算机程序代码,计算机程序代码包括计算机指令,当处理器从存储器中读取计算机指令,使得电子设备执行:在确定第一应用生成第一数据类型的数据后,确定第一应用对应的第二电子设备,第二电子设备安装有第一应用。在第二电子设备对应的水位指示矩阵中记录第一应用的第一数据类型的数据的水位已变化,水位指示矩阵用于记录多个数据类型的数据的水位变化情况。向第二电子设备发送水位信息,水位信息用于指示第二电子设备根据水位指示矩阵中记录的水位变化情况进行数据同步。
24、根据第三方面,计算机程序代码包括计算机指令,当处理器从存储器中读取计算机指令,还使得电子设备执行:向第二电子设备发送第一应用列表,第一应用列表用于指示第一电子设备的应用安装情况。以及接收第二电子设备发送的第二应用列表,第二应用列表用于指示第二电子设备的应用安装情况。
25、根据第三方面,或者以上第三方面的任意一种实现方式,当处理器从存储器中读取计算机指令,还使得电子设备执行:根据第二应用列表,确定第一电子设备和第二电子设备均安装的目标应用,目标应用包括第一应用。建立对应于第二电子设备的水位指示矩阵,水位指示矩阵用于指示目标应用的数据水位变化情况。
26、根据第三方面,或者以上第三方面的任意一种实现方式,当处理器从存储器中读取计算机指令,还使得电子设备执行:清除水位指示矩阵中记录的第一应用的第一数据类型的数据的水位变化情况。
27、根据第三方面,或者以上第三方面的任意一种实现方式,向第二电子设备发送水位信息,包括:与第二电子设备中的第三电子设备建立第一连接,通过第一连接向第三电子设备发送数据包,数据包中包括应用标识字段和数据类型字段,应用标识字段用于指示第一应用,数据类型字段用于指示第一数据类型。
28、根据第三方面,或者以上第三方面的任意一种实现方式,向第二电子设备发送水位信息,包括:向第二电子设备中的第四电子设备发送广播报文,广播报文中包括应用标识字段和数据类型字段,应用标识字段用于指示第一应用,数据类型字段用于指示第一数据类型。
29、第三方面以及第三方面中任意一种实现方式所对应的技术效果,可参见上述第三方面及第三方面中任意一种实现方式所对应的技术效果,此处不再赘述。
30、第四方面,该电子设备包括:处理器和存储器,存储器与处理器耦合,存储器用于存储计算机程序代码,计算机程序代码包括计算机指令,当处理器从存储器中读取计算机指令,使得电子设备执行:接收第一电子设备发送的水位信息,水位信息用于指示第一电子设备中的第一应用的第一数据类型的数据的水位已变化,第二电子设备中安装有第一应用。根据水位信息,与第一电子设备同步第一应用的第一数据类型的数据。
31、根据第四方面,根据水位信息,与第一电子设备同步第一应用的第一数据类型的数据,包括:根据水位信息,确定第一应用和第一数据类型。获取第一应用对应的同步寻址数组,在同步寻址数组中记录第一电子设备的第一数据类型的数据的水位已变化,同步寻址数组用于记录已变化第一应用的数据的水位的电子设备。在确定消费第一应用的第一数据类型的数据的情况下,根据同步寻址数组,与第一电子设备同步第一应用的第一数据类型的数据。
32、根据第四方面,或者以上第四方面的任意一种实现方式,当处理器从存储器中读取计算机指令,还使得电子设备执行:更新同步寻址数组,更新后的同步寻址数组中记录的已变化第一数据类型的数据的水位的电子设备不包括第一电子设备。
33、根据第四方面,或者以上第四方面的任意一种实现方式,当处理器从存储器中读取计算机指令,还使得电子设备执行:向第一电子设备发送第二应用列表,第二应用列表用于指示第二电子设备的应用安装情况。以及接收第一电子设备发送的第一应用列表,第一应用列表用于指示第一电子设备的应用安装情况。
34、根据第四方面,或者以上第四方面的任意一种实现方式,当处理器从存储器中读取计算机指令,还使得电子设备执行:与第一电子设备建立第一连接。接收第一电子设备发送的水位信息,包括:通过第一连接接收第一电子设备发送的数据包,数据包中包括应用标识字段和数据类型字段,应用标识字段用于指示第一应用,数据类型字段用于指示第一数据类型。
35、根据第四方面,或者以上第四方面的任意一种实现方式,接收第一电子设备发送的水位信息,包括:接收第一电子设备发送的广播报文,广播报文中包括应用标识字段和数据类型字段,应用标识字段用于指示第一应用,数据类型字段用于指示第一数据类型。
36、第四方面以及第四方面中任意一种实现方式所对应的技术效果,可参见上述第四方面及第四方面中任意一种实现方式所对应的技术效果,此处不再赘述。
37、第五方面,提供一种数据同步系统,该系统包括第一电子设备和第二电子设备。其中第一电子设备,用于:在第一电子设备中的第一应用生成第一数据类型的数据后,确定第一应用对应的第二电子设备,第二电子设备安装有第一应用。在第二电子设备对应的水位指示矩阵中记录第一应用的第一数据类型的数据的水位已变化,水位指示矩阵用于记录多个数据类型的数据的水位变化情况。向第二电子设备发送水位信息,水位信息用于指示水位指示矩阵中记录的水位变化情况。第二电子设备,用于:接收水位信息。根据水位信息,与第一电子设备同步第一应用的第一数据类型的数据。
38、根据第五方面,所述第一电子设备,还用于:向所述第二电子设备发送第一应用列表,所述第一应用列表用于指示所述第一电子设备的应用安装情况。所述第二电子设备,还用于:向所述第一电子设备发送第二应用列表,所述第二应用列表用于指示所述第二电子设备的应用安装情况。
39、根据第五方面,或者以上第五方面的任意一种实现方式,第一电子设备,还用于:根据第二应用列表,确定第一电子设备和第二电子设备均安装的目标应用,目标应用包括第一应用。建立对应于第二电子设备的水位指示矩阵,水位指示矩阵用于指示目标应用的数据的水位变化情况。
40、根据第五方面,或者以上第五方面的任意一种实现方式,第一电子设备,还用于:清除水位指示矩阵中记录的第一应用的第一数据类型的数据的水位变化情况。
41、根据第五方面,或者以上第五方面的任意一种实现方式,第二电子设备,还用于:根据水位信息,确定第一应用和第一数据类型。获取第一应用对应的同步寻址数组,在同步寻址数组中记录第一电子设备的第一数据类型的数据的水位已变化,同步寻址数组用于记录已变化第一应用的数据的水位的电子设备。在确定消费第一应用的第一数据类型的数据的情况下,根据同步寻址数组,与第一电子设备同步第一应用的第一数据类型的数据。
42、根据第五方面,或者以上第五方面的任意一种实现方式,第二电子设备,还用于:更新同步寻址数组,更新后的同步寻址数组中记录的已变化第一数据类型的数据的水位的电子设备不包括第一电子设备。
43、第五方面以及第五方面中任意一种实现方式所对应的技术效果,可参见上述第一方面及第一方面中任意一种实现方式所对应的技术效果,或参见上述第二方面及第二方面中任意一种实现方式所对应的技术效果,此处不再赘述。
44、第六方面,提供一种电子设备,该电子设备具有实现如上述第一方面及其中任一种可能的实现方式中所述的数据同步方法的功能;或者,该电子设备具有实现如上述第二方面及其中任一种可能的实现方式中所述的数据同步方法的功能。该功能可以通过硬件实现,也可以通过硬件执行相应地软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。
45、第六方面以及第六方面中任意一种实现方式所对应的技术效果,可参见上述第一方面及第一方面中任意一种实现方式所对应的技术效果,或参见上述第二方面及第二方面中任意一种实现方式所对应的技术效果,此处不再赘述。
46、第七方面,提供一种计算机可读存储介质。计算机可读存储介质存储有计算机程序(也可称为指令或代码),当该计算机程序被电子设备执行时,使得电子设备执行第一方面或第一方面中任意一种实施方式的方法;或者,使得电子设备执行第二方面或第二方面中任意一种实施方式的方法。
47、第七方面以及第七方面中任意一种实现方式所对应的技术效果,可参见上述第一方面及第一方面中任意一种实现方式所对应的技术效果,此处不再赘述。
48、第八方面,提供一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行第一方面或第一方面中任意一种实施方式的方法;或者,使得电子设备执行第二方面或第二方面中任意一种实施方式的方法。
49、第八方面以及第八方面中任意一种实现方式所对应的技术效果,可参见上述第一方面及第一方面中任意一种实现方式所对应的技术效果,此处不再赘述。
50、第九方面,提供一种电路系统,电路系统包括处理电路,处理电路被配置为执行第一方面或第一方面中任意一种实施方式的方法;或者,处理电路被配置为执行第二方面或第二方面中任意一种实施方式的方法。
51、第九方面以及第九方面中任意一种实现方式所对应的技术效果,可参见上述第一方面及第一方面中任意一种实现方式所对应的技术效果,此处不再赘述。
52、第十方面,提供一种芯片系统,包括至少一个处理器和至少一个接口电路,至少一个接口电路用于执行收发功能,并将指令发送给至少一个处理器,当至少一个处理器执行指令时,至少一个处理器执行第一方面或第一方面中任意一种实施方式的方法;或者,当至少一个处理器执行指令时,至少一个处理器执行第二方面或第二方面中任意一种实施方式的方法。
53、第十方面以及第十方面中任意一种实现方式所对应的技术效果,可参见上述第一方面及第一方面中任意一种实现方式所对应的技术效果,此处不再赘述。