掌桥专利:专业的专利平台
掌桥专利
首页

一种数据容灾恢复方法及装置

文献发布时间:2023-06-19 18:37:28


一种数据容灾恢复方法及装置

技术领域

本申请属于数据存储技术领域,尤其涉及一种数据容灾恢复方法及装置。

背景技术

近年来,随着大数据时代的蓬勃发展,大数据分布式集群作为云计算的存储基础发挥着越来越重要的作用。分布式集群的文件系统常用Hadoop分布式文件系统(HadoopDistributed File System,HDFS)来对海量数据进行量处理和流式批处理。与此同时因网络连接的不可靠性和带宽限制,分布式集群中极易出现节点故障。在此背景下,数据容灾恢复技术研发很有必要。目前,数据容灾恢复技术可通过失效检测来对各个节点进行检查,并通过将失效节点中的数据进行恢复的手段,实现大数据分布式集群系统中数据的备份以及恢复。但是现有技术在对数据容灾恢复技术的研究方案中考虑的因素有限,存在一定局限性,对集群系统数据容灾恢复能力较低。

发明内容

有鉴于此,本申请实施例提供了一种数据容灾恢复方法及装置,能够解决业务系统故障感知度比较高以及数据容灾恢复效率较低的问题。

第一方面,本申请实施例提供了一种数据容灾恢复方法,所述方法应用于分布式集群系统,所述分布式集群系统包括多个节点,所述方法包括:

在确定所述分布式集群系统中的节点发生故障时,确定故障类型和待恢复数据的范围;

在所述故障类型为数据节点故障类型时,获取第一评估数据集和第二评估数据集,其中所述第一评估数据集包括所述待恢复数据的业务敏感度特征和/或数据块访问特征,所述第二评估数据集包括所述多个节点中除故障数据节点以外的节点的状态参数;

对所述第一评估数据集进行预处理,得到预处理后的第一评估数据集,以及,对所述第二评估数据集进行预处理,得到预处理后的第二评估数据集;

根据所述预处理后的第一评估数据集以及业务敏感度评估模型,确定数据恢复优先级列表,其中,所述业务敏感度评估模型用于根据所述预处理后的第一评估数据集输出待恢复数据的优先级,所述数据恢复优先级列表用于表征待恢复数据的优先级次序;

根据所述预处理后的第二评估数据集以及节点状态评估模型,确定节点优先级列表,其中,所述节点状态评估模型用于根据所述预处理后的第二评估数据集对各个节点的实时状态进行评估并输出所述节点优先级列表,所述节点优先级列表中包括至少一个节点,所述至少一个节点是所述多个节点中状态满足预设条件的节点,所述节点优先级列表用于表征所述至少一个节点的优先级次序;

根据所述数据恢复优先级列表和所述节点优先级列表,确定故障处理策略,所述故障处理策略是指:按照所述数据恢复优先级列表,将待恢复数据依次发送至所述至少一个节点;

执行所述故障处理策略。

在本申请实施例中,在确定节点的故障类型为数据节点故障和待恢复数据的范围后,获取所述待恢复数据的业务敏感度特征和/或数据块访问特征,以及除故障数据节点以外的多个节点的数据状态参数,在对获取的数据预处理后,根据所述预处理后的数据,调用业务敏感度评估模型动态更新数据块恢复优先级,以及调用节点状态评估模型实时评估节点的实时状态,能够达到将急需恢复的数据块发送给状态最优的节点以执行恢复操作的效果。相比于现有技术,本申请实施例考虑了业务的敏感度和集群节点的差异性,能够充分发挥集群优势,在提升所述数据块的恢复效率的同时,降低业务系统的故障感知度。

在一种可能的实现方式中,所述待恢复数据的业务敏感度特征包括以下特征中的一项或多项:数据块所属业务系统的优先级特征、数据块所属功能模块的优先级特征、数据块的业务属性特征、数据块的时效性特征。

在一种可能的实现方式中,所述业务敏感度评估模型用于根据所述预处理后的第一评估数据集输出待恢复数据的优先级,包括:

所述业务敏感度评估模型用于根据待恢复数据的热度值特征以及所述待恢复数据的业务敏感度特征输出待恢复数据的优先级;

所述待恢复数据的热度值特征是基于神经网络算法对数据块访问特征进行分析得到的。

在一种可能的实现方式中,所述数据块访问特征根据以下一项或多项参数确定:文件名称、文件操作类型、文件操作时间和文件操作权限。

也就是说,通过引入业务敏感度评估模型对数据进行分析挖掘,以便优先恢复业务系统中业务敏感度较高且急需恢复的数据,可以实现降低用户故障感知度的效果。

在一种可能的实现方式中,所述节点状态评估模型用于根据所述预处理后的第二评估数据集对各个节点的实时状态进行评估,并输出所述节点优先级列表,包括:

所述节点状态评估模型用于根据各个节点的状态参数以及各个节点的历史状态评估值,确定所述节点优先级列表;

其中,所述状态参数包括以下参数中的一项或多项:CPU利用率、内存使用率、磁盘I/O使用率、网络带宽使用率、命令响应时间、命令队列长度和磁盘使用率。

基于所述节点状态评估模型实时更新节点的实时状态评估值,有利于确定可用于执行数据恢复操作的至少一个节点,并对至少一个节点的优先级排列,确保所述至少一个节点中状态最优的节点用于处理业务敏感度高且急需恢复的数据。通过上述方式,能够极大发挥集群优势,提高数据容灾恢复效率。

在一种可能的实现方式中,所述执行所述故障处理策略,包括:

按照所述待恢复数据的优先级次序和所述至少一个节点的优先级次序,将所述待恢复数据依次发送至所述至少一个节点进行处理。

在一种可能的实现方式中,在按照所述待恢复数据的优先级次序和所述至少一个节点的优先级次序,将所述待恢复数据依次发送至所述至少一个节点进行处理之后,所述方法还包括:

如果所述待恢复数据中还存在剩余数据,将所述剩余数据发送至所述至少一个节点中已完成数据处理的节点,其中,所述剩余数据是指所述待恢复数据中未被所述至少一个节点处理的数据。

在一种可能的实现方式中,所述预处理操作包括以下处理中的一项或多项:

类别型特征处理、空值处理、数据归一化处理,其中,所述类别型特征处理用于将非数值型数据转换为数值性数据。

第二方面,本申请实施例提供了一种数据容灾恢复的装置,用于执行上述第一方面或第一方面的任意可能的实现方式中的方法。具体地,该装置包括用于执行上述第一方面或第一方面的任意可能的实现方式中的方法的模块(或单元)。

第三方面,本申请实施例提供了一种分布式集群系统,包括多个节点。所述多个节点主要包括两种类型的节点,分别为名称节点和数据节点。可选地,多个节点中还可以包括辅助名称节点。所述分布式集群系统用于执行本申请实施例第一方面中任意一种实现方式所述的用于数据容灾恢复的方法。

第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述方法的步骤。

第五方面,本申请实施例提供了一种计算机程序产品,当计算机程序在数据容灾恢复的装置上运行时,使得用于数据容灾恢复的装置执行上述第一方面或第一方面的任意可能的实现方式中的方法。

本申请实施例与现有技术相比存在的有益效果是:本申请实施例针对分布式集群系统,设计了一种数据容灾恢复方法,通过异构大数据节点的实时评估算法,最大程度利用节点资源,有效提高数据容灾恢复效率。同时,本申请实施例基于业务敏感度评估模型动态更新数据恢复优先级,可以在降低业务系统的故障感知度,通过对所述节点的实时评估以及所述数据恢复优先级,对数据进行恢复,可以提高大数据分布式集群系统和业务系统的鲁棒性的同时,提升平台的服务质量。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例提供的数据容灾恢复方法的应用场景的示意图;

图2是本申请实施例提供的数据容灾恢复方法的流程示意图;

图3是本申请实施例提供的评估模型的示意框图;

图4是本申请实施例提供的数据恢复优先级列表的确定方法的流程示意图;

图5是本申请实施例提供的节点优先级列表的确定方法的流程示意图;

图6是本申请实施例提供的数据预处理过程的流程示意图;

图7是本申请实施例提供的数据容灾恢复方法的一个示例流程图;

图8是本申请实施例提供的数据容灾恢复装置的结构框图;

图9是本申请实施例提供的数据容灾恢复的结构示意图。

具体实施方式

以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。

应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。

还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。

如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。

另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。

本申请实施例应用于分布式集群系统。分布式集群系统包括多个节点,其中所述分布式集群系统中的多个节点主要包括两种类型的节点,分别为名称节点(name node)和数据节点(data node)。通常而言,多个节点中可以包括一个名称节点和多个数据节点。

可选地,多个节点中还可以包括辅助名称节点,辅助节点可以对名称节点的数据进行备份,避免名称节点崩溃后导致数据丢失。

在一种可能的实现方式中,分布式集群系统可以是HDFS系统。所述HDFS系统架构采取中间控制节点架构,其中,需要对数据进行读写时,需要先访问存储元数据的名称节点,以获取实际数据的存储信息,再去存储所述实际数据的数据节点进行读写。

为了便于理解,在介绍本申请实施例之前,先对本申请实施例涉及到的一些术语或概念进行简单介绍。

节点:可以实现存储数据、索引并搜索的功能。每个节点都有一个唯一的名称作为其身份标识。多个节点可以组成集群。

名称节点(或管理节点),主要用于保存分布式集群系统(比如HDFS系统)的元数据信息,维护文件系统的命名空间以及响应客户端的读写要求,并向数据节点发送指令。名称节点包括用于保存文件系统的目录树的镜像文件(Fslmage),以及用于修改目录树的操作日志(EditLog)。

数据节点,属于分布式集群系统(比如HDFS系统)中单独机器上运行的软件节点,通常以机架的形式组织。数据节点主要用于存储实际的数据块和执行数据块的读/写操作。

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在一种可能的应用场景中,本申请实施例提供的数据容灾恢复的方法可适用于涉及针对异构大数据分布式集群系统的应用场景。

以下结合图1中的具体场景进行示例描述。

图1是本申请实施例提供的数据容灾恢复方法的应用场景的示意图,如图1所示,针对异构大数据分布式集群系统的应用场景包括客户端、名称节点和N个数据节点。可选地,所述异构大数据分布式集群系统还可以包括辅助名称节点。

其中,所述客户端用于将需要写入HDFS的文件切分,与名称节点、数据节点交互,以及管理和访问HDFS。示例性地,所述客户端类型包括HDFS命令行(HDFS Shell Command)、Java API、C API Libhdfs,以及其他访问HDFS的方式。其中,所述Java API是使用Java代码去操作访问HDFS。所述C API Libhdfs中,Libhdfs是用于HDFS的C API,预编译于Hadoop发行版中,所述Libhdfs支持C语言客户端,可以用来操纵HDFS以及文件系统。

所述数据节点响应于客户端的读写请求,以及响应于名称节点的创建、删除和复制的命令。所述数据节点创建、删除和复制存储在其上的数据块。其中,所述数据块在数据节点上以文件的形式存储,所述数据块包括数据本身以及元数据,所述元数据包括数据的长度、块数据的校验和时间戳。根据数据的热度值不同,可以将数据存储在数据节点中不同的存储介质上。比如说,将频繁访问的数据保存在更高访问性能的存储介质(比如,内存或SSD)上,以提升其读写性能;将几乎不会访问的数据保存在归档存储介质上,以降低其存储成本。

以对图1中所涉及的术语的功能或作用进行了简单解释。需要说明的是,图1中示出的各个术语的命名只是示例性描述,本申请实施例并不限于此。事实上,各个术语的命名也可以替换为其他名称,只要具备相应功能即可。

此外,为方便描述,在下文中,将异构大数据分布式集群系统简称为分布式集群系统。

在本申请实施例中,当所述分布式集群系统中出现节点故障时,需要对数据进行备份和恢复,以提高集群和业务系统的鲁棒性。有鉴于此,本申请提出了一种数据容灾恢复方法,能够达到提高数据容灾恢复效率的同时降低业务系统的故障感知度的目的。

以下将结合图2至图7描述本申请实施例执行数据容灾恢复的过程。

图2是本申请实施例提供的数据容灾恢复方法的流程示意图。应理解,作为示例而非限定,图2中的方法可以应用于图1所示的应用场景中。如图2所示,所述方法包括以下步骤:

步骤S110:在确定所述分布式集群系统中的节点发生故障时,确定故障类型和待恢复数据的范围。

可选地,该故障类型包括名称节点故障和数据节点故障。对于数据节点故障而言,本申请实施例对数据节点故障的判断方式不作限定。

可选地,作为一种可能的实现方式,可通过监控数据节点在预设时长内是否向名称节点发送心跳信息来判断数据节点是否发生故障。

换句话说,从名称节点的角度来看,若在超过预设时间阈值,名称节点未接收到心跳信息,则确定故障类型为数据节点故障。

示例性地,所述数据节点故障是由以下一项或多项情况导致的:

(1)存储在数据节点中的数据块缺少副本;

(2)数据块校验出错致使数据块重复复制;

(3)因网络故障或数据节点发生故障导致名称节点无法收到数据节点的心跳信息。

为保障存储在所述数据节点上的数据安全,通过心跳机制来对所述数据节点进行监测,所述心跳机制的工作原理是指在HDFS集群启动后,数据节点会向名称节点发送心跳包注册信息,并定期向名称节点发送心跳信息来进行失效监测。通常当超过十分钟以上,名称节点未接收到数据节点发送的心跳信息,则认定数据节点失效或发生故障。

可选地,作为一种可能的实现方式,若名称节点长时间处于安全模式,则确定故障类型为名称节点故障。

换句话说,若名称节点长时间处于安全模式无法向外提供读写功能,即名称节点长时间处于无法响应客户端读写请求的状态,则确定故障类型为名称节点故障。

示例性地,所述名称节点故障是指名称节点冷备份故障。

可以理解,在分布式集群系统部署了辅助名称节点时,名称节点故障是指名称节点本身发生故障或辅助名称节点发生故障。

可以理解,在步骤S110之前,可以先监控所述分布式集群系统中的节点是否发生故障。本申请实施例对监控节点发生故障的具体方式不作限定。比如,可以通过在分布式集群系统中设置故障检测模块或者节点状态检测模块,来监控是否存在节点发生故障。

可选地,所述待恢复数据的范围是指受故障节点影响的待恢复数据组成的范围。待恢复数据的范围也可以称作待恢复数据块的范围。

示例性地,所述待恢复数据的范围包括因故障节点而导致受损的数据,以及因故障节点而直接或间接遭受到影响的数据。

可选地,作为一种可能的实现方式,所述待恢复数据范围是通过Hadoop组件默认的API组件来确定的。

换种表述,在确定故障类型为数据节点故障后,通过Hadoop组件默认的API组件,确定故障数据节点上存储的数据块的列表。

示例性地,在本申请的一些实施例中,通过开源大数据集群监控平台对分布式节点的节点故障进行监控预警。并且具体地,开源大数据监控平台可以对数据节点故障和名称节点故障为主要特征的节点故障进行监控。

其中,开源大数据监控平台(WGCLOUD)是一款解压即可自动监测运行的软件,WGCLOUD支持在Linux系统、Windows系统、Unix系统、MacOS系统以及其他ARM、安卓系统等上运行。

所述开源大数据监控平台对分布式集群系统中的名称节点以及数据节点进行监控。当开源大数据监控平台检测到节点出现故障后,根据监控到的故障类型,判断节点故障类型。

当监测到节点异常后,对节点的故障类型和待恢复数据的范围进行判断。若该故障类型是名称节点故障,则直接使该名称节点退出安全模式。若该故障类型是数据节点故障,则获取待恢复数据的范围并执行步骤S120,立即启动集群数据容灾恢复流程。应理解,上述关于判断名称节点故障的方式,只是示例性描述,所述判断方式,也可以有其他的方式,例如,判断名称节点的启动时长是否超过时间阈值。对此,本申请实施例并不限于此。

示例性的,在本申请的一些实施例中,也可以采用大数据管理平台对分布式节点的节点故障进行监控预警。并且具体地,所述大数据管理平台可以对数据节点故障和名称节点故障为主要特征的节点故障进行监控。

所述大数据管理平台是一种基于Web的工具,支持Apache Hadoop集群的供应、管理和监控,目前已支持大多数Hadoop组件,包括分布式存储系统(HDFS)、分布式计算系统(MapReduce)、数据仓库工具(Hive)、大规模数据分析平台(Apache Pig)、分布式开源数据库(Hadoop Database,Hbase)、分布式应用程序协调服务软件(Zookeeper)、数据迁移工具(SQL to Hadoop,Sqoop)和Hadoop表存储管理工具(Hcatalog)等。

步骤S120:在所述故障类型为数据节点故障类型时,获取第一评估数据集和第二评估数据集,其中所述第一评估数据集包括所述待恢复数据的业务敏感度特征和/或数据块访问特征,所述第二评估数据集包括所述多个节点中除故障数据节点以外的节点的状态参数。

应理解,所述多个节点中除故障数据节点以外的节点的状态参数,是指在分布式集群系统中,除故障数据节点以外的正常数据节点的状态参数。

在本申请的一些实施例中,当确定所述故障类型为数据节点故障类型时,通过所述开源大数据监控平台,可以获取分布式集群系统中第一评估数据集和第二评估数据集的数据。示例性地,假设利用开源大数据监控平台对分布式集群系统进行监控,开源大数据监控平台可以实时监测主机各种指标监测,例如通过所述开源大数据监控平台上监测的各个节点的一项或多项指标,可以获取到所述第一评估数据集和所述第二评估数据集。

示例性地,所述第一评估数据集包括以下一项或多项指标:服务器上的进程应用、文件、端口、日志、数据块、数据表等资源。

示例性地,所述第二评估数据集包括以下一项或多项指标:CPU使用率、CPU温度、内存使用率、磁盘容量、磁盘IO,硬盘SMART健康状态、系统负载、连接数量、网卡流量、硬件系统等等。

应理解,上述的第一评估数据集和第二评估数据集中包含的一项或多项指标,仅作为开源大数据监控平台监测的指标的示例进行描述,本申请实施例并不限于此。

应理解,上述关于第一评估数据集,只是示例性描述,所述第一评估数据集也可以有其他的命名方式。对此,本申请实施例并不限于此。

应理解,上述关于第二评估数据集,只是示例性描述,所述第二评估数据集也可以有其他的命名方式。对此,本申请实施例并不限于此。

步骤S130:对所述第一评估数据集进行预处理,得到预处理后的第一评估数据集,以及,对所述第二评估数据集进行预处理,得到预处理后的第二评估数据集。

在数据采集过程中,常因考虑因素不同、人为因素干扰或软件本身存在问题的元素常导致数据采集不完整、有噪声、数据类型不一致的问题,往往采集的数据存在空值、重复、包含独立或错误数据点以及因特征不同而无法进行比较。因此,在进行数据分析前,需要对获取到的多个节点的数据进行预处理,以便获得预处理后的数据,为后续分析做准备。

步骤S140:根据所述预处理后的第一评估数据集以及业务敏感度评估模型,确定数据恢复优先级列表,其中,所述业务敏感度评估模型用于根据所述预处理后的第一评估数据集输出待恢复数据的优先级,所述数据恢复优先级列表用于表征待恢复数据的优先级次序。

在本申请实施例中,将所述预处理后的第一评估数据集中的数据块访问特征和业务敏感度特征,输入所述业务敏感度评估模型,所述业务敏感度评估模型基于业务敏感度综合评估算法进行预测,输出所述数据恢复优先级列表。

可选地,所述数据块访问特征包括以下特征中的一项或多项:文件名称、文件操作类型、文件操作时间、文件操作权限。在确定数据块访问特征后,对所述数据块访问特征进行实时采集存储。

可选地,所述待恢复数据的业务敏感度特征包括以下特征中的一项或多项:数据块所属业务系统的优先级特征、数据块所属功能模块的优先级特征、数据块的业务属性特征、数据块的时效性特征。

示例性地,所述数据块所属业务系统的优先级特征包括访问频率高的业务系统、访问频率较高的业务系统、访问频率低的业务系统,以及几乎不访问的业务系统等等。所述访问频率高的业务系统的优先级大于所述几乎不访问的业务系统的优先级。所述数据块所属业务系统对应的优先级越高,越有利于在综合评估数据恢复优先级时,对数据赋予更高的优先级数值。

示例性地,所述数据块所属功能模块的优先级特征包括使用频率高的功能模块、使用频率较高的功能模块、使用频率低的功能模块,以及几乎不用的功能模块等等。同样地,所述使用频率高的功能模块的优先级大于所述几乎不用的功能模块的优先级。所述数据块所属功能模块对应的优先级越高,越有利于在综合评估数据恢复优先级时,对数据赋予更高的优先级数值。

示例性地,所述数据块的业务属性特征包括过程数据和结果数据。

示例性地,所述数据块的时效性特征包括数据产生时效,通常为年、季度、月、日、小时等。

所述业务敏感度评估模型接收到预处理后的第一评估数据集后,首先通过预处理后的第一评估数据集获得数据块访问特征和所述数据的业务敏感度特征,然后对所述数据块访问特征和所述数据的业务敏感度特征进行分析挖掘,最后输出数据恢复优先级列表,其中,数据恢复优先级列表用于表征待恢复数据的优先级次序的数据恢复优先级列表。

图3中的上部分示出了业务敏感度评估模型的示意框图。如图3所示的业务敏感度评估模型,根据数据块所属业务系统的优先级特征、数据块所属功能模块的优先级特征、数据块的业务属性特征、数据块的时效性特征以及数据热度值,对业务敏感度综合评估,可以获得数据恢复优先级列。其中,所述数据热度值通过神经网络算法计算数据块访问特征而获得。

应理解,上述关于业务敏感度评估模型,只是示例性描述,所述业务敏感度评估模型也可以有其他的命名方式,例如,业务敏感度综合评估模型。对此,本申请实施例并不限于此。

应理解,上述关于数据恢复优先级列表,只是示例性描述,所述数据恢复优先级列表也可以有其他的命名方式,例如,数据容灾恢复优先级列表。对此,本申请实施例并不限于此。

在本申请实施例中,根据预处理后的数据,所述业务敏感度评估模型计算出所述待恢复数据的热度值后,在基于业务的敏感度的前提下,确定所述数据恢复优先级列表。也就是说,通过本申请中优先恢复业务系统中业务敏感度较高且急需恢复的数据的方式,可以实现降低用户故障感知度的效果。

步骤S150:根据所述预处理后的第二评估数据集以及节点状态评估模型,确定节点优先级列表,其中,所述节点状态评估模型用于根据所述预处理后的第二评估数据集对各个节点的实时状态进行评估并输出所述节点优先级列表,所述节点优先级列表中包括至少一个节点,所述至少一个节点是所述多个节点中状态满足预设条件的节点,所述节点优先级列表用于表征所述至少一个节点的优先级次序。

可选地,作为一种实现方式,所述满足预设条件的节点是指根据所述节点状态评估模型计算的各节点的实时状态评估值,在结合节点历史状态评估值的基础上,将节点中状态评估值大于预设阈值的节点,作为用于恢复数据或处理数据的节点。所述预设条件是状态评估值大于预设阈值。

可以理解,上述关于预设条件的示例仅是示例性描述,本申请实施例并不限于此。事实上,也可以根据需求不同,通过其他方式定义所述预设条件。对于定义所述预设条件的方式,本申请实施例在此并不做具体的限制。

所述节点状态评估模型用于根据所述预处理后的第二评估数据集对各个节点的实时状态进行评估并输出所述节点优先级列表,其中,所述节点优先级列表包含至少一个满足预设条件的节点。

图3中的下部分示出了节点状态评估模型的示意框图。如图3下部分所示的节点状态评估模型:根据节点状态参数,基于状态评估算法确定节点实时状态评估值,对节点实时状态评估值和历史状态评估值进行业务敏感度综合评估,可以获得数据恢复优先级列。应理解,上述关于节点状态评估模型,只是示例性描述,所述节点状态评估模型也可以有其他的命名方式,例如,大数据分布式节点综合评估模型。对此,本申请实施例并不限于此。

应理解,上述关于节点优先级列表,只是示例性描述,所述节点优先级列表也可以有其他的命名方式,例如,状态最优节点列表。对此,本申请实施例并不限于此。

基于所述节点状态评估模型实时更新节点的实时状态评估值,有利于确定可用于执行数据恢复操作的节点,并对所述节点的优先级排列,确保所述节点中状态最优的节点接收到所述业务系统中业务敏感度高且急需恢复的数据。通过上述方式,能够极大发挥集群优势,提高数据容灾恢复效率。

步骤S160:根据所述数据恢复优先级列表和所述节点优先级列表,确定故障处理策略,所述故障处理策略是指:按照所述数据恢复优先级列表,将待恢复数据依次发送至所述至少一个节点。

应理解,上述关于故障处理策略只是示例性描述,所述故障处理策略也可以有其他的命名方式,例如,数据容灾备份策略。对此,本申请实施例并不限于此。

步骤S170:执行所述故障处理策略。

可选地,作为一种实现方式,按照所述待恢复数据的优先级次序和所述至少一个节点的优先级次序,将所述待恢复数据依次发送至所述至少一个节点进行处理。

示例性地,若所述待恢复数据有3份,其中待恢复数据优先级顺序分别为0、1、2,至少一个节点包括节点A、节点B、节点C,其中节点优先级顺序分别为0、1、2,按照所述待恢复数据的优先级次序,最先将待恢复数据中优先级为2的数据发送给节点C进行处理,将待恢复数据中优先级为1的数据发送给节点B进行处理,优先级为0的数据最后发送给节点A进行处理。

可选地,作为一种实现方式,在按照所述待恢复数据的优先级次序,将所述待恢复数据依次发送至所述至少一个节点进行处理之后,如果所述待恢复数据中还存在剩余数据,将所述剩余数据发送至所述至少一个节点中已完成数据处理的节点,其中,所述剩余数据是指所述待恢复数据中未被所述至少一个节点处理的数据。

换种表述,当节点优先级列表中包括的至少一个节点无法一次处理完数据恢复优先级列表中的全部待恢复数据节点时,或者说,不能将所述待恢复数据与所述至少一个节点一一对应。因此,通过先将部分急需待恢复的数据先发送给所述节点,以执行恢复操作,所述剩余数据则按照优先级顺序依次发送给已完成数据处理的节点。通过上述方式可以提高数据容灾恢复效率。

可选地,作为一种实现方式,所述恢复操作的流程包括:

第一步:检查并列出所有数据块状态。

本申请实施例对检查并列出所有数据块状态的具体方式不作具体限定。

在一种可能实现的方式中,可以通过以下方式来实现检查并列出所有数据块状态:

hdfs fsck文件绝对路径-files

应理解,上述仅作为示例进行描述,本申请实施例并不限于此。

第二步:打印数据块的位置信息和所在机架信息。

应理解,本申请实施例对检查并列出所有数据块状态的具体方式不作具体限定。

在一种可能实现的方式中,可以通过以下方式来实现检查并列出所有数据块状态:

hdfs fsck文件绝对路径-files-blocks-locations

hdfs fsck文件绝对路径-files-blocks-locations–racks

应理解,上述仅作为示例进行描述,本申请实施例并不限于此。

第三步:退出名称节点安全模式。

应理解,本申请实施例对检查并列出所有数据块状态的具体方式不作具体限定。

在一种可能实现的方式中,可以通过以下方式来实现退出名称节点安全模式:

hdfs dfsadmin-safemode leave NameNode

应理解,上述仅作为示例进行描述,本申请实施例并不限于此。

第四步:设置所述数据块副本存储位置。

应理解,本申请实施例对检查并列出所有数据块状态的具体方式不作具体限定。

在一种可能实现的方式中,可以通过以下方式来实现检查并列出所有数据块状态:

chooseTargetInOrder设置副本存储的节点

应理解,上述四个步骤仅作为恢复操作的流程示例进行描述,本申请实施例并不限于此。

在本申请实施例中,通过监控分布式集群系统中的节点,在确定所述节点发生故障时,确定故障类型和待恢复数据的范围;在所述故障类型是数据节点故障时,获取多个节点上的状态参数以及待恢复数据的业务敏感度特征及数据块访问特征;随后根据业务敏感度评估模型,确定数据恢复优先级列表;并根据节点状态评估模型,确定节点优先级列表,根据所述数据恢复优先级列表和所述节点优先级列表,确定并执行故障处理策略。相比于现有技术,本申请基于业务敏感度评估模型动态更新数据恢复优先级,同时,通过对所述节点的实时评估以及所述数据恢复优先级,对数据执行恢复操作,能够达到将急需恢复的数据块发送给状态最优的节点来快速执行恢复操作的效果,从而达到在提升所述数据块的恢复效率的同时,降低业务系统的故障感知度的效果。

为便于本领域技术人员理解,以下结合图4中的具体例子描述数据恢复优先级列表的确定方法。应理解,作为示例而非限定,图4中的方法是对于图2所示的数据容灾恢复方法中的步骤S140的细化,并非要将本申请实施例限于例示的具体场景。

可选地,作为一个可能的实施例,所述确定数据恢复优先级列表,包括以下步骤:

步骤S141:根据神经网络算法和预处理后的第一评估数据集中的数据块访问特征,确定待恢复数据的热度值。

作为示例而非限制,本申请实施例中可以采用LSTM神经网络算法来计算待恢复数据的热度值。其中,根据输入的所述数据块访问特征,LSTM神经网络算法计算出待恢复数据对应的热度值。LSTM神经网络算法具有可处理长序列数据以及获取长距离数据信息的优点,可以将当前时刻处理的信息传递给下一刻使用。因此采用LSTM神经网络算法可以基于当前计算的数据的热度值以及历史数据热度值,预测未来一段时间内的数据的热度值,能够解决因无法预先知晓文件的访问热度而无法制定HDFS异构存储策略的问题。

在一种可能实现的方式中,所述数据块访问特征根据以下一项或多项参数确定:文件名称、文件操作类型、文件操作时间和文件操作权限。

在一种可能实现的方式中,待恢复数据的热度值也可以通过循环网络神经算法获得。对于确定待恢复数据的热度值的方式,本申请实施例对此并不做具体地限制。

步骤S142:根据所述预处理后的第一评估数据集中的业务敏感度特征及所述待恢复数据的热度值,确定各待恢复数据的恢复优先级。示例性的,本申请实施例基于多元线性回归模型对待恢复数据的业务敏感度特征和所述待恢复数据的热度值进行业务敏感度综合评估,以确定各待恢复数据的恢复优先级。

或者,在另一种可能实现的方式中,可以采用模糊综合评价法、多因素综合评价法等等对所述待恢复数据的业务敏感度特征和所述待恢复数据的热度值进行业务敏感度综合评估。

应理解,上述是以多元线性回归模型为例进行描述,也可以采用其他模型或算法对待恢复数据的业务敏感度特征和所述待恢复数据的热度值进行业务敏感度综合评估,本申请实施例并不限于此。

步骤S143:根据所述待恢复数据的恢复优先级,得到所述数据恢复优先级列表。

示例性地,对节点中需要恢复的数据按照恢复缓急优先级排列,将急需恢复的数据的优先级标记较大的数值,将不着急或者稍缓恢复的数据的优先级标记较小的数值。

综上所述,所述业务敏感度评估模型接收到预处理后的数据后,首先通过预处理后的第一评估数据集获得待恢复数据访问特征和待恢复数据的业务敏感度特征,然后对所述数据块访问特征和所述数据的业务敏感度特征进行分析挖掘,最后输出数据恢复优先级列表,其中,数据恢复优先级列表用于表征待恢复数据的优先级次序。在获得数据恢复优先级列表后,根据待恢复数据的优先级的顺序,可依次向节点发送需要执行恢复操作的数据,具体可将急需恢复的数据优先发送至状态最优的节点以执行恢复操作,可以获得提高数据容灾恢复效率的有益效果。

为便于本领域技术人员理解,以下结合图5中的具体例子描述节点优先级列表的确定方法。应理解,应理解,作为示例而非限定,图5中的方法是对于图2所示的数据容灾恢复方法中的S150的细化,并非要将本申请实施例限于例示的具体场景。

在可能的一种实现方式里,所述确定节点优先级列表,包括以下步骤:

步骤S151:根据预处理后第二评估数据集,计算节点的实时状态评估值。

示例地,在一种可能的实现方式里,预处理后第二评估数据集包括影响节点的实时性能的状态参数。根据所述状态参数,计算节点的实时状态评估值。

具体地,所述状态参数包括以下参数中的一项或多项:CPU利用率、内存使用率、磁盘I/O使用率、网络带宽使用率、命令响应时间、命令队列长度和磁盘使用率。在确定所述影响节点的实时性能的状态参数后,对该因素状态参数进行实时存储。

作为示例而非限制,本申请实施例中可以基于Prophet模型来获得各节点的状态评估值。Prophet模型,是一种时间序列预测模型,可以用来拟合非线性趋势的时间序列,并且可以对存在缺失值和异常值的时间序列进行趋势预测。根据输入的所述节点的状态参数,所述Prophet模型可以计算出所述节点的实时状态评估值。

可以理解,上述仅是以Prophet模型为例进行描述,事实上也可以采用其他模型对多个节点的状态参数进行评估。本申请实施例对此并不做具体地限制。

步骤S152:根据计算的节点的实时状态评估值和节点的历史状态评估值,获得所述至少一个节点的优先级。

应理解,对节点的实时状态评估值和节点的历史状态评估值进行综合评估后,对所述节点标记优先级的前提是满足预设条件,即节点中评估值大于预设阈值,才可以进入所述节点优先级列表,以执行对数据执行恢复操作。

步骤S153:根据所述节点的优先级,确定节点优先级列表。

具体地,在所述节点优先级列表中,多个节点按照优先级从大到小的顺序排列。其中优先级越大的节点越先接收到数据以执行恢复操作。由上述方式可以获得进一步提高数据容灾恢复效率的有益效果。

基于所述节点状态评估模型对所述分布式集群中多个节点的实时状态进行评估,可以在充分考虑集群差异性的基础上,以得到能够用于恢复数据或处理数据的节点优先级列表。对于节点优先级列表中包括的至少一个节点,在接收到待恢复数据后,可以快速对数据进行恢复,以进一步提高数据容灾恢复的速率。

为便于本领域技术人员理解,以下结合图6中的具体例子描述数据预处理的方法。应理解,作为示例而非限定,图6中的方法是对于图2所示的数据容灾恢复方法中的S130的细化,并非要将本申请实施例限于例示的具体场景。

对于步骤S130而言,本申请实施例对预处理的具体操作不作具体限定。

可选地,在一种实现方式中,通过空值处理、数据标准化(归一化)处理和类别型特征处理等手段对数据进行预处理操作。其中,所述预处理操作包括以下步骤:

步骤S131:对第一评估数据集的数据中的非数值型数据进行类别型特征处理,得到类别型特征处理后的数据,其中所述类别型特征处理用于将非数值型的数据转换为数值性数据。

本申请实施例对类别型特征处理的具体方式不作具体限定。

在一种可能实现的方式中,可以利用Categorical对第一评估数据集中的数据进行类别型特征处理。其中,Categorical是Python软件中的一个数据类型,可将数值分配给有限组的离散类别,可以提高高效的数据存储和方便的非数值数据处理,同时又为数值保留有意义的名称。

示例性地,首先利用Python软件将含有的类别型特征筛选出来,然后采用Categorical将第一评估数据集中的类别型特征转换成数值性特征。

应理解,上述仅是以类别型特征处理采用Categorical为例进行描述,本申请实施例并不限于此。事实上,也可以采用其他方式代替Categorical。

可选地,在一种实现方式中,也可以通过以下任一方式对第一评估数据集进行类别型特征处理:序列号编码、独热编码、二进制编码来。

步骤S132:对数值型数据进行空值处理,得到空值处理后的数据,所述数值型数据包括第一评估数据集中原有的数值性数据以及步骤S131中经过所述类别型特征处理后的数值性数据。

换句话说,假设第一评估数据集中存在A、B、C三种特征(可分别通过三个字段表征)的数据集,其中特征A为非数值型特征,特征B和特征C为数值型特征,那么先将特征A从非数值型特征转换成数值型特征,再将A、B、C三种特征均做空值处理,得到空值处理后的数据。

本申请实施例对空值处理的具体方式不作具体限定。

在一种可能实现的方式中,可以利用Python软件将含有空值的数据行筛选出来,采用拉格朗日插值法对数据集空值进行插值处理,其插值函数如下:

其中,n表示数据集的总行数,x表示空值的位置,x

应理解,上述仅是以类别型特征处理采用拉格朗日插值法为例进行描述,本申请实施例并不限于此。事实上,也可以采用其他方式代替拉格朗日插值法。

可选地,在一种实现方式中,也可以通过牛顿插值法、最近邻算法(KNN插值法)及其改进方法来对数据集空值进行插值处理。对此,本申请实施例不做具体的限制。

步骤S133:对所述空值处理后的数据进行数据归一化处理,得到所述预处理后的数据。

本申请实施例对数据归一化处理的具体方式不作具体限定。

在一种可能实现的方式中,可以利用Python软件中的z-score标准化对所述空值处理后的数据进行归一化处理,其标准化函数如下:

其中,u代表所述空值处理后的数据的均值,σ代表所述空值处理后的数据的标准差,z表示归一化处理的结果,x表示所述空值处理后的数据,即未归一化处理前的数据。

应理解,上述仅是以类别型特征处理采用z-score标准化为例进行描述,本申请实施例并不限于此。事实上,也可以采用其他方式代替z-score标准化。

可选地,在一种实现方式中,也可以通过标准化min-max标准化、Sigmoid函数等对所述空值处理后的数据的进行数据归一化处理。对此,本申请实施例不做具体的限制。

其中,对所述空值处理后的数据进行数据归一化处理,可以避免数据样本特征之间的量纲影响和过拟合问题。

应理解,图6中的对第一评估数据集的预处理操作仅仅是为了便于本领域技术人员理解图2所示的数据容灾恢复方法中的S130,并非要将该预处理操作局限于仅适用于本申请实施例的第一评估数据集。同样地,图6中的预处理操作也可适用于本申请实施例中的第二评估数据集。对此,为了简洁,本申请实施例不再做赘述。

为便于本领域技术人员理解,以下结合图7中的具体例子描述本申请提供的数据容灾恢复方法。应理解,图7中的例子仅仅是为了便于本领域技术人员理解本申请实施例提供的数据容灾恢复方法,并非要将本申请实施例限于例示的具体场景。本领域技术人员根据图7中的例子,显然可以进行各种等价的修改或变化,这样的修改或变化也落入本申请实施例的范围内。

图7是本申请实施例提供的数据容灾恢复方法的一个示例流程图。可以理解,作为示例而非限定,图7中的方法可以应用于图1所示的应用场景中。图7中涉及到的相关术语或解释可以参考前文描述,下文不再赘述。如图7所示,具体包括以下步骤:

S710:节点故障预警。

示例性地,用户在配置开源大数据监控平台对异构大数据分布式集群系统进行监控后,可以监控分布式集群系统中的节点发生故障。当监控到所述分布式集群系统中的节点发生故障时,执行S720。

S720,节点判断故障类型是否为数据节点故障。

S730:在所述故障类型为数据节点故障类型时,获取第一评估数据集和第二评估数据集。

S740:对所述第一评估数据集进行预处理,得到预处理后的第一评估数据集,以及,对所述第二评估数据集进行预处理,得到预处理后的第二评估数据集。

关于数据预处理的过程可以参考前文步骤S130和图6中的描述,为了简洁,这里不再赘述。

S750:根据业务敏感度评估模型和预处理后的第一评估数据集,确定数据恢复优先级列表,并根据节点状态评估模型和和预处理后的第二评估数据集,确定节点恢复优先级列表。

关于确定数据恢复优先级列表的过程可以参考前文步骤S140和图4中的描述,为了简洁,这里不再赘述。

关于确定节点恢复优先级列表的过程可以参考前文步骤S150和图5中的描述,为了简洁,这里不再赘述。

S760:根据所述数据恢复优先级列表和所述节点恢复优先级列表,确定故障处理策略。

S770:执行所述故障处理策略。

其中,若所述故障类型并非数据节点故障类型时,即所述故障类型为名称节点故障时,将不会获取节点对应的数据,而是直接制定故障处理策略。对于名称节点故障的故障处理策略直接使所述名称节点退出安全模式。所述故障处理策略并不等同于上述S760中的故障处理策略。

可以理解的是,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。

对应于上文实施例所述的一种数据容灾恢复方法,图8示出了本申请实施例提供的数据容灾恢复装置的结构框图,为了便于说明,仅示出了与本申请实施例相关的部分。

请参照图8,所述数据容灾恢复装置800应用于分布式集群系统,所述分布式集群系统包括多个节点,所述装置800包括:确定模块810、获取模块820、预处理模块830、执行模块840。

在一些可能的实现方式中,确定模块810,用于在确定所述分布式集群系统中的节点发生故障时,确定故障类型和待恢复数据的范围。

在一些可能的实现方式中,所述获取模块820,用于在所述故障类型为数据节点故障类型时,获取第一评估数据集和第二评估数据集,其中所述第一评估数据集包括所述待恢复数据的业务敏感度特征和/或数据块访问特征,所述第二评估数据集包括所述多个节点中除故障数据节点以外的节点的状态参数;

在一些可能的实现方式中,所述预处理模块830,用于对所述获取模块820获取的所述第一评估数据集进行预处理,得到预处理后的第一评估数据集,以及,对所述第二评估数据集进行预处理,得到预处理后的第二评估数据集;

可选地所述预处理操作,包括:

类别型特征处理、空值处理、数据归一化处理,其中,所述类别型特征处理用于将非数值型数据转换为数值性数据。

在一些可能的实现方式中,所述确定模块810还用于根据所述预处理后的第一评估数据集以及业务敏感度评估模型,确定数据恢复优先级列表,其中,所述业务敏感度评估模型用于根据所述预处理后的第一评估数据集输出待恢复数据的优先级,所述数据恢复优先级列表用于表征待恢复数据的优先级次序;

可选地,所述待恢复数据的业务敏感度特征包括以下特征中的一项或多项:数据块所属业务系统的优先级特征、数据块所属功能模块的优先级特征、数据块的业务属性特征、数据块的时效性特征。

可选地,所述业务敏感度评估模型用于根据所述预处理后的第一评估数据集输出待恢复数据的优先级,包括:

所述业务敏感度评估模型用于根据待恢复数据的热度值特征以及所述数据块的业务敏感度特征输出待恢复数据的优先级;

所述待恢复数据的热度值特征是基于神经网络算法对数据块访问特征进行分析得到的。

可选地,所述数据块访问特征根据以下一项或多项参数确定:文件名称、文件操作类型、文件操作时间和文件操作权限。

在一些可能的实现方式中,所述确定模块810还用于根据所述预处理后的第二评估数据集以及节点状态评估模型,确定节点优先级列表,其中,所述节点状态评估模型用于根据所述预处理后的第二评估数据集对各个节点的实时状态进行评估并输出所述节点优先级列表,所述节点优先级列表中包括至少一个节点,所述至少一个节点是所述多个节点中状态满足预设条件的节点,所述节点优先级列表用于表征所述至少一个节点的优先级次序;

可选地,所述节点状态评估模型用于根据所述预处理后的第二评估数据集对各个节点的实时状态进行评估,并输出所述节点优先级列表,包括:

所述节点状态评估模型用于根据各个节点的状态参数以及各个节点的历史状态评估值,确定所述节点优先级列表;

其中,所述状态参数包括以下参数中的一项或多项:CPU利用率、内存使用率、磁盘I/O使用率、网络带宽使用率、命令响应时间、命令队列长度和磁盘使用率。

在一些可能的实现方式中,所述确定模块810还用于根据所述数据恢复优先级列表和所述节点优先级列表,确定故障处理策略,所述故障处理策略是指:按照所述数据恢复优先级列表,将待恢复数据依次发送至所述至少一个节点。

在一些可能的实现方式中,所述执行模块840还用于执行所述故障处理策略。

可选地,所述执行所述故障处理策略,包括:

按照所述待恢复数据的优先级次序和所述至少一个节点的优先级次序,将所述待恢复数据依次发送至所述至少一个节点进行处理。

可选地,在按照所述待恢复数据的优先级次序和所述至少一个节点的优先级次序,将所述待恢复数据依次发送至所述至少一个节点进行处理之后,所述方法还包括:

如果所述待恢复数据中还存在剩余数据,将所述剩余数据发送至所述至少一个节点中已完成数据处理的节点,其中,所述剩余数据是指所述待恢复数据中未被所述至少一个节点处理的数据。

应理解,根据本申请实施例的一种数据容灾恢复装置,可对应前述方法实施例,并且所述数据容灾恢复装置中的各个模块的上述和其它管理操作和/或功能分别为了实现前述方法实施例中的方法的相应步骤,因此也可以实现前述方法实施例中的有益效果,为了简洁,这里不作赘述。

图9为本申请实施例提供的数据容灾恢复的结构示意图。如图9所示,该装置900包括:至少一个处理器90(图9中仅示出一个)处理器、存储器91以及存储在所述存储器91中并可在所述至少一个处理器90上运行的计算机程序92,所述处理器90执行所述计算机程序92时用于实现上述任意各个用于数据容灾恢复的方法实施例(比如图2中的方法至图7中的方法)中的步骤。

所述装置900可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。该数据容灾恢复的装置可包括,但不仅限于,处理器90、存储器91。本领域技术人员可以理解,图9仅仅是数据容灾恢复的装置900的举例,并不构成对装置900的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备等。

所称处理器90可以是中央处理单元(Central Processing Unit,CPU),该处理器90还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

所述存储器91在一些实施例中可以是所述装置900的内部存储单元,例如数据容灾恢复的装置900的硬盘或内存。所述存储器91在另一些实施例中也可以是所述装置900的外部存储设备,例如所述装置900上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器91还可以既包括所述装置900的内部存储单元也包括外部存储设备。所述存储器91用于存储操作系统、应用程序、引导装载程序(Boot Loader)、数据以及其他程序等,例如所述计算机程序的程序代码等。所述存储器91还可以用于暂时地存储已经输出或者将要输出的数据。

需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。

本申请实施例提供了一种计算机程序产品,当计算机程序产品在移动终端上运行时,使得移动终端执行时实现可实现上述各个方法实施例中的步骤。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

在本申请所提供的实施例中,应该理解到,所揭露的装置/网络设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/网络设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

技术分类

06120115635789