CN114138908A - 数据同步方法、装置、终端及存储介质 - Google Patents
数据同步方法、装置、终端及存储介质 Download PDFInfo
- Publication number
- CN114138908A CN114138908A CN202111479539.6A CN202111479539A CN114138908A CN 114138908 A CN114138908 A CN 114138908A CN 202111479539 A CN202111479539 A CN 202111479539A CN 114138908 A CN114138908 A CN 114138908A
- Authority
- CN
- China
- Prior art keywords
- terminal
- data
- application
- application program
- distributed database
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请涉及一种数据同步方法、装置、终端及存储介质,属于互联网技术领域。该方法包括:若第一应用程序生成待同步的目标数据,通过第一应用程序集成的数据同步工具包,获取分布式数据库服务的服务接口;基于服务接口,确定与第二终端的分布式数据库服务之间的同步通道;基于同步通道将目标数据同步至第二终端,第二终端用于基于分布式数据库服务,将目标数据存储至第二终端。这样在数据同步时,无需先将目标数据存储至云数据库,进而较少了终端与原云数据库的交互,降低了数据同步的延时。
Description
技术领域
本申请实施例涉及互联网技术领域,特别涉及一种数据同步方法、装置、终端及存储介质。
背景技术
随着互联网技术的发展,终端之间的数据共享、数据同步已成为必然的需求。基于终端目前的存储架构,终端只能满足将数据存储在本地的需求。因此,为了满足数据同步等需求,出现了基于云数据库存储的数据同步方案,即应用程序通过云数据库存储数据的方式实现数据同步。
相关技术中,在需要进行数据同步的场景下,第一终端将待同步的目标数据发送给云数据库,由云数据库存储该目标数据,以及将该目标数据发送给第二终端,实现第一终端与第二终端之间的数据同步。
上述相关技术中,终端需要借助云数据库实现数据同步,因此在修改或查找数据时,均需要与云数据库进行数据交互,导致访问时延较大。
发明内容
本申请实施例提供了一种数据同步方法、装置、终端及存储介质,能够降低数据同步的延时。所述技术方案如下:
一方面,提供了一种数据同步方法,所述方法应用于部署有分布式数据库服务的第一终端,所述方法包括:
若第一应用程序生成待同步的目标数据,通过所述第一应用程序集成的数据同步工具包,获取所述分布式数据库服务的服务接口;
基于所述服务接口,确定与第二终端的分布式数据库服务之间的同步通道;
基于所述同步通道将所述目标数据同步至所述第二终端,所述第二终端用于基于所述分布式数据库服务,将所述目标数据存储至所述第二终端。
另一方面,提供了一种数据同步装置,所述装置应用于部署有分布式数据库服务的第一终端,所述装置包括:
获取模块,用于若第一应用程序生成待同步的目标数据,通过所述第一应用程序集成的数据同步工具包,获取所述分布式数据库服务的服务接口;
确定模块,用于基于所述服务接口,确定与第二终端的分布式数据库服务之间的同步通道;
发送模块,用于基于所述同步通道将所述目标数据同步至所述第二终端,所述第二终端用于基于所述分布式数据库服务,将所述目标数据存储至所述第二终端。
另一方面,提供了一种终端,所述终端包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行,以实现如上述方面所述的数据同步方法。
另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行,以实现如上述方面所述的数据同步方法。
另一方面,提供了一种计算机程序产品,所述计算机程序产品存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行以实现如上述方面所述的数据同步方法。
在本申请实施例中,在第一终端和第二终端中部署分布式数据库服务,并且在第一应用程序中集成数据同步工具包,来实现在第一应用程序生成目标数据时,能够基于数据同步工具包提供的服务接口来调动分布式数据库服务,从而将目标数据由第一终端发送至第二终端,这样在数据同步时,无需先将目标数据存储至云数据库,进而减少了终端与云数据库的交互,降低了数据同步的延时。
附图说明
图1示出了本申请一个示例性实施例示出的数据同步方法所涉及的服务调用系统的示意图;
图2示出了本申请一个示例性实施例示出的分布式数据库服务的部署方式的示意图;
图3示出了本申请一个示例性实施例示出的数据同步方法的流程图;
图4示出了本申请一个示例性实施例示出的数据同步方法的流程图;
图5示出了本申请一个示例性实施例示出的数据同步方法的流程图;
图6示出了本申请一个示例性实施例示出的数据同步方法的流程图;
图7示出了本申请一个示例性实施例示出的数据同步方法的流程图;
图8示出了本申请一个示例性实施例示出的数据同步方法的流程图;
图9示出了本申请一个示例性实施例示出的数据同步装置的结构框图;
图10示出了本申请一个示例性实施例示出的终端的结构框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。其中,本申请实施例中涉及到的终端的应用数据等可以为经用户授权或经各方充分授权的数据。
请参考图1,其示出了本申请一个示例性实施例示出的数据同步方法所涉及的实施环境的示意图。参见图1,该实施环境包括:第一终端10和第二终端20。
其中,第一终端10和第二终端20可以为使用任一操作系统的终端。例如,第一终端10和第二终端20的操作系统可以为android(一种移动操作系统)、windows(一种计算机操作系统)、linux(一种多用户网络操作系统)、rtos(一种实时操作系统)等操作系统。
第一终端10和第二终端20中均安装有目标应用程序,其中,该目标应用程序中集成分布式数据库(Multi-End Distributed Database,MDD)软件开发工具包(SoftwareDevelopment Kit,SDK),该MDD SDK用于为目标应用程序提供分布式数据库的使用接口。相应地,第一终端10和第二终端20中还部署有分布式数据库(Multi-End DistributedDatabase,MDD)服务(Server),该MDD Server用于提供数据存储、数据同步、数据通知的功能。
该MDD Server根据第一终端10和第二终端20的操作系统,采用不同的部署方式。例如,对于android系统,其系统架构为分层架构,则该MDD Server可以部署在android系统的系统应用层(android application),或者,部署在android系统的本地应用层(nativeservice)。参见图2,其示出了MDD Server在android系统中的部署方式。其中,该MDDServer部署在android application或native service。再例如,对于windows系统,通过系统服务的方式部署。
另外,MDD Server与MDD SDK之间通过进程间通信机制(Inter-ProcessCommunication,IPC)进行通信。其中,不同的操作系统可以采用不同的IPC机制。例如,在android系统中,采用的IPC机制为binder机制。
该第一终端10和第二终端20可以为手机、平板电脑、个人计算机、车载终端或可穿戴设备等,在本申请实施例中,对该电子设备不作具体限定。
在本申请实施例中,MDD Server用于提供数据存储、数据同步、数据通知的功能。下面分别以MDD Server提供的不同功能为例进行说明。请参见图3,其示出了本申请一个示例性实施例提供的数据同步方法的流程图,本申请实施例以基于MDD Server进行数据同步为例进行说明,该方法包括:
步骤S301:若第一应用程序生成待同步的目标数据,第一终端通过第一应用程序集成的数据同步工具包,获取分布式数据库服务的服务接口。
其中,第一应用程序为集成了数据同步工具包的应用程序,该数据同步工具包用于为第一应用程序提供分布式数据库服务的服务接口。该数据同步工具包可以为MDD SDK工具包。
在本步骤中,第一终端通过第一应用程序集成的数据同步工具包,来确定该第一应用程序对应的分布式数据库服务的服务接口。在第一应用程序的开发过程中,第一应用程序的开发人员在第一应用程序的安装包中集成该数据同步工具包。
在一些实施例中,该数据同步工具包提供该第一应用程序的服务接口,在本步骤中,第一终端从第一应用程序集成的数据同步工具包中,确定该第一应用程序对应的服务接口。这样每个应用程序集成的数据同步工具包中均能够为该应用程序提供对应的接口,提高了确定服务接口的效率。
在一些实施例中,该数据同步工具包提供分布式数据库服务的所有服务接口,在本步骤中,该数据同步工具包为该第一应用程序分配空闲的服务接口。相应地,第一终端通过该数据同步工具包确定为第一应用程序分配的服务接口。这样每个应用程序均能利用空闲的服务接口,防止了服务接口被占用的情况下,第一应用程序无法进行数据同步的问题,提高了服务接口的利用率。
其中,第一应用程序生成待同步的目标数据的过程包括:第一终端通过第一应用程序修改已存储的应用数据,以得到目标数据;或者,第一终端通过第一应用程序存入新的应用数据,以得到该目标数据。
相应地,该目标数据为用户对第一应用程序的已存储的应用数据进行修改得到的应用数据。例如,该第一应用程序为视频播放应用程序,该目标数据为用户基于使用习惯对应用程序的播放参数进行修改得到的配置文件。例如,该目标数据为视频播放应用程序进行视频播放时的音量、亮度、弹幕透明度、色弱模式、弹幕滚动速度或视频播放倍速的设置参数。或者,该第一应用程序为视频便签应用程序,该目标数据为对便签应用程序中已有的便签内容进行修改得到的应用数据。
或者,该目标数据为用户向第一应用程序中新输入的应用数据。例如,该第一应用程序为便签应用程序,该目标数据为用户输入的便签内容。
在本申请实施例中,在检测到第一应用程序生成目标数据时,向第二终端同步该目标数据,这样保证了多个终端中同一应用程序的应用数据能够及时同步,降低了数据同步的延时。
步骤S302:第一终端基于该服务接口,确定与第二终端的分布式数据库服务之间的同步通道。
其中,第二终端为部署了分布式数据库服务的终端。第一终端和第二终端基于分布式数据库服务建立该同步通道。该同步通道用于基于点对点技术(peer-to-peer,P2P)进行数据传输。
在一些实施例中,该同步通道可以为基于网络接入点构建的同步通道。其中,该网络接入点可以为网络中继器、路由器等。相应地,第一终端和第二终端接入相同的网络接入点,基于该相同的网络接入点来建立同步通道,从而实现数据传输。
在一些实施例中,第一终端和第二终端包括短距离通信模块。该同步通道还可以为基于短距离通信模块建立的。该短距离通信模块可以为蓝牙模块、无线保真(WirelessFidelity,Wi-Fi)模块等,在本申请实施例中,对此不作具体限定。
步骤S303:第一终端基于同步通道将目标数据同步至第二终端,第二终端用于基于分布式数据库服务,将目标数据存储至第二终端。
在本步骤中,第一终端通过分布式数据库服务,基于第一终端与第二终端之间的同步通道,将第一应用程序生成的目标数据发送给第二终端。其中,该目标数据携带第一应用程序的应用标识。相应地,请参见图4,第二终端接收该目标数据,基于该目标数据携带的第一应用程序的应用标识,将该目标数据存储至第一应用程序对应的存储空间。
在本申请实施例中,在第一终端和第二终端中部署分布式数据库服务,并且在第一应用程序中集成数据同步工具包,来实现在第一应用程序生成目标数据时,能够基于数据同步工具包提供的服务接口来调动分布式数据库服务,从而将目标数据由第一终端发送至第二终端,这样在数据同步时,无需先将目标数据存储至云数据库,进而减少了终端与云数据库的交互,降低了数据同步的延时。
在本申请实施例中,第一终端中第一应用程序生成待同步的目标数据后,能够通过已建立的同步通道进行数据同步。相应地,该数据同步过程包括建立通道过程和数据传输过程。请参见图5,其示出了本申请一个示例性实施例提供的数据同步方法的流程图,本申请实施例以第一终端和第二终端建立同步通道为例进行说明,该方法包括:
步骤S501:第一终端基于服务接口,调用第一终端的分布式数据库服务。
每个应用程序都有对应的服务接口,通过该服务接口能够调用分布式数据库服务。
其中,该服务接口的确定过程与步骤S301中第一终端确定服务接口的过程原理相同,在此不再赘述。
步骤S502:第一终端通过第一终端的分布式数据库服务查询当前局域网中的第二终端。
该当前局域网为同一网络接入点对应的局域网。相应地,在本步骤中,第一终端确定第一终端连接的网络接入点;确定网络接入点接入的多个终端;从多个终端中确定部署有分布式数据库服务且安装有第一应用程序的第二终端。
在本申请实施例中,第一终端指示网络接入点向该多个终端发送查询请求,该查询请求用于查询终端中是否安装有第一应用程序。若终端中安装有第一应用程序,则将该终端确定为第二终端。
在一些实施例中,第一终端从网络接入点接入的多个终端中确定第一终端关联的第二终端。其中,该第一终端关联的第二终端指与第一终端使用相同账号登录第一应用程序的终端。这样在登录了同一账号的终端之间建立同步通道,防止了目标数据同步至其他终端,进而提高了数据安全性。
步骤S503:第一终端建立与第二终端的分布式数据库服务之间的同步通道。
在本步骤中,第一终端将第一终端的终端标识和第二终端的终端标识对应存储,该对应关系用于网络接入点确定第一终端所需同步的第二终端,从而能够建立第一终端和第二终端的分布式数据库服务之间的同步通道。
在一些实施例中,第一终端将第一终端的终端标识和第二终端的终端标识对应存储在第一终端本地。在一些实施例中,第一终端向网络接入点发送待对应存储的第一终端的终端标识和第二终端的终端标识,指示网络接入点对应存储第一终端的终端标识和第二终端的终端标识。在本申请实施例中,对此不作具体限定。
需要说明的一点是,该第一终端和第二终端建立同步通道的过程可以由用户触发。相应地,响应于用户的触发操作,第一终端执行步骤S501-S503建立第一终端与第二终端之间的同步通道。或者,该第一终端和第二终端建立同步通道的过程也可以为第一终端在检测到需要进行数据同步时,检测到未与第二终端建立同步通道时触发。在本申请实施例中,对此不作具体限定。
另外,在第一终端在检测到需要进行数据同步时,若检测到已与第二终端建立同步通道,则通过已建立的同步通道进行数据同步。
在本申请实施例中,在第一终端和第二终端中部署分布式数据库服务,并且在第一应用程序中集成数据同步工具包,来实现在第一应用程序生成目标数据时,能够基于数据同步工具包提供的服务接口来调动分布式数据库服务,从而将目标数据由第一终端发送至第二终端,这样在数据同步时,无需先将目标数据存储至云数据库,进而减少了终端与云数据库的交互,降低了数据同步的延时。
在本申请实施例中,发起数据同步的时机可以为第一电子设备中有数据生成时,还可以为同步通道建立时。相应地,在一些实施例中,第一终端确定应用程序对应的应用数据更新,则第一终端通过步骤S301-S303实现向第二终端同步数据。在一些实施例中,第一终端在和第二终端建立同步通道后,确定第一终端和第二终端中安装的第二应用程序对应的应用数据是否相同,若不同则发起数据同步。请参见图6,其示出了本申请一个示例性实施例提供的数据同步方法的流程图,本申请实施例以同步通道建立完成后,同步不同的应用数据为例进行说明,该方法包括:
步骤S601:第一终端确定第一终端中第二应用程序对应的应用数据,第二应用程序为集成了数据同步工具包的应用程序。
在本步骤中,第一终端调用分布式数据库服务,确定第二应用程序对应的存储空间,从第二应用程序对应的存储空间获取第二应用程序对应的应用数据。
步骤S602:第一终端确定第一终端和第二终端中第二应用程序对应的应用数据是否相同。
在本申请实施例中,第一终端记录每个应用程序的应用数据的生成情况,若在与第二终端的同步通道断开的期间,应用程序的应用数据产生变化,则第一终端确定第一终端和第二终端中第二应用程序对应的应用数据不同,执行步骤S603。这样第一终端能够在同步通道建立完成时,自动将应用数据同步给其他终端,降低了数据同步的延时。
步骤S603:若第一终端的第二应用程序对应的应用数据与第二终端的第二应用程序对应的应用数据不同,第一终端向第二终端发送第二应用程序对应的应用数据。
本步骤与步骤S303的原理相同,在此不再赘述。
在本申请实施例中,在第一终端和第二终端中部署分布式数据库服务,并且在第一应用程序中集成数据同步工具包,来实现在第一应用程序生成目标数据时,能够基于数据同步工具包提供的服务接口来调动分布式数据库服务,从而将目标数据由第一终端发送至第二终端,这样在数据同步时,无需先将目标数据存储至云数据库,进而减少了终端与云数据库的交互,降低了数据同步的延时。
在本申请实施例中,第一终端在接收到目标数据时,还基于该分布式数据库服务,将目标数据存储在本地。请参见图7,其示出了本申请一个示例性实施例提供的数据同步方法的流程图,本申请实施例以基于分布式数据库服务进行数据存储为例进行说明,该方法包括:
步骤S701:第一终端基于分布式数据库服务为第一终端中集成有数据同步工具包的应用程序分配存储空间。
在本步骤中,第一终端通过该分布式数据库服务,将第一终端的本地存储空间分别划分给第一终端中集成有数据同步工具包的应用程序。请参见图4,分布式数据库服务从第一终端的本地存储空间中,隔离出该分布式数据库服务对应的存储空间,分别基于第一终端中安装的应用程序对隔离出的存储空间进行划分,从而每个应用程序都有对应的存储空间。
步骤S702:若第一应用程序生成待同步的目标数据,第一终端通过第一应用程序集成的数据同步工具包,获取分布式数据库服务的服务接口。
本步骤与步骤S301的原理相同,在此不再赘述。
步骤S703:第一终端基于第一终端的分布式数据库服务,确定第一应用程序对应的存储空间。
在本步骤中,第一终端基于该第一应用程序,从应用程序和存储空间的对应关系中,确定该第一应用程序对应的存储空间。
步骤S704:第一终端将目标数据存储至第一应用程序对应的存储空间。
在本申请实施例中,第一终端将该目标数据写入第一应用程序对应的存储空间中,以实现持久保存。
在本申请实施例中,在第一终端和第二终端中部署分布式数据库服务,并且在第一应用程序中集成数据同步工具包,来实现在第一应用程序生成目标数据时,能够基于数据同步工具包提供的服务接口来调动分布式数据库服务,从而将目标数据由第一终端发送至第二终端,这样在数据同步时,无需先将目标数据存储至云数据库,进而减少了终端与云数据库的交互,降低了数据同步的延时。
并且,通过分布式数据库服务,为每个应用程序隔离出对应的存储空间,从而每个应用程序对应的应用数据均能够存储在本地,进而不依赖云数据库,使用户获得应用数据的所有权和控制权。
第一终端或第二终端在进行数据同步后,也可以将同步的数据存储至对应的应用程序的存储空间。其中,第一终端和第二终端存储该应用数据的原理相同,在本申请实施例中,以第一终端接收到第二终端发送的应用数据为例进行说明。请参见图8,其示出了本申请一个示例性实施例提供的数据同步方法的流程图,本申请实施例以基于分布式数据库服务存储同步的数据为例进行说明,该方法包括:
步骤S801:第一终端通过同步通道接收第二终端发送的第三应用程序的应用数据。
其中,该第三应用程序为集成了数据同步工具包的应用程序。
该过程与步骤S303中第二终端接收第一终端发送的目标数据的原理相同,在此不再赘述。
步骤S802:第一终端从多个存储空间中,确定第三应用程序对应的存储空间。
本步骤与步骤S703的原理相同,在此不再赘述。
步骤S803:第一终端将第三应用程序的应用数据存储至存储空间。
在本步骤中,第一终端接收到的第三应用程序的应用数据与原应用数据进行合并,将合并后的数据存储至存储空间中。这样防止重复存储应用数据,防止存储空间浪费。
另外,参见图4,第一终端在接收到第三应用程序的应用数据后,还通知第三应用程序数据已更新。相应地,第一终端通过分布式数据库服务生成消息更新通知;通过第三应用程序,显示消息更新通知。该消息更新通知用于指示其他终端对当前终端中的应用程序已进行了同步。
在本申请实施例中,在第一终端和第二终端中部署分布式数据库服务,并且在第一应用程序中集成数据同步工具包,来实现在第一应用程序生成目标数据时,能够基于数据同步工具包提供的服务接口来调动分布式数据库服务,从而将目标数据由第一终端发送至第二终端,这样在数据同步时,无需先将目标数据存储至云数据库,进而减少了终端与云数据库的交互,降低了数据同步的延时。
请参考图9,其示出了本申请一个实施例提供的数据同步装置的结构框图。该数据同步装置可以通过软件、硬件或者两者的结合实现成为处理器的全部或一部分。该装置包括:
第一获取模块901,用于若第一应用程序生成待同步的目标数据,通过该第一应用程序集成的数据同步工具包,获取该分布式数据库服务的服务接口;
第一确定模块902,用于基于该服务接口,确定与第二终端的分布式数据库服务之间的同步通道;
发送模块903,用于基于该同步通道将该目标数据同步至该第二终端,该第二终端用于基于该分布式数据库服务,将该目标数据存储至该第二终端。
在一些实施例中,该第一确定模块902,包括:
调用单元,用于基于该服务接口,调用该第一终端的分布式数据库服务;
查询单元,用于通过该第一终端的分布式数据库服务查询当前局域网中的第二终端;
建立单元,用于建立与该第二终端的分布式数据库服务之间的同步通道。
在一些实施例中,该查询单元,用于确定该第一终端连接的网络接入点;确定该网络接入点接入的多个终端;从该多个终端中确定部署有该分布式数据库服务且安装有该第一应用程序的第二终端。
在一些实施例中,该第一终端的分布式数据库服务还用于为该第一终端中集成有数据同步工具包的应用程序分配存储空间;该装置还包括:
第二确定模块,用于基于该第一终端的分布式数据库服务,确定该第一应用程序对应的存储空间;
第一存储模块,用于将该目标数据存储至该第一应用程序对应的存储空间。
在一些实施例中,该装置还包括:
第三确定模块,用于确定该第一终端中第二应用程序对应的应用数据,该第二应用程序为集成了数据同步工具包的应用程序;
该发送模块903,还用于若该第一终端的第二应用程序对应的应用数据与该第二终端的第二应用程序对应的应用数据不同,执行向该第二终端发送该第二应用程序对应的应用数据的步骤,该第二终端用于接收该第二应用程序的应用数据,将该第二应用程序的应用数据与该第二终端的第二应用程序对应的应用数据合并存储。
在一些实施例中,该装置还包括:
第二获取模块,用于通过该第一应用程序修改已存储的应用数据,以得到该目标数据;或者,
第三获取模块,用于通过该第一应用程序获取新存入的应用数据。
在一些实施例中,该装置还包括:
接收模块,用于通过该同步通道接收第二终端发送的第三应用程序的应用数据;
第四确定模块,用于从多个存储空间中,确定该第三应用程序对应的存储空间;
第二存储模块,用于将该第三应用程序的应用数据存储至该存储空间。
在一些实施例中,该装置还包括:
生成模块,用于通过该分布式数据库服务生成消息更新通知;
显示模块,用于通过该第三应用程序,显示该消息更新通知。
在本申请实施例中,在第一终端和第二终端中部署分布式数据库服务,并且在第一应用程序中集成数据同步工具包,来实现在第一应用程序生成目标数据时,能够基于数据同步工具包提供的服务接口来调动分布式数据库服务,从而将目标数据由第一终端发送至第二终端,这样在数据同步时,无需先将目标数据存储至云数据库,进而减少了终端与云数据库的交互,降低了数据同步的延时。
请参考图10,其示出了本申请一个示例性实施例提供的终端1000的结构方框图。本申请中的终端1000可以包括一个或多个如下部件:处理器1010、存储器1020。
处理器1010可以包括一个或者多个处理核心。处理器1010利用各种接口和线路连接整个终端1000内的各个部分,通过运行或执行存储在存储器1020内的指令、程序、代码集或指令集,以及调用存储在存储器1020内的数据,执行终端1000的各种功能和处理数据。可选地,处理器1010可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器1010可集成中央处理器(CentralProcessing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)、神经网络处理器(Neural-network Processing Unit,NPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示屏所需要显示的内容的渲染和绘制;NPU用于实现人工智能(Artificial Intelligence,AI)功能;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器1010中,单独通过一块芯片进行实现。
存储器1020可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。可选地,该存储器1020包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器1020可用于存储指令、程序、代码、代码集或指令集。存储器1020可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等;存储数据区可存储根据终端1000的使用所创建的数据(比如音频数据、电话本)等。
该终端1010还可以包括显示屏,显示屏是用于显示用户界面的显示组件。可选的,该显示屏为具有触控功能的显示屏,通过触控功能,用户可以使用手指、触摸笔等任何适合的物体在显示屏上进行触控操作。
显示屏通常设置在终端1000的前面板。显示屏可被设计成为全面屏、曲面屏、异型屏、双面屏或折叠屏。显示屏还可被设计成为全面屏与曲面屏的结合,异型屏与曲面屏的结合等,本实施例对此不加以限定。
除此之外,本领域技术人员可以理解,上述附图所示出的终端1000的结构并不构成对终端1000的限定,终端1000可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。比如,终端1000中还包括麦克风、扬声器、射频电路、输入单元、传感器、音频电路、电源、蓝牙模块等部件,在此不再赘述。
需要说明的一点是第一终端和第二终端均可以为上述终端1000的结构。
本申请实施例还提供了一种计算机可读介质,该计算机可读介质存储有至少一条指令,该至少一条指令由该处理器加载并执行以实现如上各个实施例示出的数据同步方法。
本申请实施例还提供了一种计算机程序产品,该计算机程序产品存储有至少一条指令,该至少一条指令由该处理器加载并执行以实现如上各个实施例示出的数据同步方法。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本申请实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (12)
1.一种数据同步方法,其特征在于,所述方法应用于部署有分布式数据库服务的第一终端,所述方法包括:
若第一应用程序生成待同步的目标数据,通过所述第一应用程序集成的数据同步工具包,获取所述分布式数据库服务的服务接口;
基于所述服务接口,确定与第二终端的分布式数据库服务之间的同步通道;
基于所述同步通道将所述目标数据同步至所述第二终端,所述第二终端用于基于所述分布式数据库服务,将所述目标数据存储至所述第二终端。
2.根据权利要求1所述的方法,其特征在于,所述基于所述服务接口,确定与第二终端的分布式数据库服务之间的同步通道,包括:
基于所述服务接口,调用所述第一终端的分布式数据库服务;
通过所述第一终端的分布式数据库服务查询当前局域网中的第二终端;
建立与所述第二终端的分布式数据库服务之间的同步通道。
3.根据权利要求2所述的方法,其特征在于,所述通过所述第一终端的分布式数据库服务查询当前局域网中的第二终端,包括:
确定所述第一终端连接的网络接入点;
确定所述网络接入点接入的多个终端;
从所述多个终端中确定部署有所述分布式数据库服务且安装有所述第一应用程序的第二终端。
4.根据权利要求1所述的方法,其特征在于,所述第一终端的分布式数据库服务还用于为所述第一终端中集成有数据同步工具包的应用程序分配存储空间;所述通过所述第一应用程序集成的数据同步工具包,获取所述分布式数据库服务的服务接口之后,所述方法还包括:
基于所述第一终端的分布式数据库服务,确定所述第一应用程序对应的存储空间;
将所述目标数据存储至所述第一应用程序对应的存储空间。
5.根据权利要求1所述的方法,其特征在于,所述基于所述服务接口与第二终端的分布式数据库服务建立同步通道之后,所述方法还包括:
确定所述第一终端中第二应用程序对应的应用数据,所述第二应用程序为集成了数据同步工具包的应用程序;
若所述第一终端的第二应用程序对应的应用数据与所述第二终端的第二应用程序对应的应用数据不同,向所述第二终端发送所述第二应用程序对应的应用数据,所述第二终端用于接收所述第二应用程序的应用数据,将所述第二应用程序的应用数据与所述第二终端的第二应用程序对应的应用数据合并存储。
6.根据权利要求1所述的方法,其特征在于,第一应用程序生成待同步的目标数据的过程包括:
通过所述第一应用程序修改已存储的应用数据,以得到所述目标数据;或者,
通过所述第一应用程序存入新的应用数据,以得到所述目标数据。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
通过所述同步通道接收第二终端发送的第三应用程序的应用数据;
从多个存储空间中,确定所述第三应用程序对应的存储空间;
将所述第三应用程序的应用数据存储至所述存储空间。
8.根据权利要求7所述的方法,其特征在于,所述通过所述同步通道接收第二终端发送的第三应用程序的应用数据之后,所述方法还包括:
通过所述分布式数据库服务生成消息更新通知;
通过所述第三应用程序,显示所述消息更新通知。
9.一种数据同步装置,其特征在于,所述装置应用于部署有分布式数据库服务的第一终端,所述装置包括:
获取模块,用于若第一应用程序生成待同步的目标数据,通过所述第一应用程序集成的数据同步工具包,获取所述分布式数据库服务的服务接口;
确定模块,用于基于所述服务接口,确定与第二终端的分布式数据库服务之间的同步通道;
发送模块,用于基于所述同步通道将所述目标数据同步至所述第二终端,所述第二终端用于基于所述分布式数据库服务,将所述目标数据存储至所述第二终端。
10.一种终端,其特征在于,所述终端包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行,以实现如权利要求1至8任一项所述的数据同步方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行,以实现如权利要求1至8任一所述的数据同步方法。
12.一种计算机程序产品,其特征在于,所述计算机程序产品存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行以实现如权利要求1至8任一项所述的数据同步方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111479539.6A CN114138908A (zh) | 2021-12-06 | 2021-12-06 | 数据同步方法、装置、终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111479539.6A CN114138908A (zh) | 2021-12-06 | 2021-12-06 | 数据同步方法、装置、终端及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114138908A true CN114138908A (zh) | 2022-03-04 |
Family
ID=80384560
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111479539.6A Pending CN114138908A (zh) | 2021-12-06 | 2021-12-06 | 数据同步方法、装置、终端及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114138908A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114866566A (zh) * | 2022-04-26 | 2022-08-05 | 北京城市网邻信息技术有限公司 | 基于nfc的数据同步方法、装置、电子设备及存储介质 |
CN114968361A (zh) * | 2022-06-02 | 2022-08-30 | 上海壁仞智能科技有限公司 | 存储有程序的机器可读介质、计算机系统和一种操作方法 |
WO2024093704A1 (zh) * | 2022-10-31 | 2024-05-10 | Oppo广东移动通信有限公司 | 服务流转方法、装置、电子设备、系统及存储介质 |
-
2021
- 2021-12-06 CN CN202111479539.6A patent/CN114138908A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114866566A (zh) * | 2022-04-26 | 2022-08-05 | 北京城市网邻信息技术有限公司 | 基于nfc的数据同步方法、装置、电子设备及存储介质 |
CN114968361A (zh) * | 2022-06-02 | 2022-08-30 | 上海壁仞智能科技有限公司 | 存储有程序的机器可读介质、计算机系统和一种操作方法 |
CN114968361B (zh) * | 2022-06-02 | 2024-04-30 | 上海壁仞科技股份有限公司 | 存储有程序的机器可读介质、计算机系统和一种操作方法 |
WO2024093704A1 (zh) * | 2022-10-31 | 2024-05-10 | Oppo广东移动通信有限公司 | 服务流转方法、装置、电子设备、系统及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114138908A (zh) | 数据同步方法、装置、终端及存储介质 | |
CN108595203B (zh) | 应用功能执行方法、移动终端和计算机可读存储介质 | |
WO2023103759A1 (zh) | 服务调用方法、系统、装置、设备及存储介质 | |
CN109033393B (zh) | 贴纸处理方法、装置、存储介质及电子设备 | |
WO2023160222A1 (zh) | 外接设备与终端的连接方法、装置、设备及存储介质 | |
CN111787088B (zh) | 小程序数据处理的方法和装置 | |
CN115242805B (zh) | 基于gossip的分布式MQTT消息传递方法、传递系统及存储介质 | |
KR20210073225A (ko) | 다수 개의 집적 회로 사이의 인터페이스를 제어하기 위한 전자 장치 및 그의 동작 방법 | |
CN114422566A (zh) | 多设备连接方法、装置、系统、设备及存储介质 | |
CN114327087A (zh) | 输入事件处理方法、装置、电子设备和存储介质 | |
WO2023173897A1 (zh) | 跨设备截图方法、装置、设备及存储介质 | |
WO2023221495A1 (zh) | 一种网页同步方法、装置、存储介质及电子设备 | |
WO2020052354A1 (zh) | 游戏加载方法及相关产品 | |
KR20210050398A (ko) | 전자 장치와 연결되지 않은 외부 전자 장치로 데이터를 전송하는 전자 장치 및 전자 장치의 동작 방법 | |
JP2023539879A (ja) | 共有ライブラリを再利用するための方法および電子デバイス | |
CN109189498B (zh) | Android横竖屏数据同步方法、装置、终端及可读介质 | |
CN112463410B (zh) | 一种分布式消息架构管理方法、平台及电子设备 | |
CN112272223B (zh) | 应用的运行方法、装置、服务器及计算机可读存储介质 | |
CN109165067B (zh) | Android横竖屏数据同步方法、装置、终端及可读介质 | |
CN116346975A (zh) | 同步通话记录的方法、电子设备及可读存储介质 | |
CN109347994B (zh) | 互联网协议ip地址获取方法、装置、存储介质及电子设备 | |
CN112188245A (zh) | 一种前端摄像头实时视频点播方法及装置、电子设备 | |
CN114125048B (zh) | 一种消息推送设置方法、装置、存储介质及电子设备 | |
WO2023024589A1 (zh) | 请求的处理方法及相关装置 | |
CN112104990A (zh) | 资源下载方法、装置及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |