CN116431677B - 基于内存数据库的数据路由方法、系统和可读存储介质 - Google Patents
基于内存数据库的数据路由方法、系统和可读存储介质 Download PDFInfo
- Publication number
- CN116431677B CN116431677B CN202310710761.5A CN202310710761A CN116431677B CN 116431677 B CN116431677 B CN 116431677B CN 202310710761 A CN202310710761 A CN 202310710761A CN 116431677 B CN116431677 B CN 116431677B
- Authority
- CN
- China
- Prior art keywords
- data
- query
- routing
- memory
- memory database
- 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 56
- 238000001914 filtration Methods 0.000 claims abstract description 76
- 238000013507 mapping Methods 0.000 claims abstract description 23
- 238000012545 processing Methods 0.000 claims abstract description 22
- 238000004458 analytical method Methods 0.000 claims abstract description 20
- 238000012360 testing method Methods 0.000 claims description 24
- 230000002159 abnormal effect Effects 0.000 claims description 14
- 230000006870 function Effects 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 abstract description 5
- 238000012216 screening Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 230000007774 longterm 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/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/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开的一种基于内存数据库的数据路由方法、系统和可读存储介质,其中方法包括:识别输入的业务数据查询需求以获取业务查询数据,以进入路由处理进程;基于所述业务查询数据进行过滤条件解析得到对应的条件表达式;进入路由处理进程后,利用数据路由配置表解析对应的所述业务查询数据,以识别数据来源;基于所述数据来源进行参数映射得到对应的路由点,并利用所述条件表达式进行查询,而后将查询到的查询结果进行输出。本发明能够对多数据源以及冷热数据按需获取,合理利用计算、存储和带宽资源,从而可以优化查询效率。
Description
技术领域
本发明涉及数据处理技术领域,更具体的,涉及一种基于内存数据库的数据路由方法、系统和可读存储介质。
背景技术
SPL内存计算引擎可以使用多种外部数据源,全局变量内存,以及集文件、组文件两种内存二进制文件。在业务查询中,数据根据不同的应用场景,可以分为热数据、温数据及冷数据。经常需要查询的近期明细数据,以及粗粒度的汇总数据,可以作为热数据放到内存中实时共享,提高效率;量大的近期数据以及粗粒度的数据,可以作为温数据放到本地集文件或组文件中,不消耗网络带宽的同时,查询效率也能兼顾;而较久远的历史数据,以及细粒度的汇总数据,则作为冷数据通过数据库访问,直接从源头获取,节省存储及计算资源。
发明内容
本发明的目的是提供一种基于内存数据库的数据路由方法、系统和可读存储介质,可以对多数据源以及冷热数据按需获取,合理利用计算、存储和带宽资源。
本发明第一方面提供了一种基于内存数据库的数据路由方法,包括以下步骤:
识别输入的业务数据查询需求以获取业务查询数据,以进入路由处理进程;
基于所述业务查询数据进行过滤条件解析得到对应的条件表达式;
进入路由处理进程后,利用数据路由配置表解析对应的所述业务查询数据,以识别数据来源;
基于所述数据来源进行参数映射得到对应的路由点,并利用所述条件表达式进行查询,而后将查询到的查询结果进行输出。
本方案中,所述方法还包括:
获取输入的配置数据;
基于所述配置数据设置所述数据路由配置表,其中,所述数据路由配置表明细包括缓存参数、数据来源以及路由点;
基于所述内存数据库加载所述数据路由配置表,并获取反馈数据进行复检。
本方案中,所述基于所述配置数据设置所述数据路由配置表,具体包括:
划分数据类型以区分内存、文件或者远程数据库表得到所述数据来源;
基于不同的所述数据来源与不同的缓存参数进行匹配,其中,每种所述数据来源均对应于一种所述缓存参数;
基于所述缓存参数与对应的路由点进行KEY值映射以完成所述数据路由配置表的设置。
本方案中,所述基于所述内存数据库加载所述数据路由配置表,并获取反馈数据进行复检,具体包括:
获取反馈数据的数据类型,其中,若所述数据类型为预设类型,则表示当前所述数据路由配置表被所述内存数据库加载成功,否则表示当前所述数据路由配置表被所述内存数据库加载失败;
当所述数据路由配置表被所述内存数据库加载成功时,基于所述反馈数据获取自测参数,基于所述自测参数进行判断,其中,若所述自测参数为预设值,则表示当前被成功加载的所述数据路由配置表加载正确,否则表示当前被成功加载的所述数据路由配置表自身存在加载错误。
本方案中,所述基于所述数据来源进行参数映射得到对应的路由点,并利用所述条件表达式进行查询,具体包括:
识别到数据来源为所述内存时,进入内存查询,判断当前内存数据库中是否存在对应的内存,其中,若无则输出查询异常结果,若有,则基于所述条件表达式在所述内存数据库中进行过滤条件查询;
识别到数据来源为所述文件时,进入集/组文件查询,判断当前所述内存数据库中是否存在对应的集/组文件,其中,若无则输出查询异常结果,若有,则基于游标遍历获取对应的文件,并基于所述条件表达式进行过滤;
识别到数据来源为所述远程数据库表,进入数据库查询,基于所述条件表达式拼接查询脚本,并基于所述查询脚本利用数据库查询功能执行查询。
本方案中,基于所述业务查询数据进行过滤条件因子识别解析得到对应的过滤条件,从而基于至少一个过滤条件得到对应的所述条件表达式。
本发明第二方面还提供一种基于内存数据库的数据路由系统,包括存储器和处理器,所述存储器中包括基于内存数据库的数据路由方法程序,所述基于内存数据库的数据路由方法程序被所述处理器执行时实现如下步骤:
识别输入的业务数据查询需求以获取业务查询数据,以进入路由处理进程;
基于所述业务查询数据进行过滤条件解析得到对应的条件表达式;
进入路由处理进程后,利用数据路由配置表解析对应的所述业务查询数据,以识别数据来源;
基于所述数据来源进行参数映射得到对应的路由点,并利用所述条件表达式进行查询,而后将查询到的查询结果进行输出。
本方案中,所述基于内存数据库的数据路由方法程序被所述处理器执行时还包括实现如下步骤:
获取输入的配置数据;
基于所述配置数据设置所述数据路由配置表,其中,所述数据路由配置表明细包括缓存参数、数据来源以及路由点;
基于所述内存数据库加载所述数据路由配置表,并获取反馈数据进行复检。
本方案中,所述基于所述配置数据设置所述数据路由配置表,具体包括:
划分数据类型以区分内存、文件或者远程数据库表得到所述数据来源;
基于不同的所述数据来源与不同的缓存参数进行匹配,其中,每种所述数据来源均对应于一种所述缓存参数;
基于所述缓存参数与对应的路由点进行KEY值映射以完成所述数据路由配置表的设置。
本方案中,所述基于所述内存数据库加载所述数据路由配置表,并获取反馈数据进行复检,具体包括:
获取反馈数据的数据类型,其中,若所述数据类型为预设类型,则表示当前所述数据路由配置表被所述内存数据库加载成功,否则表示当前所述数据路由配置表被所述内存数据库加载失败;
当所述数据路由配置表被所述内存数据库加载成功时,基于所述反馈数据获取自测参数,基于所述自测参数进行判断,其中,若所述自测参数为预设值,则表示当前被成功加载的所述数据路由配置表加载正确,否则表示当前被成功加载的所述数据路由配置表自身存在加载错误。
本方案中,所述基于所述数据来源进行参数映射得到对应的路由点,并利用所述条件表达式进行查询,具体包括:
识别到数据来源为所述内存时,进入内存查询,判断当前内存数据库中是否存在对应的内存,其中,若无则输出查询异常结果,若有,则基于所述条件表达式在所述内存数据库中进行过滤条件查询;
识别到数据来源为所述文件时,进入集/组文件查询,判断当前所述内存数据库中是否存在对应的集/组文件,其中,若无则输出查询异常结果,若有,则基于游标遍历获取对应的文件,并基于所述条件表达式进行过滤;
识别到数据来源为所述远程数据库表,进入数据库查询,基于所述条件表达式拼接查询脚本,并基于所述查询脚本利用数据库查询功能执行查询。
本方案中,基于所述业务查询数据进行过滤条件因子识别解析得到对应的过滤条件,从而基于至少一个过滤条件得到对应的所述条件表达式。
本发明第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质中包括机器的一种基于内存数据库的数据路由方法程序,所述基于内存数据库的数据路由方法程序被处理器执行时,实现如上述任一项所述的一种基于内存数据库的数据路由方法的步骤。
本发明公开的一种基于内存数据库的数据路由方法、系统和可读存储介质,能够对多数据源以及冷热数据按需获取,合理利用计算、存储和带宽资源,从而可以优化查询效率。
附图说明
图1示出了本发明一种基于内存数据库的数据路由方法的步骤图;
图2示出了本发明一种基于内存数据库的数据路由方法的流程图;
图3示出了本发明一种基于内存数据库的数据路由系统的框图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
图1示出了本申请一种基于内存数据库的数据路由方法的流程图。
如图1所示,本申请公开了一种基于内存数据库的数据路由方法,包括以下步骤:
S102,识别输入的业务数据查询需求以获取业务查询数据,以进入路由处理进程;
S104,基于所述业务查询数据进行过滤条件解析得到对应的条件表达式;
S106,进入路由处理进程后,利用数据路由配置表解析对应的所述业务查询数据,以识别数据来源;
S108,基于所述数据来源进行参数映射得到对应的路由点,并利用所述条件表达式进行查询,而后将查询到的查询结果进行输出。
需要说明的是,于本实施例中,首先识别用户输入的业务数据查询需求,从而可以获取用户想要查询的业务查询数据,以进入路由处理进程,其中,可以基于所述业务查询数据进行过滤条件解析来得到对应的条件表达式,并且在进入路由处理进程后,利用数据路由配置表来解析对应的所述业务查询数据以识别数据来源,从而基于所述数据来源进行参数映射得到对应的路由点,从而利用所述条件表达式进行查询,以将查询到的查询结果进行输出,具体地,需要先设置数据路由配置表,将缓存参数与数据来源、路由点按需进行配置,以得到所述数据路由配置表,并在获取到业务查询数据后进行过滤条件解析来识别当前业务查询数据对应的条件表达式,所述条件表达式即为用条件(condition)的方式来对业务查询进行表达,条件可以是不同的筛选条件,在进入到路由处理进程后,利用设置好的数据路由配置表来解析对应的业务查询数据,以根据数据来源进行参数映射得到对应的路由点,从而与条件表达式进行查询,以匹配筛选的查询结果进行输出。
根据本发明实施例,所述方法还包括:
获取输入的配置数据;
基于所述配置数据设置所述数据路由配置表,其中,所述数据路由配置表明细包括缓存参数、数据来源以及路由点;
基于所述内存数据库加载所述数据路由配置表,并获取反馈数据进行复检。
需要说明的是,于本实施例中,获取用户输入的配置数据,从而基于所述配置数据设置所述数据路由配置表,其中,所述数据路由配置表明细包括缓存参数、数据来源以及路由点;基于所述内存数据库加载所述数据路由配置表,并获取反馈数据进行复检,以判断当前所述数据路由配置表是否被成功加载。
具体地,数据路由配置表1如下所示:
表1. 数据路由配置表
缓存名称 | 数据来源 | 路由点 |
CACHE_1 | TABLE_A | MEMORY |
CACHE_2 | TABLE_B | FILE |
…… | …… | …… |
CACHE_N | TABLE_N | DATABASE |
根据本发明实施例,所述基于所述配置数据设置所述数据路由配置表,具体包括:
划分数据类型以区分内存、文件或者远程数据库表得到所述数据来源;
基于不同的所述数据来源与不同的缓存参数进行匹配,其中,每种所述数据来源均对应于一种所述缓存参数;
基于所述缓存参数与对应的路由点进行KEY值映射以完成所述数据路由配置表的设置。
需要说明的是,于本实施例中,数据来源具体是根据数据类型的划分得到,其中,具体包括内存、文件或者远程数据库表三种数据来源,进一步地,基于不同的所述数据来源与不同的缓存参数进行匹配,其中,每种所述数据来源均对应于一种所述缓存参数,例如表1中的“CACHE_1、CACHE_2、···、CACHE_N”,而在设置所述数据路由配置表时,还需要基于所述缓存参数与对应的路由点进行KEY值映射以完成所述数据路由配置表的设置,例如表1中“CACHE_1”对应映射的路由点为“MEMORY”,“CACHE_2”对应映射的路由点为“FILE”,“CACHE_3”对应映射的路由点为“DATABASE”。
根据本发明实施例,所述基于所述内存数据库加载所述数据路由配置表,并获取反馈数据进行复检,具体包括:
获取反馈数据的数据类型,其中,若所述数据类型为预设类型,则表示当前所述数据路由配置表被所述内存数据库加载成功,否则表示当前所述数据路由配置表被所述内存数据库加载失败;
当所述数据路由配置表被所述内存数据库加载成功时,基于所述反馈数据获取自测参数,基于所述自测参数进行判断,其中,若所述自测参数为预设值,则表示当前被成功加载的所述数据路由配置表加载正确,否则表示当前被成功加载的所述数据路由配置表自身存在加载错误。
需要说明的是,于本实施例中,上述实施例中说明了基于所述内存数据库加载所述数据路由配置表时,需要获取反馈数据进行复检,具体地,获取反馈数据的数据类型,其中,若所述数据类型为预设类型,则表示当前所述数据路由配置表被所述内存数据库加载成功,否则表示当前所述数据路由配置表被所述内存数据库加载失败,而在所述数据类型为预设类型时,仅表明当前内存数据库加载到了所述数据路由配置表,但是加载的数据路由配置表是否正确,尚不可知,因此,当所述数据路由配置表被所述内存数据库加载成功时,基于所述反馈数据获取自测参数,基于所述自测参数进行判断,其中,若所述自测参数为预设值,则表示当前被成功加载的所述数据路由配置表加载正确,否则表示当前被成功加载的所述数据路由配置表自身存在加载错误。
根据本发明实施例,所述基于所述数据来源进行参数映射得到对应的路由点,并利用所述条件表达式进行查询,具体包括:
识别到数据来源为所述内存时,进入内存查询,判断当前内存数据库中是否存在对应的内存,其中,若无则输出查询异常结果,若有,则基于所述条件表达式在所述内存数据库中进行过滤条件查询;
识别到数据来源为所述文件时,进入集/组文件查询,判断当前所述内存数据库中是否存在对应的集/组文件,其中,若无则输出查询异常结果,若有,则基于游标遍历获取对应的文件,并基于所述条件表达式进行过滤;
识别到数据来源为所述远程数据库表,进入数据库查询,基于所述条件表达式拼接查询脚本,并基于所述查询脚本利用数据库查询功能执行查询。
需要说明的是,于本实施例中,在实际查询时,上述实施例中说明了数据来源包括了内存、文件以及远程数据库表,因此如图2所示,在识别到数据来源为所述内存时,进入内存查询,判断当前内存数据库中是否存在对应的内存,其中,若无则输出查询异常结果,表明当前内存数据库中无对应的内存,若有,则基于所述条件表达式在所述内存数据库中进行过滤条件查询,基于业务查询的筛选条件对当前内存进行筛选以获取对应的查询结果;进一步地,而在识别到数据来源为所述文件时,进入集/组文件查询,判断当前所述内存数据库中是否存在对应的集/组文件,其中,若无则输出查询异常结果,表明当前内存数据库中无对应的集/组文件,若有,则基于游标遍历获取对应的文件,并基于所述条件表达式进行过滤,即基于业务查询的筛选条件对当前进行集/组文件过滤以得到对应的查询结果;最后,在识别到数据来源为所述远程数据库表,进入数据库查询,基于所述条件表达式拼接查询脚本,并基于所述查询脚本利用数据库查询功能执行查询。
根据本发明实施例,基于所述业务查询数据进行过滤条件因子识别解析得到对应的过滤条件,从而基于至少一个过滤条件得到对应的所述条件表达式。
需要说明的是,于本实施例中,由于用户在输入业务查询数据时,可能同时存在多个过滤条件,例如时间条件与类型条件的综合体,因此需要对业务查询数据中的过滤条件因子进行识别解析以得到对应的过滤条件,进一步地,条件表达式中至少包括一个过滤条件,即用户在业务查询时,至少包括了一种查询筛选条件。
值得一提的是,所述方法还包括基于所述业务查询数据进行过滤条件因子识别时,输出告警提醒,具体包括:
基于所述业务查询数据进行过滤条件因子识别解析,其中,
若识别到对应的过滤条件,则基于所述过滤条件生产所述条件表达式;
若识别不到所述过滤条件,则输出告警提醒。
需要说明的是,于本实施例中,上述实施例中说明了在实际业务查询时,业务查询数据对应有不同的筛选条件,因此在查询时,首先需要对过滤条件进行识别,当识别到过滤条件后,方可生成条件表达式从而进行后续筛选,当识别不到所述过滤条件时,会输出告警提醒,以提醒用户在进行业务查询时,需要同步输入过滤条件。
值得一提的是,所述方法还包括:
识别到数据来源为所述远程数据库表,获取所述远程数据库表的查询脚本;
基于所述条件表达式与所述查询脚本进行标识符匹配,以提取匹配成功的查询脚本执行查询。
需要说明的是,于本实施例中,上述实施例中说明了当识别到数据来源为所述远程数据库表时,此时需要应用到远程数据库表的查询脚本执行查询作业,其中,由于业务查询数据又对应有条件表达式,因此需要基于所述条件表达式与所述查询脚本进行标识符匹配,以成功从所述远程数据库表中匹配到对应的查询脚本执行对应的查询作业。
图3示出了本发明一种基于内存数据库的数据路由系统的框图。
如图3所示,本发明公开了一种基于内存数据库的数据路由系统,包括存储器和处理器,所述存储器中包括基于内存数据库的数据路由方法程序,所述基于内存数据库的数据路由方法程序被所述处理器执行时实现如下步骤:
识别输入的业务数据查询需求以获取业务查询数据,以进入路由处理进程;
基于所述业务查询数据进行过滤条件解析得到对应的条件表达式;
进入路由处理进程后,利用数据路由配置表解析对应的所述业务查询数据,以识别数据来源;
基于所述数据来源进行参数映射得到对应的路由点,并利用所述条件表达式进行查询,而后将查询到的查询结果进行输出。
需要说明的是,于本实施例中,首先识别用户输入的业务数据查询需求,从而可以获取用户想要查询的业务查询数据,以进入路由处理进程,其中,可以基于所述业务查询数据进行过滤条件解析来得到对应的条件表达式,并且在进入路由处理进程后,利用数据路由配置表来解析对应的所述业务查询数据以识别数据来源,从而基于所述数据来源进行参数映射得到对应的路由点,从而利用所述条件表达式进行查询,以将查询到的查询结果进行输出,具体地,需要先设置数据路由配置表,将缓存参数与数据来源、路由点按需进行配置,以得到所述数据路由配置表,并在获取到业务查询数据后进行过滤条件解析来识别当前业务查询数据对应的条件表达式,所述条件表达式即为用条件(condition)的方式来对业务查询进行表达,条件可以是不同的筛选条件,在进入到路由处理进程后,利用设置好的数据路由配置表来解析对应的业务查询数据,以根据数据来源进行参数映射得到对应的路由点,从而与条件表达式进行查询,以匹配筛选的查询结果进行输出。
根据本发明实施例,所述方法还包括:
获取输入的配置数据;
基于所述配置数据设置所述数据路由配置表,其中,所述数据路由配置表明细包括缓存参数、数据来源以及路由点;
基于所述内存数据库加载所述数据路由配置表,并获取反馈数据进行复检。
需要说明的是,于本实施例中,获取用户输入的配置数据,从而基于所述配置数据设置所述数据路由配置表,其中,所述数据路由配置表明细包括缓存参数、数据来源以及路由点;基于所述内存数据库加载所述数据路由配置表,并获取反馈数据进行复检,以判断当前所述数据路由配置表是否被成功加载。
具体地,数据路由配置表1如下所示:
表1. 数据路由配置表
缓存名称 | 数据来源 | 路由点 |
CACHE_1 | TABLE_A | MEMORY |
CACHE_2 | TABLE_B | FILE |
…… | …… | …… |
CACHE_N | TABLE_N | DATABASE |
根据本发明实施例,所述基于所述配置数据设置所述数据路由配置表,具体包括:
划分数据类型以区分内存、文件或者远程数据库表得到所述数据来源;
基于不同的所述数据来源与不同的缓存参数进行匹配,其中,每种所述数据来源均对应于一种所述缓存参数;
基于所述缓存参数与对应的路由点进行KEY值映射以完成所述数据路由配置表的设置。
需要说明的是,于本实施例中,数据来源具体是根据数据类型的划分得到,其中,具体包括内存、文件或者远程数据库表三种数据来源,进一步地,基于不同的所述数据来源与不同的缓存参数进行匹配,其中,每种所述数据来源均对应于一种所述缓存参数,例如表1中的“CACHE_1、CACHE_2、···、CACHE_N”,而在设置所述数据路由配置表时,还需要基于所述缓存参数与对应的路由点进行KEY值映射以完成所述数据路由配置表的设置,例如表1中“CACHE_1”对应映射的路由点为“MEMORY”,“CACHE_2”对应映射的路由点为“FILE”,“CACHE_3”对应映射的路由点为“DATABASE”。
根据本发明实施例,所述基于所述内存数据库加载所述数据路由配置表,并获取反馈数据进行复检,具体包括:
获取反馈数据的数据类型,其中,若所述数据类型为预设类型,则表示当前所述数据路由配置表被所述内存数据库加载成功,否则表示当前所述数据路由配置表被所述内存数据库加载失败;
当所述数据路由配置表被所述内存数据库加载成功时,基于所述反馈数据获取自测参数,基于所述自测参数进行判断,其中,若所述自测参数为预设值,则表示当前被成功加载的所述数据路由配置表加载正确,否则表示当前被成功加载的所述数据路由配置表自身存在加载错误。
需要说明的是,于本实施例中,上述实施例中说明了基于所述内存数据库加载所述数据路由配置表时,需要获取反馈数据进行复检,具体地,获取反馈数据的数据类型,其中,若所述数据类型为预设类型,则表示当前所述数据路由配置表被所述内存数据库加载成功,否则表示当前所述数据路由配置表被所述内存数据库加载失败,而在所述数据类型为预设类型时,仅表明当前内存数据库加载到了所述数据路由配置表,但是加载的数据路由配置表是否正确,尚不可知,因此,当所述数据路由配置表被所述内存数据库加载成功时,基于所述反馈数据获取自测参数,基于所述自测参数进行判断,其中,若所述自测参数为预设值,则表示当前被成功加载的所述数据路由配置表加载正确,否则表示当前被成功加载的所述数据路由配置表自身存在加载错误。
根据本发明实施例,所述基于所述数据来源进行参数映射得到对应的路由点,并利用所述条件表达式进行查询,具体包括:
识别到数据来源为所述内存时,进入内存查询,判断当前内存数据库中是否存在对应的内存,其中,若无则输出查询异常结果,若有,则基于所述条件表达式在所述内存数据库中进行过滤条件查询;
识别到数据来源为所述文件时,进入集/组文件查询,判断当前所述内存数据库中是否存在对应的集/组文件,其中,若无则输出查询异常结果,若有,则基于游标遍历获取对应的文件,并基于所述条件表达式进行过滤;
识别到数据来源为所述远程数据库表,进入数据库查询,基于所述条件表达式拼接查询脚本,并基于所述查询脚本利用数据库查询功能执行查询。
需要说明的是,于本实施例中,在实际查询时,上述实施例中说明了数据来源包括了内存、文件以及远程数据库表,因此如图2所示,在识别到数据来源为所述内存时,进入内存查询,判断当前内存数据库中是否存在对应的内存,其中,若无则输出查询异常结果,表明当前内存数据库中无对应的内存,若有,则基于所述条件表达式在所述内存数据库中进行过滤条件查询,基于业务查询的筛选条件对当前内存进行筛选以获取对应的查询结果;进一步地,而在识别到数据来源为所述文件时,进入集/组文件查询,判断当前所述内存数据库中是否存在对应的集/组文件,其中,若无则输出查询异常结果,表明当前内存数据库中无对应的集/组文件,若有,则基于游标遍历获取对应的文件,并基于所述条件表达式进行过滤,即基于业务查询的筛选条件对当前进行集/组文件过滤以得到对应的查询结果;最后,在识别到数据来源为所述远程数据库表,进入数据库查询,基于所述条件表达式拼接查询脚本,并基于所述查询脚本利用数据库查询功能执行查询。
根据本发明实施例,基于所述业务查询数据进行过滤条件因子识别解析得到对应的过滤条件,从而基于至少一个过滤条件得到对应的所述条件表达式。
需要说明的是,于本实施例中,由于用户在输入业务查询数据时,可能同时存在多个过滤条件,例如时间条件与类型条件的综合体,因此需要对业务查询数据中的过滤条件因子进行识别解析以得到对应的过滤条件,进一步地,条件表达式中至少包括一个过滤条件,即用户在业务查询时,至少包括了一种查询筛选条件。
值得一提的是,所述方法还包括基于所述业务查询数据进行过滤条件因子识别时,输出告警提醒,具体包括:
基于所述业务查询数据进行过滤条件因子识别解析,其中,
若识别到对应的过滤条件,则基于所述过滤条件生产所述条件表达式;
若识别不到所述过滤条件,则输出告警提醒。
需要说明的是,于本实施例中,上述实施例中说明了在实际业务查询时,业务查询数据对应有不同的筛选条件,因此在查询时,首先需要对过滤条件进行识别,当识别到过滤条件后,方可生成条件表达式从而进行后续筛选,当识别不到所述过滤条件时,会输出告警提醒,以提醒用户在进行业务查询时,需要同步输入过滤条件。
值得一提的是,所述方法还包括:
识别到数据来源为所述远程数据库表,获取所述远程数据库表的查询脚本;
基于所述条件表达式与所述查询脚本进行标识符匹配,以提取匹配成功的查询脚本执行查询。
需要说明的是,于本实施例中,上述实施例中说明了当识别到数据来源为所述远程数据库表时,此时需要应用到远程数据库表的查询脚本执行查询作业,其中,由于业务查询数据又对应有条件表达式,因此需要基于所述条件表达式与所述查询脚本进行标识符匹配,以成功从所述远程数据库表中匹配到对应的查询脚本执行对应的查询作业。
本发明第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质中包括一种基于内存数据库的数据路由方法程序,所述基于内存数据库的数据路由方法程序被处理器执行时,实现如上述任一项所述的一种基于内存数据库的数据路由方法的步骤。
本发明公开的一种基于内存数据库的数据路由方法、系统和可读存储介质,能够对多数据源以及冷热数据按需获取,合理利用计算、存储和带宽资源,从而可以优化查询效率。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (4)
1.一种基于内存数据库的数据路由方法,其特征在于,包括以下步骤:
识别输入的业务数据查询需求以获取业务查询数据,以进入路由处理进程;
基于所述业务查询数据进行过滤条件解析得到对应的条件表达式;
进入路由处理进程后,利用数据路由配置表解析对应的所述业务查询数据,以识别数据来源;
获取输入的配置数据,基于所述配置数据设置所述数据路由配置表,所述数据路由配置表明细包括缓存参数、数据来源以及路由点,其中,基于所述配置数据设置所述数据路由配置表,具体包括:划分数据类型以区分内存、文件或者远程数据库表得到所述数据来源;基于不同的所述数据来源与不同的缓存参数进行匹配,其中,每种所述数据来源均对应于一种所述缓存参数;基于所述缓存参数与对应的路由点进行KEY值映射以完成所述数据路由配置表的设置;
基于所述内存数据库加载所述数据路由配置表,并获取反馈数据进行复检,其中,具体包括获取反馈数据的数据类型,其中,若所述数据类型为预设类型,则表示当前所述数据路由配置表被所述内存数据库加载成功,否则表示当前所述数据路由配置表被所述内存数据库加载失败;当所述数据路由配置表被所述内存数据库加载成功时,基于所述反馈数获取自测参数,基于所述自测参数进行判断,其中,若所述自测参数为预设值,则表示当前被成功加载的所述数据路由配置表加载正确,否则表示当前被成功加载的所述数据路由配置表自身存在加载错误;
基于所述数据来源进行参数映射得到对应的路由点,并利用所述条件表达式进行查询,而后将查询到的查询结果进行输出,其中,所述基于所述数据来源进行参数映射得到对应的路由点,并利用所述条件表达式进行查询,具体包括识别到数据来源为所述内存时,进入内存查询,判断当前内存数据库中是否存在对应的内存,其中,若无则输出查询异常结果,若有,则基于所述条件表达式在所述内存数据库中进行过滤条件查询;识别到数据来源为所述文件时,进入集/组文件查询,判断当前所述内存数据库中是否存在对应的集/组文件,其中,若无则输出查询异常结果,若有,则基于游标遍历获取对应的文件,并基于所述条件表达式进行过滤;识别到数据来源为所述远程数据库表,进入数据库查询,基于所述条件表达式拼接查询脚本,并基于所述查询脚本利用数据库查询功能执行查询。
2.根据权利要求1所述的一种基于内存数据库的数据路由方法,其特征在于,基于所述业务查询数据进行过滤条件因子识别解析得到对应的过滤条件,从而基于至少一个过滤条件得到对应的所述条件表达式。
3.一种基于内存数据库的数据路由系统,其特征在于,包括存储器和处理器,所述存储器中包括基于内存数据库的数据路由方法程序,所述基于内存数据库的数据路由方法程序被所述处理器执行时实现如下步骤:
识别输入的业务数据查询需求以获取业务查询数据,以进入路由处理进程;
基于所述业务查询数据进行过滤条件解析得到对应的条件表达式;
进入路由处理进程后,利用数据路由配置表解析对应的所述业务查询数据,以识别数据来源;
获取输入的配置数据,基于所述配置数据设置所述数据路由配置表,所述数据路由配置表明细包括缓存参数、数据来源以及路由点,其中,基于所述配置数据设置所述数据路由配置表,具体包括:划分数据类型以区分内存、文件或者远程数据库表得到所述数据来源;基于不同的所述数据来源与不同的缓存参数进行匹配,其中,每种所述数据来源均对应于一种所述缓存参数;基于所述缓存参数与对应的路由点进行KEY值映射以完成所述数据路由配置表的设置;
基于所述内存数据库加载所述数据路由配置表,并获取反馈数据进行复检,其中,具体包括获取反馈数据的数据类型,其中,若所述数据类型为预设类型,则表示当前所述数据路由配置表被所述内存数据库加载成功,否则表示当前所述数据路由配置表被所述内存数据库加载失败;当所述数据路由配置表被所述内存数据库加载成功时,基于所述反馈数获取自测参数,基于所述自测参数进行判断,其中,若所述自测参数为预设值,则表示当前被成功加载的所述数据路由配置表加载正确,否则表示当前被成功加载的所述数据路由配置表自身存在加载错误;
基于所述数据来源进行参数映射得到对应的路由点,并利用所述条件表达式进行查询,而后将查询到的查询结果进行输出,其中,所述基于所述数据来源进行参数映射得到对应的路由点,并利用所述条件表达式进行查询,具体包括识别到数据来源为所述内存时,进入内存查询,判断当前内存数据库中是否存在对应的内存,其中,若无则输出查询异常结果,若有,则基于所述条件表达式在所述内存数据库中进行过滤条件查询;识别到数据来源为所述文件时,进入集/组文件查询,判断当前所述内存数据库中是否存在对应的集/组文件,其中,若无则输出查询异常结果,若有,则基于游标遍历获取对应的文件,并基于所述条件表达式进行过滤;识别到数据来源为所述远程数据库表,进入数据库查询,基于所述条件表达式拼接查询脚本,并基于所述查询脚本利用数据库查询功能执行查询。
4.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中包括一种基于内存数据库的数据路由方法程序,所述基于内存数据库的数据路由方法程序被处理器执行时,实现如权利要求1至2中任一项所述的一种基于内存数据库的数据路由方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310710761.5A CN116431677B (zh) | 2023-06-15 | 2023-06-15 | 基于内存数据库的数据路由方法、系统和可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310710761.5A CN116431677B (zh) | 2023-06-15 | 2023-06-15 | 基于内存数据库的数据路由方法、系统和可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116431677A CN116431677A (zh) | 2023-07-14 |
CN116431677B true CN116431677B (zh) | 2023-11-21 |
Family
ID=87084107
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310710761.5A Active CN116431677B (zh) | 2023-06-15 | 2023-06-15 | 基于内存数据库的数据路由方法、系统和可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116431677B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101395602A (zh) * | 2005-12-29 | 2009-03-25 | 亚马逊科技公司 | 用于分布式文件存储和索引服务的方法和装置 |
US8468121B1 (en) * | 2011-09-29 | 2013-06-18 | Shoretel, Inc. | Resolving resource time intervals in a distributed system |
CN110659282A (zh) * | 2019-08-14 | 2020-01-07 | 中国平安财产保险股份有限公司 | 数据路由的构建方法、装置、计算机设备和存储介质 |
CN111164587A (zh) * | 2017-09-29 | 2020-05-15 | 甲骨文国际公司 | 共享存储数据库系统中的路由请求 |
CN112540948A (zh) * | 2019-09-23 | 2021-03-23 | 萨思学会有限公司 | 通过事件流处理集群管理器进行路由管理 |
CN112541009A (zh) * | 2020-12-23 | 2021-03-23 | 平安普惠企业管理有限公司 | 数据查询方法、装置、电子设备及存储介质 |
CN112765282A (zh) * | 2021-01-18 | 2021-05-07 | 恒安嘉新(北京)科技股份公司 | 一种数据联机分析处理方法、装置、设备及存储介质 |
CN115617795A (zh) * | 2022-10-11 | 2023-01-17 | 厦门市美亚柏科信息股份有限公司 | 一种数据库表的通用查询方法、装置及存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220222231A1 (en) * | 2021-01-13 | 2022-07-14 | Coupang Corp. | Computerized systems and methods for using artificial intelligence to optimize database parameters |
US20230089710A1 (en) * | 2021-09-22 | 2023-03-23 | Target Brands, Inc. | Data request server code and configuration file deployment |
-
2023
- 2023-06-15 CN CN202310710761.5A patent/CN116431677B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101395602A (zh) * | 2005-12-29 | 2009-03-25 | 亚马逊科技公司 | 用于分布式文件存储和索引服务的方法和装置 |
US8468121B1 (en) * | 2011-09-29 | 2013-06-18 | Shoretel, Inc. | Resolving resource time intervals in a distributed system |
CN111164587A (zh) * | 2017-09-29 | 2020-05-15 | 甲骨文国际公司 | 共享存储数据库系统中的路由请求 |
CN110659282A (zh) * | 2019-08-14 | 2020-01-07 | 中国平安财产保险股份有限公司 | 数据路由的构建方法、装置、计算机设备和存储介质 |
CN112540948A (zh) * | 2019-09-23 | 2021-03-23 | 萨思学会有限公司 | 通过事件流处理集群管理器进行路由管理 |
CN112541009A (zh) * | 2020-12-23 | 2021-03-23 | 平安普惠企业管理有限公司 | 数据查询方法、装置、电子设备及存储介质 |
CN112765282A (zh) * | 2021-01-18 | 2021-05-07 | 恒安嘉新(北京)科技股份公司 | 一种数据联机分析处理方法、装置、设备及存储介质 |
CN115617795A (zh) * | 2022-10-11 | 2023-01-17 | 厦门市美亚柏科信息股份有限公司 | 一种数据库表的通用查询方法、装置及存储介质 |
Non-Patent Citations (1)
Title |
---|
基于一体化网络的映射关系缓存策略;张建伟;陈娟娟;刘思;;郑州轻工业学院学报(自然科学版)(03);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116431677A (zh) | 2023-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111400186B (zh) | 性能测试方法及系统 | |
CN108509658B (zh) | 一种xml文件的解析方法和装置 | |
US11809406B2 (en) | Event records in a log file | |
CN108920607B (zh) | 字段发现方法、装置及电子设备 | |
CN110968380B (zh) | 数据可视化方法及系统 | |
CN110941530A (zh) | 监控数据的获取方法、装置、计算机设备和存储介质 | |
CN110674200A (zh) | 一种基于注解的数据查询方法、数据查询设备及存储介质 | |
CN112286757A (zh) | 数据同步的监控方法、装置、电子设备及存储介质 | |
CN112579603A (zh) | 基于cdc的数据模型动态信息感知监测方法及装置 | |
CN112948504B (zh) | 数据采集方法、装置、计算机设备和存储介质 | |
CN107871055B (zh) | 一种数据分析方法和装置 | |
CN107330031B (zh) | 一种数据存储的方法、装置及电子设备 | |
CN113901021A (zh) | 用于多版本数据库的升级脚本生成方法、装置与电子设备 | |
CN116431677B (zh) | 基于内存数据库的数据路由方法、系统和可读存储介质 | |
CN109947715B (zh) | 日志告警方法及装置 | |
CN110968615B (zh) | 数据查询方法及装置 | |
CN115048359A (zh) | 一种多类型接入数据源的通用数据处理架构设计方法 | |
CN116089446A (zh) | 一种结构化查询语句的优化控制方法及装置 | |
CN113918606B (zh) | 日志查询方法及装置 | |
CN114860608A (zh) | 基于场景构建的系统自动化测试方法、装置、设备及介质 | |
CN113128848A (zh) | 全业务指标的数据质量监控方法、电子设备及存储介质 | |
CN116701337B (zh) | 日志数据处理方法、装置、电子设备及存储介质 | |
CN113127327B (zh) | 一种用于性能测试的测试方法及装置 | |
CN115408235A (zh) | 数据库分析方法、装置、电子设备及存储介质 | |
CN115687355A (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 |