CN115544096B - 数据查询方法、装置、计算机设备及存储介质 - Google Patents

数据查询方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN115544096B
CN115544096B CN202211470095.4A CN202211470095A CN115544096B CN 115544096 B CN115544096 B CN 115544096B CN 202211470095 A CN202211470095 A CN 202211470095A CN 115544096 B CN115544096 B CN 115544096B
Authority
CN
China
Prior art keywords
query
database
data
task group
configuration 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
Application number
CN202211470095.4A
Other languages
English (en)
Other versions
CN115544096A (zh
Inventor
刘飞
杜熙仑
林跃
王家其
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Donson Times Information Technology Co ltd
Original Assignee
Donson Times Information Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Donson Times Information Technology Co ltd filed Critical Donson Times Information Technology Co ltd
Priority to CN202211470095.4A priority Critical patent/CN115544096B/zh
Publication of CN115544096A publication Critical patent/CN115544096A/zh
Application granted granted Critical
Publication of CN115544096B publication Critical patent/CN115544096B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24553Query execution of query operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本发明涉及数据处理技术领域,公开了一种数据查询方法、装置、计算机设备及存储介质,其方法包括:在数据仓库定时执行查询任务组,获得任务组查询数据;获取数据库配置信息,根据数据库配置信息确定与查询任务组关联的第一数据库;数据库配置信息包括所述查询任务组与所述第一数据库之间的第一关联关系,以及业务查询指令与第二数据库之间的第二关联关系;根据任务组查询数据更新第一数据库,并修改数据库配置信息。本发明的数据查询方法实现了数仓数据与业务数据的解耦,提高了数据读写性能,提高了响应速度和查询效率。

Description

数据查询方法、装置、计算机设备及存储介质
技术领域
本发明涉及数据处理技术领域,尤其涉及一种数据查询方法、装置、计算机设备及存储介质。
背景技术
按照数据存储方式可将数据库分为关系型数据库和非关系型数据库。关系型数据库(例如Mysql、Oracle、SQLServe、SQLite、MariaDB、PostgreSql等)的数据结构是表格式,由二维表及其之间的联系所组成。关系型数据库将数据存储在数据表的行和列中,数据表可以彼此关联协作存储,也很容易提取数据。非关系型数据库(例如mongoDB、Hbase、redis、CouchDB、redis、cassandra、Neo4J等)严格上不是一种数据库,而是一种数据结构化存储方法的集合。非关系型数据库的数据存储在数据集中,数据结构为文档形式、键值对形式或者图结构形式。随着非关系型数据库的发展,基于分布式文件存储系统(Hadoop DistributedFile System,HDFS)的数据仓库(Data Warehouse)应运而生,数据仓库又称数仓,是一个面向主题的、集成的、相对稳定的、反映历史变化的数据集合。
现有技术中,关系型数据库面向业务,用于存放业务数据;数仓面向主题,用于存放报表、分析数据、聚合数据以及各种来源的文档数据等。当业务数据与数仓数据存在交集时,需要将数仓数据同步至业务数据的关系型数据库中,或者将业务数据同步至数仓数据中进行数据交互。数仓数据可以作为各业务系统的业务数据来源,用户根据不同业务场景下的查询条件从数据仓库中调用业务数据。如果每次都从数据仓库中直接执行查询条件,当查询数据量比较大时,对数据仓库的读写压力较大;同时,数据仓库有实时更新的读写任务需要执行,会导致业务查询与数仓读写任务占用同一份资源,增大资源消耗。
因此,由于业务数据与数仓数据存在强耦合关系,交互过程中无法兼顾两者的性能,一方面由于查询数据量级大,业务数据的关系型数据库无法承载海量数据的高效率读写,导致读写性能差;另一方面数仓数据查询不支持高并发的交互请求,资源消耗大,响应速度慢。
发明内容
基于此,有必要针对上述技术问题,提供一种数据查询方法、装置、计算机设备及存储介质,以解决数据查询过程中的业务数据读写性能差,数仓数据响应速度慢的问题。
一种数据查询方法,包括:
在数据仓库定时执行查询任务组,获得任务组查询数据;所述查询任务组包括多个查询任务;
获取数据库配置信息,根据所述数据库配置信息确定与所述查询任务组关联的第一数据库;所述数据库配置信息包括所述查询任务组与所述第一数据库之间的第一关联关系,以及业务查询指令与第二数据库之间的第二关联关系;
根据所述任务组查询数据更新所述第一数据库,并修改所述数据库配置信息,以使所述查询任务组与所述第二数据库关联,所述业务查询指令与所述第一数据库关联。
一种数据查询方法,包括:
接收用户发送的业务查询指令;
获取数据库配置信息,根据所述数据库配置信息确定与所述业务查询指令关联的第二数据库;所述数据库配置信息包括所述业务查询指令与所述第二数据库之间的第二关联关系,以及查询任务组与第一数据库之间的第一关联关系;所述数据库配置信息中的所述第一关联关系和所述第二关联关系按预设时间周期发生关联交换;其中,在上一时间周期发生关联交换之前,所述第二数据库依照所述查询任务组获得的任务组查询数据进行更新;
在所述第二数据库执行所述业务查询指令,获得查询结果。
一种数据查询装置,包括:
数据仓库查询模块,用于在数据仓库定时执行查询任务组,获得任务组查询数据;所述查询任务组包括多个查询任务;
第一数据库确定模块,用于获取数据库配置信息,根据所述数据库配置信息确定与所述查询任务组关联的第一数据库;所述数据库配置信息包括所述查询任务组与所述第一数据库之间的第一关联关系,以及业务查询指令与第二数据库之间的第二关联关系;
第一数据库更新模块,用于根据所述任务组查询数据更新所述第一数据库,并修改所述数据库配置信息,以使所述查询任务组与所述第二数据库关联,所述业务查询指令与所述第一数据库关联。
一种数据查询装置,包括:
业务查询指令接收模块,用于接收用户发送的业务查询指令;
第二数据库确定模块,用于获取数据库配置信息,根据所述数据库配置信息确定与所述业务查询指令关联的第二数据库;所述数据库配置信息包括所述业务查询指令与所述第二数据库之间的第二关联关系,以及查询任务组与第一数据库之间的第一关联关系;所述数据库配置信息中的所述第一关联关系和所述第二关联关系按预设时间周期发生关联交换;其中,在上一时间周期发生关联交换之前,所述第二数据库依照所述查询任务组获得的任务组查询数据进行更新;
业务数据查询模块,用于在所述第二数据库执行所述业务查询指令,获得查询结果。
一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机可读指令,所述处理器执行所述计算机可读指令时实现上述数据查询方法。
一个或多个存储有计算机可读指令的可读存储介质,所述计算机可读指令被一个或多个处理器执行时,使得所述一个或多个处理器执行如上述数据查询方法。
上述数据查询方法、装置、计算机设备及存储介质,其方法一方面通过在数据仓库定时执行查询任务组,获得任务组查询数据;获取数据库配置信息,根据数据库配置信息确定与查询任务组关联的第一数据库;根据任务组查询数据更新第一数据库,并修改数据库配置信息,以使查询任务组与第二数据库关联,业务查询指令与第一数据库关联。另一方面通过接收用户发送的业务查询指令;获取数据库配置信息,根据数据库配置信息确定与业务查询指令关联的第二数据库;数据库配置信息中的第一关联关系和第二关联关系按预设时间周期发生关联交换;其中,在上一时间周期发生关联交换之前,第二数据库依照查询任务组获得的任务组查询数据进行更新;在第二数据库执行业务查询指令,获得查询结果。本发明的数据查询方法通过设置第一数据库和第二数据库,第一数据库用于数仓数据的写入,第二数据库用于业务数据的查询读取,实现了数仓数据与业务数据解耦,缩小业务数据查询范围,减小查询数据量,提高数据读写性能;通过在数据仓库定时执行查询任务组,利用任务组查询数据更新第一数据库,实现数据预热,提高响应速度;通过第一数据库和第二数据库的关联切换实现业务数据更新,保证了业务数据的时效性,保证了输出性能,提高了查询效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例中用于数据仓库端的数据查询方法的一流程示意图;
图2是本发明一实施例中用于业务端的数据查询方法的一流程示意图;
图3是本发明一实施例中用于数据仓库端的数据查询装置的一结构示意图;
图4是本发明一实施例中用于业务端的数据查询装置的一结构示意图;
图5是本发明一实施例中计算机设备的一示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在一实施例中,如图1所示,提供一种用于数据仓库端的数据查询方法,包括如下步骤S10-S30。
S10、在数据仓库定时执行查询任务组,获得任务组查询数据;所述查询任务组包括多个查询任务。
可理解地,数据仓库面向主题,集合了各个业务系统的数据,用于分析数据、存放报表、决策分析,例如金融行业的数据仓库包含了客户关系管理业务、贷款业务、存款业务等数据。数据仓库中的数据是实时更新的。从数据量来说,数据仓库要比业务数据库更庞大。查询任务组包括多个查询任务,用于根据每个查询任务对应的查询条件在数据仓库中查询,获得任务组查询数据。
在一实施例中,在数据仓库定时执行查询任务组之前,提取当前业务场景下全部可选的查询关键词,生成多个第一查询条件(如a,b,c,d等)。每个第一查询条件包括一个或多个查询关键词。第一查询条件用于对数仓数据进行查询。根据每个第一查询条件生成对应的查询任务(如A,B,C,D等),即第一查询条件a对应查询任务A,第一查询条件b对应查询任务B,第一查询条件c对应查询任务C,第一查询条件d对应查询任务D;……。对查询任务添加定时标记后进行组合,生成查询任务组。查询任务组包括查询任务A、查询任务B、查询任务C和查询任务D等。可以按照预设时间周期执行查询任务组。预设时间周期可以在后台预先设置默认值,也可以根据当前业务场景修改设置,例如设置为5分钟。按照预设时间周期在数据仓库执行查询任务组,从数据仓库中获得任务组查询数据。
S20、获取数据库配置信息,根据所述数据库配置信息确定与所述查询任务组关联的第一数据库;所述数据库配置信息包括所述查询任务组与所述第一数据库之间的第一关联关系,以及业务查询指令与第二数据库之间的第二关联关系。
可理解地,第一数据库和第二数据库是设置于数据仓库之外的两个独立数据库,其中,第一数据库用于存储查询任务组的任务组查询数据,即备份数据库(可以称为冷库),第二数据库用于执行业务查询指令的数据库,即查询数据库(可以称为热库)。数据库配置信息包括查询任务组与第一数据库之间的第一关联关系,以及业务查询指令与第二数据库之间的第二关联关系。可以根据第一关联关系确定与查询任务组关联的第一数据库,以及根据第二关联关系确定与业务查询指令关联的第二数据库。在一实施例中,甲数据库和乙数据库是设置于数据仓库之外的两个独立数据库,当前时间周期的甲数据库与查询任务组之间存在第一关联关系,当前时间周期的乙数据库与业务查询指令之间存在第二关联关系。获取当前时间周期的数据库配置信息,根据数据库配置信息确定与查询任务组关联的第一数据库为甲数据库。
S30、根据所述任务组查询数据更新所述第一数据库,并修改所述数据库配置信息,以使所述查询任务组与所述第二数据库关联,所述业务查询指令与所述第一数据库关联。
可理解地,根据任务组查询数据更新第一数据库,将任务组查询数据添加到第一数据库并对第一数据库已有的数据进行替换,具体的替换方式可以是全量替换,也可以是增量更新。根据任务组查询数据更新第一数据库之后,当前时间周期的查询任务组执行完成,在执行下一时间周期的查询任务组之前,需要修改数据库配置信息,将当前时间周期的两个数据库对应的关联关系进行交换。在一实施例中,甲数据库和乙数据库是设置于数据仓库之外的两个独立数据库,当前时间周期的甲数据库与查询任务组之间存在第一关联关系,当前时间周期的乙数据库与业务查询指令之间存在第二关联关系。即在修改数据库配置信息之前,第一数据库为甲数据库,第二数据库为乙数据库。下一时间周期的乙数据库与查询任务组之间建立第一关联关系,下一时间周期的甲数据库与业务查询指令之间建立第二关联关系。即在修改数据库配置信息之后,第一数据库为乙数据库,第二数据库为甲数据库。
本实施例通过在数据仓库定时执行查询任务组,获得任务组查询数据;获取数据库配置信息,根据数据库配置信息确定与查询任务组关联的第一数据库;数据库配置信息包括查询任务组与第一数据库之间的第一关联关系,以及业务查询指令与第二数据库之间的第二关联关系;根据任务组查询数据更新第一数据库,并修改所述数据库配置信息,以使查询任务组与第二数据库关联,业务查询指令与第一数据库关联。本实施例的数据查询方法通过设置第一数据库和第二数据库,第一数据库用于数仓数据的写入,第二数据库用于业务数据的读取,实现了数仓数据与业务数据解耦,缩小业务数据查询范围,减小查询数据量,提高数据读写性能;通过在数据仓库定时执行查询任务组,利用任务组查询数据更新第一数据库,实现数据预热,提高响应速度。
可选的,步骤S10中,即所述在数据仓库定时执行查询任务组,获取任务组查询数据,包括:
S101、串行执行所述多个查询任务,获得与所述查询任务对应的数仓查询结果;
S102、根据所述多个查询任务的数仓查询结果生成所述任务组查询数据。
可理解地,任务的执行方式包括并行和串行,并行执行指的是多个任务可以同时执行,异步是多个任务并行的前提条件;串行执行是指多个任务时,各个任务按顺序逐一执行,完成一个之后继续执行进行下一个任务。由于查询任务组的多个查询任务均是对数据仓库进行查询操作,因此采用串行执行方式。在一实施例中,查询任务组包括查询任务A、查询任务B、查询任务C和查询任务D,通过串行执行方式,执行查询任务A获得数仓查询结果A-,执行查询任务B获得数仓查询结果B-,执行查询任务C获得数仓查询结果C-,执行查询任务D获得数仓查询结果D-;根据数仓查询结果(A-,B-,C-,D-)生成任务组查询数据。
本实施例通过串行执行的方式执行查询任务,逐一获取各单一条件下的数仓查询结果,保证了数仓查询结果的覆盖度;同时串行执行查询任务,可以减少数据仓库的查询压力。
可选的,步骤S101中,即所述串行执行所述多个查询任务,获得与所述查询任务对应的数仓查询结果,包括:
S1011、在所述数据仓库执行所述查询任务,获得数仓完整查询结果;
S1012、按照预设提取规则从所述数仓完整查询结果提取指定数量的结果,生成所述数仓查询结果。
可理解地,在具体的业务场景中,执行每次查询任务返回的查询结果通常会分页显示,并不要求一次性返回所有数据。因此,可以根据需要设置规则将部分数据从数据仓库中筛选出来,以进行业务数据查询。预设提取规则是预先设置的数据提取规则,可以是数据属性规则,也可以是随机规则。在一实施例中,预设提取规则为提取顺序序列中前200条(top200)的数据,执行查询任务A获得数仓完整查询结果A+,提取A+中top200的数据作为数仓查询结果A-;执行查询任务B获得数仓完整查询结果B+,提取B+中top200的数据作为数仓查询结果B-;执行查询任务C获得数仓完整查询结果C+,提取C+中top200的数据作为数仓查询结果C-;执行查询任务D获得数仓完整查询结果D+,提取D+中top200的数据作为数仓查询结果D-;对A-、B-、C-和D-进行数据聚合,获得数仓查询结果(A-,B-,C-,D-)。
本实施例根据预设提取规则获取各单一查询任务的部分数据,在保证数据覆盖度的前提下优化了数据查询结果,减小了数据查询压力,加快了反应速度。
在一实施例中,如图2所示,提供一种用于业务端的数据查询方法,包括如下步骤S40-S60。
S40、接收用户发送的业务查询指令。
可理解地,业务查询指令为在当前业务场景下用户发送的业务数据访问请求,当前业务场景对应了多个可选的数据查询关键词,可以通过接收用户选取的至少一个数据查询关键词生成业务查询指令,也可以通过接收用户手动输入的至少一个数据查询关键词生成业务查询指令。
S50、获取数据库配置信息,根据所述数据库配置信息确定与所述业务查询指令关联的第二数据库;所述数据库配置信息包括所述业务查询指令与所述第二数据库之间的第二关联关系,以及查询任务组与第一数据库之间的第一关联关系;所述数据库配置信息中的所述第一关联关系和所述第二关联关系按预设时间周期发生关联交换;其中,在上一时间周期发生关联交换之前,所述第二数据库依照所述查询任务组获得的任务组查询数据进行更新。
可理解地,在当前业务场景下,与用户发送的业务查询指令对应的业务数据存储在数据仓库中,如果每次都在数据仓库中执行业务查询指令,当业务查询指令量出现高并发时,会增大数据仓库的执行压力,占用数据资源。因此,在数据仓库之外设置第一数据库和第二数据库,其中,第一数据库用于存储查询任务组的任务组查询数据,即备份数据库,第二数据库用于执行业务查询指令的数据库,即查询数据库。数据库配置信息包括查询任务组与第一数据库之间的第一关联关系,以及业务查询指令与第二数据库之间的第二关联关系。数据库配置信息用于根据第一关联关系确定与查询任务组关联的第一数据库,以及根据第二关联关系确定与业务查询指令关联的第二数据库。
当前时间周期的查询任务组执行完成之后,在执行下一时间周期的查询任务组之前,需要修改数据库配置信息,将当前时间周期的两个数据库对应的关联关系进行交换。其中,在当前时间周期发生关联交换之前,第二数据库依照查询任务组获得的任务组查询数据进行更新。在一实施例中,甲数据库和乙数据库是设置于数据仓库之外的两个独立数据库,当前时间周期的甲数据库与查询任务组之间存在第一关联关系,当前时间周期的乙数据库与业务查询指令之间存在第二关联关系。即在修改数据库配置信息之前,第一数据库为甲数据库,第二数据库为乙数据库。下一时间周期的乙数据库与查询任务组之间建立第一关联关系,下一时间周期的甲数据库与业务查询指令之间建立第二关联关系。即在修改数据库配置信息之后,第一数据库为乙数据库,第二数据库为甲数据库。其中,当关联关系发生交换,两个数据库中的数据同步更新,在修改数据库配置信息之前,乙数据库依照查询任务组获得的任务组查询数据进行更新,即将当前时间周期的第一数据库的数据更新到第二数据库中。
S60、在所述第二数据库执行所述业务查询指令,获得查询结果。
可理解地,在一实施例中,甲数据库和乙数据库是设置于数据仓库之外的两个独立数据库,当前时间周期的甲数据库与查询任务组之间存在第一关联关系,当前时间周期的乙数据库与业务查询指令之间存在第二关联关系。即第二数据库为乙数据库,在乙数据库执行业务查询指令,获得查询结果。
本实施例通过接收用户发送的业务查询指令;获取数据库配置信息,根据数据库配置信息确定与业务查询指令关联的第二数据库;数据库配置信息包括业务查询指令与第二数据库之间的第二关联关系,以及查询任务组与第一数据库之间的第一关联关系;数据库配置信息中的第一关联关系和第二关联关系按预设时间周期发生关联关系交换;其中,在上一时间周期发生关联交换之前,第二数据库依照查询任务组获得的任务组查询数据进行更新;在第二数据库执行业务查询指令,获得查询结果。本实施例的数据查询方法通过设置第一数据库和第二数据库,第一数据库用于数仓数据的写入,第二数据库用于业务数据的读取,实现了数仓数据与业务数据解耦,缩小业务数据查询范围,减小查询数据量,提高数据读写性能;通过第一数据库和第二数据库的关联切换实现业务数据更新,保证了业务数据的时效性,保证了输出性能,提高了查询效率。
可选的,步骤S50中,即所述第二数据库依照所述查询任务组获得的任务组查询数据进行更新,包括:
S501、获取上一时间周期在数据仓库执行所述查询任务组获得的任务组查询数据;
S502、根据上一时间周期数据库配置信息确定与所述查询任务组关联的第二数据库;
S503、根据所述任务组查询数据更新所述第二数据库,并将所述上一时间周期数据库配置信息修改为所述数据库配置信息。
可理解地,在一实施例中,甲数据库和乙数据库是设置于数据仓库之外的两个独立数据库,第一时间周期的甲数据库与查询任务组之间存在第一关联关系,第一时间周期的乙数据库与业务查询指令之间存在第二关联关系。即第一时间周期对应的第一数据库为甲数据库,第二数据库为乙数据库,则第二时间周期对应的第一数据库为乙数据库,第二数据库为甲数据库。第一时间周期执行定时执行查询任务组获得的任务组查询数据为(A1 -,B1 -,C1 -,D1 -),在进入第二时间周期之前,获取第一时间周期的任务组查询数据(A1 -,B1 -,C1 -,D1 -);根据第一时间周期数据库配置信息确定第二数据库为乙数据库;根据(A1 -,B1 -,C1 -,D1 -)更新乙数据库,并将第一时间周期的数据库配置信息修改为第二时间周期的数据库配置信息。即根据第一数据库的数据对第二数据库的数据进行更新,并进行关联关系的交换。第二时间周期执行查询任务组获得的任务组查询数据为(A2 -,B2 -,C2 -,D2 -),第二时间周期对应的第一数据库中的数据为(A2 -,B2 -,C2 -,D2 -),第二时间周期对应的第二数据库中的数据为(A1 -,B1 -,C1 -,D1 -),以在第二数据库执行业务查询指令,获得查询结果。
本实施例根据上一时间周期在数据仓库定时执行查询任务组获得的任务组查询数据更新第二数据库,降低了数据差异,避免了数据不一致的问题,在数仓数据实时更新的前提下,使第二数据库中的业务数据保持异步更新。
可选的,步骤S60中,即所述在所述第二数据库执行所述业务查询指令,获得查询结果,包括:
S601、对所述业务查询指令进行解析,获得查询条件;
S602、根据所述查询条件在所述第二数据库中查询,获得所述查询结果。
可理解地,对业务查询指令进行解析,获得业务查询指令对应的查询关键词以生成查询条件,即第二查询条件。第一查询条件指的是提取当前业务场景下全部可选的查询关键词生成的多个第一查询条件;而第二查询条件包括至少一个可选的查询关键词,第二查询条件的查询关键词是由用户选取或输入的。第二查询条件对应的关键词可以与多个第一查询条件中的任意一个第一查询条件对应的关键词相同,根据第二查询条件在当前时间周期的第二数据库中查询,获得查询结果。在一实施例中,当前时间周期为第二时间周期,第二时间周期对应的第二数据库中的数据为(A1 -,B1 -,C1 -,D1 -),对业务查询指令进行解析,获得业务查询指令对应的第二查询条件a;根据第二查询条件a在第二数据库的数据(A1 -,B1 -,C1 -,D1 -)中查询,获得与第二查询条件a对应的数据A1 -并返回查询结果。
本实施例的第一数据库用于数仓数据的写入,第二数据库用于业务数据的读取,读写分离,业务查询指令只读取当前时间周期的第二数据库的数据进行查询,实现了数仓数据与业务数据解耦,提高了数据读写性能。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
在一实施例中,提供一种用于数据仓库端的数据查询装置,该数据查询装置与上述实施例中S10-S30的数据查询方法一一对应。如图3所示,该数据查询装置包括数据仓库查询模块10、第一数据库确定模块20和第一数据库更新模块30。各功能模块详细说明如下:
数据仓库查询模块10,用于在数据仓库定时执行查询任务组,获得任务组查询数据;所述查询任务组包括多个查询任务;
第一数据库确定模块20,用于获取数据库配置信息,根据所述数据库配置信息确定与所述查询任务组关联的第一数据库;所述数据库配置信息包括所述查询任务组与所述第一数据库之间的第一关联关系,以及业务查询指令与第二数据库之间的第二关联关系;
第一数据库更新模块30,用于根据所述任务组查询数据更新所述第一数据库,并修改所述数据库配置信息,以使所述查询任务组与所述第二数据库关联,所述业务查询指令与所述第一数据库关联。
可选的,数据仓库查询模块10包括:
查询任务执行单元,用于串行执行所述多个查询任务,获得与所述查询任务对应的数仓查询结果;
任务组查询数据生成单元,用于根据所述多个查询任务的数仓查询结果生成所述任务组查询数据。
可选的,数据仓库查询模块10还包括:
数仓完整查询结果获取单元,用于在所述数据仓库执行所述查询任务,获得数仓完整查询结果;
数仓查询结果生成单元,用于按照预设提取规则从所述数仓完整查询结果提取指定数量的结果,生成所述数仓查询结果。
在一实施例中,提供一种用于业务端的数据查询装置,该数据查询装置与上述实施例中S40-S60的数据查询方法一一对应。如图4所示,该数据查询装置包括业务查询指令接收模块40、第二数据库确定模块50和业务数据查询模块60。各功能模块详细说明如下:
业务查询指令接收模块40,用于接收用户发送的业务查询指令;
第二数据库确定模块50,用于获取数据库配置信息,根据所述数据库配置信息确定与所述业务查询指令关联的第二数据库;所述数据库配置信息包括所述业务查询指令与所述第二数据库之间的第二关联关系,以及查询任务组与第一数据库之间的第一关联关系;所述数据库配置信息中的所述第一关联关系和所述第二关联关系按预设时间周期发生关联交换;其中,在上一时间周期发生关联交换之前,所述第二数据库依照所述查询任务组获得的任务组查询数据进行更新;
业务数据查询模块60,用于在所述第二数据库执行所述业务查询指令,获得查询结果。
可选的,第二数据库确定模块50包括:
周期任务组查询数据获取单元,用于获取上一时间周期在数据仓库执行所述查询任务组获得的任务组查询数据;
周期第二数据库确定单元,用于根据上一时间周期数据库配置信息确定与所述查询任务组关联的第二数据库;
周期第二数据库更新单元,用于根据所述任务组查询数据更新所述第二数据库,并将所述上一时间周期数据库配置信息修改为所述数据库配置信息。
可选的,业务数据查询模块60包括:
业务查询指令解析单元,用于对所述业务查询指令进行解析,获得查询条件;
查询结果获取单元,用于根据所述查询条件在所述第二数据库中查询,获得所述查询结果。
关于数据查询装置的具体限定可以参见上文中对于数据查询方法的限定,在此不再赘述。上述数据查询装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括可读存储介质、内存储器。该可读存储介质存储有操作系统、计算机可读指令和数据库。该内存储器为可读存储介质中的操作系统和计算机可读指令的运行提供环境。该计算机设备的数据库用于存储数据查询方法所涉及的数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机可读指令被处理器执行时以实现一种数据查询方法。本实施例所提供的可读存储介质包括非易失性可读存储介质和易失性可读存储介质。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机可读指令,处理器执行计算机可读指令时实现以下步骤:
在数据仓库定时执行查询任务组,获得任务组查询数据;所述查询任务组包括多个查询任务;
获取数据库配置信息,根据所述数据库配置信息确定与所述查询任务组关联的第一数据库;所述数据库配置信息包括所述查询任务组与所述第一数据库之间的第一关联关系,以及业务查询指令与第二数据库之间的第二关联关系;
根据所述任务组查询数据更新所述第一数据库,并修改所述数据库配置信息,以使所述查询任务组与所述第二数据库关联,所述业务查询指令与所述第一数据库关联。
在另一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机可读指令,处理器执行计算机可读指令时实现以下步骤:
接收用户发送的业务查询指令;
获取数据库配置信息,根据所述数据库配置信息确定与所述业务查询指令关联的第二数据库;所述数据库配置信息包括所述业务查询指令与所述第二数据库之间的第二关联关系,以及查询任务组与第一数据库之间的第一关联关系;所述数据库配置信息中的所述第一关联关系和所述第二关联关系按预设时间周期发生关联交换;其中,在上一时间周期发生关联交换之前,所述第二数据库依照所述查询任务组获得的任务组查询数据进行更新;
在所述第二数据库执行所述业务查询指令,获得查询结果。
在一个实施例中,提供了一个或多个存储有计算机可读指令的计算机可读存储介质,本实施例所提供的可读存储介质包括非易失性可读存储介质和易失性可读存储介质。可读存储介质上存储有计算机可读指令,计算机可读指令被一个或多个处理器执行时实现以下步骤:
在数据仓库定时执行查询任务组,获得任务组查询数据;所述查询任务组包括多个查询任务;
获取数据库配置信息,根据所述数据库配置信息确定与所述查询任务组关联的第一数据库;所述数据库配置信息包括所述查询任务组与所述第一数据库之间的第一关联关系,以及业务查询指令与第二数据库之间的第二关联关系;
根据所述任务组查询数据更新所述第一数据库,并修改所述数据库配置信息,以使所述查询任务组与所述第二数据库关联,所述业务查询指令与所述第一数据库关联。
在另一个实施例中,提供了一个或多个存储有计算机可读指令的计算机可读存储介质,本实施例所提供的可读存储介质包括非易失性可读存储介质和易失性可读存储介质。可读存储介质上存储有计算机可读指令,计算机可读指令被一个或多个处理器执行时实现以下步骤:
接收用户发送的业务查询指令;
获取数据库配置信息,根据所述数据库配置信息确定与所述业务查询指令关联的第二数据库;所述数据库配置信息包括所述业务查询指令与所述第二数据库之间的第二关联关系,以及查询任务组与第一数据库之间的第一关联关系;所述数据库配置信息中的所述第一关联关系和所述第二关联关系按预设时间周期发生关联交换;其中,在上一时间周期发生关联交换之前,所述第二数据库依照所述查询任务组获得的任务组查询数据进行更新;
在所述第二数据库执行所述业务查询指令,获得查询结果。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机可读指令来指令相关的硬件来完成,所述的计算机可读指令可存储于一非易失性可读取存储介质或易失性可读存储介质中,该计算机可读指令在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

Claims (10)

1.一种数据查询方法,其特征在于,包括:
在数据仓库定时执行查询任务组,获得任务组查询数据;所述查询任务组包括多个查询任务,其中,根据每个所述查询任务对应的查询条件在所述数据仓库中查询,获得所述任务组查询数据;
获取数据库配置信息,根据所述数据库配置信息确定与所述查询任务组关联的第一数据库;所述数据库配置信息包括所述查询任务组与所述第一数据库之间的第一关联关系,以及业务查询指令与第二数据库之间的第二关联关系;所述第一数据库用于存储所述任务组查询数据,所述第二数据库用于执行所述业务查询指令;所述数据库配置信息用于根据所述第一关联关系确定与所述查询任务组关联的所述第一数据库,以及根据所述第二关联关系确定与所述业务查询指令关联的所述第二数据库;
根据所述任务组查询数据更新所述第一数据库,并修改所述数据库配置信息,以使所述查询任务组与所述第二数据库关联,所述业务查询指令与所述第一数据库关联。
2.如权利要求1所述的数据查询方法,其特征在于,所述在数据仓库定时执行查询任务组,获取任务组查询数据,包括:
串行执行所述多个查询任务,获得与所述查询任务对应的数仓查询结果;
根据所述多个查询任务的数仓查询结果生成所述任务组查询数据。
3.如权利要求2所述的数据查询方法,其特征在于,所述串行执行所述多个查询任务,获得与所述查询任务对应的数仓查询结果,包括:
在所述数据仓库执行所述查询任务,获得数仓完整查询结果;
按照预设提取规则从所述数仓完整查询结果提取指定数量的结果,生成所述数仓查询结果。
4.一种数据查询方法,其特征在于,包括:
接收用户发送的业务查询指令;
获取数据库配置信息,根据所述数据库配置信息确定与所述业务查询指令关联的第二数据库;所述数据库配置信息包括所述业务查询指令与所述第二数据库之间的第二关联关系,以及查询任务组与第一数据库之间的第一关联关系;所述第一数据库用于存储所述任务组查询数据,所述第二数据库用于执行所述业务查询指令;所述数据库配置信息用于根据所述第一关联关系确定与所述查询任务组关联的所述第一数据库,以及根据所述第二关联关系确定与所述业务查询指令关联的所述第二数据库;所述数据库配置信息中的所述第一关联关系和所述第二关联关系按预设时间周期发生关联交换;其中,在上一时间周期发生关联交换之前,所述第二数据库依照所述查询任务组获得的任务组查询数据进行更新;
在所述第二数据库执行所述业务查询指令,获得查询结果。
5.如权利要求4所述的数据查询方法,其特征在于,所述第二数据库依照所述查询任务组获得的任务组查询数据进行更新,包括:
获取上一时间周期在数据仓库执行所述查询任务组获得的任务组查询数据;
根据上一时间周期数据库配置信息确定与所述查询任务组关联的第二数据库;
根据所述任务组查询数据更新所述第二数据库,并将所述上一时间周期数据库配置信息修改为所述数据库配置信息。
6.如权利要求4所述的数据查询方法,其特征在于,所述在所述第二数据库执行所述业务查询指令,获得查询结果,包括:
对所述业务查询指令进行解析,获得查询条件;
根据所述查询条件在所述第二数据库中查询,获得所述查询结果。
7.一种数据查询装置,其特征在于,包括:
数据仓库查询模块,用于在数据仓库定时执行查询任务组,获得任务组查询数据;所述查询任务组包括多个查询任务,其中,根据每个所述查询任务对应的查询条件在所述数据仓库中查询,获得所述任务组查询数据;
第一数据库确定模块,用于获取数据库配置信息,根据所述数据库配置信息确定与所述查询任务组关联的第一数据库;所述数据库配置信息包括所述查询任务组与所述第一数据库之间的第一关联关系,以及业务查询指令与第二数据库之间的第二关联关系;所述第一数据库用于存储所述任务组查询数据,所述第二数据库用于执行所述业务查询指令;所述数据库配置信息用于根据所述第一关联关系确定与所述查询任务组关联的所述第一数据库,以及根据所述第二关联关系确定与所述业务查询指令关联的所述第二数据库;
第一数据库更新模块,用于根据所述任务组查询数据更新所述第一数据库,并修改所述数据库配置信息,以使所述查询任务组与所述第二数据库关联,所述业务查询指令与所述第一数据库关联。
8.一种数据查询装置,其特征在于,包括:
业务查询指令接收模块,用于接收用户发送的业务查询指令;
第二数据库确定模块,用于获取数据库配置信息,根据所述数据库配置信息确定与所述业务查询指令关联的第二数据库;所述数据库配置信息包括所述业务查询指令与所述第二数据库之间的第二关联关系,以及查询任务组与第一数据库之间的第一关联关系;所述第一数据库用于存储所述任务组查询数据,所述第二数据库用于执行所述业务查询指令;所述数据库配置信息用于根据所述第一关联关系确定与所述查询任务组关联的所述第一数据库,以及根据所述第二关联关系确定与所述业务查询指令关联的所述第二数据库;所述数据库配置信息中的所述第一关联关系和所述第二关联关系按预设时间周期发生关联交换;其中,在上一时间周期发生关联交换之前,所述第二数据库依照所述查询任务组获得的任务组查询数据进行更新;
业务数据查询模块,用于在所述第二数据库执行所述业务查询指令,获得查询结果。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机可读指令,其特征在于,所述处理器执行所述计算机可读指令时实现如权利要求1至6中任一项所述数据查询方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,其特征在于,所述计算机可读指令被一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求1至6中任一项所述数据查询方法。
CN202211470095.4A 2022-11-22 2022-11-22 数据查询方法、装置、计算机设备及存储介质 Active CN115544096B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211470095.4A CN115544096B (zh) 2022-11-22 2022-11-22 数据查询方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211470095.4A CN115544096B (zh) 2022-11-22 2022-11-22 数据查询方法、装置、计算机设备及存储介质

Publications (2)

Publication Number Publication Date
CN115544096A CN115544096A (zh) 2022-12-30
CN115544096B true CN115544096B (zh) 2023-03-28

Family

ID=84720979

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211470095.4A Active CN115544096B (zh) 2022-11-22 2022-11-22 数据查询方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN115544096B (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103136363A (zh) * 2013-03-14 2013-06-05 曙光信息产业(北京)有限公司 查询处理方法和集群数据库系统
CN106776848A (zh) * 2016-11-04 2017-05-31 广州市诚毅科技软件开发有限公司 一种数据库查询方法及装置
CN111708804A (zh) * 2020-06-11 2020-09-25 中国建设银行股份有限公司 数据处理方法、装置、设备及介质
CN112163131A (zh) * 2020-11-10 2021-01-01 平安普惠企业管理有限公司 业务数据查询平台的配置方法、装置、计算机设备及介质
CN112395265A (zh) * 2019-08-16 2021-02-23 阿里巴巴集团控股有限公司 数据库访问方法、装置、电子设备及计算机存储介质
CN112860705A (zh) * 2021-03-09 2021-05-28 上海华客信息科技有限公司 数据库连接配置信息管理方法、系统、设备及存储介质
WO2021189829A1 (zh) * 2020-09-02 2021-09-30 平安科技(深圳)有限公司 数据查询方法、装置、电子设备及存储介质
CN114625763A (zh) * 2022-02-16 2022-06-14 京东科技信息技术有限公司 用于数据库的信息分析方法、装置、电子设备和可读介质
CN115033575A (zh) * 2022-06-29 2022-09-09 政采云有限公司 一种数据查询方法、装置、设备及存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10705875B2 (en) * 2017-08-09 2020-07-07 Servicenow, Inc. Systems and methods for recomputing services
CN110825732A (zh) * 2019-09-20 2020-02-21 广州亚美信息科技有限公司 数据查询方法、装置、计算机设备和可读存储介质
CN112612780A (zh) * 2020-12-29 2021-04-06 苏州思必驰信息科技有限公司 数据库操作方法及装置
CN114385657A (zh) * 2022-01-13 2022-04-22 浙江吉利控股集团有限公司 数据存储方法、装置及存储介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103136363A (zh) * 2013-03-14 2013-06-05 曙光信息产业(北京)有限公司 查询处理方法和集群数据库系统
CN106776848A (zh) * 2016-11-04 2017-05-31 广州市诚毅科技软件开发有限公司 一种数据库查询方法及装置
CN112395265A (zh) * 2019-08-16 2021-02-23 阿里巴巴集团控股有限公司 数据库访问方法、装置、电子设备及计算机存储介质
CN111708804A (zh) * 2020-06-11 2020-09-25 中国建设银行股份有限公司 数据处理方法、装置、设备及介质
WO2021189829A1 (zh) * 2020-09-02 2021-09-30 平安科技(深圳)有限公司 数据查询方法、装置、电子设备及存储介质
CN112163131A (zh) * 2020-11-10 2021-01-01 平安普惠企业管理有限公司 业务数据查询平台的配置方法、装置、计算机设备及介质
CN112860705A (zh) * 2021-03-09 2021-05-28 上海华客信息科技有限公司 数据库连接配置信息管理方法、系统、设备及存储介质
CN114625763A (zh) * 2022-02-16 2022-06-14 京东科技信息技术有限公司 用于数据库的信息分析方法、装置、电子设备和可读介质
CN115033575A (zh) * 2022-06-29 2022-09-09 政采云有限公司 一种数据查询方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN115544096A (zh) 2022-12-30

Similar Documents

Publication Publication Date Title
US9953102B2 (en) Creating NoSQL database index for semi-structured data
US6879984B2 (en) Analytical database system that models data to speed up and simplify data analysis
CN106649828B (zh) 一种数据查询方法及系统
CN105205154B (zh) 数据迁移方法以及装置
CN103678519A (zh) 一种支持Hive DML增强的混合存储系统及其方法
CN111753016A (zh) 数据处理方法、装置、系统及计算机可读存储介质
CN110389989B (zh) 一种数据处理方法、装置及设备
CN111966760B (zh) 基于Hive数据仓库的测试数据生成方法及装置
CN111651519A (zh) 数据同步方法、数据同步装置、电子设备及存储介质
CN115114374B (zh) 事务执行方法、装置、计算设备及存储介质
CN111680017A (zh) 一种数据同步的方法及装置
CN115422205A (zh) 数据处理方法、装置、电子设备及存储介质
CN114329096A (zh) 一种原生图数据库处理方法及系统
CN111488323B (zh) 一种数据处理方法、装置及电子设备
CN113177090A (zh) 数据处理方法及装置
CN107609011B (zh) 一种数据库记录的维护方法和装置
US20130031050A1 (en) System, Method, and Computer Program Product for Accessing Manipulating Remote Datasets
CN111221814B (zh) 二级索引的构建方法、装置及设备
CN115544096B (zh) 数据查询方法、装置、计算机设备及存储介质
CN116126901A (zh) 数据处理方法、装置、电子设备及计算机可读存储介质
US8290935B1 (en) Method and system for optimizing database system queries
CN111159991B (zh) 一种报表建模设计装置及方法
CN113268483A (zh) 请求处理方法和装置、电子设备和存储介质
CN110851515A (zh) 一种基于Spark分布式环境下的大数据ETL模型执行方法及介质
CN113515494B (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