CN103379136B - 一种日志采集数据压缩方法、解压缩方法及装置 - Google Patents
一种日志采集数据压缩方法、解压缩方法及装置 Download PDFInfo
- Publication number
- CN103379136B CN103379136B CN201210112487.3A CN201210112487A CN103379136B CN 103379136 B CN103379136 B CN 103379136B CN 201210112487 A CN201210112487 A CN 201210112487A CN 103379136 B CN103379136 B CN 103379136B
- Authority
- CN
- China
- Prior art keywords
- property value
- log collection
- value
- compressed encoding
- collection data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种日志采集数据压缩方法、解压缩方法及装置,包括:获取日志采集数据;并分别对日志采集数据中各属性字段的各属性值进行编码,得到与每个属性值对应的压缩编码;以及使用得到的压缩编码,替换日志采集数据中对应的属性值,得到压缩后的日志采集数据。采用本发明实施例提供的方案,减少了传输日志采集数据所需的网络带宽资源,以及减少了存储日志采集数据所需的存储资源。
Description
技术领域
本发明涉及通信技术领域中的网络日志采集技术领域,尤其涉及一种日志采集数据压缩方法、解压缩方法及装置。
背景技术
随着互联网的发展,根据用户的实际偏好进行业务优化和个性化信息服务已经成为业内的普遍共识。实际应用情况表明,采用个性化服务后,通常会带来超过20%的业务量提升。实现个性化服务的前提是获取用户的访问偏好信息,例如,可以通过在应用系统/Web页面中植入采集代码实现的。采集代码将用户访问网站的行为以日志形式记录,并发送到日志采集服务器,从而实现用户行为的汇总分析。这种偏好数据的获取方法的局限在于只能获取用户在一个或几个指定网站中的访问偏好,难以得到用户较为完整的互联网访问行为记录,进而限制了对用户的访问偏好分析的准确性和应用效果。此外,在应用系统/Web页面中植入代码进行访问网站的日志采集,会带来额外的开发和维护成本。
目前,现有技术中还提出一种从用户网络接入的网关设备上进行网络日志采集的方案。当用户使用2G/3G移动通讯网络,或使用PPPoE(point-to-point protocol overethemet)等协议连入有线网络后,可以由网关设备侧的网络日志服务器,从网关设备上获得用户的上网日志,例如,典型的日志信息包括:UID(User Identifier,用户标识)、URL(Uniform/Universal Resource Locator,统一资源定位符)、时间戳、以及其它属性字段等。这些日志信息汇总到日志采集服务器后,可用于分析用户偏好,实现业务优化和个性化服务。
由于网络中网关设备的数量较多,且分布不均的特点,用于从网关设备上获取网络日志的各网络日志服务器在物理上是分布式的,并需要将各自得到的 日志采集数据通过网络传送至日志采集服务器,由于日志采集数据的数据量较大,将日志采集数据传送至日志采集服务器则需要较高的网络带宽资源,且当日志采集数据在保存时,也需要较多的存储资源。
发明内容
本发明实施例提供一种日志采集数据压缩方法、解压缩方法及装置,用以解决现有技术中存在的传输日志采集数据所需的网络带宽资源较多,存储日志采集数据所需的存储资源较多的问题。
本发明实施例提供一种日志采集数据压缩方法,包括:
获取日志采集数据;
分别对所述日志采集数据中各属性字段的各属性值进行编码,得到与每个属性值对应的压缩编码;
使用得到的所述压缩编码,替换所述日志采集数据中对应的属性值,得到压缩后的日志采集数据。
本发明实施例还提供一种日志采集数据解压缩方法,包括:
获取压缩后的日志采集数据,和未压缩的日志采集数据中各属性字段的各属性值的编码表;
使用所述编码表中与各压缩编码分别对应的属性值,替换所述压缩后的日志采集数据中对应的压缩编码,得到解压缩后的日志采集数据。
本发明实施例还提供一种日志采集数据压缩装置,包括:
第一获取单元,用于获取日志采集数据;
第一压缩处理单元,用于分别对所述日志采集数据中各属性字段的各属性值进行编码,得到与每个属性值对应的压缩编码;
第二压缩处理单元,用于使用得到的所述压缩编码,替换所述日志采集数据中对应的属性值,得到压缩后的日志采集数据。
本发明实施例还提供一种日志采集数据解压缩装置,包括:
第二获取单元,用于获取压缩后的日志采集数据,和未压缩的日志采集数据中各属性字段的各属性值的编码表;
解压缩单元,用于使用所述编码表中与各压缩编码分别对应的属性值,替换所述压缩后的日志采集数据中对应的压缩编码,得到解压缩后的日志采集数据。
本发明有益效果包括:
本发明实施例提供的方法中,在对日志采集数据进行压缩时,首先分别对日志采集数据中各属性字段的各属性值进行编码,得到与每个属性值对应的压缩编码,然后使用得到的压缩编码,替换日志采集数据中对应的属性值,得到压缩后的日志采集数据。相应的,在解压缩时,可以使用未压缩的日志采集数据中各属性字段的各属性值的编码表中,与各压缩编码分别对应的属性值,替换压缩后的日志采集数据中对应的压缩编码,得到解压缩后的日志采集数据。由于压缩编码的数据量小于对应的属性值的数据量,所以,采用本发明实施例提供的日志采集数据的压缩方法,通过压缩能够减少日志采集数据的数据量,从而使得在保存时减少所需的存储资源,在传输时可以减少所需的网络带宽资源,并且提高传输效率。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明实施例提供的日志采集数据压缩方法的流程图;
图2为本发明实施例提供的日志采集数据解压缩方法的流程图;
图3为本发明实施例1中提供的对日志采集数据中属性字段的属性值进行编码的处理流程图;
图4为本发明实施例1中建立的二叉树的结构示意图之一;
图5为本发明实施例1中建立的二叉树的结构示意图之二;
图6为本发明实施例1中建立的二叉树的结构示意图之三;
图7为本发明实施例1中建立的二叉树的结构示意图之四;
图8为本发明实施例1中建立的二叉树的结构示意图之五;
图9为本发明实施例2中提供的日志采集数据解压缩方的流程图;
图10为本发明实施例3中提供的日志采集数据压缩装置的结构示意图;
图11为本发明实施例4中提供的日志采集数据解压缩装置的结构示意图。
具体实施方式
为了给出减少传输日志采集数据所需的网络带宽资源,以及减少存储日志采集数据所需的存储资源的实现方案,本发明实施例提供了一种日志采集数据压缩方法、解压缩方法及装置,以下结合说明书附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。并且在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本发明实施例提供一种日志采集数据压缩方法,如图1所示,包括:
步骤101、获取日志采集数据。
步骤102、分别对日志采集数据中各属性字段的各属性值进行编码,得到与每个属性值对应的压缩编码。
步骤103、使用得到的压缩编码,替换日志采集数据中对应的属性值,得到压缩后的日志采集数据。
相应的,本发明实施例还提供一种日志采集数据解压缩方法,如图2所示,包括:
步骤201、获取压缩后的日志采集数据,和未压缩的日志采集数据中各属性字段的各属性值的编码表。
步骤202、使用该编码表中与各压缩编码分别对应的属性值,替换压缩后的日志采集数据中对应的压缩编码,得到解压缩后的日志采集数据。
下面结合附图,用具体实施例对本发明提供的方法及装置进行详细描述。
实施例1:
本发明实施例1中针对上述日志采集数据压缩方法,提出一种具体实施方式。
在上述步骤101中获取的日志采集数据可以为一段时间内,采用日志处理规则,对从网关设备获取的原始日志数据进行处理得到的。
日志采集数据可以通过一定格式的平面文件保存,其中每条记录可以对应一个用户标识,并包括该用户标识对应的各属性字段的属性值,例如,各属性字段可以包括:接入点名称、归属基站ID、IP、URL等。
在获取到日志采集数据后,即可以执行上述步骤102,分别对日志采集数据中各属性字段的各属性值进行编码,得到与每个属性值对应的压缩编码。
例如,以URL域名字段为例,日志采集数据中URL域名字段的属性值可以包括很多具体的URL域名,如“WWW.sina.com”、“WWW.qq.com”、“WWW.sohu.com”、“WWW.163.com”、“www.baidu.com”、“WWW.google.cn”和“WWW.3g.cn”等,上述步骤102即针对每个具体的属性值进行编码,得到与该属性值对应的压缩编码,且该压缩编码的数据量小于该对应属性值的数据量。
具体可以采用现有技术中的各种编码方式,例如,比较简单的,针对一个属性字段的各属性值的编码,可以根据该属性字段的各属性值的数量,采用足够数量的比特位进行二进制编码,以上述7个属性值为例,可以采用4个比特位进行二进制编码,每个编码对应一个属性值。
较佳的,考虑到在日志采集数据中,每个属性值一般均具有重复出现的特性,即针对不同的用户标识,同一属性字段的属性值可能是相同的,且一个属性字段的各属性值分别在日志采集数据中出现的次数,通常符合幂率分布的特性,所以,针对一个属性字段的各属性值,可以根据各属性值在日志采集数据中出现的次数,对该属性字段的各属性值进行编码,得到与各属性值分别对应 的压缩编码,并且,优先使用数据量小的压缩编码,并保证出现的次数大的属性值对应的压缩编码的数据量,不大于出现的次数小的属性值对应的压缩编码的数据量,从而使得后续得到的压缩后的日志采集数据的数据量更少。
具体的,本发明实施例1中提出如下一种具体编码处理方式,针对日志采集数据中的一个属性字段的各属性值,如图3所示,具体采用如下方式进行编码:
步骤301、分别统计该属性字段的各属性值在日志采集数据中出现的次数。
后续可以根据该属性字段的各属性值在日志采集数据中出现的次数,构建二叉树,其中,该二叉树中的各叶子节点,分别对应表征各属性值在日志采集数据中出现的次数,且该二叉树中的父节点表征的数值,为该父节点的两个子节点表征数值的和值,且该二叉树中每个节点表征的数值,不小于该节点所属等级的下一级节点表征的数值。
具体的,可以采用如下步骤实现:
步骤302、首先按照出现次数从低到高的顺序,将各属性值出现的次数进行排列,相同次数的可以随机确定先后顺序。
步骤303、然后从当前排列的各数值(包括各属性值出现的次数,和后续计算得到和值)中,选择最小的两个值,作为二叉树的两个节点,且这两个节点分别对应表征这两个值。
步骤304、将这两个数值的和值,作为这两个节点的父节点,该父节点表征该和值。
步骤305、将所选的最小的这两个值排除,然后判断排列的各数值中是否存在剩余的数值(可以是属性值对应的出现次数,也可以是已建立的父节点表征的数值),如果存在,进入步骤306,如果不存在,进入步骤307。
步骤306、按照数值从低到高的顺序,将剩余的数值和最新建立的该父节点表征的和值进行排列,作为当前排列的各数值,然后进入步骤303。
步骤307、将最新建立的该父节点作为该二叉树的根节点,完成二叉树的 构建。
下面以5个属性值分别出现的次数为1、2、3、3和5为例,对采用上述步骤301-步骤306所示的二叉树的构建进行举例描述:
首先选择最小的次数1和次数2作为二叉树的两个节点(即叶子节点),并将次数1和次数2的和值3,作为次数1对应节点和次数2对应节点的父节点,如图4所示;
排除次数1和次数2后,从剩余次数3、3和4,以及数值3(最新建立的父节点)中,选择最小的两个值,例如,选择次数3与数值3,并将次数3作为二叉树的一个节点(即叶子节点),并将与数值3的和值6,作为该次数3对应节点与数值3对应节点的父节点,如图5所示;
排除已建立对应节点的次数3和数值3,从剩余次数3和4,以及数值6(最新建立的父节点)中,选择最小的次数3和次数4,并将该次数3和次数4作为二叉树的两个节点(即叶子节点),并将该次数3和次数4的和值7,作为该次数3对应节点和次数4对应节点的父节点,如图6所示;
排除已建立对应节点的次数3和次数4,从剩余的数值6和数值7(最新建立的父节点)中,选择最小的两个值,即选择数值6和数值7,并将数值6和数值7的和值13,作为数值6对应节点与数值7对应节点的父节点,此时没有剩余的次数或数值,则最后建立的表征数值13的父节点,即为建立的二叉树的根节点,完成二叉树的建立,如图7所示。
从图7中可见,二叉树的各叶子节点分别对应表征次数1、2、3、3和4,且该二叉树中的每个节点表征的数值,不小于该节点所属等级的下一级节点表征的数值。
步骤308、在针对该属性字段建立对应的上述二叉树后,即可以根据该二叉树确定该属性字段的各属性值的压缩编码,具体为:
确定二叉树中叶子节点对应的属性值的压缩编码为,将从根节点到该叶子节点的路径所包括的各子树分别对应的弧值,进行排列得到的二进制编号;
其中,二叉树中节点的左子树的弧值为0,右子树的弧值为1;或者二叉树中节点的左子树的弧值为1,右子树的弧值为0。
以二叉树中节点的左子树的弧值为0,右子树的弧值为1为例,如图8所示,为图7所示的二叉树中各子树的弧值示意图,则可以确定次数4对应属性值的压缩编码为11,一个次数3对应属性值的压缩编码为10,另一个次数3对应属性值的压缩编码为01,次数2对应属性值的压缩编码为001,次数1对应属性值的压缩编码为000。
从中可见,采用上述编码方式对同一属性字段的各属性值进行编码后,出现次数多的属性值的压缩编码的数据量,不会大于出现次数少的属性值的压缩编码的数据量,从而使得后续压缩后的日志采集数据的数据量更少,从而进一步更有效的减少日志采集数据保存所需的存储资源,以及减少日志采集数据传送所需要的网络带宽资源,并且可以提高传送效率。
步骤309、在通过上述步骤301-步骤308的处理流程,对日志采集数据中各属性字段的各属性值进行编码后,即可以使用得到的压缩编码,替换日志采集数据中对应的属性值,得到压缩后的日志采集数据。
并且,为了后续解压缩的需要,还可以生成各属性值的编码表,编码表中携带了各属性值分别与对应压缩编码的对应关系。具体的,编码表中可以包括上述二叉树的信息,以及该二叉树的各叶子节点分别与各属性值的对应关系。
例如,编码表中包括与各压缩字段分别对应的二叉树,且每个二叉树中的各叶子节点,分别对应该二叉树对应属性字段的各属性值,且该二叉树中节点的左子树的弧值为0,右子树的弧值为1,或者该二叉树中节点的左子树的弧值为1,右子树的弧值为0。
当采用上述通过构建二叉树的方式进行编码时,编码表中可以直接包括构建的二叉树,和各叶子节点分别与对应属性值的对应关系,相比采用字典方式的编码表,包括二叉树的该编码表的数据量更少,从而能够在后续将编码表传送给日志采集服务器时,使用更少的网络带宽资源。
在对日志采集数据进行上述压缩后,可以保存该压缩后的日志采集数据和编码表;也可以向日志采集服务器发送该压缩后的日志采集数据和该编码表。
较佳的,在发送时,可以对该压缩后的日志采集数据和编码表,使用通用的压缩算法进行再次压缩后传输,例如,使用GZIP、RAR、ZIP或TAR等压缩算法。
实施例2:
针对本发明实施例1中提出的日志采集数据压缩方法,本发明实施例2中提出如下日志采集数据解压缩方法,如图9所示,包括:
步骤901、获取压缩后的日志采集数据,和未压缩的日志采集数据中各属性字段的各属性值的编码表。
其中,该编码表中包括与各压缩字段分别对应的二叉树,且每个二叉树中的各叶子节点,分别对应该二叉树对应属性字段的各属性值,且该二叉树中节点的左子树的弧值为0,右子树的弧值为1,或者该二叉树中节点的左子树的弧值为1,右子树的弧值为0。
步骤902、针对该压缩后的日志采集数据中的每个属性字段的每个压缩编码,具体采用如下方式确定该压缩编码对应的叶子节点:
查询该属性字段对应的二叉树,确定该属性字段的该压缩编码对应的叶子节点,其中,将从根节点到该对应的叶子节点的路径所包括的各子树分别对应的弧值,进行排列得到的二进制编号,与该压缩编码相同。
具体可以根据组成该压缩编码的各二进制数值从前到后的顺序,以及该二叉树中各子树的弧值,从该二叉树的根节点开始,对二叉树的节点路径进行查询,得到该压缩编码对应的叶子节点。
例如,以图8所示二叉树为例,针对压缩编码001,首先根据第一个二进制数值0,从根节点的左子树(左子树弧值为0)查询到数值6对应节点,然后根据第二个二进制数值0,从数值6对应节点的左子树查询到数值3对应节点,然后根据第三个二进制数值1,从数值3对应节点的右子树(右子树弧值 为1)查询到次数2对应的叶子节点,从而确定该压缩编码001对应的叶子节点为,次数2对应的叶子节点。
步骤903、查询编码表中叶子节点与属性值的对应关系,确定该压缩编码对应的叶子节点对应的属性值,将该属性值确定为该压缩编码对应的属性值。
步骤904、使用该压缩编码对应的属性值,替换该压缩后的日志采集数据中的该压缩编码。
在针对日志采集数据中的所有压缩编码,完成上述替换的处理流程后,得到解压缩后的日志采集数据,即未压缩的日志采集数据。
实施例3:
基于同一发明构思,根据本发明上述实施例提供的日志采集数据压缩方法,相应地,本发明实施例3还提供了一种日志采集数据压缩装置,该装置可应用于网络日志服务器中,其结构示意图如图10所示,具体包括:
第一获取单元1001,用于获取日志采集数据;
第一压缩处理单元1002,用于分别对所述日志采集数据中各属性字段的各属性值进行编码,得到与每个属性值对应的压缩编码;
第二压缩处理单元1003,用于使用得到的所述压缩编码,替换所述日志采集数据中对应的属性值,得到压缩后的日志采集数据。
进一步的,第一压缩处理单元1002,具体用于针对所述日志采集数据中的每个属性字段的各属性值,采用如下方式进行编码:
分别统计该属性字段的各属性值在所述日志采集数据中出现的次数;
根据各属性值在所述日志采集数据中出现的次数,对该属性字段的各属性值进行编码,得到与各属性值分别对应的压缩编码,其中,出现的次数大的属性值对应的压缩编码的数据量,不大于出现的次数小的属性值对应的压缩编码的数据量。
进一步的,第一压缩处理单元1002,具体用于根据各属性值在所述日志采集数据中出现的次数,构建二叉树,其中,所述二叉树中的各叶子节点,分别 对应表征各属性值在所述日志采集数据中出现的次数,且所述二叉树中的父节点表征的数值,为该父节点的两个子节点表征数值的和值,且所述二叉树中每个节点表征的数值,不小于该节点所属等级的下一级节点表征的数值;
确定所述二叉树中叶子节点对应的属性值的压缩编码为,将从根节点到该叶子节点的路径所包括的各子树分别对应的弧值,进行排列得到的二进制编号;
其中,所述二叉树中节点的左子树的弧值为0,右子树的弧值为1;或者所述二叉树中节点的左子树的弧值为1,右子树的弧值为0。
进一步的,还包括:
生成单元1004,用于生成该属性字段的各属性值的编码表,所述编码表中包括所述二叉树的信息,以及所述二叉树的各叶子节点分别与各属性值的对应关系。
实施例4:
基于同一发明构思,根据本发明上述实施例提供的日志采集数据解压缩方法,相应地,本发明实施例4还提供了一种日志采集数据解压缩装置,该装置可应用于网络日志服务器中,也可以应用于日志采集服务器中,其结构示意图如图11所示,具体包括:
第二获取单元1101,用于获取压缩后的日志采集数据,和未压缩的日志采集数据中各属性字段的各属性值的编码表;
解压缩单元1102,用于使用所述编码表中与各压缩编码分别对应的属性值,替换所述压缩后的日志采集数据中对应的压缩编码,得到解压缩后的日志采集数据。
进一步的,第二获取单元1101获取的所述编码表中包括与各压缩字段分别对应的二叉树,且每个二叉树中的各叶子节点,分别对应该二叉树对应属性字段的各属性值,且该二叉树中节点的左子树的弧值为0,右子树的弧值为1,或者该二叉树中节点的左子树的弧值为1,右子树的弧值为0;
解压缩单元1102,具体用于针对所述压缩后的日志采集数据中的每个属性字段的每个压缩编码,具体采用如下方式进行解压缩处理:
查询该属性字段对应的二叉树,确定该属性字段的该压缩编码对应的叶子节点,其中,将从根节点到该对应的叶子节点的路径所包括的各子树分别对应的弧值,进行排列得到的二进制编号,与该压缩编码相同;
使用该压缩编码对应的叶子节点对应的属性值,替换该压缩后的日志采集数据中的该压缩编码。
综上所述,本发明实施例提供的方案,包括:获取日志采集数据;并分别对日志采集数据中各属性字段的各属性值进行编码,得到与每个属性值对应的压缩编码;以及使用得到的压缩编码,替换日志采集数据中对应的属性值,得到压缩后的日志采集数据。采用本发明实施例提供的方案,减少了传输日志采集数据所需的网络带宽资源,以及减少了存储日志采集数据所需的存储资源。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种日志采集数据压缩方法,其特征在于,包括:
获取日志采集数据;
分别对所述日志采集数据中各属性字段的各属性值进行编码,得到与每个属性值对应的压缩编码;针对所述日志采集数据中的每个属性字段的各属性值,具体采用如下方式进行编码:分别统计该属性字段的各属性值在所述日志采集数据中出现的次数;根据各属性值在所述日志采集数据中出现的次数,对该属性字段的各属性值进行编码,得到与各属性值分别对应的压缩编码,其中,出现的次数大的属性值对应的压缩编码的数据量,不大于出现的次数小的属性值对应的压缩编码的数据量;
使用得到的所述压缩编码,替换所述日志采集数据中对应的属性值,得到压缩后的日志采集数据。
2.如权利要求1所述的方法,其特征在于,根据各属性值在所述日志采集数据中出现的次数,对该属性字段的各属性值进行编码,得到与各属性值分别对应的压缩编码,具体包括:
根据各属性值在所述日志采集数据中出现的次数,构建二叉树,其中,所述二叉树中的各叶子节点,分别对应表征各属性值在所述日志采集数据中出现的次数,且所述二叉树中的父节点表征的数值,为该父节点的两个子节点表征数值的和值,且所述二叉树中每个节点表征的数值,不小于该节点所属等级的下一级节点表征的数值;
确定所述二叉树中叶子节点对应的属性值的压缩编码为,将从根节点到该叶子节点的路径所包括的各子树分别对应的弧值,进行排列得到的二进制编号;
其中,所述二叉树中节点的左子树的弧值为0,右子树的弧值为1;或者所述二叉树中节点的左子树的弧值为1,右子树的弧值为0。
3.如权利要求2所述的方法,其特征在于,在确定所述二叉树中叶子节点对应的属性值的压缩编码之后,还包括:
生成该属性字段的各属性值的编码表,所述编码表中包括所述二叉树的信息,以及所述二叉树的各叶子节点分别与各属性值的对应关系。
4.一种日志采集数据解压缩方法,其特征在于,包括:
获取压缩后的日志采集数据,和未压缩的日志采集数据中各属性字段的各属性值的编码表;
使用所述编码表中与各压缩编码分别对应的属性值,替换所述压缩后的日志采集数据中对应的压缩编码,得到解压缩后的日志采集数据,其中,所述压缩编码为分别对所述日志采集数据中各属性字段的各属性值进行编码得到的,所述压缩编码为按照以下方式获得的:针对每一属性字段,分别统计该属性字段的各属性值在所述日志采集数据中出现的次数;根据各属性值在所述日志采集数据中出现的次数,对该属性字段的各属性值进行编码,得到与各属性值分别对应的压缩编码,其中,出现的次数大的属性值对应的压缩编码的数据量,不大于出现的次数小的属性值对应的压缩编码的数据量。
5.如权利要求4所述的方法,其特征在于,所述编码表中包括与各压缩字段分别对应的二叉树,且每个二叉树中的各叶子节点,分别对应该二叉树对应属性字段的各属性值,且该二叉树中节点的左子树的弧值为0,右子树的弧值为1,或者该二叉树中节点的左子树的弧值为1,右子树的弧值为0;
使用所述编码表中与各压缩编码分别对应的属性值,替换所述压缩后的日志采集数据中对应的压缩编码,具体包括:
针对所述压缩后的日志采集数据中的每个属性字段的每个压缩编码,具体采用如下方式进行解压缩处理:
查询该属性字段对应的二叉树,确定该属性字段的该压缩编码对应的叶子节点,其中,将从根节点到该对应的叶子节点的路径所包括的各子树分别对应的弧值,进行排列得到的二进制编号,与该压缩编码相同;
使用该压缩编码对应的叶子节点对应的属性值,替换该压缩后的日志采集数据中的该压缩编码。
6.一种日志采集数据压缩装置,其特征在于,包括:
第一获取单元,用于获取日志采集数据;
第一压缩处理单元,用于分别对所述日志采集数据中各属性字段的各属性值进行编码,得到与每个属性值对应的压缩编码;具体用于针对所述日志采集数据中的每个属性字段的各属性值,采用如下方式进行编码:分别统计该属性字段的各属性值在所述日志采集数据中出现的次数;根据各属性值在所述日志采集数据中出现的次数,对该属性字段的各属性值进行编码,得到与各属性值分别对应的压缩编码,其中,出现的次数大的属性值对应的压缩编码的数据量,不大于出现的次数小的属性值对应的压缩编码的数据量;
第二压缩处理单元,用于使用得到的所述压缩编码,替换所述日志采集数据中对应的属性值,得到压缩后的日志采集数据。
7.如权利要求6所述的装置,其特征在于,所述第一压缩处理单元,具体用于根据各属性值在所述日志采集数据中出现的次数,构建二叉树,其中,所述二叉树中的各叶子节点,分别对应表征各属性值在所述日志采集数据中出现的次数,且所述二叉树中的父节点表征的数值,为该父节点的两个子节点表征数值的和值,且所述二叉树中每个节点表征的数值,不小于该节点所属等级的下一级节点表征的数值;
确定所述二叉树中叶子节点对应的属性值的压缩编码为,将从根节点到该叶子节点的路径所包括的各子树分别对应的弧值,进行排列得到的二进制编号;
其中,所述二叉树中节点的左子树的弧值为0,右子树的弧值为1;或者所述二叉树中节点的左子树的弧值为1,右子树的弧值为0。
8.如权利要求7所述的装置,其特征在于,还包括:
生成单元,用于生成该属性字段的各属性值的编码表,所述编码表中包括所述二叉树的信息,以及所述二叉树的各叶子节点分别与各属性值的对应关系。
9.一种日志采集数据解压缩装置,其特征在于,包括:
第二获取单元,用于获取压缩后的日志采集数据,和未压缩的日志采集数据中各属性字段的各属性值的编码表;
解压缩单元,用于使用所述编码表中与各压缩编码分别对应的属性值,替换所述压缩后的日志采集数据中对应的压缩编码,得到解压缩后的日志采集数据,其中,所述压缩编码为分别对所述日志采集数据中各属性字段的各属性值进行编码得到的,所述压缩编码为按照以下方式获得的:针对每一属性字段,分别统计该属性字段的各属性值在所述日志采集数据中出现的次数;根据各属性值在所述日志采集数据中出现的次数,对该属性字段的各属性值进行编码,得到与各属性值分别对应的压缩编码,其中,出现的次数大的属性值对应的压缩编码的数据量,不大于出现的次数小的属性值对应的压缩编码的数据量。
10.如权利要求9所述的装置,其特征在于,所述第二获取单元获取的所述编码表中包括与各压缩字段分别对应的二叉树,且每个二叉树中的各叶子节点,分别对应该二叉树对应属性字段的各属性值,且该二叉树中节点的左子树的弧值为0,右子树的弧值为1,或者该二叉树中节点的左子树的弧值为1,右子树的弧值为0;
所述解压缩单元,具体用于针对所述压缩后的日志采集数据中的每个属性字段的每个压缩编码,具体采用如下方式进行解压缩处理:
查询该属性字段对应的二叉树,确定该属性字段的该压缩编码对应的叶子节点,其中,将从根节点到该对应的叶子节点的路径所包括的各子树分别对应的弧值,进行排列得到的二进制编号,与该压缩编码相同;
使用该压缩编码对应的叶子节点对应的属性值,替换该压缩后的日志采集数据中的该压缩编码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210112487.3A CN103379136B (zh) | 2012-04-17 | 2012-04-17 | 一种日志采集数据压缩方法、解压缩方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210112487.3A CN103379136B (zh) | 2012-04-17 | 2012-04-17 | 一种日志采集数据压缩方法、解压缩方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103379136A CN103379136A (zh) | 2013-10-30 |
CN103379136B true CN103379136B (zh) | 2017-02-22 |
Family
ID=49463693
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210112487.3A Active CN103379136B (zh) | 2012-04-17 | 2012-04-17 | 一种日志采集数据压缩方法、解压缩方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103379136B (zh) |
Families Citing this family (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104050269B (zh) * | 2014-06-23 | 2017-06-16 | 上海帝联信息科技股份有限公司 | 日志压缩方法及装置、解压缩方法及装置 |
CN105589878A (zh) * | 2014-10-23 | 2016-05-18 | 中兴通讯股份有限公司 | 一种数据存储方法、数据读取方法及设备 |
CN104408100B (zh) * | 2014-11-19 | 2018-04-27 | 北京融海恒信咨询有限公司 | 结构化网站日志的压缩方法 |
CN105721179A (zh) * | 2014-12-02 | 2016-06-29 | 北京奇虎科技有限公司 | 日志收集系统及其中的数据传输方法和本地服务器 |
CN104917591B (zh) * | 2015-06-11 | 2018-03-23 | 中国电子科技集团公司第五十四研究所 | 一种适用于单向有损链路的卫星网络数据包压缩方法 |
CN104967498B (zh) * | 2015-06-11 | 2018-01-30 | 中国电子科技集团公司第五十四研究所 | 一种基于历史的卫星网络数据包压缩传输方法 |
CN106547470B (zh) * | 2015-09-16 | 2020-01-03 | 伊姆西公司 | 日志存储优化方法和设备 |
CN105516307A (zh) * | 2015-12-09 | 2016-04-20 | 浪潮电子信息产业股份有限公司 | 一种基于压缩的优化云存储系统日志存储的方法 |
CN105703777B (zh) * | 2016-02-01 | 2019-02-12 | 合肥美的智能科技有限公司 | 一种压缩冰箱上报数据的方法和装置 |
CN106021417A (zh) * | 2016-05-12 | 2016-10-12 | 京信通信系统(广州)有限公司 | 日志压缩方法及装置 |
CN106055452B (zh) * | 2016-05-25 | 2019-06-14 | 北京百度网讯科技有限公司 | 创建交换机日志模板的方法和装置 |
CN106354617B (zh) * | 2016-08-29 | 2019-04-12 | 广州华多网络科技有限公司 | 程序压缩性日志文件输出方法及装置 |
CN108628898B (zh) * | 2017-03-21 | 2021-04-23 | 中国移动通信集团河北有限公司 | 数据入库的方法、装置和设备 |
CN108733681B (zh) | 2017-04-14 | 2021-10-22 | 华为技术有限公司 | 信息处理方法及装置 |
CN107038149A (zh) * | 2017-04-28 | 2017-08-11 | 北京新能源汽车股份有限公司 | 一种车辆数据的处理方法、装置及设备 |
CN107241394A (zh) * | 2017-05-24 | 2017-10-10 | 努比亚技术有限公司 | 一种日志传输方法、装置及计算机可读存储介质 |
CN107592636A (zh) * | 2017-08-17 | 2018-01-16 | 深圳市诚壹科技有限公司 | 一种处理信息的方法、终端及服务器 |
CN107766512B (zh) * | 2017-10-23 | 2021-02-02 | 中国联合网络通信集团有限公司 | 一种日志数据存储方法和日志数据存储系统 |
CN108304472A (zh) * | 2017-12-28 | 2018-07-20 | 中国银联股份有限公司 | 一种数据压缩存储方法以及数据压缩存储装置 |
CN108256017B (zh) * | 2018-01-08 | 2020-12-15 | 武汉斗鱼网络科技有限公司 | 一种用于数据存储的方法、装置及计算机设备 |
CN108133033B (zh) * | 2018-01-08 | 2020-06-12 | 武汉斗鱼网络科技有限公司 | 一种用于数据存储的方法、装置及计算机设备 |
CN109033404B (zh) * | 2018-08-03 | 2022-03-11 | 北京百度网讯科技有限公司 | 日志数据处理方法、装置和系统 |
CN111708673A (zh) * | 2020-06-15 | 2020-09-25 | 北京优特捷信息技术有限公司 | 一种日志数据压缩方法、装置、设备和存储介质 |
CN111651417B (zh) * | 2020-07-09 | 2021-09-28 | 腾讯科技(深圳)有限公司 | 日志处理方法及装置 |
CN111935237B (zh) * | 2020-07-15 | 2023-02-21 | 展讯通信(上海)有限公司 | 日志处理方法及系统、电子设备及存储介质 |
CN112100181B (zh) * | 2020-09-22 | 2024-06-11 | 国网辽宁省电力有限公司电力科学研究院 | 一种基于沙盘的数据资源管理方法 |
CN112101548A (zh) * | 2020-09-22 | 2020-12-18 | 珠海格力电器股份有限公司 | 数据压缩方法及装置、数据解压方法及装置、电子设备 |
CN113076107A (zh) * | 2021-04-13 | 2021-07-06 | 杭州又拍云科技有限公司 | 一种通过有限状态机对日志进行自动采集融合的方法 |
CN113297155A (zh) * | 2021-05-21 | 2021-08-24 | 曙光信息产业(北京)有限公司 | 数据存储方法、装置及可读存储介质 |
CN113282552B (zh) * | 2021-06-04 | 2022-11-22 | 上海天旦网络科技发展有限公司 | 流量统计日志的相似性向量化方法及系统 |
CN114528444B (zh) * | 2022-02-25 | 2023-02-03 | 北京百度网讯科技有限公司 | 图数据处理方法、装置、电子设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1633080A (zh) * | 2003-12-24 | 2005-06-29 | 华为技术有限公司 | 在网络管理系统中实现日志的方法 |
CN1770150A (zh) * | 2004-11-03 | 2006-05-10 | 北京神舟航天软件技术有限公司 | 数据库压缩及解压缩方法 |
CN101043353A (zh) * | 2006-03-25 | 2007-09-26 | 中兴通讯股份有限公司 | 一种提高网管系统数据处理效率的方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100370752C (zh) * | 2005-03-28 | 2008-02-20 | 华为技术有限公司 | 一种日志信息的存储方法 |
US7224297B2 (en) * | 2005-11-02 | 2007-05-29 | Lycos, Inc. | Compressing log files |
CN1760910A (zh) * | 2005-11-16 | 2006-04-19 | 北京易富金川科技有限公司 | 基于统一信息标识编码的信息采集、传输、处理系统和方法 |
CN101005485A (zh) * | 2006-12-14 | 2007-07-25 | 钟杨 | 一种信息资源地址压缩编码的方法及系统 |
CN101163046A (zh) * | 2007-11-22 | 2008-04-16 | 北京金山软件有限公司 | 一种分布式网站日志数据采集方法和分布式网站系统 |
-
2012
- 2012-04-17 CN CN201210112487.3A patent/CN103379136B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1633080A (zh) * | 2003-12-24 | 2005-06-29 | 华为技术有限公司 | 在网络管理系统中实现日志的方法 |
CN1770150A (zh) * | 2004-11-03 | 2006-05-10 | 北京神舟航天软件技术有限公司 | 数据库压缩及解压缩方法 |
CN101043353A (zh) * | 2006-03-25 | 2007-09-26 | 中兴通讯股份有限公司 | 一种提高网管系统数据处理效率的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103379136A (zh) | 2013-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103379136B (zh) | 一种日志采集数据压缩方法、解压缩方法及装置 | |
CN103379140B (zh) | 一种日志处理规则同步方法及相关设备和系统 | |
CN107390650B (zh) | 一种基于物联网的数据采集系统及基于该系统的数据压缩方法 | |
CN102571966B (zh) | 一种大型xml文件的网络传输方法 | |
CN103390244B (zh) | 一种具有运营商特色的用户好友关系聚合方法及聚合平台 | |
CN100471121C (zh) | 一种解码方法和解码器 | |
CN106407201A (zh) | 一种数据处理方法及装置 | |
CN102110132A (zh) | 统一资源定位符匹配查找方法、装置和网络侧设备 | |
CN101188561A (zh) | 基于自定义模板的通用业务数据通讯方法与系统 | |
CN102882703A (zh) | 一种基于http分析的url自动分类分级的系统及方法 | |
CN103853838B (zh) | 一种数据处理方法和装置 | |
CN113256163B (zh) | 智慧城市政务云平台网外运算方法及系统 | |
CN108696492A (zh) | Ip报文的处理方法与装置 | |
CN115278737B (zh) | 一种5g网络的数据采集方法 | |
CN105430534A (zh) | 一种智能设备上报数据的方法和系统 | |
CN102118719A (zh) | 移动智能信息服务系统、适配转换装置及方法 | |
CN103067253B (zh) | 一种mms信令的深度解析和内容展示的方法及系统 | |
CN101324637A (zh) | 远程召测与分析系统 | |
CN101477539B (zh) | 一种信息采集方法及装置 | |
CN102801548A (zh) | 一种智能预警的方法、装置及信息系统 | |
CN105450589A (zh) | 远程调用方法及系统 | |
CN103702354A (zh) | 基站工程参数采集和解析方法 | |
JP2006287518A (ja) | 圧縮規則生成方法、圧縮通信装置及びプログラム | |
CN109217986A (zh) | 一种基于物联网的数据传输方法及系统 | |
CN106649181B (zh) | 一种用于钻完井现场同时集成wits数据和witsml数据的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |