CN112965934A - 一种日志压缩存储方法、电子装置 - Google Patents
一种日志压缩存储方法、电子装置 Download PDFInfo
- Publication number
- CN112965934A CN112965934A CN202110155325.7A CN202110155325A CN112965934A CN 112965934 A CN112965934 A CN 112965934A CN 202110155325 A CN202110155325 A CN 202110155325A CN 112965934 A CN112965934 A CN 112965934A
- Authority
- CN
- China
- Prior art keywords
- log
- compression
- time
- logs
- area
- 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.)
- Pending
Links
- 238000007906 compression Methods 0.000 title claims abstract description 66
- 230000006835 compression Effects 0.000 title claims abstract description 66
- 238000000034 method Methods 0.000 title claims abstract description 29
- 238000004590 computer program Methods 0.000 claims description 6
- 230000006837 decompression Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000005034 decoration Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008094 contradictory effect Effects 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/174—Redundancy elimination performed by the file system
- G06F16/1744—Redundancy elimination performed by the file system using compression, e.g. sparse files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
- G06F16/134—Distributed indices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/1805—Append-only file systems, e.g. using logs or journals to store data
- G06F16/1815—Journaling file systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明涉及一种日志压缩存储方法、电子装置。所述方法包括如下流程:步骤一、预先定义日志存储结构;所定义的日志存储结构分为参数区、索引区、日志区;索引区包含N条索引;N为整数,N等于一天的总时长与所定义的最小日志切割时间单位的比值;步骤二、确定日志压缩自定义参数,并存储到参数区;步骤三、根据日志压缩自定义参数对需要压缩的原始日志进行压缩。本发明按照时段对日志进行同步压缩解压和展示,提升使用人员查看日志的便捷程度,提高定位问题的效率。
Description
技术领域
本发明涉及数据压缩处理技术领域,特别是一种日志压缩存储方法、电子装置。
背景技术
各种网站和软件都会生成各种日志,为了方便查找和定位问题,往往需要对这些日志进行备份和归档。归档的时候,为了降低日志占用的存储空间,往往会对历史日志进行压缩存储。但是,压缩存储和日志查询还是存在相互矛盾的地方,不压缩日志,日志量比较大的话,需要浪费较多的存储空间,不利于节约企业成本;但是压缩日志之后,查看日志又非常不方便,一般需要先解压之后才能正常浏览,耗时且不方便。
1、如果日志内容较大,压缩和解压花费的时间很长;解压的文件如果过多,则同样会造成比较严重的磁盘空间的浪费;如果日志查询人员对日志的日期不是特别确定,或者需要的日志可能发生在日期交替的时间点,则往往需要对多个文件进行解压才能看到需要的日志,这对于定位和分析问题而言,都存在较大的时间成本。
2、elk等技术本身存在一定的学习成本;另外,其用来存储的elasticsearch并没有解决占用存储空间过多的问题;如果自建则存在一定的维护成本,如果采用云服务则需要支付相应的存储成本。
发明内容
为解决上述问题,本发明提供了1.一种日志压缩存储方法,其特征在于,包括如下流程:
步骤一、预先定义日志存储结构;所定义的日志存储结构分为参数区、索引区、日志区;索引区包含N条索引;N为整数,N等于一天的总时长与所定义的最小日志切割时间单位的比值;
步骤二、确定日志压缩自定义参数,并存储到参数区;所述日志压缩自定义参数包括时间参数、存储路径;所述时间参数包括最小日志切割时间单位、时间戳精度;
步骤三、根据日志压缩自定义参数对需要压缩的原始日志进行压缩;处理后的各条日志及其相关信息作为一条日志信息顺次存储到日志区;时间戳属于同一个最小日志切割时间单元内的所有日志对应同一条索引,每条索引内存在有其所对应日志区的相关信息;日志区按条存储日志信息。
进一步的,日志压缩自定义参数还包括日志总条数、日志总行数。
进一步的,每条索引信息包含其所对应日志信息中,第一条日志的文件偏移量、该索引区的日志条数、第一条日志的时间戳。
进一步的,每条日志信息包含该条日志的时间戳、上一条日志的相对偏移量、下一条日志的相对偏移量、日志中的行数、日志的内容。
进一步的,日志压缩自定义参数还包括日志压缩最低长度阈值,每条日志信息还包括日志压缩标志,当带压缩的日志字节长度大于或者等于日志压缩最低长度阈值时,日志压缩标志为压缩标志,否则为未压缩标志。
进一步的,日志压缩自定义参数还包含表示具体压缩算法类型的标志。
进一步的,还包括压缩日志的流程,包括:
S1:预定义浏览日志的自定义参数;包括日志开始时间、结束时间、一次查看的日志条数;
S2:根据浏览日志的自定义参数,按照时间顺序解压日志区内对应时间段内的日志信息;当日志条数超过或者等于一次查看的日志条数时,解压对应数量的压缩日志,否则全部解压;
S3:按照时间顺序显示各条日志。
进一步的,还包括S4:日志浏览者向下浏览日志,则按照时间顺序依次解压日志区内对应时间段内的剩余日志信息并进行显示。
本发明还公开了一种电子装置,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器通过所述计算机程序执行上述方法。
本发明的有益效果为:
1、本发明按照时段对日志进行同步解压缩和浏览,提升使用人员查看日志的便捷程度,提高定位问题的效率。
2、查看日志时不对服务器增加额外的存储空间要求,不对服务器产生过高的负载。
3、操作简单,且不需要增加额外的服务搭建和使用成本。
附图说明
图1为日志存储结构示意图。
具体实施方式
本发明的设计构思为:
本发明将现有技术中针对整个文件压缩的方式,变成按时间分段进行压缩存储,并且对其进行索引,提升查询效率。使用者浏览日志的时候,则能够根据时间段对该时间段的日志进行检索和查看。由于每次解压的日志量很少,因此可以达到边解压边浏览的效果,而不用再等到所有内容都解压后才能查看。下面对本方法进行详细说明。
本发明所述日志压缩存储方法,包括如下步骤:
步骤一、预先定义日志存储结构;所定义的日志存储结构分为参数区、索引区、日志区。
索引区包含N条索引;N为整数,N等于一天的总时长与所定义的最小日志切割时间单位的比值;索引与日志信息具有对应关系,且均按照时间顺序排列。同一个日志切割最小单位内的日志记录对应同一条索引。
如图1所示为日志存储结构的实例,其中A:参数区;B:索引区;日志区。
参数区只有一条记录,用于存储日志压缩自定义参数。索引区和日志区都由多条日志构成。
索引区条数决定于日志切割最小单位。具体而言,比如日志切割最小单位为10秒,那么索引信息的数量是24*3600/10份。
日志区则由多条日志记录构成。
如图1,通过标号区分了不同的存储单元,标号下方的数字则是表示该存储单元占据的空间大小,单位都为bit。值得注意的是,这里给出的存储大小是根据一般情况下进行的经验评估,在具体使用过程中使用,可能会对其进行调整,比如对每个存储单元的大小进行调整,或者对存储单元的顺序进行调整等,使得和具体的应用场景更加贴合。
下面分别对图1中存储单元进行展开介绍:
A1:日志切割最小单位,单位为秒钟,最多为24*3600秒。
A2:日志时间戳格式。取值可以为0或者1。本实施例中,时间戳格式为秒,取值为0。当然,也可以取其他单位,如毫秒,取值为1。
A3:日志压缩算法。可根据实际需要进行调整。如0:gzip,1:deflate等。可以定义4种算法,或根据实际使用场景调整。
A4:保留位。本实施例为6bit,留作自定义或者扩展使用。
A5:日志总条数。本实施例中中,总条数最大2^34-1,约171亿条。
A6:日志总行数。本实施例中中,总行数最大2^36-1,约687亿条。
B1:本区间第一条日志的时间戳。
B2:对应的文件偏移量,单位:Byte。
B3:日志条数,该区间到下一区间的日志条数。
C1:该条日志的时间戳,根据A2来决定存储到秒或者毫秒。
C2:上一条日志的相对偏移量,单位:Byte最多可以表示16M的偏移量。
C2=本日志的文件偏移量-上一条日志的文件偏移量,如果是第一条日志,则该值为0。
C3:下一条日志的相对偏移量,单位:Byte最多可以表示16M的偏移量。
C3=下一条日志的文件偏移量-本条日志的文件偏移量,也就是该日志一共占据的字节数。如果是最后一条日志,最后一条日志的偏移量相当于该日志文件的总字节数。
C4:日志标志位。1bit,表示是否压缩
如1表示压缩,0表示不压缩,或者与此相反。
C5:日志的行数,最多可以是2^12-1=4095行。
C6:日志的实际内容,会根据C4的第一位来决定是否对内容进行压缩。
日志内容的长度为(C3-13)个字节,也就是下一条日志的相对偏移量减去单条中日志内容前置区的长度,具体包括C1、C2、C3、C4、C5共占用的(43+24+24+1+12)/8=13个字节。
步骤二、确定日志压缩自定义参数,包括时间参数;所述时间参数包括最小日志切割时间单位、时间戳精度。自定义参数还包括存储路径参数,所述存储路径参数包括原始日志的存储路径、压缩日志的存储路径。
进一步的,日志压缩自定义参数还包括日志总条数、日志总行数、时间匹配表达式、日志是否压缩。
最小日志切割时间单位的单位为秒。本实施例中,所述日志切割最小时间单元的时间单位为秒,取值范围为1~24*3600。24为24个小时,3600即为每个小时的3600秒。
更进一步的,日志压缩自定义参数还包括日志压缩最低长度阈值。当待压缩的日志字节长度高于或者等于日志压缩最低长度阈值时,才需要压缩,否则不需要压缩。这样设置是为了提高压缩效率,减少压缩时间。
步骤三、根据日志压缩自定义参数对原始日志进行压缩;根据原始日志的时间戳,属于同一个最小日志切割时间单元内的所有日志对应同一条索引。
举例说明,如最小日志切割时间单元为5秒,则存在24*3600/5个日志单元。每条日志信息包含该条日志的时间戳、上一条日志的相对偏移量、下一条日志的相对偏移量、日志中的行数、日志的内容。
进一步的,每条日志信息还包括压缩标志位,在本实施例中,压缩标志位存储在C4区。日志需要压缩时标志位显示压缩标志,否则显示不压缩标志。
每条索引信息包含对应所有对应日志的第一条日志的文件偏移量、日志条数、第一条日志的时间戳。
进一步的,还包括解压日志进行浏览的流程,包括:
S1:预定义浏览日志的自定义参数;包括日志开始时间、结束时间、一次查看的日志条数、日志位置。
如浏览者想要浏览2020年1月1日13:01:05~13:01:10的日志,则选定日志位置,并输入上述起始时间和结束时间。为了避免日志条数过多,可设置一次只浏览一百条。
S2:根据浏览日志的自定义参数,按照时间顺序解压日志区内对应时间段内的日志信息;当日志条数超过或者等于一次查看的日志条数时,解压对应数量的压缩日志,否则全部解压。
如2020年1月1日13:01:05~13:01:10存在1000条日志,则第一次只解压时间排列在前的100条日志,如2020年1月1日13:01:05~13:01:10存在50条日志,则全部解压。
S3:按照时间顺序显示各条日志。
还包括S4:日志浏览者向下浏览日志,按照时间顺序依次解压日志区内对应时间段内的剩余日志信息并进行显示。
如2020年1月1日13:01:05~13:01:10存在1000条日志,则第一次只解压时间排列在前的100条日志,后续随着浏览者的浏览操作,将顺次解压后面的日志,直到解压完或者浏览动作停止。
当然,浏览者还可以向上浏览。
本发明还公开了一种电子装置,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器通过所述计算机程序执行上述方法。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种日志压缩存储方法,其特征在于,包括如下流程:
步骤一、预先定义日志存储结构;所定义的日志存储结构分为参数区、索引区、日志区;索引区包含N条索引;N为整数,N等于一天的总时长与所定义的最小日志切割时间单位的比值;
步骤二、确定日志压缩自定义参数,并存储到参数区;所述日志压缩自定义参数包括时间参数、存储路径;所述时间参数包括最小日志切割时间单位、时间戳精度;
步骤三、根据日志压缩自定义参数对需要压缩的原始日志进行压缩;处理后的各条日志及其相关信息作为一条日志信息顺次存储到日志区;时间戳属于同一个最小日志切割时间单元内的所有日志对应同一条索引,每条索引内存在有其所对应日志区的相关信息;日志区按条存储日志信息。
2.如权利要求1所述的日志压缩存储方法,其特征在于,日志压缩自定义参数还包括日志总条数、日志总行数。
3.如权利要求1所述的日志压缩存储方法,其特征在于,每条索引信息包含其所对应日志信息中,第一条日志的文件偏移量、该索引区的日志条数、第一条日志的时间戳。
4.如权利要求1或3所述的日志压缩存储方法,其特征在于,每条日志信息包含该条日志的时间戳、上一条日志的相对偏移量、下一条日志的相对偏移量、日志中的行数、日志的内容。
5.如权利要求4所述的日志压缩存储方法,其特征在于,日志压缩自定义参数还包括日志压缩最低长度阈值,每条日志信息还包括日志压缩标志,当带压缩的日志字节长度大于或者等于日志压缩最低长度阈值时,日志压缩标志为压缩标志,否则为未压缩标志。
6.如权利要求5所述的日志压缩存储方法,其特征在于,日志压缩自定义参数还包含表示具体压缩算法类型的标志。
7.如权利要求4或5所述的日志压缩存储方法,其特征在于,所述日志压缩自定义参数还包括时间匹配表达式。
8.如权利要求1所述的日志压缩存储方法,其特征在于,还包括压缩日志的流程,包括:
S1:预定义浏览日志的自定义参数;包括日志开始时间、结束时间、一次查看的日志条数;
S2:根据浏览日志的自定义参数,按照时间顺序解压日志区内对应时间段内的日志信息;当日志条数超过或者等于一次查看的日志条数时,解压对应数量的压缩日志,否则全部解压;
S3:按照时间顺序显示各条日志。
9.如权利要求8所述的日志压缩存储方法,其特征在于,还包括S4:日志浏览者向下浏览日志,则按照时间顺序依次解压日志区内对应时间段内的剩余日志信息并进行显示。
10.一种电子装置,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器通过所述计算机程序执行上述权利要求1至9中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110155325.7A CN112965934A (zh) | 2021-02-04 | 2021-02-04 | 一种日志压缩存储方法、电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110155325.7A CN112965934A (zh) | 2021-02-04 | 2021-02-04 | 一种日志压缩存储方法、电子装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112965934A true CN112965934A (zh) | 2021-06-15 |
Family
ID=76273764
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110155325.7A Pending CN112965934A (zh) | 2021-02-04 | 2021-02-04 | 一种日志压缩存储方法、电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112965934A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118540321A (zh) * | 2024-07-24 | 2024-08-23 | 浙江大华技术股份有限公司 | 一种日志搜集方法、装置、设备及介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101944115A (zh) * | 2010-09-14 | 2011-01-12 | 杭州海康威视数字技术股份有限公司 | 一种日志搜索方法和系统 |
CN103617287A (zh) * | 2013-12-12 | 2014-03-05 | 用友软件股份有限公司 | 一种分布式环境下的日志管理方法和装置 |
CN105322969A (zh) * | 2015-12-09 | 2016-02-10 | 北京奇虎科技有限公司 | 数据压缩及解压的方法及装置 |
CN107977442A (zh) * | 2017-12-08 | 2018-05-01 | 北京希嘉创智教育科技有限公司 | 日志文件压缩及解压缩方法、电子设备和可读存储介质 |
CN110489387A (zh) * | 2019-08-13 | 2019-11-22 | 深圳大学 | 压缩解压方法、装置、电子设备及存储介质 |
CN111813756A (zh) * | 2019-04-12 | 2020-10-23 | 北京嘀嘀无限科技发展有限公司 | 一种日志检索系统、方法、装置、电子设备及存储介质 |
-
2021
- 2021-02-04 CN CN202110155325.7A patent/CN112965934A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101944115A (zh) * | 2010-09-14 | 2011-01-12 | 杭州海康威视数字技术股份有限公司 | 一种日志搜索方法和系统 |
CN103617287A (zh) * | 2013-12-12 | 2014-03-05 | 用友软件股份有限公司 | 一种分布式环境下的日志管理方法和装置 |
CN105322969A (zh) * | 2015-12-09 | 2016-02-10 | 北京奇虎科技有限公司 | 数据压缩及解压的方法及装置 |
CN107977442A (zh) * | 2017-12-08 | 2018-05-01 | 北京希嘉创智教育科技有限公司 | 日志文件压缩及解压缩方法、电子设备和可读存储介质 |
CN111813756A (zh) * | 2019-04-12 | 2020-10-23 | 北京嘀嘀无限科技发展有限公司 | 一种日志检索系统、方法、装置、电子设备及存储介质 |
CN110489387A (zh) * | 2019-08-13 | 2019-11-22 | 深圳大学 | 压缩解压方法、装置、电子设备及存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118540321A (zh) * | 2024-07-24 | 2024-08-23 | 浙江大华技术股份有限公司 | 一种日志搜集方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8589363B2 (en) | Systems and methods for managing delta version chains | |
US5890164A (en) | Estimating the degree of change of web pages | |
EP2732377B1 (en) | Optimizing data processing using dynamic schemas | |
CA2941074C (en) | Managing storage of individually accessible data units | |
US7552130B2 (en) | Optimal data storage and access for clustered data in a relational database | |
EP2729884B1 (en) | Managing storage of data for range-based searching | |
US8051064B2 (en) | Method and system for automatically updating search results on an online auction site | |
EP3299972A1 (en) | Efficient query processing using histograms in a columnar database | |
US8046331B1 (en) | Method and apparatus for recreating placeholders | |
EP3550441B1 (en) | Managing storage of individually accessible data units | |
US9483477B2 (en) | Automated data intake system | |
CN110851409A (zh) | 一种日志压缩、解压缩方法、设备及存储介质 | |
CN112965934A (zh) | 一种日志压缩存储方法、电子装置 | |
CN111258819A (zh) | MySQL数据库备份文件的数据获取方法、装置和系统 | |
EP2680150A1 (en) | Document processing device, file server management assistance method, and file server management assistance program | |
CN111291249A (zh) | 信息处理的方法及装置 | |
CN106844091A (zh) | 一种压缩、还原方法及终端 | |
CN113656626B (zh) | 一种图像数据保存方法、装置、计算机设备和存储介质 | |
CN110011845A (zh) | 日志采集方法及系统 | |
CN114995904A (zh) | 一种下拉框组件加载方法及相关装置 | |
CN108009245A (zh) | 产品价值获取方法、装置、计算机设备及存储介质 | |
CN114238823A (zh) | 访问网站的方法、装置、计算机设备和存储介质 | |
CN113760600A (zh) | 一种数据库备份方法、数据库还原方法和相关装置 | |
CN117194355B (zh) | 基于数据库的数据处理方法、装置和电子设备 | |
US20080120265A1 (en) | System and method for processing data elements |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20210825 Address after: 100000 1025, floor 1, No. 1, Kaifa Road, Shangdi Information Industry base, Haidian District, Beijing Applicant after: Beijing tulayan Technology Co.,Ltd. Address before: 100089 08a01, block D, 8 / F, No. a 28, information road, Haidian District, Beijing Applicant before: Beijing Gaoyin Technology Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20210615 |
|
WD01 | Invention patent application deemed withdrawn after publication |