日志数据的存储方法、装置、客户端及服务器制造方法及图纸

技术编号:20044954 阅读:25 留言:0更新日期:2019-01-09 04:10
本说明书实施例提供一种日志数据的存储方法、装置、客户端及服务器,在日志数据的存储方法中,客户端采集原始日志数据。为原始日志数据添加对应的用于构造行键rowkey的关键信息以及动态列名,得到格式化处理后的日志数据。向服务器发送格式化处理后的日志数据。服务器对格式化处理后的日志数据进行解析,以获取上述关键信息以及动态列名。根据关键信息,生成rowkey。根据rowkey以及动态列名,将原始日志数据写入Hbase数据库的对应位置。

【技术实现步骤摘要】
日志数据的存储方法、装置、客户端及服务器
本说明书一个或多个实施例涉及计算机
,尤其涉及一种日志数据的存储方法、装置、客户端及服务器。
技术介绍
传统技术中,服务器通常会采用结构化的方式存储客户端采集到的日志数据,如,将日志数据存储到mysql数据库中。当通过结构化的方式存储日志数据时,具有关联关系的日志数据(简称关联日志)可能会分布在不同数据表的多行记录中。从而业务系统在查询上述关联日志时,需要关联查询数据库的多张数据表,之后再将查询到的多条日志数据进行拼装,以得到上述关联日志。因此,需要提供一种日志数据的存储方法,以提高日志数据的读取效率。
技术实现思路
本说明书一个或多个实施例描述了一种日志数据的存储方法、装置、客户端及服务器,可以提高日志数据的读取效率。第一方面,提供了一种日志数据的存储方法,包括:服务器获取格式化处理后的日志数据;所述格式化处理包括为原始日志数据添加用于构造行键rowkey的关键信息以及动态列名;对所述格式化处理后的日志数据进行解析,以获取所述关键信息以及所述动态列名;根据所述关键信息,生成所述rowkey;根据所述rowkey以及所述动态列名,将所述原始日志数据写入Hbase数据库的对应位置。第二方面,提供了一种日志数据的存储方法,包括:客户端采集原始日志数据;确定与所述原始日志数据对应的用于构造行键rowkey的关键信息以及动态列名;根据所述关键信息以及所述动态列名,对所述原始日志数据进行格式化处理;向服务器发送格式化处理后的日志数据,以使所述服务器对所述格式化处理后的日志数据进行解析,获取所述关键信息以及所述动态列名,并根据所述关键信息,生成所述rowkey;还使所述服务器根据所述rowkey以及所述动态列名,将所述原始日志数据写入Hbase数据库的对应位置。第三方面,提供了一种日志数据的存储装置,包括:获取单元,用于获取格式化处理后的日志数据;所述格式化处理包括为原始日志数据添加用于构造行键rowkey的关键信息以及动态列名;解析单元,用于对所述获取单元获取的所述格式化处理后的日志数据进行解析,以获取所述关键信息以及所述动态列名;生成单元,用于根据所述关键信息,生成所述rowkey;写入单元,用于根据所述生成单元生成的所述rowkey以及所述动态列名,将所述原始日志数据写入Hbase数据库的对应位置。第四方面,提供了一种日志数据的存储装置,包括:采集单元,用于采集原始日志数据;确定单元,用于确定与所述采集单元采集的所述原始日志数据对应的用于构造行键rowkey的关键信息以及动态列名;处理单元,用于根据所述确定单元确定的所述关键信息以及所述动态列名,对所述原始日志数据进行格式化处理;发送单元,用于向服务器发送所述处理单元格式化处理后的日志数据,以使所述服务器对所述格式化处理后的日志数据进行解析,获取所述关键信息以及所述动态列名,并根据所述关键信息,生成所述rowkey;还使所述服务器根据所述rowkey以及所述动态列名,将所述原始日志数据写入Hbase数据库的对应位置。第五方面,提供了一种服务器,包括:接收器,用于获取格式化处理后的日志数据;所述格式化处理包括为原始日志数据添加用于构造行键rowkey的关键信息以及动态列名;至少一个处理器,用于对所述格式化处理后的日志数据进行解析,以获取所述关键信息以及所述动态列名;根据所述关键信息,生成所述rowkey;根据所述rowkey以及所述动态列名,将所述原始日志数据写入Hbase数据库的对应位置。第六方面,提供了一种客户端,包括:至少一个处理器,用于采集原始日志数据;确定与所述原始日志数据对应的用于构造行键rowkey的关键信息以及动态列名;根据所述关键信息以及所述动态列名,对所述原始日志数据进行格式化处理;发送器,用于向服务器发送格式化处理后的日志数据,以使所述服务器对所述格式化处理后的日志数据进行解析,获取所述关键信息以及所述动态列名,并根据所述关键信息,生成所述rowkey;还使所述服务器根据所述rowkey以及所述动态列名,将所述原始日志数据写入Hbase数据库的对应位置。本说明书一个或多个实施例提供的日志数据的存储方法、装置、客户端及服务器,客户端采集原始日志数据。为原始日志数据添加对应的用于构造行键rowkey的关键信息以及动态列名,得到格式化处理后的日志数据。向服务器发送格式化处理后的日志数据。服务器对格式化处理后的日志数据进行解析,以获取上述关键信息以及动态列名。根据关键信息,生成rowkey。根据rowkey以及动态列名,将原始日志数据写入Hbase数据库的对应位置。需要说明的是,关联日志通常具有相同的关键信息,从而构造的rowkey可以是相同的。由于关联日志的rowkey相同,所以本说明书的日志数据的存储方法可以确保关联日志存储在Hbase数据库的同一行。由此,可以提高关联日志的读取效率。附图说明为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。图1为本说明书提供的日志数据的存储方法的应用场景示意图;图2为本说明书一个实施例提供的日志数据的存储方法流程图;图3为本说明书另一个实施例提供的日志数据的存储方法流程图;图4为本说明书再一个实施例提供的日志数据的存储方法信息交互图;图5为本说明书一个实施例提供的日志数据的存储装置示意图;图6为本说明书另一个实施例提供的日志数据的存储装置示意图;图7为本说明书提供的服务器示意图;图8为本说明书提供的客户端示意图。具体实施方式下面结合附图,对本说明书提供的方案进行描述。本说明书一个或多个实施例提供的日志数据的存储方法可以应用于如图1所示的场景中。图1中,客户端用于采集业务系统的日志数据。对采集到的日志数据,客户端可以进行格式化处理,如,为日志数据添加用于生成行键(rowkey)的关键信息以及动态列名。客户端可以将格式化处理后的日志数据输出到日志文件中。之后,将该日志文件通过传输媒介发送至服务器。服务器在接收到日志文件之后,对该日志文件中的每行格式化处理后的日志数据,可以对其进行解析,以获取对应的关键信息和动态列名。之后,根据关键信息,生成rowkey,并根据rowkey以动态列名,将原始日志数据写入Hbase数据库的对应位置。至此,就可以实现将关联日志存储到Hbase数据库的同一行的不同列。此处,可以将关联日志存储在Hbase数据库的同一行,是因为关联日志通常具有相同的关键信息,如,具有相同的跟踪标识traceID或者业务标识,进而生成的rowkey是相同的,而rowkey为Hbase数据库的一行数据的唯一标识。此外,由于关联日志可以具有不同的动态列名,如,在多线程场景下,可以将日志数据对应的线程名作为动态列名,所以可以保证其分布在同一行的不同列。由于关联日志存储在Hbase数据库的同一行,所以业务系统根据待读取的关联日志所对应的rowkey,就可以读取到上述关联日志,无需进行关联查询,也无需对日志数据进行拼装,从而可以提高关联日志的读取效率。图2为本说明书一个实施例本文档来自技高网...

【技术保护点】
1.一种日志数据的存储方法,其特征在于,包括:服务器获取格式化处理后的日志数据;所述格式化处理包括为原始日志数据添加用于构造行键rowkey的关键信息以及动态列名;对所述格式化处理后的日志数据进行解析,以获取所述关键信息以及所述动态列名;根据所述关键信息,生成所述rowkey;根据所述rowkey以及所述动态列名,将所述原始日志数据写入Hbase数据库的对应位置。

【技术特征摘要】
1.一种日志数据的存储方法,其特征在于,包括:服务器获取格式化处理后的日志数据;所述格式化处理包括为原始日志数据添加用于构造行键rowkey的关键信息以及动态列名;对所述格式化处理后的日志数据进行解析,以获取所述关键信息以及所述动态列名;根据所述关键信息,生成所述rowkey;根据所述rowkey以及所述动态列名,将所述原始日志数据写入Hbase数据库的对应位置。2.根据权利要求1所述的方法,其特征在于,所述服务器获取格式化处理后的日志数据,包括:服务器通过传输媒介接收客户端发送的日志文件;所述日志文件中包括多行格式化处理后的日志数据;从所述日志文件中读取一行格式化处理后的日志数据。3.根据权利要求1或2所述的方法,其特征在于,所述关键信息包括业务标识或者跟踪标识traceID;所述动态列名是根据线程名或者服务器标识确定的。4.一种日志数据的存储方法,其特征在于,包括:客户端采集原始日志数据;确定与所述原始日志数据对应的用于构造行键rowkey的关键信息以及动态列名;根据所述关键信息以及所述动态列名,对所述原始日志数据进行格式化处理;向服务器发送格式化处理后的日志数据,以使所述服务器对所述格式化处理后的日志数据进行解析,获取所述关键信息以及所述动态列名,并根据所述关键信息,生成所述rowkey;还使所述服务器根据所述rowkey以及所述动态列名,将所述原始日志数据写入Hbase数据库的对应位置。5.根据权利要求4所述的方法,其特征在于,所述根据所述关键信息以及所述动态列名,对所述原始日志数据进行格式化处理,包括:为所述原始日志数据添加用于构造行键rowkey的关键信息以及动态列名。6.根据权利要求4或5所述的方法,其特征在于,还包括:将所述格式化处理后的日志数据输出到日志文件中;所述向服务器发送格式化处理后的日志数据,包括:通过传输媒介向所述服务器发送所述日志文件。7.一种日志数据的存储装置,其特征在于,包括:获取单元,用于获取格式化处理后的日志数据;所述格式化处理包括为原始日志数据添加用于构造行键rowkey的关键信息以及动态列名;解析单元,用于对所述获取单元获取的所述格式化处理后的日志数据进行解析,以获取所述关键信息以及所述动态列名;生成单元,用于根据所述关键信息,生成所述rowkey;写入单元,用于根据所述生成单元生成的所述rowkey以及所述动态列名,将所述原始日志数据写入Hbase数据库的对应位置。8.根据权利要求7所述的装置,其特征在...

【专利技术属性】
技术研发人员:陈治
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1