CN115982152A - 审计日志数据的并发入库方法及装置 - Google Patents
审计日志数据的并发入库方法及装置 Download PDFInfo
- Publication number
- CN115982152A CN115982152A CN202111203375.4A CN202111203375A CN115982152A CN 115982152 A CN115982152 A CN 115982152A CN 202111203375 A CN202111203375 A CN 202111203375A CN 115982152 A CN115982152 A CN 115982152A
- Authority
- CN
- China
- Prior art keywords
- data
- log
- partition
- warehousing
- temporary table
- 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
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开一种审计日志数据的并发入库方法即装置,为每个日志数据源创建对应的环形缓存队列与存储表。当环形缓存队列中的日志数量达到预设阈值时,一次将所有的日志信息通过入库线程存入临时表中,并对临时表与分区表进行定时同步,提高了日志信息的入库效率;间接的实现了读写分离,提高了日志查询效率;而且按照时段设置分区表,不同时段日志信息存入不同的分区内,在进行日志查询时候,先根据时段找到对应的分区进行查询,进一步于提高分区表的读效率即查询效率。
Description
技术领域
本发明属于信息安全的数据处理技术领域,尤其是涉及一种对日志审计系统的数据进行并发入库的方法。
背景技术
网络中包含大量的各种网络设备、安全设备、主机、应用及数据库等,每种设备都无时无刻不在产生海量的日志数据。为了及时从日志数据中发现潜在的安全风险,网络防火墙、数据库审计、信息审计等系统的应用日渐广泛,在各个系统运行过程中会产生大量的审计日志信息,如果要提高审计的效率,就需要提高数据的入库和查询速度,目前的日志信息数据在并发入库时的处理效率低,导致数据库线程占用过多的CPU,从而导致整个审计系统的性能下降,海量的数据常常成为审计业务顺畅运行的挑战。
发明内容
基于上述背景,本发明旨在提出一种审计日志数据的并发入库方法,以解决现有技术中大数据量入库效率低以及查询花费时间长,导致系统处理性能下降问题。
第一方面,本发明提供一种审计日志数据的并发入库方法,包括:为每个日志数据源创建对应的环形缓存队列与存储表,当环形缓存队列中的日志数量达到预设阈值时,将数据入库至存储表,并且在入库后清空当前环形缓存队列;所述存储表包括临时表与分区表,其中,从所述环形缓存队列取出的日志数据入库临时表,临时表的数据定时同步到分区表内对应的分区;并且所述临时表在每一个同步周期内存储的数据,在分区表具有唯一对应的分区。
较佳的,上述方法中,将临时表的数据定时同步到分区表之前,还包括:对临时表设定触发器,当触发所述同步周期时,在分区表创建对应的分区,并将临时表在所述同步周期内存储的数据同步至分区表内对应的分区中。
入库后清空当前环形缓存队列,包括:数据被取出入库后,将前一组入库日志的尾日志位置作为下一组入库日志的首日志位置,并重新开始统计日志数量。
当达到预设时长,环形缓存列表中的日志数量仍未达到所述预设阈值,则将该队列中的当前数据全部入库。
以及,所述从环形缓存队列取出的日志数据入库临时表,包括:将环形缓存队列中取出的日志组成一条SQL语句,执行该SQL语句将日志信息存入临时表。
较佳的,该方法还包括:所述数据同步进行至少一次后,对所述临时表进行数据清理。
进一步的,一个周期内存储的数据记录日志生成时间并按该时间排序,则从所述分区表进行日志数据查询时,先根据日志时间定位至对应分区,再取出对应的数据并返回。
从每个数据源采集的日志数据通过对应的缓存线程加入所述环形缓存队列,并设置对应的入库线程从所述对应的环形缓存队列取日志组进行入库操作。
第二方面,提供一种审计日志数据入库装置,包括存储器和处理器;所述存储器,用于存储计算机程序;所述处理器,用于当执行所述计算机程序时,实现以上所述的数据并发入库方法。
同时,还提供一种计算机可读存储介质,存储有计算机程序,当所述计算机程序被处理器执行时,实现以上所述的数据并发入库方法。
如上所述,本发明的技术方案至少具有以下有益效果:
为每个日志数据源创建对应的环形缓存队列与存储表,以及缓存线程和入库线程;并且存储表包括临时表和分区表。当环形缓存队列中的日志数量达到预设阈值时,一次将所有的日志信息通过入库线程存入临时表中,并对临时表与分区表进行定时同步,提高了日志信息的入库效率。
对临时表进行实时写入,定时将临时表同步至原始表,相当程度上减少了对分区表的写操作,这样,对于读操作较频繁的分区表来说,间接的实现了读写分离,提高了日志查询效率;而且按照时段设置分区表,不同时段日志信息存入不同的分区内,在进行日志查询时候,先根据时段找到对应的分区进行查询,进一步于提高分区表的读效率即查询效率。
附图说明
图1为本发明的审计日志数据的并发入库方法实施例,整体流程示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
如图1所示,一种审计日志数据的并发入库方法,包括以下步骤:
为每个日志数据源创建对应的环形缓存队列与存储表,所述存储表包括临时表与分区表。
从各个日志数据源获取相应的审计日志,并按照日志生成时间存入对应的所述环形缓存队列。
当环形缓存队列中的日志数量达到预设阈值时,将数据入库,并且在入库后清空当前环形缓存队列;所述从环形缓存队列取出的日志数据入库时先只入库临时表,对临时表设定触发器,当触发所述同步周期时,在分区表创建对应的分区,并将临时表在所述同步周期内存储的数据同步至分区表内对应的分区中;作为较佳的实施方式,所述临时表在每一个同步周期内存储的数据,在分区表具有唯一对应的分区。
作为一个较佳的实施方式,数据从环形缓存队列被取出入库后,将前一组入库日志的尾日志位置作为下一组入库日志的首日志位置,并重新开始统计日志数量。
而且,当达到预设时长,环形缓存列表中的日志数量仍未达到所述预设阈值,则将该队列中的当前数据全部入库。
以及,所述从环形缓存队列取出的日志数据入库临时表,包括:将环形缓存队列中取出的日志组成一条SQL语句,执行该SQL语句将日志信息存入临时表。
作为一个较佳的实施方式,所述临时表的数据同步进行至少一次后,对临时表进行数据清理。
作为一个较佳的实施方式,所述临时表以及分区表的一个周期内存储的数据记录日志生成时间并按该时间排序,则从所述分区表进行日志数据查询时,先根据日志时间定位至对应分区,再取出对应的数据并返回。
作为一个较佳的实施方式,从每个数据源采集的日志数据通过对应的缓存线程加入所述环形缓存队列,并设置对应的入库线程从所述对应的环形缓存队列取日志组进行入库操作。
另一方面,提供一种审计日志数据入库装置,包括存储器和处理器;所述存储器,用于存储计算机程序;所述处理器,用于当执行所述计算机程序时,实现以上所述的数据并发入库方法。
同时,本领域普通技术人员还可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,所述的存储介质,如:ROM/RAM、磁碟、光盘等。
如上所述的本发明实施例,首先为每个日志数据源创建对应的环形缓存队列与存储表,以及缓存线程和入库线程;并且存储表包括临时表和分区表。当环形缓存队列中的日志数量达到预设阈值时,一次将所有的日志信息通过入库线程存入临时表中,并对临时表与分区表进行定时同步,提高了日志信息的入库效率。
对临时表进行实时写入,定时将临时表同步至原始表,相当程度上减少了对分区表的写操作,这样,对于读操作较频繁的分区表来说,间接的实现了读写分离,提高了日志查询效率;而且按照时段设置分区表,不同时段日志信息存入不同的分区内,在进行日志查询时候,先根据时段找到对应的分区进行查询,进一步于提高分区表的读效率即查询效率。
对上述公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和相一致的最宽的范围。
Claims (10)
1.审计日志数据的并发入库方法,为每个日志数据源创建对应的环形缓存队列与存储表,其特征在于:当环形缓存队列中的日志数量达到预设阈值时,将数据入库至存储表,并且在入库后清空当前环形缓存队列;
所述存储表包括临时表与分区表,其中,从所述环形缓存队列取出的日志数据入库临时表,临时表的数据定时同步到分区表内对应的分区;并且所述临时表在每一个同步周期内存储的数据,在分区表具有唯一对应的分区。
2.根据权利要求1所述的数据并发入库方法,其特征在于,将临时表的数据定时同步到分区表之前,还包括:对临时表设定触发器,当触发所述同步周期时,在分区表创建对应的分区,并将临时表在所述同步周期内存储的数据同步至分区表内对应的分区中。
3.根据权利要求2所述的数据并发入库方法,其特征在于,所述从环形缓存队列取出的日志数据入库临时表,包括:将环形缓存队列中取出的日志组成一条SQL语句,执行该SQL语句将日志信息存入临时表。
4.根据权利要求2所述的数据并发入库方法,其特征在于,该方法还包括:所述数据同步进行至少一次后,对所述临时表进行数据清理。
5.根据权利要求2所述的数据并发入库方法,其特征在于,一个周期内存储的数据记录日志生成时间并按该时间排序,则从所述分区表进行日志数据查询时,先根据日志时间定位至对应分区,再取出对应的数据并返回。
6.根据权利要求1所述的数据并发入库方法,其特征在于,入库后清空当前环形缓存队列,包括:数据被取出入库后,将前一组入库日志的尾日志位置作为下一组入库日志的首日志位置,并重新开始统计日志数量。
7.根据权利要求1所述的数据并发入库方法,其特征在于,当达到预设时长,环形缓存列表中的日志数量仍未达到所述预设阈值,则将该队列中的当前数据全部入库。
8.根据权利要求1所述的数据并发入库方法,其特征在于,从每个数据源采集的日志数据通过对应的缓存线程加入所述环形缓存队列,并设置对应的入库线程从所述对应的环形缓存队列取日志组进行入库操作。
9.一种审计日志数据入库装置,其特征在于,包括存储器和处理器;所述存储器,用于存储计算机程序;所述处理器,用于当执行所述计算机程序时,实现如权利要求1-7任一项所述的数据并发入库方法。
10.一种计算机可读存储介质,其特征在于,所述存储介质上存储有计算机程序,当所述计算机程序被处理器执行时,实现如权利要求1-7任一项所述的数据并发入库方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111203375.4A CN115982152A (zh) | 2021-10-15 | 2021-10-15 | 审计日志数据的并发入库方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111203375.4A CN115982152A (zh) | 2021-10-15 | 2021-10-15 | 审计日志数据的并发入库方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115982152A true CN115982152A (zh) | 2023-04-18 |
Family
ID=85960674
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111203375.4A Pending CN115982152A (zh) | 2021-10-15 | 2021-10-15 | 审计日志数据的并发入库方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115982152A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117792960A (zh) * | 2024-02-23 | 2024-03-29 | 中国电子科技集团公司第三十研究所 | 一种基于国产多核处理器的历史流量统计方法及装置 |
-
2021
- 2021-10-15 CN CN202111203375.4A patent/CN115982152A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117792960A (zh) * | 2024-02-23 | 2024-03-29 | 中国电子科技集团公司第三十研究所 | 一种基于国产多核处理器的历史流量统计方法及装置 |
CN117792960B (zh) * | 2024-02-23 | 2024-04-30 | 中国电子科技集团公司第三十研究所 | 一种基于国产多核处理器的历史流量统计方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20180095829A1 (en) | Data replication in a database management system | |
US8510316B2 (en) | Database processing system and method | |
US7774357B2 (en) | Method, apparatus, and computer program product for implementing enhanced query governor functions | |
EP3070620A1 (en) | Lightweight table comparison | |
US8364751B2 (en) | Automated client/server operation partitioning | |
US11269881B2 (en) | Data query | |
FI3382551T3 (fi) | Hajautettu laitteistojäljitys | |
US8108375B2 (en) | Processing database queries by returning results of a first query to subsequent queries | |
CN112463886B (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
CN105373541A (zh) | 数据库的数据操作请求的处理方法和系统 | |
CN111309720A (zh) | 时序数据的存储、读取方法、装置、电子设备及存储介质 | |
CN110990402B (zh) | 由行存储到列存储的格式转化方法、查询方法及装置 | |
CN106484329A (zh) | 一种基于多级存储的大数据传输完整性保护机制 | |
WO2014021978A4 (en) | Aggregating data in a mediation system | |
CN109783441A (zh) | 基于Bloom Filter的海量数据查询方法 | |
Moon et al. | Scalable algorithms for large temporal aggregation | |
CN115982152A (zh) | 审计日志数据的并发入库方法及装置 | |
WO2023277819A3 (zh) | 数据处理方法、系统、设备、计算机程序产品及存储功能 | |
KR102465391B1 (ko) | 실시간으로 데이터의 증가 속도에 따라 데이터 처리 주기를 설정하는 시스템의 분석 방법 | |
US6763358B2 (en) | Method and system for activating column triggers in a database management system | |
CN104317820B (zh) | 报表的统计方法和装置 | |
Fiannaca et al. | Benchmarking of relational and nosql databases to determine constraints for querying robot execution logs | |
CN116737067A (zh) | 一种图数据的存储加载结构和方法 | |
CN110928885A (zh) | Mysql数据库的数据更新到Es数据库的方法及装置 | |
EP4275132A1 (en) | Stand in tables |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |