一种存储系统操作日志的聚合方法及相关装置与流程

文档序号:16880515发布日期:2019-02-15 22:05阅读:184来源:国知局
一种存储系统操作日志的聚合方法及相关装置与流程

本申请涉及计算机技术领域,特别涉及一种存储系统操作日志的聚合方法、聚合装置、服务器以及计算机可读存储介质。



背景技术:

目前在分布式对象存储中,对存储数据进行操作会得到相应的操作日志,包括用户级操作日志和桶级操作日志。通过对操作日志的追溯功能,可以方便用户对一段时间内用户或桶的数据操作进行追溯,以便对数据进行恢复。在分布式存储系统中只要开始记录分布式对象存储的操作日志,就会不断记录分布式存储的操作日志,并且系统一般以小时为单位对日志数据进行聚合,当系统的并发流量不断增多时,按照小时为单位的聚合方式,会使单个聚合点的数据过大,影响系统的运行性能。

现有技术中,为了解决聚合点数据过多的问题,一般都是系统管理人员按照经验对数据进行删除操作或保留操作,分布式存储系统无法自主、自动的对日志数据进行选择。但是,在无人值守的时候,就缺失了对分布式存储系统的操作日志进行删除的操作,操作日志随着时间推移会保存过多,影响存储系统性能。并且,为了删除存储系统中的操作日志必须要管理人员进行操作,增加了分布式存储系统的维护成本,还无法避免人为操作的错误,降低分布式存储系统的可靠性。

因此,如何使分布式存储系统的操作日志在聚合过程中自动进行删除是本领域技术人员关注的重点问题。



技术实现要素:

本申请的目的是提供一种存储系统操作日志的聚合方法、聚合装置、服务器以及计算机可读存储介质,通过将日志聚合分布在循环列表的聚合点循环进行日志聚合,当循环到已进行日志聚合的聚合点时,只需要将原有的操作日志进行删除,再进行日志聚合,实现了操作日志的自动删除,避免了人工进行操作,提高了存储系统的可靠性。

为解决上述技术问题,本申请提供一种存储系统操作日志的聚合方法,包括:

根据聚合方式确定聚合点数量,根据所述聚合点数量构造聚合点的循环列表;

根据所述聚合方式依次对所述循环列表内的聚合点循环进行日志聚合;

当循环到已进行日志聚合的聚合点时,将所述聚合点的操作日志进行删除,对删除操作日志的聚合点进行日志聚合。

可选的,根据聚合方式确定聚合点数量,根据所述聚合点数量构造聚合点的循环列表,包括:

对所述聚合方式进行特征数据采集,得到聚合特征数据;

根据聚合点数量机器学习模型对所述聚合特征数据进行样本计算,得到所述聚合点数量,根据所述聚合点数量构造聚合点的循环列表;

其中,所述聚合点数量机器学习模型是根据日志聚合样本进行训练得到的。

可选的,根据聚合方式确定聚合点数量,根据所述聚合点数量构造聚合点的循环列表,包括:

获取系统硬件资源,根据所述系统硬件资源和所述聚合方式确定聚合点数量,根据所述聚合点数量构造聚合点的循环列表。

可选的,还包括:

获取系统实时硬件资源;

根据所述实时硬件资源对所述循环列表的聚合点数量进行动态调整。

本申请还提供一种存储系统操作日志的聚合装置,包括:

循环列表构造模块,用于根据聚合方式确定聚合点数量,根据所述聚合点数量构造聚合点的循环列表;

日志聚合模块,用于根据所述聚合方式依次对所述循环列表内的聚合点循环进行日志聚合;

日志删除模块,用于当循环到已进行日志聚合的聚合点时,将所述聚合点的操作日志进行删除,对删除操作日志的聚合点进行日志聚合。

可选的,所述循环列表构造模块,包括:

聚合特征获取模块,用于对所述聚合方式进行特征数据采集,得到聚合特征数据;

机器学习计算模块,用于根据聚合点数量机器学习模型对所述聚合特征数据进行样本计算,得到所述聚合点数量,根据所述聚合点数量构造聚合点的循环列表;其中,所述聚合点数量机器学习模型是根据日志聚合样本进行训练得到的。

可选的,所述循环列表构造模块,具体用于获取系统硬件资源,根据所述系统硬件资源和所述聚合方式确定聚合点数量,根据所述聚合点数量构造聚合点的循环列表。

可选的,还包括:

实时硬件获取模块,用于获取系统实时硬件资源;

动态调整模块,用于根据所述实时硬件资源对所述循环列表的聚合点数量进行动态调整。

本申请还提供一种服务器,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如上所述的聚合方法的步骤。

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

本申请所提供的一种存储系统操作日志的聚合方法,包括:根据聚合方式确定聚合点数量,根据所述聚合点数量构造聚合点的循环列表;根据所述聚合方式依次对所述循环列表内的聚合点循环进行日志聚合;当循环到已进行日志聚合的聚合点时,将所述聚合点的操作日志进行删除,对删除操作日志的聚合点进行日志聚合。

通过将操作日志的聚合操作分布在多个聚合点内,每个聚合点都平均承担了操作日志的数据存储,并且聚合点在存储系统内的数量是有限的,所以可以按照聚合点的循环列表对循环列表内的聚合点循环进行日志聚合,当循环到已经执行日志聚合的聚合点时,将该聚合点原有的操作日志进行删除再进行日志聚合,也就是每次对聚合点进行新的日志聚合操作时,后续的日志聚合会对之前的操作日志的数据进行覆盖删除,进而实现操作日志的自动删除,避免人工进行删除操作,降低存储系统的维护成本,提高存储系统的可靠性。

本申请还提供一种存储系统操作日志的聚合装置、服务器以及计算机可读存储介质,具有以上有益效果,在此不做赘述。

附图说明

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

图1为本申请实施例所提供的一种存储系统操作日志的聚合方法的流程图;

图2为本申请实施例所提供的一种存储系统操作日志的聚合装置的结构示意图。

具体实施方式

本申请的核心是提供一种存储系统操作日志的聚合方法、聚合装置、服务器以及计算机可读存储介质,通过将日志聚合分布在循环列表的聚合点循环进行日志聚合,当循环到已进行日志聚合的聚合点时,只需要将原有的操作日志进行删除,再进行日志聚合,实现了操作日志的自动删除,避免了人工进行操作,提高了存储系统的可靠性。

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

现有技术中,为了解决聚合点数据过多的问题,一般都是系统管理人员按照经验对数据进行删除操作或保留操作,分布式存储系统无法自主、自动的对日志数据进行选择。但是,在无人值守的时候,就缺失了对分布式存储系统的操作日志进行删除的操作,操作日志随着时间推移会保存过多,影响存储系统性能。并且,为了删除存储系统中的操作日志必须要管理人员进行操作,增加了分布式存储系统的维护成本,还无法避免人为操作的错误,降低分布式存储系统的可靠性。

因此,本申请实施例提供一种存储系统操作日志的聚合方法,通过将操作日志的聚合操作分布在多个聚合点内,每个聚合点都平均承担了操作日志的数据存储,并且聚合点在存储系统内的数量是有限,所以可以按照聚合点的循环列表对循环列表内的聚合点循环进行日志聚合,当循环到已经执行日志聚合的聚合点时,将该聚合点原有的操作日志进行删除再进行日志聚合,也就是每次对聚合点进行新的日志聚合操作时,后续的日志聚合会对之前的操作日志的数据进行覆盖删除,进而实现操作日志的自动删除,避免人工进行删除操作,降低存储系统的维护成本,提高存储系统的可靠性。

请参考图1,图1为本申请实施例所提供的一种存储系统操作日志的聚合方法的流程图。

该方法可以包括:

s101,根据聚合方式确定聚合点数量,根据聚合点数量构造聚合点的循环列表;

本步骤旨在根据本实施例所应用的聚合方式确定具有有限数量聚合点的循环列表,以便后续的步骤可以通过该循环列表依次选择聚合点进行日志聚合。

其中,日志聚合或聚合是将散落在集群中各个机器上的日志,聚合在同一个机器上,为了将聚合的日志按照不同形式分类进行存放,防止所有的日志都单一的保存在一个聚合点之内,可以按照时间单位或阈值函数分布多个聚合点,再对每个聚合点分别进行聚合操作。例如,当按照时间单位进行聚合时,以每小时为一个聚合点,因此就可以将操作日志按照时间对应的聚合在每个小时的聚合点内,8点为一个聚合点,9点为一个聚合点,8点55分下发的操作日志应聚合在8点的聚合点内,9点至9点59分内下发的日志聚合在9点的聚合点内。

其中,可以具体根据threshold函数(阈值函数)分布多个聚合点。

因此,首先需要根据聚合方式确定聚合点数量,也就是如果以时间单位为聚合方式,设置24个聚合点,还是设置48个聚合点,或者是设置更多的聚合点数量。其中,聚合点数量的设置方式可以根据实际的应用需求进行设置,例如,系统硬件资源较多可以设置较少数量的聚合点,每个聚合点承载的聚合任务更多,或者系统硬件资源较少,就需要设置更多的聚合点,每个聚合点承载的聚合任务更少,将硬件资源的压力分布在更多的聚合点内,减少硬件资源的消耗。

然后,根据确定的聚合点数量构造出聚合点的循环列表,也就是包括了聚合点数量个聚合点oid(objectidentifier对象标识)的循环列表。例如,聚合点数量为8,那么循环列表中保存了从oid1、oid2到oid8的聚合点的对象标识,以便进行日志聚合时从这些oid中选择聚合点的对象标识,以便根据该对象标识在对应的聚合点进行日志聚合。

s102,根据聚合方式依次对循环列表内的聚合点循环进行日志聚合;

在步骤s101的基础上,本步骤旨在根据选定的聚合方式依次对循环列表内的聚合点进行日志聚合。也就是在数量固定的聚合点内循环选择聚合点,并对聚合点进行日志聚合。例如,有5个聚合点,分别是oid1、oid2、oid3、oid4、oid5,当oid1聚合完成时,对oid2进行日志聚合,当oid5聚合完成时,对oid1进行日志聚合。

其中,本实施例的日志聚合的方法可以采用现有技术提供的任意一种日志聚合方法,在此不做具体限定。

s103,当循环到已进行日志聚合的聚合点时,将聚合点的操作日志进行删除,对删除操作日志的聚合点进行日志聚合。

在步骤s102的基础上,本步骤旨在当循环到已进行日志聚合的聚合点时,将聚合点的操作日志进行删除,对删除操作日志的聚合点进行日志聚合。也就是当循环到已执行过聚合操作的聚合点时,日志聚合操作会将原有的操作日志进行覆盖删除,再进行日志聚合,实现了将操作日志进行自动删除。

可选的,本实施例中的步骤s101可以包括:

步骤一、对聚合方式进行特征数据采集,得到聚合特征数据;

步骤二、根据聚合点数量机器学习模型对聚合特征数据进行样本计算,得到聚合点数量,根据聚合点数量构造聚合点的循环列表;

其中,聚合点数量机器学习模型是根据日志聚合样本进行训练得到的。

本可选方案主要是通过机器学习的方法确定聚合点数量,进而根据该聚合点数量构造聚合点的循环列表。可以想到的是,本可选方案中的聚合点数量机器学习模型是先根据日志聚合的训练数据进行训练得到的,还应该包括对训练后的机器学习模型进行测试,以提高机器学习模型的准确率。

本可选方案中选用机器学习的方法确定聚合点数量,提高了聚合点数量的合适程度,将日志聚合任务分布在数量合适的聚合点中,提高日志聚合的效率以及资源占用率,最大化在日志聚合过程中的资源利用率。

可选的,本实施例中的步骤s101也可以包括:

获取系统硬件资源,根据系统硬件资源和聚合方式确定聚合点数量,根据聚合点数量构造聚合点的循环列表。

本可选方案主要是根据系统硬件资源确定聚合点数量,相比上一可选方案,本可选方案确定聚合点数量的步骤简单易于实施。

可选的,本实施例还可以包括:

步骤一、获取系统实时硬件资源;

步骤二、根据实时硬件资源对循环列表的聚合点数量进行动态调整。

本可选方案主要是在运行过程中,通过系统实时硬件资源对聚合点数量进行动态调整,以便当日志聚合的数据处理量波动时,对聚合点的数据量进行调整,提高日志聚合过程的处理效率和硬件资源利用率。

综上,本实施例通过将操作日志的聚合操作分布在多个聚合点内,每个聚合点都平均承担了操作日志的数据存储,并且聚合点在存储系统内的数量是有限,所以可以按照聚合点的循环列表对循环列表内的聚合点循环进行日志聚合,当循环到已经执行日志聚合的聚合点时,将该聚合点原有的操作日志进行删除再进行日志聚合,也就是每次对聚合点进行新的日志聚合操作时,后续的日志聚合会对之前的操作日志的数据进行覆盖删除,进而实现操作日志的自动删除,避免人工进行删除操作,降低存储系统的维护成本,提高存储系统的可靠性。

下面对本申请实施例提供的一种存储系统操作日志的聚合装置进行介绍,下文描述的一种存储系统操作日志的聚合装置与上文描述的一种存储系统操作日志的聚合方法可相互对应参照。

请参考图2,图2为本申请实施例所提供的一种存储系统操作日志的聚合装置的结构示意图。

该装置可以包括:

循环列表构造模块100,用于根据聚合方式确定聚合点数量,根据聚合点数量构造聚合点的循环列表;

日志聚合模块200,用于根据聚合方式依次对循环列表内的聚合点循环进行日志聚合;

日志删除模块300,用于当循环到已进行日志聚合的聚合点时,将聚合点的操作日志进行删除,对删除操作日志的聚合点进行日志聚合。

可选的,该循环列表构造模块100,包括:

聚合特征获取模块,用于对聚合方式进行特征数据采集,得到聚合特征数据;

机器学习计算模块,用于根据聚合点数量机器学习模型对聚合特征数据进行样本计算,得到聚合点数量,根据聚合点数量构造聚合点的循环列表;其中,聚合点数量机器学习模型是根据日志聚合样本进行训练得到的。

可选的,该循环列表构造模块100,具体可以用于获取系统硬件资源,根据系统硬件资源和聚合方式确定聚合点数量,根据聚合点数量构造聚合点的循环列表。

可选的,该装置还可以包括:

实时硬件获取模块,用于获取系统实时硬件资源;

动态调整模块,用于根据实时硬件资源对循环列表的聚合点数量进行动态调整。

本申请实施例还可以提供一种服务器,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如以上实施例所述的聚合方法的步骤。

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

该计算机可读存储介质可以包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

以上对本申请所提供的一种存储系统操作日志的聚合方法、聚合装置、服务器以及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1