[发明专利]一种日志压缩方法、装置、电子设备及存储介质在审
申请号: | 202011539773.9 | 申请日: | 2020-12-23 |
公开(公告)号: | CN112559465A | 公开(公告)日: | 2021-03-26 |
发明(设计)人: | 张广艳;魏钧宇;郑伟民 | 申请(专利权)人: | 清华大学 |
主分类号: | G06F16/174 | 分类号: | G06F16/174;G06F16/18 |
代理公司: | 北京路浩知识产权代理有限公司 11002 | 代理人: | 杨明月 |
地址: | 100084 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 日志 压缩 方法 装置 电子设备 存储 介质 | ||
本发明提供一种日志压缩方法、装置、电子设备及存储介质,该方法包括:将日志文件分为日志头和日志体,计算所述日志头中的时间数据的差分值,得到日志头时间差分值;通过预训练前缀树对所述日志体进行匹配,得到所述日志体匹配的日志模板编号和日志变量;将所述日志模板编号对应的变量关联关系应用到所述日志变量上,得到所述日志变量的残差变量;将所述日志体匹配的日志模板编号、日志变量的残差变量和所述日志头时间差分值,通过弹性编码的方式进行编码,得到编码结果,根据所述编码结果得到日志压缩结果。能够有效提高日志的压缩率,同时压缩的时间开销较低。
技术领域
本发明涉及数据处理技术领域,尤其涉及一种日志压缩方法、装置、电子设备及存储介质。
背景技术
现代很多系统都会记录日志数据以完成错误诊断、用户行为建模、系统性能分析、潜在安全风险预警等功能。随着系统规模的扩大,相应的日志数据的规模也在迅速增长,在一些情况下,系统日志的规模甚至达每日PB量级。由于错误的出现具有隐蔽性和滞后性的特点(往往在异常发生数天甚至数周之后才会出现实际错误),程序员在完成错误诊断的过程中往往需要查阅很早以前的日志。同时,出于审计的需要,相关法律规定日志数据需要保存180天。所以,在每日产生PB量级规模的日志数据的前提下,长时间保存这些日志数据通常需要耗费较大规模的系统资源和成本开销。
为了降低存储成本,一个常用的思路便是针对这些日志进行压缩,通用的无损压缩方法比如lzma、gzip等都能够识别字节层级的冗余,但是并不能结合日志数据本身的特点(比如日志往往由结构化的语句输出,每一次输出时只有变量部分不同)来实现日志压缩。针对日志数据,有一些之前的工作会首先提取输出日志的结构化语句(本发明称之为日志模板),并针对日志模板和变量做分别处理。但是遗憾的是这样的一些方法,基本都是围绕用户系统或小规模系统日志而设计的,在大规模系统上并不适用。一方面,由于没有考虑到大规模系统日志的特点(变量众多,单条日志信息量巨大等),这些日志专用压缩方案的压缩率并不理想,在一些情况下,甚至比通用的方法还要差;另一方面,由于没有考虑到日志的PB级规模,这些方法的实现通常过于低效,无法满足实际的生产需求。
因此,如何更好的实现日志存储,已经成为业界亟待解决的问题。
发明内容
本发明提供一种日志压缩方法、装置、电子设备及存储介质,用以解决现有技术中不能有效实现日志压缩的问题。
本发明提供一种日志压缩方法,包括:
将日志文件分为日志头和日志体,计算所述日志头中的时间数据的差分值,得到日志头时间差分值;
通过预训练前缀树对所述日志体进行匹配,得到所述日志体匹配的日志模板编号和日志变量;
将所述日志模板编号对应的变量关联关系应用到所述日志变量上,得到所述日志变量的残差变量;
将所述日志体匹配的日志模板编号、日志变量的残差变量和所述日志头时间差分值,通过弹性编码的方式进行编码,得到编码结果,根据所述编码结果得到日志压缩结果。
根据本发明提供的一种日志压缩方法,在所述通过预训练前缀树对所述日志体进行匹配的步骤之前,所述方法还包括:
获取日志样本,将所述日志样本分为日志头样本和日志体样本;
根据所述日志体样本构建日志前缀树,并得到日志模板;
通过所述日志模板提取每个日志模板对应的样本变量,根据所述样本变量,通过枚举的方式,确定每个日志模板的变量关联关系。
根据本发明提供的一种日志压缩方法,根据所述日志体样本构建日志前缀树,并得到日志模板的步骤,具体包括:
根据所述日志体样本的日志长度,构建前缀树的内部节点;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011539773.9/2.html,转载请声明来源钻瓜专利网。