一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种数据处理方法、装置、设备及介质与流程

2022-03-16 01:02:11 来源:中国专利 TAG:


1.本技术涉及计算机技术领域,具体涉及一种数据处理方法、一种数据处理装置、一种数据处理设备及计算机可读存储介质。


背景技术:

2.随着计算机技术的飞速发展,海量的软件被发布(例如发布在应用商店中,或者发布在软件的官方网站)以供下载使用。自软件发布之后,随着软件功能的不断扩展和完善,软件升级包也被陆续发布以对软件进行升级更新。实践发现,目前的软件升级过程的升级质量难以评估,这导致软件开发人员无法有效地对软件升级过程进行优化。


技术实现要素:

3.本技术实施例提供一种数据处理方法、装置、设备及计算机可读存储介质,能够为软件升级质量提供衡量标准,有利于实现软件升级过程的优化。
4.一方面,本技术实施例提供了一种数据处理方法,该方法包括:
5.当目标软件存在升级任务时,获取该目标软件的升级规则,该升级规则用于定义目标软件的升级链路以及升级任务的m个环节,m为大于1的整数;
6.在升级链路中执行升级任务的过程中,获取目标环节对应的执行数据,该目标环节属于m个环节中的任一个或多个;
7.根据执行数据生成目标软件的升级质量指标。
8.一方面,本技术实施例提供了一种数据处理装置,该处理装置包括:
9.获取单元,用于当目标软件存在升级任务时,获取该目标软件的升级规则,该升级规则用于定义目标软件的升级链路以及升级任务的m个环节,m为大于1的整数;以及用于在升级链路中执行升级任务的过程中,获取目标环节对应的执行数据,该目标环节属于m个环节中的任一个或多个;
10.处理单元,用于根据执行数据生成目标软件的升级质量指标。
11.在一种实施方式中,升级规则采用漏斗模型进行表示,该漏斗模型包括m个层级,m个层级按照从上至下的顺序排列成漏斗状;每个层级用于表示升级任务的一个环节。
12.在一种实施方式中,目标环节是指m个环节中的任一个环节,目标环节表示为第k个环节,k为正整数且k∈[1,m];目标环节对应的执行数据包括:在执行第k个环节对应的升级步骤之前的第一数据,以及在执行第k个环节对应的升级步骤之后的第二数据;处理单元还用于,根据执行数据生成目标软件的升级质量指标,具体用于:
[0013]
计算第二数据与第一数据之间的比值p,并将比值p确定为目标软件的升级质量指标,p∈[0,1]。
[0014]
在一种实施方式中,目标环节是指m个环节中的多个环节,目标环节表示为第i个环节至第j个环节之间的多个环节,i、j均为正整数,且i∈[1,m-1],j∈[2,m],i<j;目标环节对应的执行数据包括:在执行第i个环节对应的升级步骤之前的第三数据,以及在执行第
j个环节对应的升级步骤之后的第四数据;处理单元还用于,根据执行数据生成目标软件的升级质量指标,具体用于:
[0015]
计算第四数据与第三数据之间的比值q,并将比值q确定为目标软件的升级质量指标,q∈[0,1]。
[0016]
在一种实施方式中,升级链路是由上游设备和下游设备组成的链路;上游设备包括目标软件的后端服务器,上游设备存储有升级任务对应的升级数据;下游设备包括使用过目标软件的终端设备。
[0017]
在一种实施方式中,m个环节中每个环节对应升级任务的一个升级步骤;
[0018]
在升级链路中执行升级任务,包括:由升级链路中的上游设备和/或下游设备按照m个环节的先后顺序依次执行每个环节对应的升级步骤。
[0019]
在一种实施方式中,m个环节包括:全量设备环节、圈中设备环节、问询设备环节、设备下载环节、设备安装环节和成功上报环节。
[0020]
在一种实施方式中,在升级链路中执行升级任务,包括:
[0021]
上游设备执行全量设备环节对应的升级步骤,选取使用过目标软件的全量设备;
[0022]
上游设备执行圈中设备环节对应的升级步骤,从全量设备中筛选出满足目标条件的圈中设备;
[0023]
上游设备执行问询设备环节对应的升级步骤,从圈中设备中确定出问询设备,并将问询设备确定为下游设备;
[0024]
其中,问询设备是指圈中设备中与上游设备进行问询交互的设备,并且问询设备中的目标软件的第一版本号小于升级任务对应的第二版本号。
[0025]
在一种实施方式中,在升级链路中执行升级任务,包括:
[0026]
下游设备执行设备下载环节对应的升级步骤,从上游设备下载升级任务对应的升级数据;
[0027]
下载成功的下游设备执行设备安装环节对应的升级步骤,在下载成功的下游设备中安装升级任务对应的升级数据;
[0028]
安装成功的下游设备执行成功上报环节对应的升级步骤,向上游设备发送状态信息,状态信息包括安装成功的下游设备中的目标软件的第三版本号。
[0029]
在一种实施方式中,升级质量指标包括升级覆盖率;处理单元还用于,根据执行数据生成目标软件的升级质量指标,具体用于:
[0030]
计算安装成功的下游设备的数量与圈中设备的数量的比值,得到升级覆盖率。
[0031]
在一种实施方式中,升级质量指标包括升级成功率;处理单元还用于,根据执行数据生成目标软件的升级质量指标,具体用于:
[0032]
计算安装成功的下游设备的数量与问询设备的数量的比值,得到升级成功率。
[0033]
在一种实施方式中,m个环节中每个环节对应升级任务的一个升级步骤;处理单元还用于:
[0034]
根据升级质量指标输出提示信息,该提示信息用于提示升级链路的可用性。
[0035]
一方面,本技术提供了一种数据处理设备,该设备包括:
[0036]
处理器,适于执行计算机程序;
[0037]
计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,该计算机程
序被处理器执行时,实现上述数据处理方法。
[0038]
一方面,本技术提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,该计算机程序适于由处理器加载并执行上述数据处理方法。
[0039]
一方面,本技术提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述数据处理方法。
[0040]
本技术实施例中,当目标软件存在升级任务时,获取该目标软件的升级规则,该升级规则用于定义目标软件的升级链路以及升级任务的m(m为大于1的整数)个环节,在升级链路中执行升级任务的过程中,获取目标环节对应的执行数据,根据执行数据生成目标软件的升级质量指标。在上述方案中,通过升级规则来对目标软件的升级链路及升级任务进行定义描述,再通过获取升级链路在软件升级过程中各个环节的执行数据(如成功下载升级数据的终端设备数量,成功升级目标软件的终端设备的数量),来制定目标软件的升级质量指标(如升级成功率,升级覆盖率等),这些升级质量指标为目标软件的升级质量提供了衡量标准,基于此标准能够为目标软件的升级任务的优化改进提供有效地参考和指导,从而有利于实现软件升级过程的优化。
附图说明
[0041]
为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0042]
图1a示出了本技术一个示例性实施例提供的一种数据处理系统的架构图;
[0043]
图1b示出了本技术一个示例性实施例提供的另一种数据处理系统的架构图;
[0044]
图2示出了本技术一个示例性实施例提供的一种数据处理方法的流程图;
[0045]
图3示出了本技术一个示例性实施例提供的另一种数据处理方法的流程图;
[0046]
图4a示出了本技术一个示例性实施例提供的一种漏斗模型的架构图;
[0047]
图4b示出了本技术一个示例性实施例提供的一种上游设备的状态示意图;
[0048]
图4c示出了本技术一个示例性实施例提供的一种下游设备的状态示意图;
[0049]
图5示出了本技术一个示例性实施例提供的一种数据处理装置的结构示意图;
[0050]
图6示出了本技术一个示例性实施例提供的一种数据处理设备的结构示意图。
具体实施方式
[0051]
下面将结合附图对本技术实施例中的技术方案进行描述。
[0052]
本技术实施例涉及软件(software),所谓软件是指一系列按照特定顺序进行组合的计算机数据与计算机指令的集合。软件又称为应用程序,一款软件被开发成功后会进行发布。所谓软件的发布是指在应用商店(app store)或官方网站中上线软件的安装数据(如安装包)以供下载使用。此处的应用商店是指软件下载平台,软件下载平台中存储有各个软件开发商发布的海量软件。上线是指将软件推广至互联网中。软件被成功发布之后,用户可
使用终端设备从应用商店或官方网站中下载并使用该软件的安装数据,从而在终端设备中安装该软件。自软件发布之后,随着软件功能的不断扩展和完善,还会涉及软件的更新发布,所谓软件的更新发布是指在应用商店或官方网站中上线软件的升级数据(如升级包),或在应用商店或官方网站中发布更新后的软件的安装数据。软件更新发布之后,用户可使用终端设备从应用商店或官方网站中下载并使用该软件的升级数据(或新的安装数据),从而在终端设备中对该软件进行升级。
[0053]
软件的升级过程是在软件的升级链路中执行中,升级链路可以由软件的后端服务器与使用过软件的终端设备来组成,例如:某软件a由后端服务器存储并提供该软件a的升级数据(如升级数据),使用过软件a的终端设备从后端服务器下载该软件a的升级数据,并与后端服务器交互来完成该软件a的升级过程,该软件a的升级链路则是由该软件a的后端服务器与使用过该软件a的终端设备组成的链路。
[0054]
本技术实施例提出一种数据处理方案,该方案中:当目标软件存在升级任务时,可对目标软件的升级链路及升级任务进行定义描述,再通过获取升级链路在软件升级过程中各个环节的执行数据来制定目标软件的升级质量指标,该升级质量指标为目标软件的升级质量提供了衡量标准,基于此标准能够为目标软件的升级任务的优化改进提供有效地参考和指导,从而有利于实现软件升级过程的优化。
[0055]
下面将结合附图,对本技术实施例提出的数据处理方案进行详细介绍。
[0056]
图1a示出了本技术一个示例性实施例提供的一种数据处理系统的架构图。如图1a所示,数据处理系统包括了终端设备101和服务器102,其中:
[0057]
终端设备101是指用户所使用的设备,服务器102可以是应用商店(该应用商店中发布有目标软件)的后台服务器,或者是目标软件的官方网站对应的后端服务器。终端设备101的形态和数量仅用于举例,终端设备101可以包括但不限于:智能手机(如android手机、ios手机等)、平板电脑、便携式个人计算机、移动互联网设备(mobileinternetdevices,简称mid)等设备,本技术实施例不做限定。服务器102可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器。终端设备101和服务器102可以通过有线或无线通信方式进行直接或间接地连接,本技术在此不做限制。
[0058]
图1a所示的数据处理系统中,服务器102与一个终端设备101可以组成目标软件的一条升级链路,目标软件的升级任务是在目标软件的升级链路中执行的。本技术实施例提出的数据处理方案能够为目标软件的升级质量提供衡量标准,该数据处理方案可以是由本技术实施例提出的数据处理设备来执行,在一种实施方式中,该数据处理设备可以是指图1a所示的服务器102,则服务器102所执行的数据处理流程主要包括:

当目标软件存在升级任务时,服务器102获取目标软件的升级规则,该升级规则用于定义目标软件的升级链路(如每条升级链路由服务器102和一个终端设备101构成)以及升级任务的m个环节,m为大于1的整数。

服务器102在升级链路中执行升级任务的过程中,获取目标环节对应的执行数据,目标环节可以是m个环节中的任一个环节,也可以m个环节中的多个环节;例如,假设m=6,则目标环节可以是第1环节-第6环节中的任一环节,也可以是第1环节-第三环节,第2环节-第5环节等。执行数据是执行升级任务的过程中产生的一个或多个数据;执行数据可以
包括但不限于:执行升级任务的终端设备的数量,升级成功的终端设备的数量,执行升级任务的时间等。

服务器102根据执行数据生成目标软件的升级质量指标,升级质量指标包括但不限于:升级覆盖率、升级成功率、下载覆盖率、下载成功率等。升级质量指标可以为衡量目标软件的升级过程提供参考和指导,使得软件开发人员可以更加详细的了解软件升级过程中的问题,并对软件升级数据做出适应性调整(如改进代码,压缩升级数据的体积等)。
[0059]
图1b示出了本技术一个示例性实施例提供的另一种数据处理系统的架构图。如图1b所示,相较于图1a来说,图1b还包括了第三方设备103,第三方设备103可以是服务商使用的设备,第三方设备103可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器。终端设备101,服务器102和第三方设备103可以通过有线或无线通信方式进行直接或间接地连接,本技术在此不做限制。
[0060]
如前述,本技术实施例提出的数据处理方案可以是由本技术实施例提出的数据处理设备来执行,在一种实施方式中,该数据处理设备可以是指图1b所示的第三方设备103,该第三方设备103所执行的数据处理流程主要包括:当目标软件存在升级任务时,第三方设备103获取目标软件的升级规则,并在升级链路中执行升级任务的过程中,获取目标环节对应的执行数据,根据执行数据生成目标软件的升级质量指标。
[0061]
基于上述描述,下面将结合附图,对本技术实施例提出的数据处理方法进行详细介绍。
[0062]
图2示出了本技术一个示例性实施例提供的一种数据处理方法的流程图;该方法可由数据处理设备来执行,该数据处理设备可以是指图1a所示的数据处理系统中的服务器102,或者可以是指图1b所示的数据处理系统中的第三方设备103。该数据处理方法包括以下步骤201-步骤203:
[0063]
201、当目标软件存在升级任务时,获取目标软件的升级规则。
[0064]
目标软件是指已经发布了至少一个版本的软件,目标软件可以是应用商店中的任一个软件。升级任务用于对已发布的目标软件进行升级更新,升级的内容可以包括修复目标软件中存在的缺陷/漏洞(bug),扩展目标软件的功能,优化目标软件的性能等,对此本技术不做限制。
[0065]
升级规则用于定义目标软件的升级链路和升级任务对应的m个环节,一个环节对应升级任务中的一个升级步骤,m为大于1的整数;其中m的取值是根据目标软件的升级过程实际要执行的升级步骤来决定的,例如:某个目标软件的升级过程需要执行3个升级步骤,那么m的取值为3,比如3个环节依次为:设备选定环节、升级数据下载环节和升级成功环节。升级链路是由上游设备和下游设备组成的链路,在目标软件的升级过程中,上游设备是指目标软件的升级数据的提供者对应的设备(例如应用商店的后端服务器、官方网站的后端服务器等),即上游设备存储有升级任务对应的升级数据;下游设备是指目标软件的升级数据的获取者(例如已安装并使用过目标软件的终端设备),下游设备可以通过获取的升级数据对设备中安装的目标软件进行更新升级。
[0066]
202、在升级链路中执行升级任务的过程中,获取目标环节对应的执行数据。
[0067]
目标环节可以是指升级任务对应的m个环节中的一个或多个;例如,假设升级任务
包括6个环节,目标环节1是指升级任务中的第一环节,目标环节2是指升级任务的第三环节至第六环节。其中,执行数据是指升级链路中的上游设备和/或下游设备在执行目标环节对应的升级步骤的过程中产生的一个或多个数据;例如,执行数据1包括执行目标环节对应的升级步骤前的数据1和执行目标环节对应的升级步骤后的数据2;又如,执行数据2包括执行目标环节对应的升级步骤前的数据3,执行目标环节对应的升级步骤中的数据4和执行目标环节对应的升级步骤后的数据5。
[0068]
203、根据执行数据生成目标软件的升级质量指标。
[0069]
升级质量指标是用于衡量目标软件在升级过程中的一系列指标,升级质量指标包括但不限于:升级覆盖率,升级成功率,下载覆盖率,下载成功率等。可以理解的是,针对不同的需求,数据处理设备可以根据执行数据生成对应的升级质量指标;例如,软件开发人员关心使用过目标软件的在线(连接在互联网中)终端设备中升级成功的终端设备所占的比例,那么数据处理设备可以生成升级成功率作为目标软件的升级质量指标;再如:软件开发商关心使用目标软件的所有终端设备中升级成功的终端设备所占的比例,那么数据处理设备可以生成升级覆盖率作为目标软件的升级质量指标。
[0070]
本技术实施例中,当目标软件存在升级任务时,获取该目标软件的升级规则,该升级规则用于定义目标软件的升级链路以及升级任务的m(m为大于1的整数)个环节,在升级链路中执行升级任务的过程中,获取目标环节对应的执行数据,根据执行数据生成目标软件的升级质量指标。在上述方案中,通过升级规则来对目标软件的升级链路及升级任务进行定义描述,再通过获取升级链路在软件升级过程中各个环节的执行数据(如成功下载升级数据的终端设备数量,成功升级目标软件的终端设备的数量),来制定目标软件的升级质量指标(如升级成功率,升级覆盖率等),这些升级质量指标为目标软件的升级质量提供了衡量标准,基于此标准能够为目标软件的升级任务的优化改进提供有效地参考和指导,从而有利于实现软件升级过程的优化。
[0071]
图3示出了本技术一个示例性实施例提供的另一种数据处理方法的流程图;该方法可由数据处理设备来执行,该数据处理设备可以是指图1a所示的数据处理系统中的服务器102,或者可以是指图1b所示的数据处理系统中的第三方设备103。该方法包括以下步骤301-步骤304:
[0072]
301、当目标软件存在升级任务时,获取目标软件的升级规则。
[0073]
升级规则用于定义目标软件的升级链路和升级任务对应的m个环节,m为大于1的整数。升级规则可以通过各种网络层级模型进行表示,每个层级表示升级任务对应的m个环节中的一个环节;例如,假设升级任务1对应5个环节,则用于表示升级任务1的网络层级模型1的层级为5。
[0074]
在一种实施方式中,升级规则可以通过漏斗模型进行表示。图4a示出了本技术一个示例性实施例提供的一种漏斗模型的架构图。如图4a所示,漏斗模型包括6个层级,也就是说该漏斗模型表示的升级任务对应有6个环节。这6个层级按照升级任务对应的6个环节的执行顺序,从上至下排列成漏斗状,即漏斗模型中6个层级的排列顺序与上述升级任务对应的6个环节的执行顺序相对应。需要说明的是,图4a中层级的数量仅用于举例,并不构成本技术的实际限定;例如,若升级任务对应有4个环节,则漏斗模型包括4个层级。
[0075]
302、在升级链路中执行升级任务的过程中,获取目标环节对应的执行数据。
[0076]
不同的升级任务可能对应不同数量的环节;例如,升级任务1对应5个环节,升级任务2对应7个环节。每个环节对应升级任务中的一个升级步骤,在升级链路中执行升级任务是指由升级链路中的上游设备和/或下游设备按照m个环节的先后顺序依次执行每个环节对应的升级步骤。
[0077]
在一种实施方式中,m个环节包括:全量设备环节、圈中设备环节、问询设备环节、设备下载环节、设备安装环节和成功上报环节。
[0078]
如图4a所示,全量设备环节、圈中设备环节和问询设备环节是由升级链路中的上游设备执行的。上游设备首先执行全量设备环节对应的升级步骤,从终端设备中筛选出使用过目标软件的全量设备;例如,假设目标软件为软件a,终端设备1使用过软件a和软件c,终端设备2使用过软件b和软件c,终端设备3使用过软件a,则上游设备将终端设备1和终端设备3确定为全量设备。结合图4a,上游设备在筛选出全量设备后,将全量设备标记为状态1,状态1用于指示该终端设备为使用过目标软件的全量设备。
[0079]
然后上游设备执行圈中设备环节对应的升级步骤,从全量设备中筛选出满足目标条件的圈中设备。目标条件可以是预设条件(如全量设备中目标软件的当前版本号低于升级任务对应的版本号),也可以是开发人员根据需求设置的条件(如全量设备的操作系统为安卓系统,全量设备中目标软件的当前版本号为目标版本号等)。结合图4a,上游设备在筛选出圈中设备后,将圈中设备与升级任务对应的第二版本号进行关联(若圈中设备的上报的当前版本号低于圈中设备关联的第二版本号,则表示该圈中设备需要执行升级任务),并将圈中设备标记为状态2,状态2用于指示该终端设备为圈中设备(即符合目标条件的终端设备)。需要说明的是,一个终端设备无法同时被两个或两个以上的上游设备圈中;例如,假设终端设备1使用过软件a,且终端设备1中目标软件的版本号为1.0.1,上游设备1和上游设备2筛选全量设备的条件均为使用过软件a,上游设备1筛选圈中设备的条件为版本号低于2.0.1,上游设备2筛选圈中设备的条件为当前版本号为1.0.1,则终端设备1既满足上游设备1的圈中条件,也满足上游设备2的圈中条件。若上游设备1先于上游设备2圈中终端设备1,则上游设备2在上游设备1释放终端设备1之前无法将终端设备1圈中为圈中设备;同理,若上游设备2先于上游设备1圈中终端设备1,则上游设备1在上游设备2释放终端设备1之前无法将终端设备1圈中为圈中设备。需要说明的是,上游设备会在圈中设备完成升级任务,或者在检测到圈中设备不满足升级过程中目标环节对应的升级步骤的执行条件后释放圈中设备。
[0080]
接着上游设备执行问询设备环节对应的升级步骤,从圈中设备中确定出问询设备,问询设备是指圈中设备中与上游设备进行问询交互的圈中设备,并且问询设备中目标软件的第一版本号(当前版本号)低于升级任务对应的第二版本号。问询交互的方式包括以下一种或多种:(1)圈中设备按照指定的时间间隔(如5分钟,10分钟等)向上游设备发送问询信息,问询信息用于询问上游设备当前是否需要对目标软件进行升级,问询信息中携带有圈中设备中目标软件的当前版本号。(2)上游设备在检测到目标软件存在新增的升级任务后,向圈中设备发送通知,通知用于提示圈中设备目标软件存在新增的升级任务,圈中设备在收到上游设备发送的通知后,向上游设备发送问询信息。(3)圈中设备检测到用户在使用目标软件的过程中,触发了目标软件的更新检测,则向上游设备发送问询信息。结合图4a,上游设备在确定出问询设备后,将问询设备确定为下游设备,并将问询设备标记为状态
3,状态3用于指示该终端设备为问询设备。在一个实施例中,上游设备是目标软件对应的后端服务器,下游设备是后端服务器通过执行全量设备环节、圈中设备环节和问询设备环节对应的升级步骤,从终端设备中筛选出的问询设备。
[0081]
如图4a所示,设备下载环节、设备安装环节和成功上报环节是由升级链路中的下游设备执行的。下游设备首先执行设备下载环节对应的升级步骤,从上游设备下载升级任务对应的升级数据。下游设备在下载完成后,向上游设备上报下载信息,下载信息用于指示该下游设备是否成功下载升级任务对应的升级数据。结合图4a,上游设备在接收下游设备发送的下载信息后,将成功下载升级任务对应的升级数据的下游设备标记为状态4,状态4用于指示该下游设备成功下载升级任务对应的升级数据。
[0082]
在一个实施例中,成功下载升级任务对应的升级数据的下游设备执行设备安装环节对应的升级步骤,在下载成功的下游设备中安装升级任务对应的升级数据。然后安装成功的下游设备执行成功上报环节对应的升级步骤,向上游设备发送状态信息,状态信息包括安装成功的下游设备中的目标软件的第三版本号,此时第三版本号与升级任务对应的第二版本号相同。
[0083]
在另一个实施例中,成功下载升级任务对应的升级数据的下游设备执行设备安装环节对应的升级步骤,触发(安装)升级任务对应的升级数据。成功下载升级任务对应的升级数据的下游设备向上游设备发送安装信息,安装信息用于指示成功下载升级任务对应的升级数据的下游设备是否成功触发升级任务对应的升级数据。结合图4a,上游设备在接收下游设备发送的安装信息后,将成功触发升级任务对应的升级数据的下游设备标记为状态5,状态5用于指示该终端设备成功触发升级任务对应的升级数据。
[0084]
接着成功触发升级任务对应的升级数据的下游设备执行成功上报环节对应的升级步骤,向上游设备发送状态信息,状态信息包括(触发升级任务对应的升级数据后)目标软件的第三版本号(当前版本号)。结合图4a,上游设备在接收状态信息后,判断成功触发升级任务对应的升级数据的下游设备中目标软件的第三版本号与升级任务对应的第二版本号是否相同,若成功触发升级任务对应的升级数据的下游设备中目标软件的第三版本号与升级任务对应的第二版本号相同,则指示该终端设备中目标软件升级更新成功,服务器将该终端设备标记为状态6,状态6用于指示该终端设备成功升级目标软件;若成功触发升级任务对应的升级数据的下游设备中目标软件的第三版本号与升级任务对应的第二版本号不相同,则指示该终端设备中目标软件升级更新失败。
[0085]
图4b示出了本技术一个示例性实施例提供的一种上游设备的状态示意图。如图4b所示,初始化过程包括筛选出使用过目标软件的全量设备。生效中是指启动目标软件的升级任务。在具体实现过程中,上游设备按批次对下游设备进行升级;例如,第一批次对10台下游设备进行升级,若升级结果符合继续升级的条件(如升级成功率大于80%),则第二批次对100台下游设备进行升级,重复上述步骤直至所有下游设备升级;相应地,若升级结果不符合继续升级的条件,则终止目标软件的升级任务,或者交由上游设备的工作人员处理,上游设备的工作人员可以根据实际情况选择继续升级或终止目标软件的升级任务。
[0086]
图4c示出了本技术一个示例性实施例提供的一种下游设备的状态示意图。如图4c所示,待升级是指下游设备中安装有目标软件,问询成功是指下游设备向上游设备确定目标软件是否需要升级,若上游设备检测到下游设备中目标软件的当前版本号大于或等于升
级任务对应的(目标)版本号,则判定目标软件已升级成功;若上游设备检测到下游设备中目标软件的当前版本号小于升级任务对应的(目标)版本号,则上游设备向下游设备发送的升级指令。下游设备在接收升级指令后,根据升级指令执行目标软件的升级任务:下游设备首先下载升级任务对应的升级数据,若下载失败,则重新下载直至下载成功,或者结束目标软件的升级任务;若下载完成,则安装升级任务对应的升级数据。在升级数据安装完成后,若目标软件的当前版本号大于或等于升级任务对应的(目标)版本号,则判定目标软件升级成功,若目标软件的当前版本号小于升级任务对应的(目标)版本号,则判定目标软件升级失败。
[0087]
303、根据执行数据生成目标软件的升级质量指标。
[0088]
执行数据是指升级链路中的上游设备和/或下游设备在执行目标环节对应的操作的过程中产生的一个或多个数据。在一种实施方式中,目标环节是指m个环节中的任一个环节,即目标环节可以表示为m个环节中的第k个环节,k为正整数且k∈[1,m]。执行数据包括执行第k个环节对应的升级步骤之前的第一数据,以及在执行第k个环节对应的升级步骤之后的第二数据。可以理解的是,执行第k个环节对应的升级步骤之后的数据即是第k 1个环节对应的升级步骤之前的数据。计算第二数据与第一数据的比值p(即第k个环节对应的升级步骤在执行后与执行前的比值p),并将比值p确定为目标软件的升级质量指标;例如,假设执行设备下载环节之前的问询设备数量为1000,执行设备下载环节之后成功下载升级任务对应的升级数据的问询设备数量为900,则下载成功率为:900/1000=90%,将下载成功率90%确定为目标软件的升级质量指标。
[0089]
在另一种实施方式中,目标环节是指m个环节中的多个环节,即目标环节可以表示为第i个环节至第j个环节之间的多个环节,i、j均为正整数,且i∈[1,m-1],j∈[2,m],i<j。执行数据包括在执行第i个环节对应的执行步骤之前的第三数据,以及在执行第j个环节对应的执行步骤之后的第四数据。计算第四数据与第三数据的比值q(即第j个环节对应的升级步骤在执行后与第i个环节对应的升级步骤在执行前的比值q),并将比值q确定为目标软件的升级质量指标;例如,假设执行设备下载环节之前的问询设备数量为1000,执行成功上报环节之后升级成功的终端设备数量为850,则升级成功率为:850/1000=85%,将升级成功率85%确定为目标软件的升级质量指标。
[0090]
可以理解的是,由于从圈中设备环节开始,每个环节对应的升级步骤都是在上一个环节对应的升级步骤的基础上进行的,随着m个环节对应的升级步骤的顺序执行,满足第i 1个环节对应的升级步骤的执行条件的终端设备的数量会小于或等于满足第i环节对应的升级步骤的执行条件的终端设备的数量,因此比值p与比值q的取值范围为[0,1];例如,假设使用过目标软件的全量设备的数量为10000,但满足目标条件的圈中设备的数量只有8000;又如,假设问询设备环节确定问询设备数量为5000,则设备下载环节确定成功下载升级任务对应的升级数据的下游设备的数量最多为5000(即所有问询设备均成功下载升级任务对应的升级数据);再如,假设问询设备环节确定问询设备数量为5000,升级成功的下游设备的数量可能为0。
[0091]
在再一种实施方式中,升级质量指标包括升级覆盖率和升级成功率。升级覆盖率的计算公式为:
[0092]
升级覆盖率=安装成功的下游设备的数量/圈中设备的数量
[0093]
即升级覆盖率为安装成功的下游设备的数量与圈中设备的数量的比值。升级成功率的计算公式为:
[0094]
升级成功率=安装成功的下游设备的数量/问询设备的数量
[0095]
即升级成功率为安装成功的下游设备的数量与问询设备的数量的比值。升级覆盖率与升级成功率的主要区别在于分母不同,即圈中设备的数量和问询设备的数量。圈中设备和问询设备的区别在于问询设备是当前在线的终端设备。在实际应用中,软件开发商更加关注总体设备的变化即升级覆盖率;而软件开发人员则更关注升级成功率,由于不在线或者网络不通的终端设备无法升级成功,因此对于软件开发人员来说,升级成功率才是有效数据。
[0096]
需要说明的是,执行数据除了包括终端设备的数量外,还可以包括升级任务的执行时间等在目标软件的升级过程中产生的相关数据;例如,可以通过目标设备下载升级数据的下载时间来判断目标设备的当前网络质量。
[0097]
304、根据升级质量指标输出提示信息。
[0098]
提示信息用于指示升级链路的可用性。在一种具体的实施方式中,数据处理设备监测升级链路在执行升级任务的过程中的状态,即确定下游设备在执行完每个环节对应的升级步骤后,是否满足继续执行下一个环节对应的升级步骤的执行条件,若下游设备满足继续执行下一个环节对应的升级步骤的执行条件,则确定升级链路是可用的;若下游设备不满足继续执行下一个环节对应的升级步骤的执行条件,则确定升级链路是不可用的;例如,下游设备在执行设备下载环节对应的升级步骤后,若下游设备未能成功下载升级任务对应的升级数据,则不满足执行设备安装环节对应的升级步骤的执行条件,数据处理设备将该下游设备所在的升级链路确定为不可用;若下游设备成功下载升级任务对应的升级数据,则满足执行设备安装环节对应的升级步骤的执行条件,数据处理设备将该下游设备所在的升级链路确定为可用。同理,下载成功的下游设备在执行设备安装环节对应的升级步骤后,若下载成功的下游设备未能成功安装升级任务对应的升级数据,则不满足执行成功上报环节对应的升级步骤的执行条件,数据处理设备将该下游设备所在的升级链路确定为不可用;若下载成功的下游设备成功安装升级任务对应的升级数据,则满足执行成功上报环节对应的升级步骤的执行条件,数据处理设备将该下游设备所在的升级链路确定为可用。
[0099]
在另一种实施方式中,数据处理设备获取目标下游设备的升级日志,目标下游设备是执行了设备下载环节和设备安装环节中至少一个环节对应的升级步骤,且未执行成功上报环节对应的升级步骤的下游设备(即目标软件升级失败的下游设备),升级日志中包含升级失败的原因提示信息(如升级数据下载失败,升级数据安装失败等)。数据处理设备统计升级日志,得到统计结果,并根据统计结果输出提示信息。可以理解的是,该提示信息可以指示目标下游设备升级失败的主要原因;例如,假设10个目标下游设备中,9个目标下游设备的升级日志指示失败原因为内存不足,则提示信息1用于提示升级数据过大需要进行压缩。
[0100]
本技术实施例在图2实施例的基础上,将升级任务划分为6个环节,其中前3个环节由升级链路中的上游设备执行,后3个环节由升级链路中的下游设备执行。数据处理设备通过获取这6个环节执行过程中的执行数据,可以计算包括升级覆盖率和升级成功率在内的
升级质量指标,并统计升级失败的下游设备的升级失败原因,进而为升级任务的优化改进提供更加详细和具体的参考和指导,有利于确保升级链路的可用性。
[0101]
上述详细阐述了本技术实施例的方法,为了便于更好地实施本技术实施例的上述方案,相应地,下面提供了本技术实施例的装置。
[0102]
请参见图5,图5示出了本技术一个示例性实施例提供的一种数据处理装置的结构示意图,该数据处理装置可以搭载在上述方法实施例中的数据处理设备上,该数据处理装置可以是数据处理设备中的一个应用程序或插件;图5所示的数据处理装置可以用于执行上述图2和图3所描述的方法实施例中的部分或全部功能。其中,各个单元的详细描述如下:
[0103]
获取单元501,用于当目标软件存在升级任务时,获取该目标软件的升级规则,该升级规则用于定义目标软件的升级链路以及升级任务的m个环节,m为大于1的整数;以及用于在升级链路中执行升级任务的过程中,获取目标环节对应的执行数据,该目标环节属于m个环节中的任一个或多个;
[0104]
处理单元502,用于根据执行数据生成目标软件的升级质量指标。
[0105]
在一种实施方式中,升级规则采用漏斗模型进行表示,该漏斗模型包括m个层级,m个层级按照从上至下的顺序排列成漏斗状;每个层级用于表示升级任务的一个环节。
[0106]
在一种实施方式中,目标环节是指m个环节中的任一个环节,目标环节表示为第k个环节,k为正整数且k∈[1,m];目标环节对应的执行数据包括:在执行第k个环节对应的升级步骤之前的第一数据,以及在执行第k个环节对应的升级步骤之后的第二数据;处理单元502还用于,根据执行数据生成目标软件的升级质量指标,具体用于:
[0107]
计算第二数据与第一数据之间的比值p,并将比值p确定为目标软件的升级质量指标,p∈[0,1]。
[0108]
在一种实施方式中,目标环节是指m个环节中的多个环节,目标环节表示为第i个环节至第j个环节之间的多个环节,i、j均为正整数,且i∈[1,m-1],j∈[2,m],i<j;目标环节对应的执行数据包括:在执行第i个环节对应的升级步骤之前的第三数据,以及在执行第j个环节对应的升级步骤之后的第四数据;处理单元502还用于,根据执行数据生成目标软件的升级质量指标,具体用于:
[0109]
计算第四数据与第三数据之间的比值q,并将比值q确定为目标软件的升级质量指标,q∈[0,1]。
[0110]
在一种实施方式中,升级链路是由上游设备和下游设备组成的链路;上游设备包括目标软件的后端服务器,上游设备存储有升级任务对应的升级数据;下游设备包括使用过目标软件的终端设备。
[0111]
在一种实施方式中,m个环节中每个环节对应升级任务的一个升级步骤;
[0112]
在升级链路中执行升级任务,包括:由升级链路中的上游设备和/或下游设备按照m个环节的先后顺序依次执行每个环节对应的升级步骤。
[0113]
在一种实施方式中,m个环节包括:全量设备环节、圈中设备环节、问询设备环节、设备下载环节、设备安装环节和成功上报环节。
[0114]
在一种实施方式中,在升级链路中执行升级任务,包括:
[0115]
上游设备执行全量设备环节对应的升级步骤,选取使用过目标软件的全量设备;
[0116]
上游设备执行圈中设备环节对应的升级步骤,从全量设备中筛选出满足目标条件
的圈中设备;
[0117]
上游设备执行问询设备环节对应的升级步骤,从圈中设备中确定出问询设备,并将问询设备确定为下游设备;
[0118]
其中,问询设备是指圈中设备中与上游设备进行问询交互的设备,并且问询设备中的目标软件的第一版本号小于升级任务对应的第二版本号。
[0119]
在一种实施方式中,在升级链路中执行升级任务,包括:
[0120]
下游设备执行设备下载环节对应的升级步骤,从上游设备下载升级任务对应的升级数据;
[0121]
下载成功的下游设备执行设备安装环节对应的升级步骤,在下载成功的下游设备中安装升级任务对应的升级数据;
[0122]
安装成功的下游设备执行成功上报环节对应的升级步骤,向上游设备发送状态信息,状态信息包括安装成功的下游设备中的目标软件的第三版本号。
[0123]
在一种实施方式中,升级质量指标包括升级覆盖率;处理单元502还用于,根据执行数据生成目标软件的升级质量指标,具体用于:
[0124]
计算安装成功的下游设备的数量与圈中设备的数量的比值,得到升级覆盖率。
[0125]
在一种实施方式中,升级质量指标包括升级成功率;处理单元502还用于,根据执行数据生成目标软件的升级质量指标,具体用于:
[0126]
计算安装成功的下游设备的数量与问询设备的数量的比值,得到升级成功率。
[0127]
在一种实施方式中,m个环节中每个环节对应升级任务的一个升级步骤;处理单元502还用于:
[0128]
根据升级质量指标输出提示信息,该提示信息用于提示升级链路的可用性。
[0129]
根据本技术的一个实施例,图2和图3所示的数据处理方法所涉及的部分步骤可由图5所示的数据处理装置中的各个单元来执行。例如,图2中所示的步骤201和步骤202可由图5所示的获取单元501执行,步骤203可由图5所示的处理单元502执行。图3中所示的步骤301和步骤302可由图5所示的获取单元501执行,步骤303和步骤304可由图5所示的处理单元502执行。图5所示的数据处理装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本技术的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本技术的其它实施例中,数据处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。
[0130]
根据本技术的另一个实施例,可以通过在包括中央处理单元(cpu)、随机存取存储介质(ram)、只读存储介质(rom)等处理元件和存储元件的例如计算机的通用计算装置上运行能够执行如图2和图3中所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图5中所示的数据处理装置,以及来实现本技术实施例的数据处理方法。计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算装置中,并在其中运行。
[0131]
基于同一发明构思,本技术实施例中提供的数据处理装置解决问题的原理与有益效果与本技术方法实施例中数据处理方法解决问题的原理和有益效果相似,可以参见方法
的实施的原理和有益效果,为简洁描述,在这里不再赘述。
[0132]
请参阅图6,图6示出了本技术一个示例性实施例提供的一种数据处理设备的结构示意图,该数据处理设备可以是图1a所示的服务器102,或者是图1b所示的第三方设备103;该数据处理设备至少包括处理器601、通信接口602和存储器603。其中,处理器601、通信接口602和存储器603可通过总线或其他方式连接,本技术实施例以通过总线连接为例。其中,处理器601(或称中央处理器(central processing unit,cpu))是数据处理设备的计算核心以及控制核心,其可以解析终端设备内的各类指令以及处理终端设备的各类数据,例如:cpu可以用于解析用户向终端设备所发送的开关机指令,并控制终端设备进行开关机操作;再如:cpu可以在终端设备内部结构之间传输各类交互数据,等等。通信接口602可选的可以包括标准的有线接口、无线接口(如wi-fi、移动通信接口等),受处理器601的控制可以用于收发数据;通信接口602还可以用于终端设备内部数据的传输以及交互。存储器603(memory)是终端设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的存储器603既可以包括终端设备的内置存储器,当然也可以包括终端设备所支持的扩展存储器。存储器603提供存储空间,该存储空间存储了终端设备的操作系统,可包括但不限于:android系统、ios系统、windows phone系统等等,本技术对此并不作限定。
[0133]
在一个实施例中,该数据处理设备可以是图1a所示的服务器102,或者是图1b所示的第三方设备103。在此情况下,处理器601通过运行存储器603中的可执行程序代码,执行如下操作:
[0134]
当目标软件存在升级任务时,通过通信接口602获取该目标软件的升级规则,该升级规则用于定义目标软件的升级链路以及升级任务的m个环节,m为大于1的整数;以及在升级链路中执行升级任务的过程中,通过通信接口602获取目标环节对应的执行数据,该目标环节属于m个环节中的任一个或多个;
[0135]
根据执行数据生成目标软件的升级质量指标。
[0136]
作为一种可选的实施方式,升级规则采用漏斗模型进行表示,该漏斗模型包括m个层级,m个层级按照从上至下的顺序排列成漏斗状;每个层级用于表示升级任务的一个环节。
[0137]
作为一种可选的实施方式,目标环节是指m个环节中的任一个环节,目标环节表示为第k个环节,k为正整数且k∈[1,m];目标环节对应的执行数据包括:在执行第k个环节对应的升级步骤之前的第一数据,以及在执行第k个环节对应的升级步骤之后的第二数据;处理器601根据执行数据生成目标软件的升级质量指标的具体实施方式为:
[0138]
计算第二数据与第一数据之间的比值p,并将比值p确定为目标软件的升级质量指标,p∈[0,1]。
[0139]
作为一种可选的实施方式,目标环节是指m个环节中的多个环节,目标环节表示为第i个环节至第j个环节之间的多个环节,i、j均为正整数,且i∈[1,m-1],j∈[2,m],i<j;目标环节对应的执行数据包括:在执行第i个环节对应的升级步骤之前的第三数据,以及在执行第j个环节对应的升级步骤之后的第四数据;处理器601根据执行数据生成目标软件的升级质量指标的具体实施方式为:
[0140]
计算第四数据与第三数据之间的比值q,并将比值q确定为目标软件的升级质量指标,q∈[0,1]。
[0141]
作为一种可选的实施方式,升级链路是由上游设备和下游设备组成的链路;上游设备包括目标软件的后端服务器,上游设备存储有升级任务对应的升级数据;下游设备包括使用过目标软件的终端设备。
[0142]
作为一种可选的实施方式,m个环节中每个环节对应升级任务的一个升级步骤;
[0143]
在升级链路中执行升级任务,包括:由升级链路中的上游设备和/或下游设备按照m个环节的先后顺序依次执行每个环节对应的升级步骤。
[0144]
作为一种可选的实施方式,m个环节包括:全量设备环节、圈中设备环节、问询设备环节、设备下载环节、设备安装环节和成功上报环节。
[0145]
作为一种可选的实施方式,在升级链路中执行升级任务,包括:
[0146]
上游设备执行全量设备环节对应的升级步骤,选取使用过目标软件的全量设备;
[0147]
上游设备执行圈中设备环节对应的升级步骤,从全量设备中筛选出满足目标条件的圈中设备;
[0148]
上游设备执行问询设备环节对应的升级步骤,从圈中设备中确定出问询设备,并将问询设备确定为下游设备;
[0149]
其中,问询设备是指圈中设备中与上游设备进行问询交互的设备,并且问询设备中的目标软件的第一版本号小于升级任务对应的第二版本号。
[0150]
作为一种可选的实施方式,在升级链路中执行升级任务,包括:
[0151]
下游设备执行设备下载环节对应的升级步骤,从上游设备下载升级任务对应的升级数据;
[0152]
下载成功的下游设备执行设备安装环节对应的升级步骤,在下载成功的下游设备中安装升级任务对应的升级数据;
[0153]
安装成功的下游设备执行成功上报环节对应的升级步骤,向上游设备发送状态信息,状态信息包括安装成功的下游设备中的目标软件的第三版本号。
[0154]
作为一种可选的实施方式,升级质量指标包括升级覆盖率;处理器601根据执行数据生成目标软件的升级质量指标的具体实施方式为:
[0155]
计算安装成功的下游设备的数量与圈中设备的数量的比值,得到升级覆盖率。
[0156]
作为一种可选的实施方式,升级质量指标包括升级成功率;处理器601根据执行数据生成目标软件的升级质量指标的具体实施方式为:
[0157]
计算安装成功的下游设备的数量与问询设备的数量的比值,得到升级成功率。
[0158]
作为一种可选的实施方式,m个环节中每个环节对应升级任务的一个升级步骤;处理器601通过运行存储器603中的可执行程序代码,还执行如下操作:
[0159]
根据升级质量指标输出提示信息,该提示信息用于提示升级链路的可用性。
[0160]
基于同一发明构思,本技术实施例中提供的数据处理设备解决问题的原理与有益效果与本技术方法实施例中数据处理方法解决问题的原理和有益效果相似,可以参见方法的实施的原理和有益效果,为简洁描述,在这里不再赘述。
[0161]
本技术实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,该计算机程序适于由处理器加载并执行上述方法实施例的数据处理方法。
[0162]
本技术实施例还提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处
理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述数据处理的方法。
[0163]
需要说明的是,对于前述的各个方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本技术并不受所描述的动作顺序的限制,因为依据本技术,某一些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本技术所必须的。
[0164]
本技术实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
[0165]
本技术实施例装置中的模块可以根据实际需要进行合并、划分和删减。
[0166]
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,可读存储介质可以包括:闪存盘、只读存储器(read-only memory,rom)、随机存取器(random access memory,ram)、磁盘或光盘等。
[0167]
以上所揭露的仅为本技术一种较佳实施例而已,当然不能以此来限定本技术之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本技术权利要求所作的等同变化,仍属于申请所涵盖的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献