CN110457346B - 数据查询方法、装置及计算机可读存储介质 - Google Patents
数据查询方法、装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN110457346B CN110457346B CN201910608691.6A CN201910608691A CN110457346B CN 110457346 B CN110457346 B CN 110457346B CN 201910608691 A CN201910608691 A CN 201910608691A CN 110457346 B CN110457346 B CN 110457346B
- Authority
- CN
- China
- Prior art keywords
- data
- user
- data query
- field
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 230000001960 triggered effect Effects 0.000 claims abstract description 23
- 238000004458 analytical method Methods 0.000 claims description 4
- 230000008901 benefit Effects 0.000 description 10
- 238000013500 data storage Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003862 health status Effects 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2291—User-Defined Types; Storage management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及数据处理技术领域,公开了一种数据查询方法,该方法包括:接收用户触发的数据查询指令并解析,获取待查询数据对应的字段信息;根据所述字段信息,利用Elastic Search对所述字段信息进行数据搜索,获取所述字段信息对应的特征信息;基于利用Elastic Search查询得到的所述特征信息,在HBase数据库中查找并获取所述特征信息对应的存储在HBase数据库中的用户数据。本发明还提出一种数据查询装置以及一种计算机可读存储介质。本发明实现了一种快速查询用户大量信息的方案,提高了数据查询的便捷性和数据查询的效率,节约了查询时间。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种数据查询方法、装置及计算机可读存储介质。
背景技术
针对HBase这一开源数据库,利用HBase技术可在廉价的PC Server上搭建起大规模的结构化存储集群,虽然HBase点查速度极快,但它不支持多条件数据查询。而ES(Elastic Search,弹性分布式全文搜索)是一个基于Lucene的搜索服务器,虽然ElasticSearch多条件查询极快,但Elastic Search不适合存储用户所有字段数据;由于ElasticSearch和HBase不同交互系统之间的查询条件差异较大,因此,构建HBase对应的row Key则需要较大的数据计算量;因此,在满足数据计算便捷的前提下,如何将Elastic Search搜索服务器与HBase数据库这两种交互系统进行结合以达到快速查询数据从而便捷地获取到相应信息,成为目前亟待解决的问题之一。
发明内容
本发明提供一种数据查询方法、装置及计算机可读存储介质,其主要目的在于提供一种将Elastic Search搜索服务器与HBase数据库这两种交互系统进行结合以进行便捷、快速地查询数据的方案,提高数据查询效率。
为实现上述目的,本发明还提供一种数据查询方法,该方法包括:
接收用户触发的数据查询指令并解析,获取待查询数据对应的字段信息;
根据所述字段信息,利用Elastic Search对所述字段信息进行数据搜索,获取所述字段信息对应的特征信息;
基于利用Elastic Search查询得到的所述特征信息,在HBase数据库中查找并获取所述特征信息对应的存储在HBase数据库中的用户数据。
可选地,所述接收用户触发的数据查询指令并解析,获取待查询数据对应的字段信息,之前还包括:
按照数据查询需求,配置Elastic Search和HBase数据库。
可选地,所述按照数据查询需求,配置Elastic Search和HBase数据库,包括:
按照数据查询需求,设置每个用户分别对应的自定义字段信息;
将自定义的所述字段信息写入HBase数据库对应的预设组件中,得到HBase数据查询组件;
将得到的所述HBase数据查询组件写入Elastic Search对应的查询字段中,并在Elastic Search中建立包含所述查询字段的索引信息。
可选地,所述按照数据查询需求,设置每个用户分别对应的自定义字段信息,包括:
根据数据查询应用场景,确定为获取用户数据所对应的待抽取的字段数量;
根据确定的所述待抽取的字段数量,从每个用户信息中抽取出所述待抽取字段数量对应的用户字段信息,并将抽取出的所述用户字段信息组成对应的自定义字段信息;
其中,所述用户字段信息包括:用户识别码、身份证号码、合同编号、投保编码以及用户年龄、性别和用户职业信息。
可选地,所述根据所述字段信息,利用Elastic Search对所述字段信息进行数据搜索,获取所述字段信息对应的特征信息,包括:
将所述字段信息中的多个字段同时作为搜索目标,利用Elastic Search进行所有字段的多维度同时搜索;
若第一时间匹配到其中一个字段对应的唯一特征信息,则将搜索到的唯一特征信息作为所述字段信息对应的特征信息;
若第一时间匹配到其中一个字段对应的特征信息有多个,则利用Elastic Search继续搜索,直至所述字段信息中包含的所有字段均能匹配到对应的特征信息且匹配到的所述特征信息是唯一的,则将匹配到的唯一的所述特征信息作为所述字段信息对应的特征信息。
此外,为实现上述目的,本发明还提供一种数据查询装置,该装置包括存储器和处理器,所述存储器中存储有可在所述处理器上运行的数据查询程序,所述数据查询程序被所述处理器执行时实现如下步骤:
接收用户触发的数据查询指令并解析,获取待查询数据对应的字段信息;
根据所述字段信息,利用Elastic Search对所述字段信息进行数据搜索,获取所述字段信息对应的特征信息;
基于利用Elastic Search查询得到的所述特征信息,在HBase数据库中查找并获取所述特征信息对应的存储在HBase数据库中的用户数据。
可选地,所述数据查询程序还可被所述处理器执行,以在“接收用户触发的数据查询指令并解析,获取待查询数据对应的字段信息”步骤之前,还实现如下步骤:
按照数据查询需求,配置Elastic Search和HBase数据库。
可选地,所述数据查询程序还可被所述处理器执行,以在按照数据查询需求,配置Elastic Search和HBase数据库,包括:
按照数据查询需求,设置每个用户分别对应的自定义字段信息;
将自定义的所述字段信息写入HBase数据库对应的预设组件中,得到HBase数据查询组件;
将得到的所述HBase数据查询组件写入Elastic Search对应的查询字段中,并在Elastic Search中建立包含所述查询字段的索引信息。
可选地,所述数据查询程序还可被所述处理器执行,以在根据所述字段信息,利用Elastic Search对所述字段信息进行数据搜索,获取所述字段信息对应的特征信息,包括:
将所述字段信息中的多个字段同时作为搜索目标,利用Elastic Search进行所有字段的多维度同时搜索;
若第一时间匹配到其中一个字段对应的唯一特征信息,则将搜索到的唯一特征信息作为所述字段信息对应的特征信息;
若第一时间匹配到其中一个字段对应的特征信息有多个,则利用Elastic Search继续搜索,直至所述字段信息中包含的所有字段均能匹配到对应的特征信息且匹配到的所述特征信息是唯一的,则将匹配到的唯一的所述特征信息作为所述字段信息对应的特征信息。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有数据查询程序,所述数据查询程序可被一个或者多个处理器执行,以实现如上所述的数据查询方法的步骤。
本发明提出的数据查询方法、装置及计算机可读存储介质,接收用户触发的数据查询指令并解析,获取待查询数据对应的字段信息;根据所述字段信息,利用ElasticSearch对所述字段信息进行数据搜索,获取所述字段信息对应的特征信息;基于利用Elastic Search查询得到的所述特征信息,在HBase数据库中查找并获取所述特征信息对应的存储在HBase数据库中的用户数据。本发明实施例充分利用了Elastic Search和HBase这两种系统的优点并将二者的优点进行结合,利用Elastic Search多条件查询极快这一特点,先根据待查询数据对应的字段信息通过Elastic Search快速查询得到对应的特征信息(即定位用户),再在Elastic Search定位用户后,利用HBase极快的点查速度,获取特征信息对应的用户数据(即用户的详细信息),达到了快速查询用户大量信息的目的,提高了数据查询的便捷性和数据查询的效率,节约了查询时间。
附图说明
图1为本发明一实施例提供的数据查询方法的流程示意图;
图2为本发明一实施例提供的数据查询装置的内部结构示意图;
图3为本发明一实施例提供的数据查询装置中数据查询程序的模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种数据查询方法。参照图1所示,为本发明一实施例提供的数据查询方法的流程示意图。该方法可以由一个装置执行,该装置可以由软件和/或硬件实现。
在本实施例中,数据查询方法包括:
步骤S10,接收用户触发的数据查询指令并解析,获取待查询数据对应的字段信息。
本发明实施例中,在结合Elastic Search可进行多条件查询极快这一特点和HBase数据库的点查速度极快的特点进行数据查询时,接收用户触发的数据查询指令并响应。
进一步地,为了提高数据查询的安全性,在接收到用户触发的数据查询指令并响应的操作时,对该数据查询指令的合法性进行校验;比如,验证触发该数据查询指令的用户身份为游客身份还是会员身份;进而根据用户身份,判断触发的该数据查询指令是否在该用户身份对应的访问权限范围内。并在验证该数据查询指令合法的情况下,对该数据查询指令进行解析,并根据解析结果,获取该数据查询指令对应的待查询数据的字段信息。
步骤S20,根据所述字段信息,利用Elastic Search对所述字段信息进行数据搜索,获取所述字段信息对应的特征信息。
步骤S30,基于利用Elastic Search查询得到的所述特征信息,在HBase数据库中查找并获取所述特征信息对应存储在HBase数据库中的用户数据。
本发明实施例中描述的Elastic Search(ES,弹性分布式全文搜索)是一个基于Lucene的搜索服务器,它提供了一个分布式多用户能力的全文搜索引擎,支持RESTfulweb、Java接口,能够支持实时搜索,具有稳定、可靠、快速、安装使用方便等特点,虽然Elastic Search不适合存储用户对应的所有字段数据,但Elastic Search具备多条件查询极快的优势。因此,可以根据获取的待查询数据对应的字段信息,利用Elastic Search采用多条件查询的方式,对所述字段信息进行数据搜索,获取所述字段信息对应的特征信息。
而HBase数据库不同于一般的关系数据库,HBase数据库是一个分布式的、面向列的开源数据库,适合非结构化数据存储;且HBase数据库是基于列的而不是基于行的数据存储模式,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群。因此,根据Elastic Search查询得到的所述特征信息,可以直接在HBase数据库中查找并获取上述特征信息对应的在所述HBase数据中存储的用户数据。
本实施例提出的数据查询方法,接收用户触发的数据查询指令并解析,获取待查询数据对应的字段信息;根据所述字段信息,利用Elastic Search对所述字段信息进行数据搜索,获取所述字段信息对应的特征信息;基于利用Elastic Search查询得到的所述特征信息,在HBase数据库中查找并获取所述特征信息对应的存储在HBase数据库中的用户数据。本发明实施例充分利用了Elastic Search和HBase这两种系统的优点并将二者的优点进行结合,利用Elastic Search多条件查询极快这一特点,先根据待查询数据对应的字段信息通过Elastic Search快速查询得到对应的特征信息(即定位用户),再在ElasticSearch定位用户后,利用HBase极快的点查速度,获取特征信息对应的用户数据(即用户的详细信息),达到了快速查询用户大量信息的目的,提高了数据查询的便捷性和数据查询的效率,节约了查询时间。
进一步地,在本发明方法的另一实施例中,该数据查询方法在图1所述实施例中的步骤S10,接收用户触发的数据查询指令并解析,获取待查询数据对应的字段信息,之前还包括如下步骤:
按照数据查询需求,配置Elastic Search和HBase数据库。
本发明实施例中,在首次执行该数据查询方法,或者针对不同的应用场景实施该数据查询方法且对应的应用场景对数据查询有特殊要求的情况下,需要对Elastic Search和HBase数据库根据数据查询的具体需求,进行相应的配置。
进一步地,在一个实施例中,按照数据查询需求,配置Elastic Search和HBase数据库,可以按照如下描述的技术手段进行实施:
按照数据查询需求,设置每个用户分别对应的自定义字段信息;
将自定义的所述字段信息写入HBase数据库对应的预设组件中,得到HBase数据查询组件;
将得到的所述HBase数据查询组件写入Elastic Search对应的查询字段中,并在Elastic Search中建立包含所述查询字段的索引信息。
本发明实施例中,在对Elastic Search和HBase进行配置时,根据数据查询请求,自定义每个用户分别对应的字段信息,并将相应的自定义字段信息分别写入HBase和Elastic Search中,在写入的过程中,先写HBase后写Elastic Search。在一个具体的应用场景中,对HBase和Elastic Search写入自定义字段信息时,先将自定义字段写入HBase数据库对应的预设组件中,得到HBase数据查询组件;然后,再将写好的HBase数据查询组件写入并保存在Elastic Search对应的查询字段中,并在Elastic Search中建立包含所述查询字段的索引信息,以便进行数据查询和检索。
对配置完成的HBase数据库和Elastic Search,在执行图1所述实施例描述的数据查询操作事件时,根据数据查询指令,首先利用Elastic Search的多条件快速查询,快速定位用户;并在Elastic Search定位用户后,即可再通过HBase的快速点查,获取HBase数据库中对应存储的用户的详细信息。
进一步地,在一个实施例中,按照数据查询需求,设置每个用户分别对应的自定义字段信息,可以按照如下技术手段实施:
根据数据查询应用场景,确定为获取用户数据所对应的待抽取的字段数量;
根据确定的所述待抽取的字段数量,从每个用户信息中抽取出所述待抽取字段数量对应的用户字段信息,并将抽取出的所述用户字段信息组成对应的自定义字段信息;
其中,所述用户字段信息包括:用户识别码、身份证号码、合同编号、投保编码以及用户年龄、性别和用户职业信息。
本发明实施例中,可以根据HBase数据库进行数据查询的具体应用场景,来设置每个用户分别对应的自定义的字段信息;不同的应用场景以及同一应用场景的不用场景需求,所需的用户的自定义字段信息均可能不同,因此,可以按需配置不同的自定义字段信息。其中,在一个具体的应用场景中,本发明实施例所描述的用户字段信息包括但不限于:用户识别码、身份证号码、合同编号、投保编码、用户年龄、用户性别、用户工作年限、用户家庭成员信息、用户在预设时长内的身体健康状况信息以及用户职业信息、用户收入信息、用户家庭资产配置信息等;且每一个用户字段信息对应的字段数量即为一个;比如,用户识别码、身份证号码、合同编号这些用户字段信息对应的字段数量即为3个。
在实际使用时,可以根据具体的应用场景、场景需求待查询数据量、查询速度和查询精度的具体要求等,来具体确定待抽取的字段数量;进而根据确定的上述待抽取的字段数量,抽取出对应的用户字段信息,从而组成所述自定义字段信息。例如,在某一具体的应用场景中,从同一用户对应的一千个字段信息中,抽取出一百个字段信息作为该用户对应的自定义字段信息等。
利用上述处理方式配置的Elastic Search和HBase数据库,为快速准确地进行数据查询提供了重要保障。
进一步地,在一个实施例中,图1所述实施例中的步骤S20,根据所述字段信息,利用Elastic Search对所述字段信息进行数据搜索,获取所述字段信息对应的特征信息,可以按照如下技术手段实施:
将所述字段信息中的多个字段同时作为搜索目标,利用Elastic Search进行所有字段的多维度同时搜索;
若第一时间匹配到其中一个字段对应的唯一特征信息,则将搜索到的唯一特征信息作为所述字段信息对应的特征信息;
若第一时间匹配到其中一个字段对应的特征信息有多个,则利用Elastic Search继续搜索,直至所述字段信息中包含的所有字段均能匹配到对应的特征信息且匹配到的所述特征信息是唯一的,则将匹配到的唯一的所述特征信息作为所述字段信息对应的特征信息。
本发明实施例中,由于利用Elastic Search同时进行多条件快速搜索和查询时,用于进行数据搜索的字段信息中通常都可能包括多个字段,而不同的字段可能匹配到的特征信息可能唯一也可能有多个;比如,若将用户身份证号码或者用户投保号码或者用户合同编号等具备唯一属性且唯一对应一个用户的字段进行特征信息的匹配搜索时,能够在第一时间匹配到唯一对应的特征信息,则此时无需再浪费时间进行其他字段的继续匹配查找,直接将找到的特征信息作为上述字段信息对应的特征信息即可。若将用户的年龄、职业、性别等不具备唯一属性的字段进行特征信息的匹配搜索时,能够在第一时间匹配到的特征信息可能有多个,则利用Elastic Search的多条件查询,继续进行匹配,直至上述字段信息匹配的特征信息有唯一一个且该字段信息中的所有字段均能够与该特征信息进行匹配,则确定将唯一匹配到的特征信息作为上述字段信息对应的用户的特征信息。
需要进行说明的是,本发明实施例中,在利用Elastic Search进行多条件查询时,与字段信息相匹配的特征信息是唯一确定的,但该特征信息对应的用户信息可能存在多个。
本发明实施例利用Elastic Search进行多条件查询,提高了数据查询的效率和数据查询的便捷性,同时也降低数据处理的冗余量。
本发明还提供一种数据查询装置。参照图2所示,为本发明一实施例提供的数据查询装置的内部结构示意图。
在本实施例中,数据查询装置1可以是PC(Personal Computer,个人电脑),也可以是智能手机、平板电脑、便携计算机等终端设备。该数据查询装置1至少包括存储器11、处理器12,通信总线13,以及网络接口14。
其中,存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器11在一些实施例中可以是数据查询装置1的内部存储单元,例如该数据查询装置1的硬盘。存储器11在另一些实施例中也可以是数据查询装置1的外部存储设备,例如数据查询装置1上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器11还可以既包括数据查询装置1的内部存储单元也包括外部存储设备。存储器11不仅可以用于存储安装于数据查询装置1的应用软件及各类数据,例如数据查询程序01的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器12在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器11中存储的程序代码或处理数据,例如执行数据查询程序01等。
通信总线13用于实现这些组件之间的连接通信。
网络接口14可选的可以包括标准的有线接口、无线接口(如WI-FI接口),通常用于在该装置1与其他电子设备之间建立通信连接。
可选地,该装置1还可以包括用户接口,用户接口可以包括显示器(Display)、输入单元比如键盘(Keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在数据查询装置1中处理的信息以及用于显示可视化的用户界面。
图2仅示出了具有组件11-14以及数据查询程序01的数据查询装置1,本领域技术人员可以理解的是,图1示出的结构并不构成对数据查询装置1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
在图2所示的装置1实施例中,存储器11中存储有数据查询程序01;处理器12执行存储器11中存储的数据查询程序01时实现如下步骤:
接收用户触发的数据查询指令并解析,获取待查询数据对应的字段信息。
本发明实施例中,在结合Elastic Search可进行多条件查询极快这一特点和HBase数据库的点查速度极快的特点进行数据查询时,接收用户触发的数据查询指令并响应。
进一步地,为了提高数据查询的安全性,在接收到用户触发的数据查询指令并响应的操作时,对该数据查询指令的合法性进行校验;比如,验证触发该数据查询指令的用户身份为游客身份还是会员身份;进而根据用户身份,判断触发的该数据查询指令是否在该用户身份对应的访问权限范围内。并在验证该数据查询指令合法的情况下,对该数据查询指令进行解析,并根据解析结果,获取该数据查询指令对应的待查询数据的字段信息。
步骤S20,根据所述字段信息,利用Elastic Search对所述字段信息进行数据搜索,获取所述字段信息对应的特征信息。
步骤S30,基于利用Elastic Search查询得到的所述特征信息,在HBase数据库中查找并获取所述特征信息对应存储在HBase数据库中的用户数据。
本发明实施例中描述的Elastic Search(ES,弹性分布式全文搜索)是一个基于Lucene的搜索服务器,它提供了一个分布式多用户能力的全文搜索引擎,支持RESTfulweb、Java接口,能够支持实时搜索,具有稳定、可靠、快速、安装使用方便等特点,虽然Elastic Search不适合存储用户对应的所有字段数据,但Elastic Search具备多条件查询极快的优势。因此,可以根据获取的待查询数据对应的字段信息,利用Elastic Search采用多条件查询的方式,对所述字段信息进行数据搜索,获取所述字段信息对应的特征信息。
而HBase数据库不同于一般的关系数据库,HBase数据库是一个分布式的、面向列的开源数据库,适合非结构化数据存储;且HBase数据库是基于列的而不是基于行的数据存储模式,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群。因此,根据Elastic Search查询得到的所述特征信息,可以直接在HBase数据库中查找并获取上述特征信息对应的在所述HBase数据中存储的用户数据。
本实施例提出的数据查询装置,接收用户触发的数据查询指令并解析,获取待查询数据对应的字段信息;根据所述字段信息,利用Elastic Search对所述字段信息进行数据搜索,获取所述字段信息对应的特征信息;基于利用Elastic Search查询得到的所述特征信息,在HBase数据库中查找并获取所述特征信息对应的存储在HBase数据库中的用户数据。本发明实施例充分利用了Elastic Search和HBase这两种系统的优点并将二者的优点进行结合,利用Elastic Search多条件查询极快这一特点,先根据待查询数据对应的字段信息通过Elastic Search快速查询得到对应的特征信息(即定位用户),再在ElasticSearch定位用户后,利用HBase极快的点查速度,获取特征信息对应的用户数据(即用户的详细信息),达到了快速查询用户大量信息的目的,提高了数据查询的便捷性和数据查询的效率,节约了查询时间。
进一步地,在本发明方法的另一实施例中,所述数据查询程序还可被所述处理器执行,以在“接收用户触发的数据查询指令并解析,获取待查询数据对应的字段信息”步骤之前,还实现如下步骤:
按照数据查询需求,配置Elastic Search和HBase数据库。
本发明实施例中,在首次执行该数据查询方法,或者针对不同的应用场景实施该数据查询方法且对应的应用场景对数据查询有特殊要求的情况下,需要对Elastic Search和HBase数据库根据数据查询的具体需求,进行相应的配置。
进一步地,在一个实施例中,所述数据查询程序还可被所述处理器执行,以在按照数据查询需求,配置Elastic Search和HBase数据库,包括:
按照数据查询需求,设置每个用户分别对应的自定义字段信息;
将自定义的所述字段信息写入HBase数据库对应的预设组件中,得到HBase数据查询组件;
将得到的所述HBase数据查询组件写入Elastic Search对应的查询字段中,并在Elastic Search中建立包含所述查询字段的索引信息。
本发明实施例中,在对Elastic Search和HBase进行配置时,根据数据查询请求,自定义每个用户分别对应的字段信息,并将相应的自定义字段信息分别写入HBase和Elastic Search中,在写入的过程中,先写HBase后写Elastic Search。在一个具体的应用场景中,对HBase和Elastic Search写入自定义字段信息时,先将自定义字段写入HBase数据库对应的预设组件中,得到HBase数据查询组件;然后,再将写好的HBase数据查询组件写入并保存在Elastic Search对应的查询字段中,并在Elastic Search中建立包含所述查询字段的索引信息,以便进行数据查询和检索。
对配置完成的HBase数据库和Elastic Search,在执行图1所述实施例描述的数据查询操作事件时,根据数据查询指令,首先利用Elastic Search的多条件快速查询,快速定位用户;并在Elastic Search定位用户后,即可再通过HBase的快速点查,获取HBase数据库中对应存储的用户的详细信息。
进一步地,在一个实施例中,所述数据查询程序还可被所述处理器执行,以在按照数据查询需求,设置每个用户分别对应的自定义字段信息,包括:
根据数据查询应用场景,确定为获取用户数据所对应的待抽取的字段数量;
根据确定的所述待抽取的字段数量,从每个用户信息中抽取出所述待抽取字段数量对应的用户字段信息,并将抽取出的所述用户字段信息组成对应的自定义字段信息;
其中,所述用户字段信息包括:用户识别码、身份证号码、合同编号、投保编码以及用户年龄、性别和用户职业信息。
本发明实施例中,可以根据HBase数据库进行数据查询的具体应用场景,来设置每个用户分别对应的自定义的字段信息;不同的应用场景以及同一应用场景的不用场景需求,所需的用户的自定义字段信息均可能不同,因此,可以按需配置不同的自定义字段信息。其中,在一个具体的应用场景中,本发明实施例所描述的用户字段信息包括但不限于:用户识别码、身份证号码、合同编号、投保编码、用户年龄、用户性别、用户工作年限、用户家庭成员信息、用户在预设时长内的身体健康状况信息以及用户职业信息、用户收入信息、用户家庭资产配置信息等;且每一个用户字段信息对应的字段数量即为一个;比如,用户识别码、身份证号码、合同编号这些用户字段信息对应的字段数量即为3个。
在实际使用时,可以根据具体的应用场景、场景需求待查询数据量、查询速度和查询精度的具体要求等,来具体确定待抽取的字段数量;进而根据确定的上述待抽取的字段数量,抽取出对应的用户字段信息,从而组成所述自定义字段信息。例如,在某一具体的应用场景中,从同一用户对应的一千个字段信息中,抽取出一百个字段信息作为该用户对应的自定义字段信息等。
利用上述处理方式配置的Elastic Search和HBase数据库,为快速准确地进行数据查询提供了重要保障。
进一步地,在一个实施例中,所述数据查询程序还可被所述处理器执行,以在根据所述字段信息,利用Elastic Search对所述字段信息进行数据搜索,获取所述字段信息对应的特征信息,包括:
将所述字段信息中的多个字段同时作为搜索目标,利用Elastic Search进行所有字段的多维度同时搜索;
若第一时间匹配到其中一个字段对应的唯一特征信息,则将搜索到的唯一特征信息作为所述字段信息对应的特征信息;
若第一时间匹配到其中一个字段对应的特征信息有多个,则利用Elastic Search继续搜索,直至所述字段信息中包含的所有字段均能匹配到对应的特征信息且匹配到的所述特征信息是唯一的,则将匹配到的唯一的所述特征信息作为所述字段信息对应的特征信息。
本发明实施例中,由于利用Elastic Search同时进行多条件快速搜索和查询时,用于进行数据搜索的字段信息中通常都可能包括多个字段,而不同的字段可能匹配到的特征信息可能唯一也可能有多个;比如,若将用户身份证号码或者用户投保号码或者用户合同编号等具备唯一属性且唯一对应一个用户的字段进行特征信息的匹配搜索时,能够在第一时间匹配到唯一对应的特征信息,则此时无需再浪费时间进行其他字段的继续匹配查找,直接将找到的特征信息作为上述字段信息对应的特征信息即可。若将用户的年龄、职业、性别等不具备唯一属性的字段进行特征信息的匹配搜索时,能够在第一时间匹配到的特征信息可能有多个,则利用Elastic Search的多条件查询,继续进行匹配,直至上述字段信息匹配的特征信息有唯一一个且该字段信息中的所有字段均能够与该特征信息进行匹配,则确定将唯一匹配到的特征信息作为上述字段信息对应的用户的特征信息。
需要进行说明的是,本发明实施例中,在利用Elastic Search进行多条件查询时,与字段信息相匹配的特征信息是唯一确定的,但该特征信息对应的用户信息可能存在多个。
本发明实施例利用Elastic Search进行多条件查询,提高了数据查询的效率和数据查询的便捷性,同时也降低数据处理的冗余量。
可选地,在其他实施例中,数据查询程序01还可以被分割为一个或者多个模块,一个或者多个模块被存储于存储器11中,并由一个或多个处理器(本实施例为处理器12)所执行以完成本发明,本发明所称的模块是指能够完成特定功能的一系列计算机程序指令段,用于描述数据查询程序在数据查询装置中的执行过程。
例如,参照图3所示,为本发明数据查询装置一实施例中的数据查询程序的程序模块示意图,该实施例中,数据查询程序可以被分割为指令解析模块10、ES搜索模块20和HBase查询模块30,示例性地:
指令解析模块10用于:接收用户触发的数据查询指令并解析,获取待查询数据对应的字段信息;
ES搜索模块20用于:根据所述字段信息,利用Elastic Search对所述字段信息进行数据搜索,获取所述字段信息对应的特征信息;
HBase查询模块30用于:基于利用Elastic Search查询得到的所述特征信息,在HBase数据库中查找并获取所述特征信息对应的存储在HBase数据库中的用户数据。
上述指令解析模块10、ES搜索模块20和HBase查询模块30等程序模块被执行时所实现的功能或操作步骤与上述实施例大体相同,在此不再赘述。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有数据查询程序,所述数据查询程序可被一个或多个处理器执行,以实现如下操作:
接收用户触发的数据查询指令并解析,获取待查询数据对应的字段信息;
根据所述字段信息,利用Elastic Search对所述字段信息进行数据搜索,获取所述字段信息对应的特征信息;
基于利用Elastic Search查询得到的所述特征信息,在HBase数据库中查找并获取所述特征信息对应的存储在HBase数据库中的用户数据。
本发明计算机可读存储介质具体实施方式与上述数据查询装置和方法各实施例基本相同,在此不作累述。
需要说明的是,上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (5)
1.一种数据查询方法,其特征在于,所述方法包括:
根据数据查询应用场景,确定为获取用户数据所对应的待抽取的字段数量,根据确定的所述待抽取的字段数量,从每个用户信息中抽取出所述待抽取字段数量对应的用户字段信息,并将抽取出的所述用户字段信息组成对应的自定义字段信息,其中,所述用户字段信息包括:用户识别码、身份证号码、合同编号、投保编码以及用户年龄、性别和用户职业信息,将自定义的所述字段信息写入HBase数据库对应的预设组件中,得到HBase数据查询组件,将得到的所述HBase数据查询组件写入ElasticSearch对应的查询字段中,并在ElasticSearch中建立包含所述查询字段的索引信息;
接收用户触发的数据查询指令,对所述数据查询指令进行合法性校验,当所述合法性校验通过时,对所述数据查询指令进行解析,从解析结果中获取待查询数据对应的字段信息;
将所述字段信息中的多个字段同时作为搜索目标,利用ElasticSearch进行所有字段的多维度同时搜索,若第一时间匹配到其中一个字段对应的唯一特征信息,则将搜索到的唯一特征信息作为所述字段信息对应的特征信息,若第一时间匹配到其中一个字段对应的特征信息有多个,则利用ElasticSearch继续搜索,直至所述字段信息中包含的所有字段均能匹配到对应的特征信息且匹配到的所述特征信息是唯一的,则将匹配到的唯一的所述特征信息作为所述字段信息对应的特征信息;
基于利用ElasticSearch查询得到的所述特征信息,在HBase数据库中查找并获取所述特征信息对应的存储在HBase数据库中的用户数据。
2.如权利要求1所述的数据查询方法,其特征在于,所述接收用户触发的数据查询指令并解析,获取待查询数据对应的字段信息,之前还包括:
按照数据查询需求,配置ElasticSearch和HBase数据库。
3.一种数据查询装置,其特征在于,所述装置包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的数据查询程序,所述数据查询程序被所述处理器执行时实现如下步骤:
根据数据查询应用场景,确定为获取用户数据所对应的待抽取的字段数量,根据确定的所述待抽取的字段数量,从每个用户信息中抽取出所述待抽取字段数量对应的用户字段信息,并将抽取出的所述用户字段信息组成对应的自定义字段信息,其中,所述用户字段信息包括:用户识别码、身份证号码、合同编号、投保编码以及用户年龄、性别和用户职业信息,将自定义的所述字段信息写入HBase数据库对应的预设组件中,得到HBase数据查询组件,将得到的所述HBase数据查询组件写入ElasticSearch对应的查询字段中,并在ElasticSearch中建立包含所述查询字段的索引信息;
接收用户触发的数据查询指令,对所述数据查询指令进行合法性校验,当所述合法性校验通过时,对所述数据查询指令进行解析,从解析结果中获取待查询数据对应的字段信息;
将所述字段信息中的多个字段同时作为搜索目标,利用ElasticSearch进行所有字段的多维度同时搜索,若第一时间匹配到其中一个字段对应的唯一特征信息,则将搜索到的唯一特征信息作为所述字段信息对应的特征信息,若第一时间匹配到其中一个字段对应的特征信息有多个,则利用ElasticSearch继续搜索,直至所述字段信息中包含的所有字段均能匹配到对应的特征信息且匹配到的所述特征信息是唯一的,则将匹配到的唯一的所述特征信息作为所述字段信息对应的特征信息;
基于利用ElasticSearch查询得到的所述特征信息,在HBase数据库中查找并获取所述特征信息对应的存储在HBase数据库中的用户数据。
4.如权利要求3所述的数据查询装置,其特征在于,所述数据查询程序还可被所述处理器执行,以在“接收用户触发的数据查询指令并解析,获取待查询数据对应的字段信息”步骤之前,还实现如下步骤:
按照数据查询需求,配置ElasticSearch和HBase数据库。
5.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有数据查询程序,所述数据查询程序可被一个或者多个处理器执行,以实现如权利要求1至2中任一项所述的数据查询方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910608691.6A CN110457346B (zh) | 2019-07-05 | 2019-07-05 | 数据查询方法、装置及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910608691.6A CN110457346B (zh) | 2019-07-05 | 2019-07-05 | 数据查询方法、装置及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110457346A CN110457346A (zh) | 2019-11-15 |
CN110457346B true CN110457346B (zh) | 2024-04-30 |
Family
ID=68482349
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910608691.6A Active CN110457346B (zh) | 2019-07-05 | 2019-07-05 | 数据查询方法、装置及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110457346B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111159182A (zh) * | 2019-12-18 | 2020-05-15 | 深圳前海金融资产交易所有限公司 | 地域资产数据智能搜索方法、装置及计算机可读存储介质 |
CN112328636A (zh) * | 2020-10-27 | 2021-02-05 | 上海金仕达软件科技有限公司 | 一种数据查找方法、装置及电子设备 |
CN112860737B (zh) * | 2021-03-11 | 2022-08-12 | 中国平安财产保险股份有限公司 | 数据查询方法、装置、电子设备及可读存储介质 |
CN113407609A (zh) * | 2021-06-29 | 2021-09-17 | 中国民生银行股份有限公司 | 外部数据使用方法、装置和设备 |
CN113505303A (zh) * | 2021-07-28 | 2021-10-15 | 云账户技术(天津)有限公司 | 一种合同信息查询的方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104598631A (zh) * | 2015-02-05 | 2015-05-06 | 北京航空航天大学 | 分布式数据处理平台 |
CN106649630A (zh) * | 2016-12-07 | 2017-05-10 | 乐视控股(北京)有限公司 | 数据查询方法及装置 |
CN106682073A (zh) * | 2016-11-14 | 2017-05-17 | 上海轻维软件有限公司 | 基于ElasticSearch的HBase模糊检索系统 |
CN107291964A (zh) * | 2017-08-16 | 2017-10-24 | 南京华飞数据技术有限公司 | 一种基于HBase实现模糊查询的方法 |
WO2019105420A1 (zh) * | 2017-11-30 | 2019-06-06 | 新华三大数据技术有限公司 | 数据查询 |
-
2019
- 2019-07-05 CN CN201910608691.6A patent/CN110457346B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104598631A (zh) * | 2015-02-05 | 2015-05-06 | 北京航空航天大学 | 分布式数据处理平台 |
CN106682073A (zh) * | 2016-11-14 | 2017-05-17 | 上海轻维软件有限公司 | 基于ElasticSearch的HBase模糊检索系统 |
CN106649630A (zh) * | 2016-12-07 | 2017-05-10 | 乐视控股(北京)有限公司 | 数据查询方法及装置 |
CN107291964A (zh) * | 2017-08-16 | 2017-10-24 | 南京华飞数据技术有限公司 | 一种基于HBase实现模糊查询的方法 |
WO2019105420A1 (zh) * | 2017-11-30 | 2019-06-06 | 新华三大数据技术有限公司 | 数据查询 |
Also Published As
Publication number | Publication date |
---|---|
CN110457346A (zh) | 2019-11-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110457346B (zh) | 数据查询方法、装置及计算机可读存储介质 | |
CN109299110B (zh) | 数据查询方法、装置、存储介质和电子设备 | |
CN110457363B (zh) | 基于分布式数据库的查询方法、装置及存储介质 | |
WO2019140828A1 (zh) | 电子装置、分布式系统日志查询方法及存储介质 | |
US9817858B2 (en) | Generating hash values | |
CN109471857B (zh) | 基于sql语句的数据修改方法、装置及存储介质 | |
CN104081380A (zh) | 对来自多个数据源的解决方案的识别和排序 | |
CN106407360B (zh) | 一种数据的处理方法及装置 | |
US20170322920A1 (en) | Dispatch of user input to multiple input fields in a user interface | |
CN109299235B (zh) | 知识库搜索方法、装置及计算机可读存储介质 | |
CN108170752B (zh) | 基于模板的元数据管理方法和系统 | |
CN112860727B (zh) | 基于大数据查询引擎的数据查询方法、装置、设备及介质 | |
CN113051268A (zh) | 数据查询方法、数据查询装置、电子设备及存储介质 | |
CN113407785A (zh) | 一种基于分布式储存系统的数据处理方法和系统 | |
CN113010484A (zh) | 日志文件管理方法及装置 | |
CN110569419A (zh) | 问答系统优化方法、装置、计算机设备及存储介质 | |
CN111723077A (zh) | 数据字典维护方法、装置及计算机设备 | |
CN114547095A (zh) | 一种数据快速查询方法、装置、电子设备和存储介质 | |
CN115374129A (zh) | 一种数据库联合索引编码方法和系统 | |
CN108763524B (zh) | 电子装置、聊天数据处理方法和计算机可读存储介质 | |
CN112000692B (zh) | 页面查询反馈方法、装置、计算机设备及可读存储介质 | |
WO2019071907A1 (zh) | 基于操作页面识别帮助信息的方法及应用服务器 | |
CN110874365B (zh) | 一种信息查询方法及其相关设备 | |
CN110866007B (zh) | 大数据应用和表的信息管理方法、系统和计算机设备 | |
CN111414519A (zh) | 一种信息处理方法、装置、计算机系统及可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |