一种Hbase数据库数据操作日志的生成方法及装置的制造方法

xiaoxiao2020-10-23  18

一种Hbase数据库数据操作日志的生成方法及装置的制造方法
【技术领域】
[0001]本发明涉及数据库技术领域,尤其涉及一种Hbase数据库数据操作日志的生成方法及装置。
【背景技术】
[0002]当今互联网中的巨大信息量使得整个互联网朝着数据海量化,用户访问高并行化的方向发展,这对在应用中承受巨大负荷的数据库层提出了更高的性能要求,传统技术无法胜任大数据集的分析、管理和挖掘。HBase (Hadoop DataBase)是Apache Hadoop项目下的一款非关系型数据库,它是一个基于列簇的开源数据存储系统,HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的应用分布式数据库,可以适应数据的海量增长。随着海量数据时代的到来,关于HBase的研宄和应用也受到越来越多的关注。
[0003]目前,对于Hbase中数据操作日志的记录,现有技术中是通过开发的Hbase的上层应用系统的接口来操作Hbase,并在操作的同时记录Hbase操作记录,而不通过应用系统接口对Hbase的操作信息无法得到记录,因此对于Hbase的某些操作信息无法保留,线上集群出现问题时也无从查询操作日志。

【发明内容】

[0004]有鉴于此,本发明的目的在于提出一种Hbase数据库数据操作日志的生成方法及装置,以实现对Hbase数据库中所有的数据操作生成数据操作日志,并降低Hbase数据库中数据操作日志生成的成本。
[0005]一方面,本发明实施例提供一种Hbase数据库数据操作日志的生成方法,包括:
[0006]Hbase数据库服务端中配置的协处理器,根据监听到的客户端发送的数据操作请求,生成第一日志记录,和/或,根据监听到的Hbase数据库服务端对数据操作请求的响应,生成第二日志记录;
[0007]所述协处理器将所述日志记录存储到预设数据库中。
[0008]进一步的,所述协处理器根据监听到的Hbase数据库服务端对数据操作请求的响应,生成第二日志记录包括:
[0009]所述协处理器在监听到Hbase数据库服务端响应客户端发送的数据操作请求时,根据Hbase数据库服务端生成的待返回给客户端的数据操作响应包,生成第二日志记录。
[0010]进一步的,所述协处理器作为插件配置在Hbase数据库服务端中。
[0011]进一步的,所述第一日志记录包括数据操作请求类型、数据操作时间、发送数据操作请求的客户端的IP地址中的至少一项,所述第二日志记录包括数据操作响应时间、数据操作响应结果中的至少一项。
[0012]进一步的,所述预设数据库包括Hbase数据库、MySQL数据库或Oracle数据库。
[0013]另一方面,本发明实施例还提供一种Hbase数据库数据操作日志的生成装置,包括:
[0014]日志记录生成单元,用于Hbase数据库服务端中配置的协处理器,根据监听到的客户端发送的数据操作请求,生成第一日志记录,和/或,根据监听到的Hbase数据库服务端对数据操作请求的响应,生成第二日志记录;
[0015]日志记录存储单元,用于所述协处理器将所述日志记录存储到预设数据库中。
[0016]进一步的,所述日志记录生成单元具体用于:所述协处理器在监听到Hbase数据库服务端响应客户端发送的数据操作请求时,根据Hbase数据库服务端生成的待返回给客户端的数据操作响应包,生成第二日志记录。
[0017]进一步的,所述协处理器作为插件配置在Hbase数据库服务端中。
[0018]进一步的,所述第一日志记录包括数据操作请求类型、数据操作时间、发送数据操作请求的客户端的IP地址中的至少一项,所述第二日志记录包括数据操作响应时间、数据操作响应结果中的至少一项。
[0019]进一步的,所述预设数据库包括Hbase数据库、MySQL数据库或Oracle数据库。
[0020]本发明实施例提供的Hbase数据库数据操作日志的生成方法及装置,在客户端向数据库服务端发送数据操作请求后,由Hbase数据库服务端中配置的协处理器根据监听到的所述数据操作请求,生成第一日志记录,和/或,根据监听到的数据库服务端对数据操作请求的响应,生成第二日志记录,并由所述协处理器将所述日志记录存储到预设数据库中,实现了对Hbase数据库中所有的数据操作生成数据操作日志,并降低了 Hbase数据库中数据操作日志生成的成本。
【附图说明】
[0021]为了更加清楚地说明本发明示例性实施例的技术方案,下面对描述实施例中所需要用到的附图做一简单介绍。显然,所介绍的附图只是本发明所要描述的一部分实施例的附图,而不是全部的附图,对于本领域普通技术人员,在不付出创造性劳动的前提下,还可以根据这些附图得到其他的附图。
[0022]图1是本发明实施例一提供的Hbase数据库数据操作日志的生成方法的流程图;
[0023]图2是本发明实施例二提供的Hbase数据库数据操作日志的生成装置的结构示意图。
【具体实施方式】
[0024]为使本发明的目的、技术方案和优点更加清楚,以下将结合本发明实施例中的附图,通过【具体实施方式】,完整地描述本发明的技术方案。显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例,基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动的前提下获得的所有其他实施例,均落入本发明的保护范围之内。
[0025]实施例一
[0026]图1给出了本发明实施例一提供的Hbase数据库数据操作日志的生成方法的流程图,本实施例可适用于Hbase数据库服务端中配置有协处理器的情况,该方法可由Hbase数据库数据操作日志的生成装置执行,所述Hbase数据库数据操作日志的生成装置可内置在协处理器中,所述协处理器可配置于Hbase数据库服务端中,所述Hbase数据库数据操作日志的生成装置可由软件和/或硬件来实现。
[0027]如图1所示,本实施例提供的Hbase数据库数据操作日志的生成方法包括以下步骤:
[0028]步骤S101,Hbase数据库服务端中配置的协处理器,根据监听到的客户端发送的数据操作请求,生成第一日志记录,和/或,根据监听到的Hbase数据库服务端对数据操作请求的响应,生成第二日志记录。
[0029]本实施例中所述的Hbase数据库服务端中配置有协处理器,所述协处理器可以为内置在Hbase数据库服务端中一段程序,可以监听客户端与Hbase数据库之间的交互操作。客户端向Hbase数据库服务端发送数据操作请求,在Hbase数据库服务端接收和响应所述数据操作请求之前,所述协处理器根据监听到的所述数据操作请求,生成第一日志记录。其中,所述数据操作请求可以为数据包的形式,即数据操作请求包,所述数据操作请求包可以包括数据操作请求类型、数据操作时间、发送数据操作请求的客户端的IP地址中的至少一项。在Hbase数据库响应所述数据操作请求之后,所述协处理器根据监听到的Hbase数据库服务端对数据操作请求的响应,生成第二日志记录。
[0030]其中,所述协处理器根据监听到的Hbase数据库服务端对数据操作请求的响应,生成第二日志记录具体可以包括:所述协处理器在监听到Hbase数据库服务端响应客户端发送的数据操作请求时,根据Hbase数据库服务端生成的待返回给客户端的数据操作响应包,生成第二日志记录。所述数据操作响应包可 以包括:数据操作响应时间、数据操作响应结果中的至少一项。
[0031]优选的,所述协处理器作为插件配置在Hbase数据库服务端中。
[0032]优选的,所述第一日志记录包括数据操作请求类型、数据操作时间、发送数据操作请求的客户端的IP地址中的至少一项,所述第二日志记录包括数据操作响应时间、数据操作响应结果中的至少一项。
[0033]另外,本实施例中的协处理器还可以提供Hbase数据库的审计功能,在客户端需要对Hbase数据库进行数据操作时,可以直接访问Hbase数据库,而无需Hbase数据库的上层应用系统接口作为中间层进行转达,无需修改客户端,例如修改客户端的目标IP地址,提高了客户端与Hbase数据库进行数据操作的效率。
[0034]步骤S102,所述协处理器将所述日志记录存储到预设数据库中。
[0035]其中,所述预设数据库包括Hbase数据库、MySQL数据库或Oracle数据库。所述预设数据库可以为接收和响应数据操作请求的Hbase数据库,也可以为与所述接收和响应数据操作请求的Hbase数据库在同一服务端上的MySQL数据库或Oracle数据库,也可以为与所述接收和响应数据操作请求的Hbase数据库不在同一服务端上的MySQL数据库或Oracle数据库。
[0036]本实施例提供的Hbase数据库数据操作日志的生成方法,在客户端向Hbase数据库服务端发送数据操作请求后,由Hbase数据库服务端中配置的协处理器根据监听到的所述数据操作请求,生成第一日志记录,和/或,根据监听到的Hbase数据库服务端对数据操作请求的响应,生成第二日志记录,并由所述协处理器将所述日志记录存储到预设数据库中,实现了客户端直接向Hbase数据库服务端进行数据操作的日志记录的生成,解决了需要通过开发Hbase上层应用系统接口才能生成对Hbase数据库的数据操作日志记录,以及无法生成不通过上层应用系统接口而直接对Hbase数据库进行数据操作的日志记录的问题,降低了 Hbase数据库中数据操作日志记录生成的成本,实现了对Hbase数据库中所有的数据操作生成数据操作日志记录。
[0037]实施例二
[0038]图2给出了本发明实施例二提供的Hbase数据库数据操作日志的生成装置的结构示意图。如图2所示,本实施例提供的Hbase数据库数据操作日志的生成装置包括:
[0039]日志记录生成单元210,用于Hbase数据库服务端中配置的协处理器,根据监听到的客户端发送的数据操作请求,生成第一日志记录,和/或,根据监听到的Hbase数据库服务端对数据操作请求的响应,生成第二日志记录;
[0040]日志记录存储单元220,用于所述协处理器将所述日志记录存储到预设数据库中。[0041 ] 进一步的,所述日志记录生成单元210具体用于:所述协处理器在监听到Hbase数据库服务端响应客户端发送的数据操作请求时,根据Hbase数据库服务端生成的待返回给客户端的数据操作响应包,生成第二日志记录。
[0042]进一步的,所述协处理器作为插件配置在Hbase数据库服务端中。
[0043]进一步的,所述第一日志记录包括数据操作请求类型、数据操作时间、发送数据操作请求的客户端的IP地址中的至少一项,所述第二日志记录包括数据操作响应时间、数据操作响应结果中的至少一项。
[0044]进一步的,所述预设数据库包括Hbase数据库、MySQL数据库或Oracle数据库。
[0045]本发明实施例提供的Hbase数据库数据操作日志的生成装置可执行本发明实施例一提供的Hbase数据库数据操作日志的生成方法,具备执行方法相应的功能模块和有益效果。
[0046]上述仅为本发明的较佳实施例及所运用的技术原理。本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行的各种明显变化、重新调整及替代均不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由权利要求的范围决定。
【主权项】
1.一种Hbase数据库数据操作日志的生成方法,其特征在于,包括: Hbase数据库服务端中配置的协处理器,根据监听到的客户端发送的数据操作请求,生成第一日志记录,和/或,根据监听到的Hbase数据库服务端对数据操作请求的响应,生成第二曰志记录; 所述协处理器将所述日志记录存储到预设数据库中。2.根据权利要求1所述的方法,其特征在于,所述协处理器根据监听到的Hbase数据库服务端对数据操作请求的响应,生成第二日志记录包括: 所述协处理器在监听到Hbase数据库服务端响应客户端发送的数据操作请求时,根据Hbase数据库服务端生成的待返回给客户端的数据操作响应包,生成第二日志记录。3.根据权利要求1所述的方法,其特征在于,所述协处理器作为插件配置在Hbase数据库服务端中。4.根据权利要求1所述的方法,其特征在于,所述第一日志记录包括数据操作请求类型、数据操作时间、发送数据操作请求的客户端的IP地址中的至少一项,所述第二日志记录包括数据操作响应时间、数据操作响应结果中的至少一项。5.根据权利要求1所述的方法,其特征在于,所述预设数据库包括Hbase数据库、MySQL数据库或Oracle数据库。6.一种Hbase数据库数据操作日志的生成装置,其特征在于,包括: 日志记录生成单元,用于Hbase数据库服务端中配置的协处理器,根据监听到的客户端发送的数据操作请求,生成第一日志记录,和/或,根据监听到的Hbase数据库服务端对数据操作请求的响应,生成第二日志记录; 日志记录存储单元,用于所述协处理器将所述日志记录存储到预设数据库中。7.根据权利要求6所述的装置,其特征在于,所述日志记录生成单元具体用于:所述协处理器在监听到Hbase数据库服务端响应客户端发送的数据操作请求时,根据Hbase数据库服务端生成的待返回给客户端的数据操作响应包,生成第二日志记录。8.根据权利要求6所述的装置,其特征在于,所述协处理器作为插件配置在Hbase数据库服务端中。9.根据权利要求6所述的装置,其特征在于,所述第一日志记录包括数据操作请求类型、数据操作时间、发送数据操作请求的客户端的IP地址中的至少一项,所述第二日志记录包括数据操作响应时间、数据操作响应结果中的至少一项。10.根据权利要求6所述的装置,其特征在于,所述预设数据库包括Hbase数据库、MySQL数据库或Oracle数据库。
【专利摘要】本发明实施例公开了一种Hbase数据库数据操作日志的生成方法及装置,所述方法包括:Hbase数据库服务端中配置的协处理器,根据监听到的客户端发送的数据操作请求,生成第一日志记录,和/或,根据监听到的数据库服务端对数据操作请求的响应,生成第二日志记录;所述协处理器将所述日志记录存储到预设数据库中。本发明实施例提供的技术方案,实现了对Hbase数据库中所有的数据操作生成数据操作日志,并降低了Hbase数据库中数据操作日志生成的成本。
【IPC分类】G06F17/30
【公开号】CN104899278
【申请号】CN201510288933
【发明人】王恩胜, 葛胜利
【申请人】北京京东尚科信息技术有限公司, 北京京东世纪贸易有限公司
【公开日】2015年9月9日
【申请日】2015年5月29日

最新回复(0)