电子装置、系统日志聚类分析结果的评价方法及存储介质与流程

文档序号:17989274发布日期:2019-06-22 00:39阅读:181来源:国知局
电子装置、系统日志聚类分析结果的评价方法及存储介质与流程
本发明涉及通信
技术领域
,尤其涉及一种电子装置、系统日志聚类分析结果的评价方法及存储介质。
背景技术
:软件产品在用户操作后,会产生大量的系统日志,这些系统日志记录了登录信息、操作信息等,对系统日志进行聚类分析能够获取深度的信息,更方便管理人员对软件产品进行管理。目前,研究人员已经在关注在spark平台上如何实现各种机器学习和数据挖掘并行化算法设计,在实际应用中由于技术的限制,在spark平台对系统日志进行聚类分析时,无法提供统一的标准来评价聚类分析的效果,而只能依靠人工来分析,使得在spark平台对系统日志的聚类分析效率低,工作量大且不准确。技术实现要素:本发明的目的在于提供一种电子装置、系统日志聚类分析结果的评价方法及存储介质,旨在快速、准确地对聚类分析的效果进行评价,减少工作量。为实现上述目的,本发明提供一种电子装置,所述电子装置包括存储器及与所述存储器连接的处理器,所述存储器中存储有可在所述处理器上运行的处理系统,所述处理系统被所述处理器执行时实现如下步骤:获取各网站的系统日志,以预定的第一时间长度的滑动窗口依次截取系统日志,根据所提取的系统日志中的用户信息及url的操作信息统计得到每一用户在该第一时间长度内的url操作次数;将每一用户在预定的第二时间长度内的url操作次数作为一条记录数据,以对应的用户名及时间标识作为唯一标识对每条记录数据进行标识,并在spark平台上输入每条记录数据及每条记录数据对应的唯一标识,所述第二时间长度大于或等于第一时间长度,且所述第二时间长度为第一时间长度的整数倍;预定聚类数目的取值范围并获取聚类数目,基于该聚类数目及每条记录数据对应的唯一标识并调用k-means算法包对输入的记录数据进行聚类分析;调用预先配置的db算法包计算针对每个聚类数目进行聚类分析对应的类的分类适确性指标,根据每个聚类数目进行聚类分析对应的分类适确性指标对聚类分析结果进行评价。优选地,所述基于该聚类数目及每条记录数据对应的唯一标识并调用k-means算法包对输入的记录数据进行聚类分析的步骤,具体包括:预定聚类数目的取值范围并获取聚类数目,将各个唯一标识对应的记录数据映射至空间中形成对应的数据点,选取与该聚类数目相等的数量的数据点作为各初始中心点;对于剩余的每一数据点,计算每一数据点分别到各初始中心点的点距离,将该数据点分到与初始中心点的点距离最近的初始中心点所在的类中,以聚成各初始中心点对应的各初始类;计算各初始类对应的质心,将该质心作为新中心点,对于除了新中心点外剩余的数据点,计算每一数据点分别到各新中心点的点距离,并将该数据点分到与新中心点的点距离最近的新中心点所在的类中,以聚成各新中心点对应的各中间类,返回执行计算各中间类对应的质心的步骤,直至中心点固定,得到该聚类数目对应的各个类。优选地,所述分类适确性指标的计算公式为:其中,k为聚类数目,wi表示类ci中的所有数据点到其中心点的平均距离,wj表示类ci中的所有数据点到类cj中心点的平均距离,cij表示类ci和类cj中心点之间的距离。优选地,所述处理系统被所述处理器执行时,还实现如下步骤:分析是否有用户在一第二时间长度内的url操作次数大于预定的url操作次数;若有用户在一第二时间长度内的url操作次数大于预定的url操作次数,则确定该用户的url操作为异常操作,将该url操作次数剔除。为实现上述目的,本发明还提供一种系统日志聚类分析结果的评价方法,所述系统日志聚类分析结果的评价方法包括:s1,获取各网站的系统日志,以预定的第一时间长度的滑动窗口依次截取系统日志,根据所提取的系统日志中的用户信息及url的操作信息统计得到每一用户在该第一时间长度内的url操作次数;s2,将每一用户在预定的第二时间长度内的url操作次数作为一条记录数据,以对应的用户名及时间标识作为唯一标识对每条记录数据进行标识,并在spark平台上输入每条记录数据及每条记录数据对应的唯一标识,所述第二时间长度大于或等于第一时间长度,且所述第二时间长度为第一时间长度的整数倍;s3,预定聚类数目的取值范围并获取聚类数目,基于该聚类数目及每条记录数据对应的唯一标识并调用k-means算法包对输入的记录数据进行聚类分析;s4,调用预先配置的db算法包计算针对每个聚类数目进行聚类分析对应的类的分类适确性指标,根据每个聚类数目进行聚类分析对应的分类适确性指标对聚类分析结果进行评价。优选地,所述步骤s3,具体包括:预定聚类数目的取值范围并获取聚类数目,将各个唯一标识对应的记录数据映射至空间中形成对应的数据点,选取与该聚类数目相等的数量的数据点作为各初始中心点;对于剩余的每一数据点,计算每一数据点分别到各初始中心点的点距离,将该数据点分到与初始中心点的点距离最近的初始中心点所在的类中,以聚成各初始中心点对应的各初始类;计算各初始类对应的质心,将该质心作为新中心点,对于除了新中心点外剩余的数据点,计算每一数据点分别到各新中心点的点距离,并将该数据点分到与新中心点的点距离最近的新中心点所在的类中,以聚成各新中心点对应的各中间类,返回执行计算各中间类对应的质心的步骤,直至中心点固定,得到该聚类数目对应的各个类。优选地,所述分类适确性指标的计算公式为:其中,k为聚类数目,wi表示类ci中的所有数据点到其中心点的平均距离,wj表示类ci中的所有数据点到类cj中心点的平均距离,cij表示类ci和类cj中心点之间的距离。优选地,所述步骤s1之后,还包括:分析是否有用户在一第二时间长度内的url操作次数大于预定的url操作次数;若有用户在一第二时间长度内的url操作次数大于预定的url操作次数,则确定该用户的url操作为异常操作,将该url操作次数剔除。优选地,所述预定聚类数目的取值范围为2-20。本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有处理系统,所述处理系统被处理器执行时实现上述的系统日志聚类分析结果的评价方法的步骤。本发明的有益效果是:本发明在spark平台上,利用scala语言实现db算法的代码,在每次对系统日志进行聚类分析后,直接调用db算法计算本次聚类的分类适确性指标,通过对多个聚类数目对应的分类适确性指标进行比较,分类适确性指标描述数据点的类内散度与各类中心的间距,分类适确性指标越小意味着类内距离越小同时类间距离越大,选择分类适确性指标最小的聚类数目作为最佳的聚类数目,本发明在spark平台上能够快速、准确地对聚类分析的效果进行评价,减少工作量。附图说明图1为本发明电子装置一实施例的硬件架构的示意图;图2为本发明系统日志聚类分析结果的评价方法第一实施例的流程示意图;图3为图2所示基于该聚类数目及每条记录数据对应的唯一标识并调用k-means算法包对输入的记录数据进行聚类分析的步骤的细化流程示意图;图4为本发明系统日志聚类分析结果的评价方法第二实施例的流程示意图。具体实施方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。参阅图1所示,是本发明电子装置一实施例的硬件架构的示意图,所述电子装置1是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。所述电子装置1可以是计算机、也可以是单个网络服务器、多个网络服务器组成的服务器组或者基于云计算的由大量主机或者网络服务器构成的云,其中云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。在本实施例中,电子装置1可包括,但不仅限于,可通过系统总线相互通信连接的存储器11、处理器12、网络接口13,存储器11存储有可在处理器12上运行的处理系统。需要指出的是,图1仅示出了具有组件11-13的电子装置1,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,存储器11包括内存及至少一种类型的可读存储介质。内存为电子装置1的运行提供缓存;可读存储介质可为如闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等的非易失性存储介质。在一些实施例中,可读存储介质可以是电子装置1的内部存储单元,例如该电子装置1的硬盘;在另一些实施例中,该非易失性存储介质也可以是电子装置1的外部存储设备,例如电子装置1上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。本实施例中,存储器11的可读存储介质通常用于存储安装于电子装置1的操作系统和各类应用软件,例如存储本发明一实施例中的处理系统的程序代码等。此外,存储器11还可以用于暂时地存储已经输出或者将要输出的各类数据。所述处理器12在一些实施例中可以是中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器12通常用于控制所述电子装置1的总体操作,例如执行与其他设备进行数据交互或者通信相关的控制和处理等。本实施例中,所述处理器12用于运行所述存储器11中存储的程序代码或者处理数据,例如运行处理系统等。所述网络接口13可包括无线网络接口或有线网络接口,该网络接口13通常用于在所述电子装置1与其他电子设备之间建立通信连接。本实施例中,网络接口13主要用于将电子装置1与其他终端设备连接,并从其他终端设备中获取各网站的系统日志,以进行聚类分析。所述处理系统存储在存储器11中,包括至少一个存储在存储器11中的计算机可读指令,该至少一个计算机可读指令可被处理器器12执行,以实现本申请各实施例的方法;以及,该至少一个计算机可读指令依据其各部分所实现的功能不同,可被划为不同的逻辑模块。在一实施例中,上述处理系统被所述处理器12执行时实现如下步骤:获取各网站的系统日志,以预定的第一时间长度的滑动窗口依次截取系统日志,根据所提取的系统日志中的用户信息及url的操作信息统计得到每一用户在该第一时间长度内的url操作次数;将每一用户在预定的第二时间长度内的url操作次数作为一条记录数据,以对应的用户名及时间标识作为唯一标识对每条记录数据进行标识,并在spark平台上输入每条记录数据及每条记录数据对应的唯一标识;预定聚类数目的取值范围并获取聚类数目,基于该聚类数目及每条记录数据对应的唯一标识并调用k-means算法包对输入的记录数据进行聚类分析;调用预先配置的db算法包计算针对每个聚类数目进行聚类分析对应的类的分类适确性指标,根据每个聚类数目进行聚类分析对应的分类适确性指标对聚类分析结果进行评价。进一步地,处理系统被所述处理器12执行时还实现如下步骤:预定聚类数目的取值范围并获取聚类数目,将各个唯一标识对应的记录数据映射至空间中形成对应的数据点,选取与该聚类数目相等的数量的数据点作为各初始中心点;对于剩余的每一数据点,计算每一数据点分别到各初始中心点的点距离,将该数据点分到与初始中心点的点距离最近的初始中心点所在的类中,以聚成各初始中心点对应的各初始类;计算各初始类对应的质心,将该质心作为新中心点,对于除了新中心点外剩余的数据点,计算每一数据点分别到各新中心点的点距离,并将该数据点分到与新中心点的点距离最近的新中心点所在的类中,以聚成各新中心点对应的各中间类,返回执行计算各中间类对应的质心的步骤,直至中心点固定,得到该聚类数目对应的各个类。进一步地,处理系统被所述处理器12执行时还实现如下步骤:所述分类适确性指标的计算公式为:其中,k为聚类数目,wi表示类ci中的所有数据点到其中心点的平均距离,wj表示类ci中的所有数据点到类cj中心点的平均距离,cij表示类ci和类cj中心点之间的距离。进一步地,处理系统被所述处理器12执行时还实现如下步骤:分析是否有用户在一第一时间长度内的url操作次数大于预定的url操作次数,若有用户在一第一时间长度内的url操作次数大于预定的url操作次数,则确定该用户的url操作为异常操作,将该url操作次数剔除。与现有技术相比,本发明在spark平台上,利用scala语言实现db算法的代码,在每次对系统日志进行聚类分析后,直接调用db算法计算本次聚类的分类适确性指标,通过对多个聚类数目对应的分类适确性指标进行比较,分类适确性指标描述数据点的类内散度与各类中心的间距,分类适确性指标越小意味着类内距离越小同时类间距离越大,选择分类适确性指标最小的聚类数目作为最佳的聚类数目,本发明在spark平台上能够快速、准确地对聚类分析的效果进行评价,减少工作量。如图2所示,图2为本发明系统日志聚类分析结果的评价方法一实施例的流程示意图,该系统日志聚类分析结果的评价方法包括以下步骤:步骤s1,获取各网站的系统日志,以预定的第一时间长度的滑动窗口依次截取系统日志,根据所提取的系统日志中的用户信息及url的操作信息统计得到每一用户在该第一时间长度内的url操作次数;其中,预定的第一时间长度例如为一小时、一天等。其中,系统日志中的用户信息及url的操作信息包括的用户名、客户端ip地址、服务器ip地址、请求的url、请求的url的时间点等信息,根据系统日志的生成时间并使用滑动窗口依次截取系统日志,对于所截取的系统日志,通过系统日志中的用户名区分不同的用户,通过请求的url统计得到url操作次数。步骤s2,将每一用户在预定的第二时间长度内的url操作次数作为一条记录数据,以对应的用户名及时间标识作为唯一标识对每条记录数据进行标识,并在spark平台上输入每条记录数据及每条记录数据对应的唯一标识;其中,预定的第二时间长度大于或等于第一时间长度,且第二时间长度为第一时间长度的整数倍。若第二时间长度等于第一时间长度,则一条记录数据为一维的数据;若第二时间长度大于第一时间长度,则一条记录数据为多维的数据,例如第一时间长度为一小时,第二时间长度为一天,或者第一时间长度为一天,第二时间长度为一周。在一具体实例中,若滑动窗口的第一时间长度为一天,第二时间长度为一周,若下表1所示:x_c_usernamelog_weekw_sunw_monw_tuesw_wedw_thurw_friw_satuser0134234434554465655455288user022332332333432345555166表1其中,“x_c_username”为用户名,“log_week”为时间标识(表1中为第34周),x_c_username+log_week是唯一标识,剩余的是用户一周中每天的url操作次数。每个唯一标识对应的一条记录数据可以是一维的或者多维的,维度的取值主要取决于在实际应用中挖掘的信息的深度及计算复杂度,维度越多则越能深度挖掘,但是计算也越复杂,本实施例的维度的取值在这两者间平衡即可。步骤s3,预定聚类数目的取值范围并获取聚类数目,基于该聚类数目及每条记录数据对应的唯一标识并调用k-means算法包对输入的记录数据进行聚类分析;其中,预定聚类数目的取值范围优选为2类至20类。在spark平台上输入每条记录数据及每条记录数据对应的唯一标识,然后调用k-means算法包对输入的记录数据进行聚类分析。在一实施例中,如图3所示,进行聚类分析的步骤具体包括:预定聚类数目的取值范围并获取聚类数目,将各个唯一标识对应的记录数据映射至空间中形成对应的数据点,选取与该聚类数目相等的数量的数据点作为各初始中心点。例如,对于聚类数目为2类的聚类分析,在将各个唯一标识对应的记录数据映射至空间中形成对应的数据点后,随机选择2个数据点为初始中心点,初始中心点为初始类的中心;对于剩余的每一数据点,计算每一数据点分别到各初始中心点的点距离,将该数据点分到与初始中心点的点距离最近的初始中心点所在的类中,当将所有数据点分到对应的类中后,聚成各初始中心点对应的各初始类;计算各初始类对应的质心,将该质心作为新中心点,对于除了新中心点外剩余的数据点,计算每一数据点分别到各新中心点的点距离,并将该数据点分到与新中心点的点距离最近的新中心点所在的类中,以聚成各新中心点对应的各中间类,返回执行计算各中间类对应的质心的步骤,直至中心点固定,得到该聚类数目对应的各个类。通过上面的描述可以看出,聚类分析是一个不断迭代的过程,首先选取初始中心点,然后对所有数据进行分类,通过计算各初始类对应的质心对类的中心点不断进行调整,通过不断迭代寻找最佳的中心点,使得类内的数据点的相似性最大,类间数据点的相似性最小。步骤s4,调用预先配置的db算法包计算针对每个聚类数目进行聚类分析对应的类的分类适确性指标,根据每个聚类数目进行聚类分析对应的分类适确性指标对聚类分析结果进行评价。其中,在spark平台上预先通过scala语言实现db(davies-bouldinindex,分类适确性指标)算法包的配置,在对每个聚类数目进行聚类分析后,可以直接调用预先配置的db算法包计算针对每个聚类数目进行聚类分析对应的类的分类适确性指标。在一实施例中,分类适确性指标的计算公式为:其中,k为聚类数目,wi表示类ci中的所有数据点到其中心点的平均距离,wj表示类ci中的所有数据点到类cj中心点的平均距离,cij表示类ci和类cj中心点之间的距离。在计算得到针对每一聚类数目的分类适确性指标后,分析分类适确性指标的大小,从上述公式可以看出:分类适确性指标越小意味着类内距离越小同时类间距离越大。本实施例以分类适确性指标最小对应的聚类数目作为最终确定的聚类数目,例如聚类数目的取值范围为2类至20类,其中聚类数目为5类的分类适确性指标最小,为1,那么选择聚类数目为5类作为最佳的聚类数目。在一优选的实施例中,如图4所示,所述步骤s1之后,还包括:步骤s10,分析是否有用户在一第二时间长度内的url操作次数大于预定的url操作次数;步骤s20,若有用户在一第一时间长度内的url操作次数大于预定的url操作次数,则确定该用户的url操作为异常操作,将该url操作次数剔除。其中,一般来说,用户在第二时间长度内的url操作次数会有相应的取值范围,即该url操作次数不会超过生物极限值(即用户在第二时间长度内不停止地进行url操作),例如每天或者每周的url的操作次数不会超过相应的预定的url操作次数,如果有每天或者每周的url的操作次数超出该预定的url操作次数,那么视为异常的url操作。这些异常的url的操作次数对应的记录数据映射至空间中后,与正常的数据点之间的距离较大,定义为离群点。在进行聚类分析前,找出离群点并剔除,能够得到更好的聚类效果。本发明在spark平台上,利用scala语言实现db算法的代码,在每次对系统日志进行聚类分析后,直接调用db算法计算本次聚类的分类适确性指标,通过对多个聚类数目对应的分类适确性指标进行比较,分类适确性指标描述数据点的类内散度与各类中心的间距,分类适确性指标越小意味着类内距离越小同时类间距离越大,选择分类适确性指标最小的聚类数目作为最佳的聚类数目,本发明在spark平台上能够快速、准确地对聚类分析的效果进行评价,减少工作量。本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有处理系统,所述处理系统被处理器执行时实现上述的系统日志聚类分析结果的评价方法的步骤。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的
技术领域
,均同理包括在本发明的专利保护范围内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1