一种HBase多字段索引数据查询方法、装置、设备及存储介质与流程

文档序号:37484706发布日期:2024-04-01 13:53阅读:13来源:国知局
本发明涉及数据处理,尤其涉及一种hbase多字段索引数据查询方法、装置、设备及存储介质。
背景技术
::1、hbase是一种开源的分布式列式数据库,其数据模型类似于google的bigtable,它使用行键(row key)、列族(column family)和列限定符(column qualifier)来组织数据。数据以行的形式存储在分布式存储集群中,每一行可以有多个列族,每个列族可以包含多个列限定符。2、hbase的数据查询可以通过以下几种方式进行,分别是根据行键进行查询:可以通过指定行键的值来获取对应行的数据。这种查询方式非常高效,因为hbase会根据行键的范围进行数据的存储和索引;列族和列的查询:可以根据列族和列的名称来获取对应的数据。这种查询方式可以用于获取特定列族或列的数据,可以通过列族和列的前缀来进行模糊查询;过滤器查询:hbase支持多种过滤器,可以根据条件对数据进行过滤。常见的过滤器包括单值过滤器、前缀过滤器、范围过滤器等;扫描查询:可以通过扫描整个表来获取数据。扫描查询可以指定起始行键和结束行键,以及需要返回的列族和列。3、现有的hbase的数据查询是基于行键来进行快速查询一行的数据,然后借助列族名或者限定符来筛选特定列获取数据值;或者依赖过滤器进行范围扫描。在数据规模很大的时候,使用过滤器或者基于起始行键或结束行键进行范围扫描进行数据查询会变得很慢。在需要针对多个字段进行快速地查询,且每个字段都可能是独立进行查询时,并要求对字段值进行模糊匹配,基于行键的快速查询方式也不能满足业务的需求。技术实现思路1、为了解决上述提出的至少一个技术问题,本发明的目的在于提供一种hbase多字段索引数据查询方法、装置、设备及存储介质。2、本发明的目的采用如下技术方式实现:3、第一方面,本发明提供了一种hbase多字段索引数据查询方法,包括:4、接收查询请求;5、根据查询条件查询第一数据表得到行键集合;6、根据所述行键集合查询第二数据表得到列值集合;7、将所述列值集合作为查询结果进行返回。8、优选地,在所述接收查询请求之前,还包括:9、生成第一数据表;10、将所述第一数据表写入数据库。11、优选地,所述生成第一数据表,包括:12、获取所述第二数据表的第二数据;13、以所述查询条件的字段值作为所述第一数据表的行键,以所述第二数据的行键作为所述第一数据表的列值形成第一数据。14、优选地,在所述将所述第一数据表写入数据库之前,还包括:15、对需要进行模糊查询的列值进行反转作为所述第一数据表的行键,以所述第二数据的行键作为所述第一数据表的列值形成第一数据。16、优选地,所述将所述第一数据表写入数据库,包括:17、获取所述第一数据表的第一数据;18、对所述第一数据进行处理得到数据表文件;19、将所述数据表文件写入所述数据库。20、优选地,所述对所述第一数据进行处理得到数据表文件,包括:21、使用rdd算子对所述第一数据进行转换格式;22、根据所述第一数据表分区的起始行键和结束行键进行重新分区;23、对每个分区的所述第一数据进行排列并写入所述数据表文件。24、优选地,所述将所述列值集合作为查询结果进行返回,包括:25、根据所述列值确定匹配记录的数量;26、根据分页参数返回所述查询结果;27、所述分页参数包括匹配记录的页码和每页展示记录的数量。28、第二方面,本发明提供了一种hbase多字段索引数据查询装置,包括:29、请求接收模块,用于接收查询请求;30、第一查询模块,用于根据查询条件查询第一数据表得到行键集合;31、第二查询模块,用于根据所述行键集合查询第二数据表得到列值集合;32、结果返回模块,用于将所述列值集合作为查询结果进行返回。33、第三方面,本发明提供了一种电子设备,包括处理器和存储器,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述处理器执行所述计算机指令时,所述电子设备执行上述的一种hbase多字段索引数据查询方法。34、第四方面,本发明提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被电子设备的处理器执行时,使所述处理器执行上述的一种hbase多字段索引数据查询方法。35、相比现有技术,本发明的有益效果在于:36、本发明通过在hbase新建独立的数据表,每次查询实际的数据表之前,都会从独立的数据表中得到实际的数据表中的行键,然后通过行键在实际的数据表中快速查询,有利于添加任意的查询索引字段,灵活应对查询条件,满足了提供快速点查的业务需求,实现数据的快速查询。37、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本公开。技术特征:1.一种hbase多字段索引数据查询方法,其特征在于,包括:2.根据权利要求1所述的一种hbase多字段索引数据查询方法,其特征在于,在所述接收查询请求之前,还包括:3.根据权利要求2所述的一种hbase多字段索引数据查询方法,其特征在于,所述生成第一数据表,包括:4.根据权利要求3所述的一种hbase多字段索引数据查询方法,其特征在于,在所述将所述第一数据表写入数据库之前,还包括:5.根据权利要求2所述的一种hbase多字段索引数据查询方法,其特征在于,所述将所述第一数据表写入数据库,包括:6.根据权利要求5所述的一种hbase多字段索引数据查询方法,其特征在于,所述对所述第一数据进行处理得到数据表文件,包括:7.根据权利要求1所述的一种hbase多字段索引数据查询方法,其特征在于,所述将所述列值集合作为查询结果进行返回,包括:8.一种hbase多字段索引数据查询装置,其特征在于,包括:9.一种电子设备,其特征在于,包括处理器和存储器,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述处理器执行所述计算机指令时,所述电子设备执行如权利要求1至7任意一项所述的一种hbase多字段索引数据查询方法。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被电子设备的处理器执行时,使所述处理器执行如权利要求1至7任意一项所述的一种hbase多字段索引数据查询方法。技术总结本发明公开了一种HBase多字段索引数据查询方法、装置、设备及存储介质,该方法包括接收查询请求;根据查询条件查询第一数据表得到行键集合;根据所述行键集合查询第二数据表得到列值集合;将所述列值集合作为查询结果进行返回。本发明通过在HBase新建独立的数据表,每次查询实际的数据表之前,都会从独立的数据表中得到实际的数据表中的行键,然后通过行键在实际的数据表中快速查询,有利于添加任意的查询索引字段,灵活应对查询条件,满足了提供快速点查的业务需求,实现数据的快速查询。技术研发人员:林坚宏,林志华受保护的技术使用者:广州市申迪计算机系统有限公司技术研发日:技术公布日:2024/3/31
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1