A method for storing and querying log files applied to stand-alone server with convenient storage and fast query response. The steps are as follows: 1) the number of log, the log includes the establishment of a period of time to store log table table name and the log partition mapping table table name, log table; 2) the establishment of a number of log partition in the corresponding log table: 3) each table corresponds to a log the log partition mapping table. The invention will be in accordance with the time of the combination of log and the log multiple attributes under conditions or parameters, according to certain rules of several partitions distributed in several log table and the log table under, when a user query log, enter the query, the system is in accordance with the time through the corresponding log partition mapping table to quickly query log data corresponding to the conditions or combinations of parameters. The invention can efficiently and quickly query log data stored in a single server.
【技术实现步骤摘要】
本专利技术涉及一种用于服务器的日志存储和查询方法,特别涉及一种可快速查询的应用于单机服务器中的日志存储和查询方法。
技术介绍
对于一个简单的单机关系型数据库系统来说,数据的查询是通过把查询条件组合成SQL语句,输入数据库中进行查询。这种简单的表项设计,在以下应用环境中,能够做到快速响应查询请求:1、比较简单的查询条件;2、同时数据量比较小。但是当系统面对如下比较复杂的应用环境时,响应速度则大大降低:1、日志的数据量相当大;2、查询条件比较多,每个条件都有一定量的取值。现有技术中大部分的单机服务器,单纯依靠数据库来分析SQL语句当中的查询语句,然后在表项里面进行数据的查询,数据库引擎需要遍历该表项中的所有的数据(即指对整个表项中的所有数据进行搜索),因此,其查询耗时相当长。比如,如果数据条目是百万级别,查询条件是多个条件或参数的复杂组合,在响应查询请求的时候,数据库引擎需要从磁盘中读取大量的数据,并且逐个进行分析,查询耗时可达到20分钟以上,因此,其不能满足用户期望获得较快响应的需求。现有技术中的Mysql数据库,也引入了“分区”的概念,Mysql划设分区的具体方法如下:其是在若干日志所具有的各属性(属性是日志所属的特性,如电脑IP、包含web访问、邮件及语音在内的通信协议类型、访问IP、流量记录、源地址、目的地址、源端口和目的端口中的多种组合)中,选择其中一个属性下对应的若干个不同条件或参数分别作为所划分区中各分区的首要查询条件,如图1和后附的表4所示,即将所有日志中所述首要查询条件相同的日志均存放在一个分区中,以此,将所有日志存放在若干个分区中且同一分 ...
【技术保护点】
一种应用于单机服务器的日志存储和查询方法,由以下步骤构成:日志存储1)建立一个日志总表,按设定时间段分别写入若干个包含该时间段存储的日志的日志条数、日志分表的表名和日志分区映射表的表名在内的记录;2)在对应的日志分表中建立若干个日志分区,各日志分区按以下规则存放日志:a.各日志分区存放该时间段内产生的满足以下条件的日志:针对若干属性下对应的各条件或参数组合的日志,将相同条件或参数组合的日志和该相同组合中每条日志对应的时间戳以及每条日志对应的日志内容记载于该日志分区中;b.或者,各日志分区中存放该时间段内产生的满足以下条件的日志:针对若干属性下对应的各条件或参数组合的日志,将相近时间戳内产生的不同条件或参数组合的日志和该不同组合中每条日志对应的时间戳以及每条日志对应的日志内容记载于该日志分区中;c.或者,一部分日志分区采用上述a规则,另一部分日志分区采用b规则;d.或者,在某些日志分区中采用上述a规则与b规则的组合;3)每个所述的日志分表对应一个所述的日志分区映射表,该日志分区映射表存放该日志分表中出现的不同的条件或参数组合和该组合中各条件或参数组合对应的日志所在的日志分区编号;日志查询 ...
【技术特征摘要】
1.一种应用于单机服务器的日志存储和查询方法,由以下步骤构成:日志存储1)建立一个日志总表,按设定时间段分别写入若干个包含该时间段存储的日志的日志条数、日志分表的表名和日志分区映射表的表名在内的记录;2)在对应的日志分表中建立若干个日志分区,各日志分区按以下规则存放日志:a.各日志分区存放该时间段内产生的满足以下条件的日志:针对若干属性下对应的各条件或参数组合的日志,将相同条件或参数组合的日志和该相同组合中每条日志对应的时间戳以及每条日志对应的日志内容记载于该日志分区中;b.或者,各日志分区中存放该时间段内产生的满足以下条件的日志:针对若干属性下对应的各条件或参数组合的日志,将相近时间戳内产生的不同条件或参数组合的日志和该不同组合中每条日志对应的时间戳以及每条日志对应的日志内容记载于该日志分区中;c.或者,一部分日志分区采用上述a规则,另一部分日志分区采用b规则;d.或者,在某些日志分区中采用上述a规则与b规则的组合;3)每个所述的日志分表对应一个所述的日志分区映射表,该日志分区映射表存放该日志分表中出现的不同的条件或参数组合和该组合中各条件或参数组合对应的日志所在的日...
【专利技术属性】
技术研发人员:何雪煜,
申请(专利权)人:深圳市风云实业有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。