一种基于Protobuf协议的HBASE数据库解析方法及系统技术方案

技术编号:28787015 阅读:16 留言:0更新日期:2021-06-09 11:22
本发明专利技术提出了一种基于Protobuf协议的HBASE数据库解析方法及系统,涉及通信协议领域。一种基于Protobuf协议的HBASE数据库解析方法包括:获取HBASE数据结构的定义文件,对定义文件进行预处理生成代码文件;编译链接生成的代码文件,生成接口库文件;解析装置链接接口库文件,根据数据结构生成对应的数据结构解析接口;通过解析出的数据结构体成员的数值还原HBASE的操作行为。其能够既高效的能够在抓取到HBASE通信协议后迅速解析。此外本发明专利技术还提出了一种基于Protobuf协议的HBASE数据库解析系统,包括:预处理模块、第一生成模块、第二生成模块及输出模块。生成模块及输出模块。生成模块及输出模块。

【技术实现步骤摘要】
一种基于Protobuf协议的HBASE数据库解析方法及系统


[0001]本专利技术涉及通信协议领域,具体而言,涉及一种基于Protobuf协议的 HBASE数据库解析方法及系统。

技术介绍

[0002]Protocol Buffers是一种轻便高效的结构化数据存储格式,可以用于结构化数据串行化,或者说序列化。它很适合做数据存储或RPC数据交换格式。可用于通讯协议、数据存储等领域的语言无关、平台无关、可扩展的序列化结构数据格式。
[0003]Hbase是Hadoop database的简称,也就是基于Hadoop数据库,是一种NoSQL数据库,主要适用于海量明细数据(十亿、百亿)的随机实时查询,如日志明细、交易清单、轨迹行为等。
[0004]Protobuf是一种跨语言和平台、可扩展的、灵活高效的用于序列化数据的协议,适用于通信协议传输、数据存储等对存储体积、实时性要求高的领域。HBASE数据库使用Protobuf协议进行通信,使得数据流能够高效、快捷的传输,但由于Protobuf协议数据结构的复杂性,使得对HBASE的行为解析的难度增大。

技术实现思路

[0005]本专利技术的目的在于提供一种基于Protobuf协议的HBASE数据库解析方法,其能够通过Protobuf协议定义了.proto文件,编译成相对应的多个数据结构解析接口。此方法既高效的能够在抓取到HBASE通信协议后迅速解析,同时利用了Protobuf的特性,使得数据结构即使由于HBASE版本不同而有所差异,解析接口依然能解析对应的数据结构,解决了基于Prootbuf 协议下,HBASE通信协议解析困难的问题。
[0006]本专利技术的另一目的在于提供一种基于Protobuf协议的HBASE数据库解析系统,其能够运行一种基于Protobuf协议的HBASE数据库解析方法。
[0007]本专利技术的实施例是这样实现的:
[0008]第一方面,本申请实施例提供一种基于Protobuf协议的HBASE数据库解析方法,其包括获取HBASE数据结构的定义文件,对定义文件进行预处理生成代码文件;编译链接生成的代码文件,生成接口库文件;解析装置链接接口库文件,根据数据结构生成对应的数据结构解析接口;通过解析出的数据结构体成员的数值还原HBASE的操作行为。
[0009]在本专利技术的一些实施例中,上述获取HBASE数据结构的定义文件,对定义文件进行预处理生成代码文件包括:HBASE数据库与客户端的通信按照文件定义的数据结构进行序列化和反序列化。
[0010]在本专利技术的一些实施例中,上述还包括通过创建.proto文件,定义数据结构的名称和类型,数据结构与HBASE数据库的通信数据结构保持一致性。
[0011]在本专利技术的一些实施例中,上述编译链接生成的代码文件,生成接口库文件包括:通过protoc编译器编译定义好的.proto文件,生成接口库文件。
[0012]在本专利技术的一些实施例中,上述解析装置链接接口库文件,根据数据结构生成对应的数据结构解析接口包括:对HBASE数据库通信数据进行抓包。
[0013]在本专利技术的一些实施例中,还包括审计HBASE的操作行为对管理端口和数据读写端口同时抓包,审计到完整的操作行为。
[0014]在本专利技术的一些实施例中,上述通过解析出的数据结构体成员的数值还原HBASE的操作行为包括:对数据流量进行结构体解析赋值,得到数据结构中的值;对数据结构中的值进行重组还原。
[0015]第二方面,本申请实施例提供一种基于Protobuf协议的HBASE数据库解析系统,其包括预处理模块,用于获取HBASE数据结构的定义文件,对定义文件进行预处理生成代码文件;第一生成模块,用于编译链接生成的代码文件,生成接口库文件;第二生成模块,用于解析装置链接接口库文件,根据数据结构生成对应的数据结构解析接口;输出模块,用于通过解析出的数据结构体成员的数值还原HBASE的操作行为。
[0016]在本专利技术的一些实施例中,上述还包括重组还原模块,用于对数据流量进行结构体解析赋值,得到数据结构中的值,对数据结构中的值进行重组还原。
[0017]在本专利技术的一些实施例中,上述包括:用于存储计算机指令的至少一个存储器;与上述存储器通讯的至少一个处理器,其中当上述至少一个处理器执行上述计算机指令时,上述至少一个处理器使上述系统执行:预处理模块、第一生成模块、第二生成模块及输出模块。
[0018]相对于现有技术,本专利技术的实施例至少具有如下优点或有益效果:
[0019]通过Protobuf协议定义了.proto文件,编译成相对应的多个数据结构解析接口。此方法既高效的能够在抓取到HBASE通信协议后迅速解析,同时利用了Protobuf的特性,使得数据结构即使由于HBASE版本不同而有所差异,解析接口依然能解析对应的数据结构,解决了基于Prootbuf协议下, HBASE通信协议解析困难的问题。
附图说明
[0020]为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本专利技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0021]图1为本专利技术实施例提供的一种基于Protobuf协议的HBASE数据库解析方法步骤示意图;
[0022]图2为本专利技术实施例提供的一种基于Protobuf协议的HBASE数据库解析方法详细步骤示意图;
[0023]图3为本专利技术实施例提供的一种基于Protobuf协议的HBASE数据库解析系统模块示意图。
[0024]图标:10

预处理模块;20

第一生成模块;30

第二生成模块;40

输出模块。
具体实施方式
[0025]为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例
中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
[0026]因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0027]应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
[0028]需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于Protobuf协议的HBASE数据库解析方法,其特征在于,包括:获取HBASE数据结构的定义文件,对定义文件进行预处理生成代码文件;编译链接生成的代码文件,生成接口库文件;解析装置链接接口库文件,根据数据结构生成对应的数据结构解析接口;通过解析出的数据结构体成员的数值还原HBASE的操作行为。2.如权利要求1所述的一种基于Protobuf协议的HBASE数据库解析方法,其特征在于,所述获取HBASE数据结构的定义文件,对定义文件进行预处理生成代码文件包括:HBASE数据库与客户端的通信按照文件定义的数据结构进行序列化和反序列化。3.如权利要求2所述的一种基于Protobuf协议的HBASE数据库解析方法,其特征在于,还包括:通过创建.proto文件,定义数据结构的名称和类型,数据结构与HBASE数据库的通信数据结构保持一致性。4.如权利要求1所述的一种基于Protobuf协议的HBASE数据库解析方法,其特征在于,所述编译链接生成的代码文件,生成接口库文件包括:通过protoc编译器编译定义好的.proto文件,生成接口库文件。5.如权利要求1所述的一种基于Protobuf协议的HBASE数据库解析方法,其特征在于,所述解析装置链接接口库文件,根据数据结构生成对应的数据结构解析接口包括:对HBASE数据库通信数据进行抓包。6.如权利要求5所述的一种基于Protobuf协议的HBASE数据库解析方法,...

【专利技术属性】
技术研发人员:唐更新张群宋辉王锋赵卫国
申请(专利权)人:北京中安星云软件技术有限公司
类型:发明
国别省市:

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

1