CN111580851A - 一种数据管理的方法以及相关装置 - Google Patents
一种数据管理的方法以及相关装置 Download PDFInfo
- Publication number
- CN111580851A CN111580851A CN202010588837.8A CN202010588837A CN111580851A CN 111580851 A CN111580851 A CN 111580851A CN 202010588837 A CN202010588837 A CN 202010588837A CN 111580851 A CN111580851 A CN 111580851A
- Authority
- CN
- China
- Prior art keywords
- file
- differential
- difference
- data packet
- files
- 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
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/658—Incremental updates; Differential updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种数据管理的方法以及相关装置。通过获取第一数据包和第二数据包;然后遍历第一数据包中的文件和第二数据包中的文件,以确定差异文件;并基于预设阈值、文件格式或文件大小中的至少一个条件将第一数据包中的文件和第二数据包中的文件划分到至少两个差分文件中;进而基于差分文件进行并行的差分计算,以得到用于指示终端对目标应用进行版本更新的补丁包。从而实现分段合成补丁包的过程,由于分段合成补丁包的过程是并行进行的,且各分段需要解压处理的文件数量相同,保证了多线程并行计算的正常进行,并提高了数据更新的效率。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据管理的方法以及相关装置。
背景技术
随着互联网技术的发展,越来越多的应用程序出现在人们的生活中,且应用程序时常需要更新,如何提升应用程序的更新效率成为难题。
一般,可以采用旧版本数据包和新版本数据包的比对进行更新,即执行差分流程。差分流程分为遍历新旧版本包中的文件、解压新版本包中的差异文件、合并新版本包中的差异文件、生成补丁包、组装差分包,进而基于差分包对终端的应用提供更新。
但是,上述方法在服务器中获取差分包的过程使用单线程串行处理,比较耗时;且在数据包较大时耗时会大大提升,影响数据的更新效率。
发明内容
有鉴于此,本申请提供一种数据管理的方法,可以有效避免更新数据包较大时耗时严重的情况,提高数据更新的效率。
本申请第一方面提供一种数据管理的方法,可以应用于终端设备中包含数据管理功能的系统或程序中,具体包括:获取第一数据包和第二数据包,所述第一数据包和所述第二数据包对应于目标应用的版本不同;
遍历包含所述第一数据包中和所述第二数据包的参与文件,以确定差异文件,所述差异文件包括所述第一数据包和所述第二数据包中的目录差异项或内容差异项;
基于差分条件将所述参与文件划分到至少两个差分文件中,其中,所述差分条件包括以下至少一种:预设阈值、文件格式、文件大小,所述预设阈值用于指示所述差分文件中包含所述内容差异项的数量,所述文件格式与所述差分文件相对应,所述文件大小用于指示所述差分文件的大小;
基于所述差分文件进行并行的差分计算,以得到补丁包,所述补丁包用于指示终端对所述目标应用进行版本更新。
可选的,在本申请一些可能的实现方式中,若所述差分条件为预设阈值R,则所述基于差分条件将所述参与文件划分到至少两个差分文件中,包括:
确定所述参与文件对应的差异文件中的所述内容差异项、所述目录差异项或相同项,所述参与文件中包括第一数据包中包含的N个文件和所述第二数据包中包含的M个文件,N和M为正整数;
基于所述预设阈值R将所述内容差异项进行划分,所述预设阈值为R,R<N且R<M,R为正整数;
将划分后的所述内容差异项进行解压,以写入至少两个所述差分文件;
将划分后的所述目录差异项或相同项直接写入所述差分文件。
可选的,在本申请一些可能的实现方式中,若所述差分条件为文件格式,则所述基于差分条件将所述参与文件划分到至少两个差分文件中,包括:
确定所述参与文件中的至少两种文件格式;
基于所述文件格式对所述第一数据包中的文件和所述第二数据包中的文件进行划分,以得到至少两个所述差分文件。
可选的,在本申请一些可能的实现方式中,所述确定所述参与文件中的至少两种文件格式,包括:
确定所述参与文件包含的文件类型;
确定所述文件类型对应的多个格式信息;
基于所述格式信息确定所述文件格式。
可选的,在本申请一些可能的实现方式中,所述方法还包括:
基于所述差分文件对应的文件格式确定格式差分算法;
基于所述格式差分算法进行并行的差分计算,以对所述补丁包进行更新。
可选的,在本申请一些可能的实现方式中,所述方法还包括:
基于所述文件格式生成格式目录;
根据所述格式目标绑定对应的差异文件,以生成记录信息;
结合所述记录信息和所述补丁包对应的版本信息生成补丁格式信息,所述补丁格式信息用于指示所述终端对所述补丁包进行识别。
可选的,在本申请一些可能的实现方式中,若所述差分条件为文件大小,则所述基于差分条件将所述参与文件划分到至少两个差分文件中,包括:
确定所述文件大小对应的划分阈值;
基于所述划分阈值从所述参与文件中提取对应大小的文件,以划分到至少两个所述差分文件中。
可选的,在本申请一些可能的实现方式中,若所述第一数据包中的文件和所述第二数据包中的文件对应同一种文件格式,则所述差分条件为所述预设阈值或所述文件大小。
可选的,在本申请一些可能的实现方式中,所述基于差分条件将所述参与文件划分到至少两个差分文件中,包括:
获取所述参与文件中文件参数,所述文件参数包括文件的数量或大小;
若所述文件参数指示的数值大于文件处理阈值,则基于第一处理条件将所述参与文件划分到至少两个阈值划分文件中,所述文件处理阈值基于数量或大小设定,所述第一处理条件包括所述预设阈值、所述文件格式或所述文件大小中的至少一种;
基于第二处理条件将每个所述阈值划分文件划分到至少两个所述差分文件中,所述第二处理条件包括所述预设阈值、所述文件格式或所述文件大小中的至少一种,所述第一处理条件与所述第二处理条件不同。
可选的,在本申请一些可能的实现方式中,其特征在于,所述基于所述差分文件进行并行的差分计算,以得到补丁包,包括:
确定所述差分文件中的第一临时文件和第二临时文件,所述第一临时文件用于指示所述第一数据包中的差异文件,所述第二临时文件用于指示所述第二数据包中的差异文件;
基于所述第一临时文件和所述第二临时文件进行差分计算,以得到所述补丁包。
本申请第二方面提供一种数据管理的装置,包括:获取单元,用于获取第一数据包和第二数据包,所述第一数据包和所述第二数据包对应于目标应用的版本不同;
遍历单元,用于遍历包含所述第一数据包中和所述第二数据包的参与文件,以确定差异文件,所述差异文件包括所述第一数据包和所述第二数据包中的目录差异项或内容差异项;
划分单元,用于基于差分条件将所述参与文件划分到至少两个差分文件中,其中,所述差分条件包括以下至少一种:预设阈值、文件格式、文件大小,所述预设阈值用于指示所述差分文件中包含所述内容差异项的数量,所述文件格式与所述差分文件相对应,所述文件大小用于指示所述差分文件的大小;
管理单元,用于基于所述差分文件进行并行的差分计算,以得到补丁包,所述补丁包用于指示终端对所述目标应用进行版本更新。
可选的,在本申请一些可能的实现方式中,若所述差分条件为预设阈值R,则所述划分单元,具体用于确定所述参与文件对应的差异文件中的所述内容差异项、所述目录差异项或相同项,所述参与文件中包括第一数据包中包含的N个文件和所述第二数据包中包含的M个文件,N和M为正整数;
所述划分单元,具体用于基于所述预设阈值R将所述内容差异项进行划分,所述预设阈值为R,R<N且R<M,R为正整数;
所述划分单元,具体用于将划分后的所述内容差异项进行解压,以写入至少两个所述差分文件;
所述划分单元,具体用于将划分后的所述目录差异项或相同项直接写入所述差分文件。
可选的,在本申请一些可能的实现方式中,若所述差分条件为文件格式,则所述划分单元,具体用于确定所述参与文件中的至少两种文件格式;
所述划分单元,具体用于基于所述文件格式对所述第一数据包中的文件和所述第二数据包中的文件进行划分,以得到至少两个所述差分文件。
可选的,在本申请一些可能的实现方式中,所述划分单元,具体用于确定所述参与文件包含的文件类型;
所述划分单元,具体用于确定所述文件类型对应的多个格式信息;
所述划分单元,具体用于基于所述格式信息确定所述文件格式。
可选的,在本申请一些可能的实现方式中,所述划分单元,具体用于基于所述差分文件对应的文件格式确定格式差分算法;
所述划分单元,具体用于基于所述格式差分算法进行并行的差分计算,以对所述补丁包进行更新。
可选的,在本申请一些可能的实现方式中,所述划分单元,具体用于基于所述文件格式生成格式目录;
所述划分单元,具体用于根据所述格式目标绑定对应的差异文件,以生成记录信息;
所述划分单元,具体用于结合所述记录信息和所述补丁包对应的版本信息生成补丁格式信息,所述补丁格式信息用于指示所述终端对所述补丁包进行识别。
可选的,在本申请一些可能的实现方式中,若所述差分条件为文件大小,则所述划分单元,具体用于确定所述文件大小对应的划分阈值;
所述划分单元,具体用于基于所述划分阈值从所述参与文件中提取对应大小的文件,以划分到至少两个所述差分文件中。
可选的,在本申请一些可能的实现方式中,所述划分单元,具体用于若所述第一数据包中的文件和所述第二数据包中的文件对应同一种文件格式,则所述差分条件为所述预设阈值或所述文件大小。
可选的,在本申请一些可能的实现方式中,所述划分单元,具体用于获取所述参与文件中文件参数,所述文件参数包括文件的数量或大小;
所述划分单元,具体用于若所述文件参数指示的数值大于文件处理阈值,则基于第一处理条件将所述参与文件划分到至少两个阈值划分文件中,所述文件处理阈值基于数量或大小设定,所述第一处理条件包括所述预设阈值、所述文件格式或所述文件大小中的至少一种;
所述划分单元,具体用于基于第二处理条件将每个所述阈值划分文件划分到至少两个所述差分文件中,所述第二处理条件包括所述预设阈值、所述文件格式或所述文件大小中的至少一种,所述第一处理条件与所述第二处理条件不同。
可选的,在本申请一些可能的实现方式中,其特征在于,所述管理单元,具体用于确定所述差分文件中的第一临时文件和第二临时文件,所述第一临时文件用于指示所述第一数据包中的差异文件,所述第二临时文件用于指示所述第二数据包中的差异文件;
所述管理单元,具体用于基于所述第一临时文件和所述第二临时文件进行差分计算,以得到所述补丁包。
本申请第三方面提供一种数据管理的方法,包括:获取服务器发送的补丁包;
确定所述补丁包中指示的至少两个差分文件,所述差分文件为所述服务器基于差分条件对第一数据包中的文件和第二数据包中的文件进行划分所得,所述第一数据包和所述第二数据包对应于目标应用的版本不同,所述差分条件包括以下至少一种:预设阈值、文件格式、文件大小,所述预设阈值用于指示所述差分文件中包含所述内容差异项的数量,所述文件格式与所述差分文件相对应,所述文件大小用于指示所述差分文件的大小;
基于所述第一数据包和所述差分文件进行合成计算,以得到所述第二数据包,所述第一数据包为本地版本数据;
基于所述第二数据包进行版本更新。
可选的,在本申请一些可能的实现方式中,所述基于第一数据包和所述差分文件进行合成计算,以得到所述第二数据包,包括:
确定所述差分文件中指示的内容差异项和目录差异项;
基于每个所述差分文件对应的合成线程对所述内容差异项和目录差异项进行并行处理,以将所述第一数据包更新为所述第二数据包。
本申请第四方面提供一种数据管理的装置,包括:获取单元,用于获取服务器发送的补丁包;
确定单元,用于确定所述补丁包中指示的至少两个差分文件,所述差分文件为所述服务器基于差分条件对第一数据包中的文件和第二数据包中的文件进行划分所得,所述第一数据包和所述第二数据包对应于目标应用的版本不同,所述差分条件包括以下至少一种:预设阈值、文件格式、文件大小,所述预设阈值用于指示所述差分文件中包含所述内容差异项的数量,所述文件格式与所述差分文件相对应,所述文件大小用于指示所述差分文件的大小;
管理单元,用于基于所述第一数据包和所述差分文件进行合成计算,以得到所述第二数据包,所述第一数据包为本地版本数据;
所述管理单元,还用于基于所述第二数据包进行版本更新。
可选的,在本申请一些可能的实现方式中,所述管理单元,具体用于确定所述差分文件中指示的内容差异项和目录差异项;
所述管理单元,具体用于基于每个所述差分文件对应的合成线程对所述内容差异项和目录差异项进行并行处理,以将所述第一数据包更新为所述第二数据包。
本申请第五方面提供一种计算机设备,包括:存储器、处理器以及总线系统;所述存储器用于存储程序代码;所述处理器用于根据所述程序代码中的指令执行上述第一方面或第一方面任一项所述的数据管理的方法,或第三方面或第三方面任一项所述的数据管理的方法。
本申请第六方面提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面或第一方面任一项所述的数据管理的方法,或第三方面或第三方面任一项所述的数据管理的方法。
本申请的另一个方面,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述第一方面或者第一方面的各种可选实现方式中提供的数据管理的方法,或上述第三方面或者第三方面的各种可选实现方式中提供的数据管理的方法。
从以上技术方案可以看出,本申请实施例具有以下优点:
通过获取第一数据包和第二数据包;然后遍历第一数据包中的文件和第二数据包中的文件,以确定差异文件,该差异文件包括第一数据包和第二数据包中的目录差异项或内容差异项;并基于预设阈值、文件格式或文件大小中的至少一个条件将第一数据包中的文件和第二数据包中的文件划分到至少两个差分文件中,其中预设阈值用于指示差分文件中包含内容差异项的数量,而每个差分文件对应于至少一个文件格式;进而基于差分文件进行并行的差分计算,以得到用于指示终端对目标应用进行版本更新的补丁包。从而实现分段合成补丁包的过程,由于分段合成补丁包的过程是并行进行的,且各段之间对应的需要解压处理的文件数量相同,保证了多线程并行计算的正常进行,并提高了数据更新的效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为数据管理系统运行的网络架构图;
图2为本申请实施例提供的一种数据管理的流程架构图;
图3为本申请实施例提供的一种数据管理的方法的流程图;
图4为本申请实施例提供的一种数据管理的场景示意图;
图5为本申请实施例提供的另一种数据管理的场景示意图;
图6为本申请实施例提供的另一种数据管理的场景示意图;
图7为本申请实施例提供的另一种数据管理的方法的流程图;
图8为本申请实施例提供的另一种数据管理的场景示意图;
图9为本申请实施例提供的另一种数据管理的场景示意图;
图10为本申请实施例提供的另一种数据管理的场景示意图;
图11为本申请实施例提供的另一种数据管理的场景示意图;
图12为本申请实施例提供的另一种数据管理的场景示意图;
图13为本申请实施例提供的另一种数据管理的场景示意图;
图14为本申请实施例提供的一种数据管理装置的结构示意图;
图15为本申请实施例提供的另一种数据管理装置的结构示意图;
图16为本申请实施例提供的一种服务器的结构示意图;
图17为本申请实施例提供的一种终端设备的结构示意图。
具体实施方式
本申请实施例提供了一种数据管理的方法以及相关装置,可以应用于终端设备中包含数据管理功能的系统或程序中,通过获取第一数据包和第二数据包;然后遍历第一数据包中的文件和第二数据包中的文件,以确定差异文件,该差异文件包括第一数据包和第二数据包中的目录差异项或内容差异项;并基于预设阈值、文件格式或文件大小中的至少一个条件将第一数据包中的文件和第二数据包中的文件划分到至少两个差分文件中,其中预设阈值用于指示差分文件中包含内容差异项的数量,而每个差分文件对应于至少一个文件格式;进而基于差分文件进行并行的差分计算,以得到用于指示终端对目标应用进行版本更新的补丁包。从而实现分段合成补丁包的过程,由于分段合成补丁包的过程是并行进行的,且各段之间对应的需要解压处理的文件数量相同,保证了多线程并行计算的正常进行,并提高了数据更新的效率。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“对应于”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,对本申请实施例中可能出现的一些名词进行解释。
bsdiff/bspatch:一种开源的差量更新算法,即在服务器端中使用bsdiff算法产生补丁包,客户端使用bspatch算法将旧文件和补丁包合成新文件。
mergeBsdiff:增量更新算法的一种,基于zip拆包和bsdiff算法,合并新旧版本的差异文件后做bsdiff差分,应用于应用宝等类似应用平台。
hdiffpatch:一种开源的差量更新算法,即在服务器端使用hdiff算法产生补丁包,客户端使用hpatch算法将旧文件和补丁包合成新文件。
dexdiff/dexpatch:一种针对.dex格式文件的深度差分合成算法。
安卓应用程序包(Android application package,apk):用于分发和安装移动应用及中间件,其中apk中主要包含.dex,.so,.png/.jpg,.json等格式文件。
应理解,本申请提供的数据管理方法可以应用于终端设备中包含数据管理功能的系统或程序中,例如应用程序平台,具体的,数据管理系统可以运行于如图1所示的网络架构中,如图1所示,是数据管理系统运行的网络架构图,如图可知,数据管理系统可以提供与多个信息源的数据管理,终端通过网络建立与服务器的连接,服务器负责对于目标应用程序版本的检测,并获取对应的数据包,进而根据版本数据之间的差异生成补丁包,并向终端发送补丁包,使得终端对本地的目标应用程序进行版本的更新;可以理解的是,图1中示出了多种终端设备,在实际场景中可以有更多或更少种类的终端设备参与到数据管理的过程中,具体数量和种类因实际场景而定,此处不做限定,另外,图1中示出了一个服务器,但在实际场景中,也可以有多个服务器的参与,特别是在多内容应用交互的场景中,具体服务器数量因实际场景而定。
本实施例中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
应当注意的是,本实施例提供的数据管理方法也可以离线进行,即不需要服务器的参与,此时终端在本地与其他终端进行连接,进而进行终端之间的数据传输以及更新的过程。
可以理解的是,上述数据管理系统可以运行于个人移动终端,例如:作为应用程序平台这样的应用,也可以运行于服务器,还可以作为运行于第三方设备以提供数据管理,以得到信息源的数据管理处理结果;具体的数据管理系统可以是以一种程序的形式在上述设备中运行,也可以作为上述设备中的系统部件进行运行,还可以作为云端服务程序的一种,具体运作模式因实际场景而定,此处不做限定。
随着互联网技术的发展,越来越多的应用程序出现在人们的生活中,且应用程序时常需要更新,如何提升应用程序的更新效率成为难题。
一般,可以采用旧版本数据包和新版本数据包的比对进行更新,即执行差分流程。差分流程分为遍历新旧版本包中的文件、解压新版本包中的差异文件、合并新版本包中的差异文件、生成补丁包、组装差分包,进而基于差分包对终端的应用提供更新。
但是,上述方法在服务器中获取差分包的过程使用单线程串行处理,比较耗时;且在数据包较大时耗时会大大提升,影响数据的更新效率。
为了解决上述问题,本申请提出了一种数据管理的方法,该方法应用于图2所示的数据管理的流程框架中,如图2所示,为本申请实施例提供的一种数据管理的流程架构图,首先服务器侧根据终端当前的应用程序的版本确定旧的数据包,然后根据应用程序最新的版本确定新的数据包,进而根据新旧数据包的差分计算得到补丁包,并将补丁包发送至终端,使得终端基于本地的数据包和补丁包合成更新的数据包,从而实现应用程序的版本更新。
可以理解的是,本申请所提供的方法可以为一种程序的写入,以作为硬件系统中的一种处理逻辑,也可以作为一种数据管理装置,采用集成或外接的方式实现上述处理逻辑。作为一种实现方式,该数据管理装置通过获取第一数据包和第二数据包;然后遍历第一数据包中的文件和第二数据包中的文件,以确定差异文件,该差异文件包括第一数据包和第二数据包中的目录差异项或内容差异项;并基于预设阈值、文件格式或文件大小中的至少一个条件将第一数据包中的文件和第二数据包中的文件划分到至少两个差分文件中,其中预设阈值用于指示差分文件中包含内容差异项的数量,而每个差分文件对应于至少一个文件格式;进而基于差分文件进行并行的差分计算,以得到用于指示终端对目标应用进行版本更新的补丁包。从而实现分段合成补丁包的过程,由于分段合成补丁包的过程是并行进行的,且各段之间对应的需要解压处理的文件数量相同,保证了多线程并行计算的正常进行,并提高了数据更新的效率。
结合上述流程架构,下面将对本申请中数据管理的方法进行介绍,请参阅图3,图3为本申请实施例提供的一种数据管理的方法的流程图,可以应用于用于应用程序管理的服务器中,本申请实施例至少包括以下步骤:
301、获取第一数据包和第二数据包。
本实施例中,第一数据包和第二数据包对应于目标应用的版本不同,N和M为正整数;其中,第一数据包即为目标应用的一种版本下的数据,而第二数据包则为另一种版本下的数据。
具体的,第一数据包和第二数据包之间的关系可以是新旧版本应用之间的关系,即第一数据包为旧版本应用对应的数据,而第二数据包为新版本应用对应的数据;也可以是第一数据包为新版本应用对应的数据,而第二数据包为旧版本应用对应的数据,即应用还原的过程。
可以理解的是,第一数据包和第二数据包之间对应的应用版本可以是间隔一代也可以是多代,具体差异因实际场景而定。
可选的,第一数据包可以是通过终端发送的更新请求获取的,即终端需要对目标程序进行版本更新,则向服务器发送版本更新请求,并附带对应的版本标识以及目标版本的标识,例如用户需要将程序1有版本a更新到版本b,则向服务器发送包含版本a和版本b的请求标识,从而服务器根据该请求标识调用对应的第一数据包(版本a)和第二数据包(版本b)。
302、遍历包含第一数据包中的文件和第二数据包中的文件的参与文件,以确定差异文件。
本实施例中,参与文件即第一数据包中的文件和第二数据包中的文件的集合,而差异文件基于第一数据包和第二数据包的文件目录差异或文件内容差异确定;其中,文件目录差异即第一数据包中包含的文件但第二数据包中不包含的文件,或第一数据包中不包含的文件但第二数据包中包含的文件;而文件内容差异即第一数据包和第二数据包均包含对应于同一对象的文件,但是具体的文件内容有所不同。
可以理解的是,差异文件可以是存储在临时文件夹里,以便于后续差分过程的调用,而在该临时文件夹中还包含了第一数据包和第二数据包中相同的文件,即对于第一数据包中的文件和第二数据包中的文件进行依次判断其差异,并输入临时文件夹。
具体的,在基于mergeBsdiff确定差异文件的过程中,可以首先剔除相同、单方面存在文件,然后合并得到差异文件;但在本申请中,选择对文件进行无差别输入,从而减少文件级操作,可有效减少后续的差分耗时。
303、基于差分条件将所述参与文件划分到至少两个差分文件中。
本实施例中,差分条件包括预设阈值、文件格式、文件大小中的至少一种;即差分条件可以是基于预设阈值进行差分文件的划分,也可以是基于文件格式进行差分文件的划分,也可以是基于文件大小进行差分文件的划分,还可以是基于预设阈值与文件格式的结合进行划分,或其他多个条件的结合方式。
下面,对差分条件为预设阈值进行说明。
具体的,当差分条件为预设阈值时;预设阈值用于指示差分文件中包含差异文件的数量,即将差异文件划分为多个线程下的文件,以便于后续的差分计算;考虑到每个线程的耗时主要基于差异文件的数量确定,故基于预设阈值进行线程的划分;且为了保证至少有2个线程的出现,可以对预设阈值的取值R进行限定,即在第一数据包中包含N个文件,第二数据包中包含M个文件的场景中,对于R的取值应满足R<N且R<M,R为正整数。
应当注意的是,由于差分文件为差分计算过程中的过程数据,可以作为临时数据进行存储,故也可以称为差分临时文件,存储在临时文件夹中,并在差分计算结束之后进行删除,从而不会占用系统的存储资源,减少数据管理过程中对于系统的影响。
可以理解的是,差分文件中包含的差异文件数量相同,但差分文件中包含的总文件数量不一定相同,即在差分文件中还包括第一数据包和第二数据包中相同的文件,对于该类文件,并不会添加线程中的处理耗时,故可以不作为预设阈值R的技术条件。
具体的,对于差异文件划分到至少两个差分文件中的过程,由于差异文件是基于文件目录差异或文件内容差异确定的,而对于不同的差异在后续差分计算过程中的处理可能不同;故对于内容差异项,可以基于预设阈值R将内容差异项进行划分;然后将划分后的内容差异项进行解压,以写入至少两个差分文件。通过将文件内容纯在差异的文件进行解压,保证了内容比对过程的正常进行。
另外,对于目录差异项;由于是单方存在的差异,在后续差分计算中可以直接替换,故可以基于目录差异项与内容差异项的文件位置关系将目录差异项直接写入差分文件,从而提高文件处理的效率。
进一步的,为保证对于所有文件进行无差别的处理,对于相同文件,不参与预设阈值R的计数;并将相同文件直接写入差分文件,以保证文件的完整性。
304、基于差分文件进行并行的差分计算,以得到补丁包。
本实施例中,补丁包用于指示终端对目标应用进行版本更新,该补丁包也可以称为差分数据。其中差分计算的过程可以基于mergeBsdiff算法进行,也可以基于其他用于计算文件差异的算法,此处不做限定。
为了便于理解,下面结合一种具体的场景对本申请提供的数据管理的方法进行说明,如图4所示,为本申请实施例提供的一种数据管理的方法的场景示意图。图中示出了第一数据包(旧版本apk)和第二数据包(新版本apk)的数据组成,其中,第一数据包中包括文件(A、B、C、D、E、G、H、I)而第一数据包中包括文件(A’、B、D’、E’、F、G’、H’、I’),A与A’为文件内容差异的文件,即文件内容不一样;而B为相同文件;C为基于文件目录差异的文件,即第一数据包中存在而第二数据包中不存在,具体的如图中标识所示。
对于该场景中通过第一数据包(旧版本apk)和第二数据包(新版本apk)进行差分计算得到差分数据(补丁包)的过程如图5所示,为本申请实施例提供的另一种数据管理的方法的场景示意图。即对于新版本apk和旧版本apk都存在的文件,如果文件内容不一样,则解压后写入临时文件,如图中A和A’,解压后变成a及a’,分别写入用于指示旧版本apk的old-temp-file(第一临时文件1、2)和用于指示新版本apk的new-temp-file(第二临时文件1、2);对于新旧版本apk都存在的文件,如果文件内容一样,则直接写入临时文件old-temp-file和new-temp-file,如图中B;而对于新版本apk中不存在,而旧版本apk中存在的文件,如图中C,直接写入old-temp-file;对于新版本apk中存在,而旧版本apk中不存在的文件,如图中F,直接写入new-temp-file。
另外,当写入的解压文件超过一定数量3(预设阈值R)时,对新旧临时文件进行差分。旧版本apk(A、B、C、D、E、G、H、I)被分别写入2个临时文件:old-temp-file1(a、B、C、d、e)、old-temp-file2(g、h、i),新版本apk(A’、B、D’、E’、F、G’、H’、I’)被分别写入2个临时文件:new-temp-file1(a’、Bd’、e’)、new-temp-file2(F、g’、h’、i’),分别使用old-temp-file1和new-temp-file1、old-temp-file2和new-temp-file2进行差分得到diff文件1(差分数据1)、diff文件2(差分数据2),该过程为并行进行,从而得到差分文件。
结合上述实施例可知,通过并行获取的差分文件,可以实现分段合成补丁包的过程,由于分段合成补丁包的过程是并行进行的,且各段之间对应的需要解压处理的文件数量相同,保证了多线程并行计算的正常进行,即通过重新并提高了数据更新的效率。
基于上述图5所示的实施例的基础上,还包括一些实施例,即终端在接收到该补丁包后的场景,如图6所示,为本申请实施例提供的另一种数据管理的方法的场景示意图。即在新版本apk(第二数据包)合成的时候对old-temp-file文件(第一临时文件1、2)和diff文件(补丁包)使用bspatch算法(合成算法)得到new-temp-file文件(第二临时文件1、2)。然后从new-temp-file文件中获取解压后文件(a’、d’、e’、g’、h’、i’),最后通过压缩算法还原A’D’E’G’H’I’文件,从而生成新版本apk(A’BD’E’FG’H’I’)。
通过多线程的比对过程可以使得终端快速的根据本地的第一数据包和服务器发送的补丁包多线程并行更新,以获得第二数据包,提升了应用更新的效率,减少了应用版本更新的耗时。
上述实施例介绍了基于预设阈值划分的过程,下面,对差分条件为文件格式进行说明。请参阅图7,图7为本申请实施例提供的另一种数据管理的方法的流程图,本申请实施例至少包括以下步骤:
701、获取第一数据包和第二数据包。
702、遍历包含第一数据包中的文件和第二数据包中的文件的参与文件,以确定差异文件。
本实施例中,步骤701和步骤702与图3所示实施例的步骤301和302相似,相关特征描述可以进行参考,此处不做赘述。
703、基于文件格式对参与文件进行划分,以得到至少两个差分文件。
本实施例中,由于差分文件由格式划分而来,为了减少系统资源的占用,可以在差分计算结束之后进行删除,可以作为临时文件进行存储,故可以作为格式临时文件。由于考虑到对于常见文件格式(如.dex、.so、.xml、.png等),在新旧版本apk中如果2个文件格式不一样,那么这2个文件一定不相同的特性,故可以按照文件格式对文件进行分段合并解压,然后多线程分段差分,从而有效减少差分耗时。
具体的格式类型因实际场景而定,此处不做限定。
在一种可能的场景中,若参与文件中的文件对应于同一种种文件格式,则将差分条件设定为采用预设阈值划分得到差分文件的方式,即图3所示实施例的方案,此处不做赘述。
另外,差异文件的确定在基于文件格式对参与文件进行划分的过程中,主要用于指示第一数据包中的文件和第二数据包中的文件写入至少两个差分文件的方式。即对于差异文件中的内容差异项,则解压后写入差分文件,这是由于内容的差异需要解压后才能完整的获取;而对于差异文件中的目录差异项,则直接写入差分文件,这是由于目录的差异可以通过直接的文件复制或删除进行,并不需要进行内容的解析;另外,对于第一数据包中的文件和第二数据包中的文件中的相同文件,也直接写入差分文件,这是为了对第一数据包中的文件和第二数据包中的文件进行无差别的输入,即减少文件级别的操作,进一步减少处理过程的耗时。
在另一中可能的场景中,由于2个文件格式不一样,则这2个文件不相同,故步骤703可以和步骤702结合后进行,即先根据文件格式对参与文件进行划分,得到不同文件格式对应的格式文件夹;然后遍历参与文件以确定差异文件,以及差异文件中的目录差异项和内容差异项;然后在格式文件夹写入至少两个差分文件的过程,按照目录差异项和内容差异项的分布,对应的写入到差分文件中;具体的,对于内容差异项采用解压后写入,对于目录差异项采用直接写入,从而节省文件处理的耗时。
704、基于差分文件进行并行的差分计算,以得到补丁包。
本实施例中,补丁包用于指示终端对目标应用进行版本更新。
可选的,对于按照文件格式进行划分的过程,可以将指示同一类数据的不同格式划分为一类,例如png、jpg、.webp等,均为指示图片的格式,故可以都被归为.png格式。具体的归类过程可以包括首先确定差异文件对应的文件类型;然后确定文件类型对应的多个格式信息;进而基于格式信息确定文件格式,从而减少文件格式的复杂度,提高数据处理效率。
进一步的,在针对不同格式的临时文件进行差分计算过程中,可以设定不同的针对于格式设定的差分算法。即基于格式临时文件对应的文件格式确定格式差分算法;然后基于格式差分算法进行并行的差分计算,以对补丁包进行更新,例如对于.dex格式文件采用dexdiff/dexpatch算法,从而减小格式文件的大小,进一步的提高数据处理的效率。
可选的,为了便于终端侧对于补丁包的读取。可以为补丁包设定特定的格式信息。即基于文件格式生成格式目录;然后根据格式目标绑定对应的差异文件,以生成记录信息;进而结合记录信息和补丁包对应的版本信息生成补丁格式信息,补丁格式信息用于指示终端对补丁包进行识别,从而提高终端对于补丁包的识别效率,减少更新耗时。
为了便于上述实施例的理解,下面结合一种具体的场景进行说明,如图8所示,为本申请实施例提供的另一种数据管理的方法的场景示意图。图中示出了旧版本apk(第一数据包)和新版本apk(第二数据包)的数据组成;其中,第一数据包中包括文件(A、B、C、D、E、G、H、I)而第二数据包中包括文件(A’、B、D’、E’、F、G’、H’、I’),A与A’为文件内容差异的文件,即文件内容不一样;而B为相同文件;C为基于文件目录差异的文件,即第一数据包中存在而第二数据包中不存在,具体格式类型如图中标识所示。
对于该场景中通过旧版本apk(第一数据包)和新版本apk(第二数据包)获取补丁包的过程,如图9所示,为本申请实施例提供的另一种数据管理的方法的场景示意图。首先遍历旧版本apk(第一数据包)和新版本apk(第二数据包)中的文件,将文件按照不同格式依次写入到旧版本apk临时文件(第一格式临时文件1、第二格式临时文件1、第三格式临时文件1和第四格式临时文件1)和新版本apk临时文件(第一格式临时文件2、第二格式临时文件2、第三格式临时文件2和第四格式临时文件2),其中如.png、jpg、.webp等格式,都被归为.png格式下的临时文件;对于新版本apk和新版本apk都存在的文件,如果文件内容不一样,则解压后写入到临时文件,如图9中的A和A’解压成a和a’后写入old-dex-temp-file和new-dex-temp-file;对于新旧版本apk都存在的文件,如果文件内容一样,则直接写入临时文件,如B,直接写入old-dex-temp-file(第一格式临时文件1)和new-dex-temp-file(第一格式临时文件2);对于任意一方不存在的文件,则直接写入,如C直接写入old-dex-temp-file;进一步的当遍历到不同格式文件时,如果该格式的临时文件不存在则新建临时文件(以文件格式为前缀),如old-xml-temp-file、new-xml-temp-file;而当任意一对临时文件写完后,选择特定格式对应的算法(如dex格式对应dexdiff、hd格式对应hdiffpatch、bs格式对应bsdiff等)进行差分得到格式差分数据,进而差分完后写入补丁包。
在该场景中,对于终端侧的更新过程,可以包括:首先获取服务器发送的补丁包;然后确定补丁包中指示的至少两个差分文件,差分文件为服务器基于文件格式对差异文件进行划分所得,差异文件基于第一数据包和第二数据包比对所得;并基于第一数据包和差分文件进行合成计算,以得到第二数据包,第一数据包为本地版本数据;从而基于第二数据包进行版本更新。
可选的,对于基于第一数据包和差分文件进行合成计算,以得到第二数据包的过程,由于网络下载的次序性,可以将先下载的差分文件进行数据的合成,并在数据合成的同时进行下一个差分文件的下载,从而实现边下载边合成的过程,提高了终端的版本更新效率。
在一种可能的场景中,对于上述终端更新的过程,如图10所示,为本申请实施例提供的另一种数据管理的方法的场景示意图。即首先下载差分文件,下载完PFH后,开始校验头部信息,如果不符合则直接退出;进而在下载完oldapk-file-record(第一格式临时数据1)后,分格式多线程新建旧版本apk的临时文件old-temp-file(第一数据包),并将文件生成具体格式的临时文件;若下载完任意一个diff-file(第二临时文件),新建线程使用合成算法对old-temp-file和diff-file进行合成,合成后利用newapk-file-record(第一格式临时数据2)的信息进行异步压缩;直到所有的diff-file都完成合成与压缩的过程,从而生成的文件即为新版本apk(第二数据包)。
可选的,对于上述实施例中补丁包的格式信息可以参考图11,为本申请实施例提供的另一种数据管理的方法的场景示意图。该格式信息包括
PFH(补丁包头部信息):包含增量算法版本、本地旧版本等信息。
oldapk-file-record(旧/新差分记录):旧版本apk中参与bsdiff差分的文件记录。包含偏移量、是否压缩、压缩方法、压缩后长度、压缩前长度等信息。
newapk-file-record(新/旧差分记录):新版本apk中参与差分的文件记录。包含偏移量、压缩方法、压缩级别、压缩后长度、压缩前长度等信息。
diff-record(差异记录):diff-file(差异文件)的描述。包含diff-file的数量、每个diff-file的偏移量、长度、差分算法等信息。
diff-file(差异文件):将不同格式文件分段解压后使用差分算法(算法不局限于mergeBsdiff)生成的文件。
通过上述实施例可知,通过重新组装差分参与文件、分段差分,减少了应用更新耗时;并通过引入多算法策略,减小了差分包大小;进一步的通过对补丁包格式的修改,减少了应用数据合成耗时,从而提高应用更新的效率。
下面,对差分条件为文件大小进行说明。
本实施例中,差分条件为文件大小即将每个并行的处理线程设定一个划分阈值,并对参与文件进行多线程的划分,即首先确定文件大小对应的划分阈值;然后基于划分阈值从参与文件中提取对应大小的文件,以划分到至少两个差分文件中。例如:文件大小指示的划分阈值为10M,则将参与文件逐一写入大小为10M的临时文件夹(差分文件)中,当临时文件夹中写入的文件达到10M时,则切换到下一个临时文件夹进行写入。
具体的,在上述按照文件大小进行划分的过程中,若有某一文件写入第一临时文件夹后使得第一临时文件夹的大小大于划分阈值,则将其移入第二临时文件夹中,对于第一临时文件夹的大小则可能未达到划分阈值,此时可以并不进行其余文件的写入,保证多个临时文件夹写入的次序性,避免文件级别的迁移操作,提高文件写入的准确性。
可以理解的是,按照文件大小进行文件划分过程中文件的写入方式与预设阈值划分时的场景类似,即对于内容差异项解压后写入差分文件,对于目录差异项直接写入差分文件,对于相同项直接写入差分文件。
通过基于文件大小对参与文件进行划分,减小了单个线程的处理压力,保证了多线程并行的处理效率。
在一种可能的场景中,上述预设阈值、文件格式或文件大小的划分方式可以进行结合,即差分条件可以是预设阈值和文件格式的组合;文件格式和文件大小的组合;预设阈值和文件大小的组合;预设阈值、文件格式和文件大小的组合,具体的组合形式因实际场景而定。
另外,考虑到组合过程中为对于参与文件的二次划分,可以在参与文件中的文件参数满足一定条件时进行上述多个差分条件的划分过程,例如:参与文件中的文件参数指示文件大小大于1GB,具体的,对于多个差分条件的划分过程,可以包括如下步骤:
获取参与文件中文件参数,文件参数包括文件的数量或大小;
若文件参数指示的数值大于文件处理阈值,则基于第一处理条件将参与文件划分到至少两个阈值划分文件中,文件处理阈值基于数量或大小设定,第一处理条件包括预设阈值、文件格式或文件大小中的至少一种;
基于第二处理条件将每个阈值划分文件划分到至少两个差分文件中,第二处理条件包括预设阈值、文件格式或文件大小中的至少一种,第一处理条件与第二处理条件不同。
可以理解的是,文件参数指示的数值大于文件处理阈值即指示参与文件大小的过程;例如文件参数为1000个文件,而文件处理阈值为800个,则文件参数指示的数值大于文件处理阈值,需要进行二次划分的过程。
具体的,二次划分的过程可以是预设阈值和文件格式的组合,即第一处理条件为预设阈值,第二处理条件为文件格式;或第一处理条件为文件格式,第二处理条件为预设阈值;还可以是文件大小和文件格式的组合,即第一处理条件为文件大小,第二处理条件为文件格式;或第一处理条件为文件格式,第二处理条件为文件大小;也可以是预设阈值和文件大小的组合,即第一处理条件为预设阈值,第二处理条件为文件大小;或第一处理条件为文件大小,第二处理条件为预设阈值。
应当注意的是,二次划分并不限定于只划分两次,即还可以进行多次划分的过程,例如分别按照预设阈值、文件格式和文件大小进行差分文件的划分,具体的次序因实际场景而定,此处不做限定。
通过对于参与文件进行多个差分条件的划分,进一步的提升了并行处理的线程数,提高了文件更新的效率。
下面,结合具体的场景对上述差分条件结合的过程进行说明。
在一种可能的场景中,上述图3所示实施例和图7所示实施例可以进行结合,即在预设阈值划分的基础上进行格式划分,如图12所示,为本申请实施例提供的另一种数据管理的方法的场景示意图。图中示出了第一数据包(A、B、C、D、E、F…)和第二数据包(A`、B、C`、D`、E`、F`…),即A、C、D、E、F为文件内容差异文件,通过设定预设阈值R为5将A、B、C、D、E、F划分到第一临时文件中,A`、B、C`、D`、E`、F`划分到第二临时文件中,进一步的通过第一临时文件和第二临时文件中包含的文件格式进行划分,从而得到第一数据包的第一格式临时文件以及对应的第二数据包的第一格式临时文件,以及第二格式下的临时文件,进而调用格式对应的差分算法,得到差分文件,对于第一数据包和第二数据包中的其他数据参照上述过程进行处理,此处不做赘述。
通过在预设阈值划分的基础上进步一的对临时文件进行划分,增加了文件处理的线程,并减小了文件的大小,提高了文件更新的效率。
另外,在一种可能的场景中,也可以在格式划分的基础上进行预设阈值的划分,如图13所示,为本申请实施例提供的另一种数据管理的方法的场景示意图。图中示出了第一数据包(A、B、C、D、E…)和第二数据包(A`、B、C`、D`、E`…),即A、C、D、E为文件内容差异文件,通过文件格式将第一数据包和第二数据包进行划分,进而通过设定预设阈值R为2将a、B、c划分到第一格式临时文件1中,d、e划分到第一格式临时文件2中;以及对应的第二格式下的临时文件,进而调用格式对应的差分算法,得到差分文件,对于第一数据包和第二数据包中的其他数据参照上述过程进行处理,此处不做赘述。
另外,对于格式算法的设定以及补丁包格式的设定均可参照上述实施例的描述并结合,此处不做赘述。
通过在格式划分的基础上对临时文件进行预设阈值的划分,即通过重新组装差分过程中的参与文件,进行分段差分,从而增加了文件处理的线程;并通过不同格式算法的对应设定,减小了补丁包大小;进一步的通过对补丁包格式的修改,便于终端对补丁包进行解析,进一步提高了文件更新的效率,减少了文件更新过程中的耗时。
为了更好的实施本申请实施例的上述方案,下面还提供用于实施上述方案的相关装置。请参阅图14,图14为本申请实施例提供的一种数据管理装置的结构示意图,数据管理装置1400包括:
获取单元1401,用于获取第一数据包和第二数据包,所述第一数据包和所述第二数据包对应于目标应用的版本不同;
遍历单元1402,用于遍历包含所述第一数据包中和所述第二数据包的参与文件,以确定差异文件,所述差异文件包括所述第一数据包和所述第二数据包中的目录差异项或内容差异项;
划分单元1403,用于基于差分条件将所述参与文件划分到至少两个差分文件中,其中,所述差分条件包括以下至少一种:预设阈值、文件格式、文件大小,所述预设阈值用于指示所述差分文件中包含所述内容差异项的数量,所述文件格式与所述差分文件相对应,所述文件大小用于指示所述差分文件的大小;
管理单元1404,用于基于所述差分文件进行并行的差分计算,以得到补丁包,所述补丁包用于指示终端对所述目标应用进行版本更新。
可选的,在本申请一些可能的实现方式中,若所述差分条件为预设阈值R,则所述划分单元1403,具体用于确定所述参与文件对应的差异文件中的所述内容差异项、所述目录差异项或相同项,所述参与文件中包括第一数据包中包含的N个文件和所述第二数据包中包含的M个文件,N和M为正整数;
所述划分单元1403,具体用于基于所述预设阈值R将所述内容差异项进行划分,所述预设阈值为R,R<N且R<M,R为正整数;
所述划分单元1403,具体用于将划分后的所述内容差异项进行解压,以写入至少两个所述差分文件;
所述划分单元1403,具体用于将划分后的所述目录差异项或相同项直接写入所述差分文件。
可选的,在本申请一些可能的实现方式中,若所述差分条件为文件格式,则所述划分单元1403,具体用于确定所述参与文件中的至少两种文件格式;
所述划分单元1403,具体用于基于所述文件格式对所述第一数据包中的文件和所述第二数据包中的文件进行划分,以得到至少两个所述差分文件。
可选的,在本申请一些可能的实现方式中,所述划分单元1403,具体用于确定所述参与文件包含的文件类型;
所述划分单元1403,具体用于确定所述文件类型对应的多个格式信息;
所述划分单元1403,具体用于基于所述格式信息确定所述文件格式。
可选的,在本申请一些可能的实现方式中,所述划分单元1403,具体用于基于所述差分文件对应的文件格式确定格式差分算法;
所述划分单元1403,具体用于基于所述格式差分算法进行并行的差分计算,以对所述补丁包进行更新。
可选的,在本申请一些可能的实现方式中,所述划分单元1403,具体用于基于所述文件格式生成格式目录;
所述划分单元1403,具体用于根据所述格式目标绑定对应的差异文件,以生成记录信息;
所述划分单元1403,具体用于结合所述记录信息和所述补丁包对应的版本信息生成补丁格式信息,所述补丁格式信息用于指示所述终端对所述补丁包进行识别。
可选的,在本申请一些可能的实现方式中,若所述差分条件为文件大小,则所述划分单元1403,具体用于确定所述文件大小对应的划分阈值;
所述划分单元1403,具体用于基于所述划分阈值从所述参与文件中提取对应大小的文件,以划分到至少两个所述差分文件中。
可选的,在本申请一些可能的实现方式中,所述划分单元1403,具体用于若所述第一数据包中的文件和所述第二数据包中的文件对应同一种文件格式,则所述差分条件为所述预设阈值或所述文件大小。
可选的,在本申请一些可能的实现方式中,所述划分单元1403,具体用于获取所述参与文件中文件参数,所述文件参数包括文件的数量或大小;
所述划分单元1403,具体用于若所述文件参数指示的数值大于文件处理阈值,则基于第一处理条件将所述参与文件划分到至少两个阈值划分文件中,所述文件处理阈值基于数量或大小设定,所述第一处理条件包括所述预设阈值、所述文件格式或所述文件大小中的至少一种;
所述划分单元1403,具体用于基于第二处理条件将每个所述阈值划分文件划分到至少两个所述差分文件中,所述第二处理条件包括所述预设阈值、所述文件格式或所述文件大小中的至少一种,所述第一处理条件与所述第二处理条件不同。
可选的,在本申请一些可能的实现方式中,其特征在于,所述管理单元1404,具体用于确定所述差分文件中的第一临时文件和第二临时文件,所述第一临时文件用于指示所述第一数据包中的差异文件,所述第二临时文件用于指示所述第二数据包中的差异文件;
所述管理单元1404,具体用于基于所述第一临时文件和所述第二临时文件进行差分计算,以得到所述补丁包。
通过获取第一数据包和第二数据包;然后遍历第一数据包中的文件和第二数据包中的文件,以确定差异文件,该差异文件包括第一数据包和第二数据包中的目录差异项或内容差异项;并基于预设阈值、文件格式或文件大小中的至少一个条件将第一数据包中的文件和第二数据包中的文件划分到至少两个差分文件中,其中预设阈值用于指示差分文件中包含内容差异项的数量,而每个差分文件对应于至少一个文件格式;进而基于差分文件进行并行的差分计算,以得到用于指示终端对目标应用进行版本更新的补丁包。从而实现分段合成补丁包的过程,由于分段合成补丁包的过程是并行进行的,且各段之间对应的需要解压处理的文件数量相同,保证了多线程并行计算的正常进行,并提高了数据更新的效率。
本申请实施例还提供了一种数据管理装置1500,如图15所示,是本申请实施例提供的一种数据管理装置的结构示意图,具体包括:
获取单元1501,用于获取服务器发送的补丁包;
确定单元1502,用于确定所述补丁包中指示的至少两个差分文件,所述差分文件为所述服务器基于差分条件对第一数据包中的文件和第二数据包中的文件进行划分所得,所述第一数据包和所述第二数据包对应于目标应用的版本不同,所述差分条件包括以下至少一种:预设阈值、文件格式、文件大小,所述预设阈值用于指示所述差分文件中包含所述内容差异项的数量,所述文件格式与所述差分文件相对应,所述文件大小用于指示所述差分文件的大小;
管理单元1503,用于基于所述第一数据包和所述差分文件进行合成计算,以得到所述第二数据包,所述第一数据包为本地版本数据;
所述管理单元1503,还用于基于所述第二数据包进行版本更新。
可选的,在本申请一些可能的实现方式中,所述管理单元1503,具体用于确定所述差分文件中指示的内容差异项和目录差异项;
所述管理单元1503,具体用于基于每个所述差分文件对应的合成线程对所述内容差异项和目录差异项进行并行处理,以将所述第一数据包更新为所述第二数据包。
本申请实施例还提供了一种服务器,请参阅图16,图16是本申请实施例提供的一种服务器的结构示意图,该服务器1600可执行上述图14所示的数据管理装置的步骤;该服务器1600可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,CPU)1622(例如,一个或一个以上处理器)和存储器1632,一个或一个以上存储应用程序1642或数据1644的存储介质1630(例如一个或一个以上海量存储设备)。其中,存储器1632和存储介质1630可以是短暂存储或持久存储。存储在存储介质1630的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1622可以设置为与存储介质1630通信,在服务器1600上执行存储介质1630中的一系列指令操作。
服务器1600还可以包括一个或一个以上电源1626,一个或一个以上有线或无线网络接口1650,一个或一个以上输入输出接口16516,和/或,一个或一个以上操作系统1641,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上述实施例中由数据管理装置所执行的步骤可以基于该图16所示的服务器结构。
本申请实施例还提供了一种终端设备,如图17所示,是本申请实施例提供的另一种终端设备的结构示意图,该终端设备可执行上述图15所示的数据管理装置的步骤为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请实施例方法部分。该终端可以为包括手机、平板电脑、个人数字助理(personal digitalassistant,PDA)、销售终端(point of sales,POS)、车载电脑等任意终端设备,以终端为手机为例:
图17示出的是与本申请实施例提供的终端相关的手机的部分结构的框图。参考图17,手机包括:射频(radio frequency,RF)电路1710、存储器1720、输入单元1730、显示单元1740、传感器1750、音频电路1760、无线保真(wireless fidelity,WiFi)模块1770、处理器1780、以及电源1790等部件。本领域技术人员可以理解,图17中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图17对手机的各个构成部件进行具体的介绍:
RF电路1710可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器1780处理;另外,将设计上行的数据发送给基站。通常,RF电路1710包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(low noiseamplifier,LNA)、双工器等。此外,RF电路1710还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(globalsystem of mobile communication,GSM)、通用分组无线服务(general packet radioservice,GPRS)、码分多址(code division multiple access,CDMA)、宽带码分多址(wideband code division multiple access,WCDMA)、长期演进(long term evolution,LTE)、电子邮件、短消息服务(short messaging service,SMS)等。
存储器1720可用于存储软件程序以及模块,处理器1780通过运行存储在存储器1720的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器1720可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1720可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元1730可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元1730可包括触控面板1731以及其他输入设备1732。触控面板1731,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1731上或在触控面板1731附近的操作,以及在触控面板1731上一定范围内的隔空触控操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板1731可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器1780,并能接收处理器1780发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1731。除了触控面板1731,输入单元1730还可以包括其他输入设备1732。具体地,其他输入设备1732可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元1740可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元1740可包括显示面板1741,可选的,可以采用液晶显示器(liquidcrystal display,LCD)、有机发光二极管(organic light-emitting diode,OLED)等形式来配置显示面板1741。进一步的,触控面板1731可覆盖显示面板1741,当触控面板1731检测到在其上或附近的触摸操作后,传送给处理器1780以确定触摸事件的类型,随后处理器1780根据触摸事件的类型在显示面板1741上提供相应的视觉输出。虽然在图17中,触控面板1731与显示面板1741是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板1731与显示面板1741集成而实现手机的输入和输出功能。
手机还可包括至少一种传感器1750,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1741的亮度,接近传感器可在手机移动到耳边时,关闭显示面板1741和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路1760、扬声器1761,传声器1762可提供用户与手机之间的音频接口。音频电路1760可将接收到的音频数据转换后的电信号,传输到扬声器1761,由扬声器1761转换为声音信号输出;另一方面,传声器1762将收集的声音信号转换为电信号,由音频电路1760接收后转换为音频数据,再将音频数据输出处理器1780处理后,经RF电路1710以发送给比如另一手机,或者将音频数据输出至存储器1720以便进一步处理。
WiFi属于短距离无线传输技术,手机通过WiFi模块1770可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图17示出了WiFi模块1770,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器1780是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器1720内的软件程序和/或模块,以及调用存储在存储器1720内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器1780可包括一个或多个处理单元;可选的,处理器1780可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1780中。
手机还包括给各个部件供电的电源1790(比如电池),可选的,电源可以通过电源管理系统与处理器1780逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
在本申请实施例中,该终端所包括的处理器1780还具有执行如上述页面处理方法的各个步骤的功能。
本申请实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有数据管理指令,当其在计算机上运行时,使得计算机执行如前述图3至图13所示实施例描述的方法中数据管理装置所执行的步骤。
本申请实施例中还提供一种包括数据管理指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如前述图3至图13所示实施例描述的方法中数据管理装置所执行的步骤。
本申请实施例还提供了一种数据管理系统,所述数据管理系统可以包含图14或图15所描述实施例中的数据管理装置,或图16所描述实施例中的服务器,或者图17所描述的终端设备。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,数据管理装置,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-onlymemory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (15)
1.一种数据管理的方法,其特征在于,包括:
获取第一数据包和第二数据包,所述第一数据包和所述第二数据包对应于目标应用的版本不同;
遍历包含所述第一数据包中和所述第二数据包的参与文件,以确定差异文件,所述差异文件包括所述第一数据包和所述第二数据包中的目录差异项或内容差异项;
基于差分条件将所述参与文件划分到至少两个差分文件中,其中,所述差分条件包括以下至少一种:预设阈值、文件格式、文件大小,所述预设阈值用于指示所述差分文件中包含所述内容差异项的数量,所述文件格式与所述差分文件相对应,所述文件大小用于指示所述差分文件的大小;
基于所述差分文件进行并行的差分计算,以得到补丁包,所述补丁包用于指示终端对所述目标应用进行版本更新。
2.根据权利要求1所述的方法,其特征在于,若所述差分条件为预设阈值R,则所述基于差分条件将所述参与文件划分到至少两个差分文件中,包括:
确定所述参与文件对应的差异文件中的所述内容差异项、所述目录差异项或相同项,所述参与文件中包括第一数据包中包含的N个文件和所述第二数据包中包含的M个文件,N和M为正整数;
基于所述预设阈值R将所述内容差异项进行划分,所述预设阈值为R,R<N且R<M,R为正整数;
将划分后的所述内容差异项进行解压,以写入至少两个所述差分文件;
将划分后的所述目录差异项或相同项直接写入所述差分文件。
3.根据权利要求1所述的方法,其特征在于,若所述差分条件为文件格式,则所述基于差分条件将所述参与文件划分到至少两个差分文件中,包括:
确定所述参与文件中的至少两种文件格式;
基于所述文件格式对所述第一数据包中的文件和所述第二数据包中的文件进行划分,以得到至少两个所述差分文件。
4.根据权利要求3所述的方法,其特征在于,所述确定所述参与文件中的至少两种文件格式,包括:
确定所述参与文件包含的文件类型;
确定所述文件类型对应的多个格式信息;
基于所述格式信息确定所述文件格式。
5.根据权利要求3所述的方法,其特征在于,所述方法还包括:
基于所述差分文件对应的文件格式确定格式差分算法;
基于所述格式差分算法进行并行的差分计算,以对所述补丁包进行更新。
6.根据权利要求3所述的方法,其特征在于,所述方法还包括:
基于所述文件格式生成格式目录;
根据所述格式目标绑定对应的差异文件,以生成记录信息;
结合所述记录信息和所述补丁包对应的版本信息生成补丁格式信息,所述补丁格式信息用于指示所述终端对所述补丁包进行识别。
7.根据权利要求1所述的方法,其特征在于,若所述差分条件为文件大小,则所述基于差分条件将所述参与文件划分到至少两个差分文件中,包括:
确定所述文件大小对应的划分阈值;
基于所述划分阈值从所述参与文件中提取对应大小的文件,以划分到至少两个所述差分文件中。
8.根据权利要求1所述的方法,其特征在于,若所述第一数据包中的文件和所述第二数据包中的文件对应同一种文件格式,则所述差分条件为所述预设阈值或所述文件大小。
9.根据权利要求1所述的方法,其特征在于,所述基于差分条件将所述参与文件划分到至少两个差分文件中,包括:
获取所述参与文件中文件参数,所述文件参数包括文件的数量或大小;
若所述文件参数指示的数值大于文件处理阈值,则基于第一处理条件将所述参与文件划分到至少两个阈值划分文件中,所述文件处理阈值基于数量或大小设定,所述第一处理条件包括所述预设阈值、所述文件格式或所述文件大小中的至少一种;
基于第二处理条件将每个所述阈值划分文件划分到至少两个所述差分文件中,所述第二处理条件包括所述预设阈值、所述文件格式或所述文件大小中的至少一种,所述第一处理条件与所述第二处理条件不同。
10.根据权利要求1-9任一项所述的方法,其特征在于,所述基于所述差分文件进行并行的差分计算,以得到补丁包,包括:
确定所述差分文件中的第一临时文件和第二临时文件,所述第一临时文件用于指示所述第一数据包中的差异文件,所述第二临时文件用于指示所述第二数据包中的差异文件;
基于所述第一临时文件和所述第二临时文件进行差分计算,以得到所述补丁包。
11.一种数据管理的方法,其特征在于,包括:
获取服务器发送的补丁包;
确定所述补丁包中指示的至少两个差分文件,所述差分文件为所述服务器基于差分条件对第一数据包中的文件和第二数据包中的文件进行划分所得,所述第一数据包和所述第二数据包对应于目标应用的版本不同,所述差分条件包括以下至少一种:预设阈值、文件格式、文件大小,所述预设阈值用于指示所述差分文件中包含所述内容差异项的数量,所述文件格式与所述差分文件相对应,所述文件大小用于指示所述差分文件的大小;
基于所述第一数据包和所述差分文件进行合成计算,以得到所述第二数据包,所述第一数据包为本地版本数据;
基于所述第二数据包进行版本更新。
12.根据权利要求11所述的方法,其特征在于,所述基于第一数据包和所述差分文件进行合成计算,以得到所述第二数据包,包括:
确定所述差分文件中指示的内容差异项和目录差异项;
基于每个所述差分文件对应的合成线程对所述内容差异项和目录差异项进行并行处理,以将所述第一数据包更新为所述第二数据包。
13.一种数据管理的装置,其特征在于,包括:
获取单元,用于获取第一数据包和第二数据包,所述第一数据包和所述第二数据包对应于目标应用的版本不同;
遍历单元,用于遍历包含所述第一数据包中和所述第二数据包的参与文件,以确定差异文件,所述差异文件包括所述第一数据包和所述第二数据包中的目录差异项或内容差异项;
划分单元,用于基于差分条件将所述参与文件划分到至少两个差分文件中,其中,所述差分条件包括以下至少一种:预设阈值、文件格式、文件大小,所述预设阈值用于指示所述差分文件中包含所述内容差异项的数量,所述文件格式与所述差分文件相对应,所述文件大小用于指示所述差分文件的大小;
管理单元,用于基于所述差分文件进行并行的差分计算,以得到补丁包,所述补丁包用于指示终端对所述目标应用进行版本更新。
14.一种计算机设备,其特征在于,所述计算机设备包括处理器以及存储器:
所述存储器用于存储程序代码;所述处理器用于根据所述程序代码中的指令执行权利要求1至10任一项所述的数据管理的方法,或权利要求11和12所述的数据管理的方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述权利要求1至10任一项所述的数据管理的方法,或权利要求11和12所述的数据管理的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010588837.8A CN111580851A (zh) | 2020-06-24 | 2020-06-24 | 一种数据管理的方法以及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010588837.8A CN111580851A (zh) | 2020-06-24 | 2020-06-24 | 一种数据管理的方法以及相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111580851A true CN111580851A (zh) | 2020-08-25 |
Family
ID=72127540
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010588837.8A Pending CN111580851A (zh) | 2020-06-24 | 2020-06-24 | 一种数据管理的方法以及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111580851A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112925553A (zh) * | 2021-03-18 | 2021-06-08 | 上海创功通讯技术有限公司 | 一种嵌入式设备的系统升级方法及装置 |
CN113031988A (zh) * | 2021-03-26 | 2021-06-25 | 北京字节跳动网络技术有限公司 | 应用程序更新方法、装置、设备和存储介质 |
WO2023272740A1 (en) * | 2021-07-02 | 2023-01-05 | Beijing Xiaomi Mobile Software Co., Ltd. | A method and devices for presenting 3d scenes |
-
2020
- 2020-06-24 CN CN202010588837.8A patent/CN111580851A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112925553A (zh) * | 2021-03-18 | 2021-06-08 | 上海创功通讯技术有限公司 | 一种嵌入式设备的系统升级方法及装置 |
CN113031988A (zh) * | 2021-03-26 | 2021-06-25 | 北京字节跳动网络技术有限公司 | 应用程序更新方法、装置、设备和存储介质 |
CN113031988B (zh) * | 2021-03-26 | 2024-05-14 | 北京字节跳动网络技术有限公司 | 应用程序更新方法、装置、设备和存储介质 |
WO2023272740A1 (en) * | 2021-07-02 | 2023-01-05 | Beijing Xiaomi Mobile Software Co., Ltd. | A method and devices for presenting 3d scenes |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110147237B (zh) | 一种冗余资源去除方法和装置 | |
CN106775637B (zh) | 一种应用程序的页面显示方法和装置 | |
CN107729815B (zh) | 图像处理方法、装置、移动终端及计算机可读存储介质 | |
CN111580851A (zh) | 一种数据管理的方法以及相关装置 | |
EP3493113B1 (en) | Image processing method, computer device, and computer readable storage medium | |
CN107734022B (zh) | 静态资源文件下载方法、移动终端及计算机可读存储介质 | |
CN108804130B (zh) | 程序安装包生成方法及装置 | |
CN107329778B (zh) | 系统更新的方法及相关产品 | |
CN110334124B (zh) | 压缩算法选择方法、装置以及设备 | |
CN110688347A (zh) | 文件存储方法、文件存储装置及终端设备 | |
US11902224B2 (en) | Bulk message deletion | |
EP3506599A1 (en) | Method for synchronizing contact information, apparatus, medium, electronic device and system | |
CN114860677A (zh) | 关于终端设备的文件去冗方法、终端设备及存储介质 | |
CN109088636B (zh) | 一种数据处理方法、系统及电子设备和存储介质 | |
CN108256466B (zh) | 数据处理方法、装置、电子设备及计算机可读存储介质 | |
CN116610372B (zh) | 一种中央处理器配置方法、装置及相关产品 | |
CN108874591B (zh) | 文件处理方法及相关产品 | |
CN115269517A (zh) | 一种文件管理方法、装置、存储介质及终端 | |
CN105528220B (zh) | 加载动态共享对象的方法和装置 | |
CN113568645B (zh) | 软件更新方法、装置、电子设备和存储介质 | |
CN111373384A (zh) | 服务器装置、车载设备和数据通信方法 | |
CN115422203A (zh) | 区块链分布式系统的数据管理方法、装置、设备及介质 | |
CN114860295A (zh) | 资源文件更新方法、装置、设备及可读存储介质 | |
CN114911759A (zh) | 一种文件接续方法、装置、终端设备以及存储介质 | |
CN111382335B (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 |