CN117520269A - 一种数据查询方法及装置 - Google Patents
一种数据查询方法及装置 Download PDFInfo
- Publication number
- CN117520269A CN117520269A CN202311695289.9A CN202311695289A CN117520269A CN 117520269 A CN117520269 A CN 117520269A CN 202311695289 A CN202311695289 A CN 202311695289A CN 117520269 A CN117520269 A CN 117520269A
- Authority
- CN
- China
- Prior art keywords
- query
- storage file
- parameter
- storage
- scheme
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 45
- 238000013500 data storage Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000007405 data analysis Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012827 research and development Methods 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/10—File systems; File servers
- G06F16/14—Details of searching files based on file metadata
- G06F16/148—File search processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/172—Caching, prefetching or hoarding of files
-
- 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)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Library & Information Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种数据查询方法,包括:获取查询需求,查询需求包括:查询所使用的索引参数以及基于该索引参数查询的目标参数;将索引参数和目标参数分别与预先构建的对应关系进行匹配,以确定待查询存储文件。根据待查询存储文件,得到符合查询需求的至少一个查询方案,所述至少一个查询方案中的每个查询方案,用于指示基于索引参数查询获得目标参数所需查询的存储文件;执行至少一个查询方案中对应查询开销最小的查询方案,以查询得到目标参数,每个查询方案的查询开销,根据该查询方案关联的存储系统确定,该查询方案关联的存储系统,包括该查询方案涉及的存储文件对应的存储系统。利用本方案,既可以提升查询效率又可以节省查询开销。
Description
技术领域
本申请涉及数据处理领域,特别是涉及一种数据查询方法及装置。
背景技术
随着计算机技术的发展,出现了越来越多的数据,相应的,也出现了越来越多的数据存储技术。在数据产生之后,可以利用数据存储技术将数据存储至对应的数据存储系统中,在后续数据分析阶段,可以根据需求从数据存储系统中查询对应的数据。
随着业务系统所具备的功能日益丰富,业务数据的类型也越来越多。而不同类型的业务数据其适用的数据存储技术也可能会存在差异。因此,对于某一业务系统而言,其产生的业务数据可能会分布存储于多个不同类型的存储系统中。
目前,当业务系统产生的数据分布存储于多个不同类型的存储系统中时,从多个存储系统中查询数据的效率较低。因此,亟需一种方案,能够解决上述问题。
发明内容
为了解决或者至少部分解决上述技术问题,本申请实施例提供了一种数据查询方法及装置。
第一方面,本申请实施例提供了一种数据查询方法,所述方法包括:
获取查询需求,所述查询需求包括:查询所使用的索引参数以及基于该索引参数查询的目标参数;
将所述索引参数和所述目标参数分别与预先构建的对应关系进行匹配,以确定待查询存储文件,其中:所述对应关系为参数和存储该参数的存储文件之间的对应关系,所述待查询存储文件,包括存储所述索引参数的存储文件以及存储所述目标参数的存储文件;
根据所述待查询存储文件,得到符合所述查询需求的至少一个查询方案,其中,所述至少一个查询方案中的每个查询方案,用于指示基于所述索引参数查询获得所述目标参数所需查询的存储文件,所述基于所述索引参数查询获得所述目标参数所需查询的存储文件,为所述待查询存储文件包括的部分或者全部存储文件;
执行所述至少一个查询方案中对应所述查询开销最小的查询方案,以查询得到所述目标参数,其中,每个所述查询方案的查询开销,根据该查询方案关联的存储系统确定,该查询方案关联的存储系统,包括该查询方案涉及的存储文件对应的存储系统。
可选的,所述将所述索引参数和所述目标参数分别与预先构建的对应关系进行匹配,确定待查询存储文件,包括:
将所述索引参数和所述目标参数分别与预先构建的对应关系进行匹配,得到既存储有所述索引参数又存储有所述目标参数的多个存储文件,并将该多个存储文件确定为所述待查询存储文件;
根据所述待查询存储文件,得到符合所述查询需求的至少一个查询方案,包括:
分别确定与所述多个存储文件中各个存储文件分别对应的查询方案。
可选的,所述目标参数包括第一参数和第二参数,所述将所述索引参数和所述目标参数分别与预先构建的对应关系进行匹配,确定待查询存储文件,包括:
将所述索引参数和所述目标参数分别与预先构建的对应关系进行匹配,得到第一存储文件、第二存储文件和第三存储文件,其中,所述第一存储文件存储有所述索引参数和所述第一参数,所述第二存储文件存储有所述索引采纳数和所述第二参数,所述第三存储文件存储有所述索引参数、所述第一参数和所述第二参数;
根据所述待查询存储文件,得到符合所述查询需求的至少一个查询方案,包括:
根据所述第一存储文件、第二存储文件和所述第三存储文件,得到第一查询方案和第二查询方案,所述第一查询方案指示基于所述第一存储文件和所述第二存储文件查询得到所述目标参数,所述第三查询方案指示基于所述第三存储文件查询得到所述目标参数。
可选的,所述目标参数包括第三参数,所述将所述索引参数和所述目标参数分别与预先构建的对应关系进行匹配,确定待查询存储文件,包括:
将所述索引参数和所述目标参数分别与预先构建的对应关系进行匹配,得到存储有所述索引参数和中间参数的第四存储文件、以及存储有所述中间参数和所述第三参数的第五存储文件;
根据所述待查询存储文件,得到符合所述查询需求的至少一个查询方案,包括:
根据所述第四存储文件和所述第五存储文件,得到第四查询方案,所述第四查询方案指示首先基于所述索引参数查询所述第四存储文件,而后基于查询所述第四存储文件获得的中间参数查询所述第五存储文件,以得到所述第三参数。
可选的,在执行所述至少一个查询方案中对应所述查询开销最小的查询方案,以查询得到所述目标参数之前,所述方法还包括:
针对所述至少一个查询方案中的每个查询方案,基于该查询方案所涉及的存储文件的查询开销值,确定该查询方案对应的查询开销,该查询方案所涉及的存储文件包括目标存储文件,目标存储文件的查询开销值,根据所述目标存储文件对应的存储系统确定。
可选的,所述目标存储文件包括至少一个维度的指标,所述目标存储文件的查询开销值,根据所述至少一个维度的指标中各个指标对应的统计值和以及各个指标分别对应的权重确定,所述各个指标分别对应的权重,根据所述目标存储文件对应的存储系统确定。
可选的,所述执行所述至少一个查询方案中对应所述查询开销最小的查询方案,以查询得到所述目标参数,包括:
根据所述查询方案所涉及的存储文件中各个存储文件支持的查询语句格式,生成与所述各个存储文件对应的查询语句,并执行所述查询语句以查询得到所述目标参数。
第二方面,本申请实施例提供了一种数据查询装置,所述装置包括:
获取单元,用于获取查询需求,所述查询需求包括:查询所使用的索引参数以及基于该索引参数查询的目标参数;
匹配单元,用于将所述索引参数和所述目标参数分别与预先构建的对应关系进行匹配,以确定待查询存储文件,其中:所述对应关系为参数和存储该参数的存储文件之间的对应关系,所述待查询存储文件,包括存储所述索引参数的存储文件以及存储所述目标参数的存储文件;
第一确定单元,用于根据所述待查询存储文件,得到符合所述查询需求的至少一个查询方案,其中,所述至少一个查询方案中的每个查询方案,用于指示基于所述索引参数查询获得所述目标参数所需查询的存储文件,所述基于所述索引参数查询获得所述目标参数所需查询的存储文件,为所述待查询存储文件包括的部分或者全部存储文件;
查询单元,用于执行所述至少一个查询方案中对应所述查询开销最小的查询方案,以查询得到所述目标参数,其中,每个所述查询方案的查询开销,根据该查询方案关联的存储系统确定,该查询方案关联的存储系统,包括该查询方案涉及的存储文件对应的存储系统。
可选的,所述匹配单元,用于:
将所述索引参数和所述目标参数分别与预先构建的对应关系进行匹配,得到既存储有所述索引参数又存储有所述目标参数的多个存储文件,并将该多个存储文件确定为所述待查询存储文件;
所述第一确定单元,用于:
分别确定与所述多个存储文件中各个存储文件分别对应的查询方案。
可选的,所述目标参数包括第一参数和第二参数,所述匹配单元,用于:
将所述索引参数和所述目标参数分别与预先构建的对应关系进行匹配,得到第一存储文件、第二存储文件和第三存储文件,其中,所述第一存储文件存储有所述索引参数和所述第一参数,所述第二存储文件存储有所述索引采纳数和所述第二参数,所述第三存储文件存储有所述索引参数、所述第一参数和所述第二参数;
所述第一确定单元,用于:
根据所述第一存储文件、第二存储文件和所述第三存储文件,得到第一查询方案和第二查询方案,所述第一查询方案指示基于所述第一存储文件和所述第二存储文件查询得到所述目标参数,所述第三查询方案指示基于所述第三存储文件查询得到所述目标参数。
可选的,所述目标参数包括第三参数,所述匹配单元,用于:
将所述索引参数和所述目标参数分别与预先构建的对应关系进行匹配,得到存储有所述索引参数和中间参数的第四存储文件、以及存储有所述中间参数和所述第三参数的第五存储文件;
所述第一确定单元,用于:
根据所述第四存储文件和所述第五存储文件,得到第四查询方案,所述第四查询方案指示首先基于所述索引参数查询所述第四存储文件,而后基于查询所述第四存储文件获得的中间参数查询所述第五存储文件,以得到所述第三参数。
可选的,所述装置还包括:
第二确定单元,用于在执行所述至少一个查询方案中对应所述查询开销最小的查询方案,以查询得到所述目标参数之前,针对所述至少一个查询方案中的每个查询方案,基于该查询方案所涉及的存储文件的查询开销值,确定该查询方案对应的查询开销,该查询方案所涉及的存储文件包括目标存储文件,目标存储文件的查询开销值,根据所述目标存储文件对应的存储系统确定。
可选的,所述目标存储文件包括至少一个维度的指标,所述目标存储文件的查询开销值,根据所述至少一个维度的指标中各个指标对应的统计值和以及各个指标分别对应的权重确定,所述各个指标分别对应的权重,根据所述目标存储文件对应的存储系统确定。
可选的,所述查询单元,用于:
根据所述查询方案所涉及的存储文件中各个存储文件支持的查询语句格式,生成与所述各个存储文件对应的查询语句,并执行所述查询语句以查询得到所述目标参数。
第三方面,本申请实施例提供了一种电子设备,所述设备包括处理器和存储器;
所述处理器用于执行所述存储器中存储的指令,以使得所述设备执行如以上第一方面中任一项所述的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,包括指令,所述指令指示设备执行如以上第一方面中任一项所述的方法。
第五方面,本申请实施例提供了一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得计算机执行以上第一方面任一项所述的方法。
与现有技术相比,本申请实施例具有以下优点:
本申请实施例提供了一种数据查询方法,包括:获取查询需求,所述查询需求包括查询所使用的索引参数以及基于该索引参数查询的目标参数。在本申请实施例中,可以结合预先构建的参数和存储该参数的存储文件的对应关系,确定待查询存储文件。具体的,可以将索引参数和目标参数分别和前述对应关系进行匹配,以确定待查询存储文件,该待查询存储文件,可以包括存储所述索引参数的存储文件以及存储所述目标参数的存储文件。确定所述待查询存储文件之后,可以基于该待查询存储文件,得到符合所述查询需求的至少一个查询方案,其中,所述至少一个查询方案中的每个查询方案,均用于指示基于所述索引参数查询获得所述目标参数所需查询的存储文件,对于某一查询方案而言,其涉及的存储文件,可以是所述待查询存储文件包括的部分或者全部存储文件。查询方案涉及的存储文件,指的是前述该查询方案是指示的基于所述索引参数查询获得所述目标参数所需查询的存储文件。由此可见,利用本申请实施例的方案,无需人工梳理存储目标参数的存储文件从而确定查询方案,而是可以根据前述对应关系确定待查询存储文件,相应的,根据待查询存储文件确定至少一个查询方案,从而提升了确定查询方案的效率。得到所述至少一个查询方案之后,为了在实现查询目的的前提下尽可能减小查询开销,可以执行前述至少一个查询方案中对应所述查询开销最小的查询方案,以查询得到所述目标参数。而由于不同存储系统的查询性能不同,相应的,查询不同存储系统中的存储文件所需的查询开销也不同。在本申请实施例中,每个所述查询方案的查询开销,根据该查询方案关联的存储系统确定,该查询方案关联的存储系统,包括该查询方案涉及的存储文件所对应的存储系统。换言之,利用本方案,可以结合存储系统的查询性能,确定查询方案的查询开销,从而选择查询开销最小的查询方案。综上可知,利用本申请实施例的方案,在业务数据分散存储在多个存储系统中的情况下,既可以提升查询效率又可以节省查询开销。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种数据查询方法的流程示意图;
图2为本申请实施例提供的一种示例性应用场景示意图;
图3为本申请实施例提供的又一种示例性应用场景示意图;
图4为本申请实施例提供的一种数据查询装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的发明人经过研究发现,当业务系统产生的数据分布存储于多个存储系统中时,从多个存储系统中查询数据的效率较低。这是因为不同的存储系统其支持的查询方式不同。其中,查询方式不同可以体现为查询语句的格式不同。
目前,当需要查询数据(例如某一参数)时,用户(例如研发或者运维人员)可以首先采用人工确认的方式,确定该参数存储于哪个存储系统对应的哪个存储文件中,以进一步编写适用于该存储文件的查询语句,从而基于该查询语句查询前述参数。而且,对于某一参数而言,考虑到其可以应用于不同的数据分析场景,因此,该参数可以被存储至多个存储系统中。
但是,采用这种方式,其查询效率严重依赖于用户对业务系统对应的存储系统的熟悉程度。然而在实际应用中,用户很难对存储各参数的存储文件均十分熟悉,这就导致前述“采用人工确认的方式,确定该参数存储于哪个存储系统对应的哪个存储文件中,以进一步编写适用于该存储文件的查询语句”这个过程耗时较长,相应的,导致查询数据的效率较低。
而且,对于某一查询需求,当存在多个查询方案时,传统技术中往往是从多个查询方案中随机选择一个查询方案,该随机选择的查询方案的查询开销可能比较大。换言之,在传统技术中,不仅数据查询的效率低,数据查询的开销也比较大。
为了解决上述问题,本申请实施例提供了一种数据查询方法及装置。
下面结合附图,详细说明本申请的各种非限制性实施方式。
示例性方法
参见图1,该图为本申请实施例提供的一种数据查询方法的流程示意图。本申请实施例提供的数据查询方法,可以应用于服务端,也可以应用于客户端,本申请实施例不做具体限定。
在本实施例中,所述方法例如可以包括以下步骤:S101-S104。
S101:获取查询需求,所述查询需求包括:查询所使用的索引参数以及基于该索引参数查询的目标参数。
在本申请实施例中,所述查询需求,可以是用户输入的。作为一个示例,数据查询页面中包括查询需求输入区域,用户可以在该查询需求输入区域输入所述查询需求。
在本申请实施例中,所述查询需求可以包括查询使用的索引参数以及基于该索引参数查询的目标参数。作为一个示例,该查询需求可以采用自然语言描述。换言之,用户可以在前述查询需求输入区域输入以自然语言描述的查询需求,无需遵循软件代码规范。例如,所述查询需求可以是:输入商品标识(identifier,ID),查询商品点击率以及商品的供应商。
S102:将所述索引参数和所述目标参数分别与预先构建的对应关系进行匹配,以确定待查询存储文件,其中,所述对应关系为参数和包括该参数的存储文件之间的对应关系,所述待查询存储文件,包括存储有所述索引参数的存储文件以及存储有所述目标参数的存储文件。
获取所述查询需求之后,可以结合预先构建的对应关系,确定能够满足所述查询需求的待查询存储文件,以便于后续利用待查询存储文件进行查询。
在本申请实施例中,该对应关系是参数和存储该参数的存储文件之间的对应关系。例如,在数据存储阶段,可以记录存储参数的存储文件,并进一步保存参数和存储该参数的存储文件之间的对应关系。
在一个示例中,参数和存储该参数的存储文件之间的对应关系,可以是参数的标识和存储文件的标识之间的对应关系,参数的标识例如可以是参数名称,存储文件的标识可以包括两个部分,一个部分为该存储文件所属的存储系统,另一个部分为该存储文件的名称。
在本申请实施例中,可以将所述索引参数和所述目标参数分别与预先构建的对应关系进行匹配,以确定待查询存储文件。不难理解的是,将所述索引参数与前述对应关系进行匹配,可以确定存储有所述索引参数的存储文件。将所述目标参数与前述对应关系进行匹配,可以确定存储有所述目标参数的存储文件。该待查询存储文件,可以包括存储有所述索引参数的存储文件和存储有所述目标参数的存储文件。其中,存储有所述目标参数的存储文件和存储有所述索引参数的存储文件,可以相同,也可以不同,本申请实施例不做具体限定。
在一个示例中,前述待查询存储文件可以包括多个存储文件,并且,每个存储文件中既存储有所述索引参数,又包括所述查询参数。
在又一个示例中,在前述目标参数包括多个参数的情况下,存储文件中可能会包括索引参数和所述多个参数中的部分或者全部参数。以所述目标参数包括第一参数和第二参数为例,在一个示例中,前述待查询存储文件可以包括第一存储文件、第二存储文件和第三存储文件。其中,第一存储文件存储有所述索引参数和所述第一参数,所述第二存储文件存储有所述索引参数和所述第二参数。所述第三存储文件存储有所述索引参数、所述第一参数和所述第二参数。
在另一个示例中,前述存储有索引参数的存储文件和存储有目标参数的存储文件可以是不同的存储文件。在一个具体的示例中,所述目标参数包括第三参数,所述待查询存储文件包括第四存储文件和第五存储文件。其中,所述第四存储文件存储有所述索引参数,所述第五存储文件存储有所述第三参数。另外,所述第四存储文件除了存储有所述索引参数之外,还存储有中间参数,相应的,所述第五存储文件除了存储有所述第三参数之外,还存储有所述中间参数,该中间参数可以作为连接所述索引参数和第三参数的桥梁。
S103:根据所述待查询存储文件,得到符合所述查询需求的至少一个查询方案,其中,所述至少一个查询方案中的每个查询方案,用于指示基于所述索引参数查询获得所述目标参数所需查询的存储文件,所述基于所述索引参数查询获得所述目标参数所需查询的存储文件,为所述待查询存储文件包括的部分或者全部存储文件。
确定所述待查询存储文件之后,可以根据所述待查询存储文件,确定符合查询需求的查询方案。如前描述,对于某一参数而言,考虑到其可以应用于不同的数据分析场景,因此,该参数可以被存储至多个存储系统中。因此,基于该待查询存储文件,可以确定至少一个符合查询需求的查询方案。
对于所述至少一个查询方案中的每个查询方案,其可以用于指示实现所述查询需求所需查询的存储文件,即:其可以用于指示基于所述索引参数查询获得所述目标参数所需查询的存储文件。对于任一查询方案而言,其所指示的需要查询的存储文件,可以是前述待查询存储文件中的部分或者全部存储文件。对于任一查询方案而言,其可以包括查询输入、查询文件和查询结果这三个要素。
如S102中描述,在一个示例中,所述待查询存储文件可以包括既存储有所述索引参数又存储有所述目标参数的多个存储文件。对于这种情况,可以基于所述多个存储文件中的每个存储文件,分别确定一个查询方案。在此场景中,各个查询方案的查询输入为所述索引参数,查询文件为该存储文件,查询结果为所述目标参数。
举例说明:查询需求为输入商品ID查询商品点击率。而存储系统A的存储文件A1中既存储有所述商品ID又存储有所述商品点击率,存储系统B的存储文件B1中既存储有所述商品ID又存储有所述商品点击率,因此,可以确定查询方案1:查询存储系统A的存储文件A1。查询方案2:查询存储系统B的存储文件B1。
如S102中所述,在又一个示例中,所述待查询存储文件可以包括第一存储文件、第二存储文件和第三存储文件。对于这种情况,可以基于第一存储文件、第二存储文件和第三存储文件,确定第一查询方案和第二查询方案。具体的,可以根据所述第一存储文件和所述第二存储文件确定第一查询方案,第一查询方案用于指示基于所述第一存储文件和所述第二存储文件查询得到所述目标参数。具体的,所述第一查询方案用于指示基于所述第一存储文件查询得到所述第一参数,基于所述第二存储文件查询得到所述第二参数。所述第二查询方案用于指示基于所述第三存储文件查询得到所述第一参数和第二参数。
如S102中所述,在另一个示例中,所述待查询存储文件包括第四存储文件和第五存储文件。对于这种情况,可以根据所述第四存储文件和所述第五存储文件,得到第四查询方案。具体的,可以根据索引参数、中间参数以及第三参数三者之间的依赖关系,确定第四存储文件和第五查询文件的查询顺序,从而得到能够体现该查询顺序、且能够实现查询需求的第四查询方案。具体的,所述第四查询方案,可以用于指示首先基于所述索引参数查询所述第四存储文件,而后,基于查询所述第四存储文件获得的中间参数查询所述第五存储文件,以得到所述第三参数。不难理解的是,所述第四查询方案包括按序执行的两个查询环节,第一个查询环节是基于索引参数查询第四存储文件,得到中间参数。第一个查询环节的查询输入为索引参数,查询文件为第四存储文件,查询结果为中间参数。第二个查询环节是基于中间参数查询第五存储文件,得到第三参数。第二个查询环节的查询输入为中间参数,查询文件为第五存储文件,查询结果为第三参数。
S104:执行所述至少一个查询方案中对应所述查询开销最小的查询方案,以查询得到所述目标参数,其中,每个所述查询方案的查询开销,根据该查询方案关联的存储系统确定,该查询方案关联的存储系统,包括该查询方案涉及的存储文件对应的存储系统。
确定所述至少一个查询方案之后,为了尽可能减小查询得到所述目标参数所使用的查询开销,可以执行所述至少一个查询方案中对应所述查询开销最小的查询方案,以查询得到所述目标参数。
在一个示例中,执行对应所述查询开销最小的查询方案在具体实现时,可以输出该查询开销最小的查询方案,采用人工编写查询语句的方式,编写该查询方案对应的查询语句,并进一步运行该查询语句。在又一个示例中,可以自动生成该查询开销最小的查询方案对应的查询语句并执行该查询语句以查询得到所述目标参数。自动生成所述查询语句在具体实现时,可以首先确定该查询方案涉及的存储文件,而后,针对各个存储文件,基于该存储文件的三要素(即前述查询输入、查询文件和查询结果)和该存储文件支持的查询语句格式,生成与各个存储文件对应的查询语句。相应的,在执行各个存储文件对应的查询语句时,可以结合各个存储文件的查询顺序,执行对应的查询语句。
在一个示例中,在执行S104之前,还可以确定所述至少一个查询方案中各个查询方案分别对应的查询开销,而后,比较各个查询方案对应的查询开销,从而确定所述至少一个查询方案中对应查询开销最小的查询方案。
在本申请实施例中,每个查询方案的查询开销,可以根据该查询方案关联的存储系统确定。如前所述,每个查询方案可以用于指示基于所述索引参数查询获得所述目标参数所需查询的存储文件,而存储文件存储在存储系统中。因此,查询方案关联的存储系统,可以是该查询方案涉及的存储文件所对应的存储系统。查询方案涉及的存储文件,可以是该查询方案指示需要查询的存储文件。存储文件对应的存储系统,指的是存储有该存储文件的存储系统。
在一个示例中,一个查询方案可以关联至少一个存储系统,作为一个示例,当该查询方案涉及的存储文件均属于第一存储系统时,该查询方案关联的存储系统可以是第一存储系统。作为又一个示例,当该查询方案涉及的存储文件对应多个存储系统时,该查询方案关联的存储系统可以是包括多个存储系统。例如,该查询方案指示需要查询存储文件1和存储文件2,存储文件1属于第一存储系统,存储文件2属于第二存储系统,则查询方案关联的存储系统可以包括第一存储系统和第二存储系统。
在一个示例中,可以输出所述至少一个查询方案,采用人工分析的方式,确定所述至少一个查询方案中各个查询方案的查询开销。
在又一个示例中,针对所述至少一个查询方案中的任意一个查询方案,可以基于该查询方案所涉及的存储文件的查询开销值,确定该查询方案对应的查询开销。其中,该查询方案所涉及的存储文件,指的是该查询方案所指示的、基于所述索引参数查询获得所述目标参数所需查询的存储文件。存储文件的开销值,可以用于指示查询该存储文件所需的开销。
在一个具体的示例中,若该查询方案涉及一个存储文件,则可以将该一个存储文件的查询开销值,确定为该查询方案对应的查询开销。在又一个具体的示例中,若该查询方案涉及多个存储文件,则可以将该多个存储文件的查询开销值之和,确定为该查询方案对应的查询开销。
为方便描述,将查询方案涉及的任意一个存储文件称为“目标存储文件”,不难理解的是,所述目标存储文件可以是前述第一存储文件、第二存储文件、第三存储文件、第四存储文件或者第五存储文件。在本申请实施例中,目标存储文件的查询开销值,可以根据所述目标存储文件对应的存储系统确定。
在一个示例中,目标存储文件的查询开销值,可以是一个经验值,该经验值的设置可以依赖于目标存储文件对应的存储系统。
在又一个示例中,目标存储文件可以包括至少一个维度的指标,该指标可以是与查询开销相关的指标。对于这种情况,所述目标存储文件的查询开销值,可以根据所述至少一个维度的指标中、各个指标对应的统计值以及各个指标对应的权重确定。例如,对于任一指标而言,可以计算该指标对应的统计值和该指标的权重的乘积,得到该指标对应的查询开销值,而后,对各个指标对应的查询开销值进行求和,得到所述目标存储文件的查询开销值。
在本申请实施例中,所述各个指标对应的权重,可以根据目标存储文件所对应的存储系统确定。对于同一指标而言,由于不同存储系统的查询性能不同,因此,不同存储系统对应的该指标的权重值也不同。
本申请实施例不具体限定所述指标,该指标包括但不限于:查询并发量、查询耗时、查询准确度、已被选择的次数、存储成本等指标。接下来,结合下表1,对于目标存储文件的查询开销进行说明。表1
指标 | 统计值 | 权重 | 查询开销值 |
查询并发量 | 0.1 | 100 | 10 |
查询耗时 | 0.5 | -50 | -25 |
查询准确度 | 1 | 1000 | 1000 |
已被选择的次数 | 0.1 | 100 | 10 |
存储成本 | 0.5 | -100 | -50 |
根据表1,对各个指标对应的查询开销值进行求和,即可得到所述目标文件的查询开销值为945。
通过以上描述可知,利用本申请实施例的方案,无需人工梳理存储目标参数的存储文件从而确定查询方案,而是可以根据前述对应关系确定待查询存储文件,相应的,根据待查询存储文件确定至少一个查询方案,从而提升了确定查询方案的效率。得到所述至少一个查询方案之后,为了在实现查询目的的前提下尽可能减小查询开销,可以执行前述至少一个查询方案中对应所述查询开销最小的查询方案,以查询得到所述目标参数。综上可知,利用本申请实施例的方案,既可以提升查询效率又可以节省查询开销。
以上对本申请实施例提供的数据查询方法进行了介绍,接下来,结合具体场景,对本申请实施例提供的数据查询方法进行介绍。在以下场景中,以存储文件为数据表为例进行说明。
参见图2,该图为本申请实施例提供的一种示例性应用场景示意图。
如图2所示,存储系统1中存储有商品A表和商品B表,商品A表中对应存储有商品ID、点击率和曝光率。商品B表中对应存储有商品ID和成交量。存储系统2中存储有商品C表,商品C表中对应存储有商品ID、点击率和交易量。
查询需求为:输入商品ID,查询点击率和交易量。
基于商品ID、点击率和交易量,查询得到商品A表、商品B表和商品C表,并得到图2所示的两个查询方案。
查询方案1为:基于商品ID,从商品A表中查询得到点击率,基于商品ID,从商品B表中查询得到成交量。
查询方案2为:基于商品ID,从商品C表中查询得到点击率和成交量。
计算查询方案1和查询方案2的查询开销,计算结果指示查询方案1的查询开销小于查询方案2的查询开销,故而,可以执行查询方案1,得到对应的查询结果。
参见图3,该图为本申请实施例提供的又一种示例性应用场景示意图。
如图3所示,存储系统1中存储有商品A表和商品B表,商品A表中对应存储有商品ID、点击率和曝光率。商品B表中对应存储有商品ID和成交量。存储系统2中存储有商品C表,商品C表中对应存储有商品ID、点击率和交易量。另外,存储系统1中还存储有商品D表和商品E表,商品D表中对应存储有商品ID和商家ID,商品E表中对应存储有商家ID和商家名称。
查询需求为:输入商品ID,查询点击率、交易量和商家名称。
基于商品ID、点击率和交易量,查询得到商品A表、商品B表、商品C表、D表和E表,并得到图3所示的两个查询方案。
查询方案1为:基于商品ID,从商品A表中查询得到点击率,基于商品ID,从商品B表中查询得到成交量(点击率和成交量对应图3所示的输出结果1)。另外,首先基于商品ID查询商品D表得到商家ID,而后,基于商家ID查询商品E表,得到商家名称(对应图3所示的输出结果2)。最后,合并输出结果1和输出结果2,得到最终的输出结果。
查询方案2为:基于商品ID,从商品C表中查询得到点击率和成交量(对应图3所示的输出结果1)。另外,首先基于商品ID查询商品D表得到商家ID,而后,基于商家ID查询商品E表,得到商家名称(对应图3所示的输出结果2)。最后,合并输出结果1和输出结果2,得到最终的输出结果。
计算查询方案1和查询方案2的查询开销,计算结果指示查询方案1的查询开销小于查询方案2的查询开销,故而,可以执行查询方案1,得到对应的查询结果。
示例性设备
基于以上实施例提供的方法,本申请实施例还提供了一种装置,以下结合附图介绍该装置。
参见图4,该图为本申请实施例提供的一种数据查询装置的结构示意图。所述装置400例如可以具体包括:获取单元401、匹配单元402、第一确定单元403和查询单元404。
获取单元401,用于获取查询需求,所述查询需求包括:查询所使用的索引参数以及基于该索引参数查询的目标参数;
匹配单元402,用于将所述索引参数和所述目标参数分别与预先构建的对应关系进行匹配,以确定待查询存储文件,其中:所述对应关系为参数和存储该参数的存储文件之间的对应关系,所述待查询存储文件,包括存储所述索引参数的存储文件以及存储所述目标参数的存储文件;
第一确定单元403,用于根据所述待查询存储文件,得到符合所述查询需求的至少一个查询方案,其中,所述至少一个查询方案中的每个查询方案,用于指示基于所述索引参数查询获得所述目标参数所需查询的存储文件,所述基于所述索引参数查询获得所述目标参数所需查询的存储文件,为所述待查询存储文件包括的部分或者全部存储文件;
查询单元404,用于执行所述至少一个查询方案中对应所述查询开销最小的查询方案,以查询得到所述目标参数,其中,每个所述查询方案的查询开销,根据该查询方案关联的存储系统确定,该查询方案关联的存储系统,包括该查询方案涉及的存储文件对应的存储系统。
可选的,
所述匹配单元402,用于:
将所述索引参数和所述目标参数分别与预先构建的对应关系进行匹配,得到既存储有所述索引参数又存储有所述目标参数的多个存储文件,并将该多个存储文件确定为所述待查询存储文件;
所述第一确定单元403,用于:
分别确定与所述多个存储文件中各个存储文件分别对应的查询方案。
可选的,所述目标参数包括第一参数和第二参数;
所述匹配单元402,用于:
将所述索引参数和所述目标参数分别与预先构建的对应关系进行匹配,得到第一存储文件、第二存储文件和第三存储文件,其中,所述第一存储文件存储有所述索引参数和所述第一参数,所述第二存储文件存储有所述索引采纳数和所述第二参数,所述第三存储文件存储有所述索引参数、所述第一参数和所述第二参数;
所述第一确定单元403,用于:
根据所述第一存储文件、第二存储文件和所述第三存储文件,得到第一查询方案和第二查询方案,所述第一查询方案指示基于所述第一存储文件和所述第二存储文件查询得到所述目标参数,所述第三查询方案指示基于所述第三存储文件查询得到所述目标参数。
可选的,所述目标参数包括第三参数;
所述匹配单元402,用于:
将所述索引参数和所述目标参数分别与预先构建的对应关系进行匹配,得到存储有所述索引参数和中间参数的第四存储文件、以及存储有所述中间参数和所述第三参数的第五存储文件;
所述第一确定单元403,用于:
根据所述第四存储文件和所述第五存储文件,得到第四查询方案,所述第四查询方案指示首先基于所述索引参数查询所述第四存储文件,而后基于查询所述第四存储文件获得的中间参数查询所述第五存储文件,以得到所述第三参数。
可选的,所述装置还包括:
第二确定单元,用于在执行所述至少一个查询方案中对应所述查询开销最小的查询方案,以查询得到所述目标参数之前,针对所述至少一个查询方案中的每个查询方案,基于该查询方案所涉及的存储文件的查询开销值,确定该查询方案对应的查询开销,该查询方案所涉及的存储文件包括目标存储文件,目标存储文件的查询开销值,根据所述目标存储文件对应的存储系统确定。
可选的,所述目标存储文件包括至少一个维度的指标,所述目标存储文件的查询开销值,根据所述至少一个维度的指标中各个指标对应的统计值和以及各个指标分别对应的权重确定,所述各个指标分别对应的权重,根据所述目标存储文件对应的存储系统确定。
可选的,所述查询单元404,用于:
根据所述查询方案所涉及的存储文件中各个存储文件支持的查询语句格式,生成与所述各个存储文件对应的查询语句,并执行所述查询语句以查询得到所述目标参数。
由于所述装置400是与以上方法实施例提供的数据查询方法对应的装置,所述装置400的各个单元的具体实现,均与以上方法实施例为同一构思,因此,关于所述装置400的各个单元的具体实现,可以参考以上方法实施例的相关描述部分,此处不再赘述。
本申请实施例还提供了一种电子设备,所述电子设备包括处理器和存储器;
所述处理器用于执行所述存储器中存储的指令,以使得所述设备执行以上方法实施例提供的数据查询方法。
本申请实施例提供了一种计算机可读存储介质,包括指令,所述指令指示设备执行以上方法实施例提供的数据查询方法。
本申请实施例还提供了一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得计算机执行以上方法实施例提供的数据查询方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种数据查询方法,其特征在于,所述方法包括:
获取查询需求,所述查询需求包括:查询所使用的索引参数以及基于该索引参数查询的目标参数;
将所述索引参数和所述目标参数分别与预先构建的对应关系进行匹配,以确定待查询存储文件,其中:所述对应关系为参数和存储该参数的存储文件之间的对应关系,所述待查询存储文件,包括存储所述索引参数的存储文件以及存储所述目标参数的存储文件;
根据所述待查询存储文件,得到符合所述查询需求的至少一个查询方案,其中,所述至少一个查询方案中的每个查询方案,用于指示基于所述索引参数查询获得所述目标参数所需查询的存储文件,所述基于所述索引参数查询获得所述目标参数所需查询的存储文件,为所述待查询存储文件包括的部分或者全部存储文件;
执行所述至少一个查询方案中对应所述查询开销最小的查询方案,以查询得到所述目标参数,其中,每个所述查询方案的查询开销,根据该查询方案关联的存储系统确定,该查询方案关联的存储系统,包括该查询方案涉及的存储文件对应的存储系统。
2.根据权利要求1所述的方法,其特征在于,所述将所述索引参数和所述目标参数分别与预先构建的对应关系进行匹配,确定待查询存储文件,包括:
将所述索引参数和所述目标参数分别与预先构建的对应关系进行匹配,得到既存储有所述索引参数又存储有所述目标参数的多个存储文件,并将该多个存储文件确定为所述待查询存储文件;
根据所述待查询存储文件,得到符合所述查询需求的至少一个查询方案,包括:
分别确定与所述多个存储文件中各个存储文件分别对应的查询方案。
3.根据权利要求1所述的方法,其特征在于,所述目标参数包括第一参数和第二参数,所述将所述索引参数和所述目标参数分别与预先构建的对应关系进行匹配,确定待查询存储文件,包括:
将所述索引参数和所述目标参数分别与预先构建的对应关系进行匹配,得到第一存储文件、第二存储文件和第三存储文件,其中,所述第一存储文件存储有所述索引参数和所述第一参数,所述第二存储文件存储有所述索引采纳数和所述第二参数,所述第三存储文件存储有所述索引参数、所述第一参数和所述第二参数;
根据所述待查询存储文件,得到符合所述查询需求的至少一个查询方案,包括:
根据所述第一存储文件、第二存储文件和所述第三存储文件,得到第一查询方案和第二查询方案,所述第一查询方案指示基于所述第一存储文件和所述第二存储文件查询得到所述目标参数,所述第三查询方案指示基于所述第三存储文件查询得到所述目标参数。
4.根据权利要求1所述的方法,其特征在于,所述目标参数包括第三参数,所述将所述索引参数和所述目标参数分别与预先构建的对应关系进行匹配,确定待查询存储文件,包括:
将所述索引参数和所述目标参数分别与预先构建的对应关系进行匹配,得到存储有所述索引参数和中间参数的第四存储文件、以及存储有所述中间参数和所述第三参数的第五存储文件;
根据所述待查询存储文件,得到符合所述查询需求的至少一个查询方案,包括:
根据所述第四存储文件和所述第五存储文件,得到第四查询方案,所述第四查询方案指示首先基于所述索引参数查询所述第四存储文件,而后基于查询所述第四存储文件获得的中间参数查询所述第五存储文件,以得到所述第三参数。
5.根据权利要求1所述的方法,其特征在于,在执行所述至少一个查询方案中对应所述查询开销最小的查询方案,以查询得到所述目标参数之前,所述方法还包括:
针对所述至少一个查询方案中的每个查询方案,基于该查询方案所涉及的存储文件的查询开销值,确定该查询方案对应的查询开销,该查询方案所涉及的存储文件包括目标存储文件,目标存储文件的查询开销值,根据所述目标存储文件对应的存储系统确定。
6.根据权利要求5所述的方法,其特征在于,所述目标存储文件包括至少一个维度的指标,所述目标存储文件的查询开销值,根据所述至少一个维度的指标中各个指标对应的统计值和以及各个指标分别对应的权重确定,所述各个指标分别对应的权重,根据所述目标存储文件对应的存储系统确定。
7.根据权利要求1所述的方法,其特征在于,所述执行所述至少一个查询方案中对应所述查询开销最小的查询方案,以查询得到所述目标参数,包括:
根据所述查询方案所涉及的存储文件中各个存储文件支持的查询语句格式,生成与所述各个存储文件对应的查询语句,并执行所述查询语句以查询得到所述目标参数。
8.一种数据查询装置,其特征在于,所述装置包括:
获取单元,用于获取查询需求,所述查询需求包括:查询所使用的索引参数以及基于该索引参数查询的目标参数;
匹配单元,用于将所述索引参数和所述目标参数分别与预先构建的对应关系进行匹配,以确定待查询存储文件,其中:所述对应关系为参数和存储该参数的存储文件之间的对应关系,所述待查询存储文件,包括存储所述索引参数的存储文件以及存储所述目标参数的存储文件;
第一确定单元,用于根据所述待查询存储文件,得到符合所述查询需求的至少一个查询方案,其中,所述至少一个查询方案中的每个查询方案,用于指示基于所述索引参数查询获得所述目标参数所需查询的存储文件,所述基于所述索引参数查询获得所述目标参数所需查询的存储文件,为所述待查询存储文件包括的部分或者全部存储文件;
查询单元,用于执行所述至少一个查询方案中对应所述查询开销最小的查询方案,以查询得到所述目标参数,其中,每个所述查询方案的查询开销,根据该查询方案关联的存储系统确定,该查询方案关联的存储系统,包括该查询方案涉及的存储文件对应的存储系统。
9.一种电子设备,其特征在于,所述设备包括处理器和存储器;
所述处理器用于执行所述存储器中存储的指令,以使得所述设备执行以上权利要求1-7任意一项所述的方法。
10.一种计算机可读存储介质,其特征在于,包括指令,所述指令指示设备执行以上权利要求1-7任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311695289.9A CN117520269A (zh) | 2023-12-11 | 2023-12-11 | 一种数据查询方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311695289.9A CN117520269A (zh) | 2023-12-11 | 2023-12-11 | 一种数据查询方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117520269A true CN117520269A (zh) | 2024-02-06 |
Family
ID=89758880
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311695289.9A Pending CN117520269A (zh) | 2023-12-11 | 2023-12-11 | 一种数据查询方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117520269A (zh) |
-
2023
- 2023-12-11 CN CN202311695289.9A patent/CN117520269A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103748579B (zh) | 在映射化简框架中处理数据 | |
US8341131B2 (en) | Systems and methods for master data management using record and field based rules | |
CN108647357B (zh) | 数据查询的方法及装置 | |
US20150161280A1 (en) | Method and system for centralized issue tracking | |
CN107506383B (zh) | 一种审计数据处理方法和计算机设备 | |
US9020988B2 (en) | Database aggregation of purchase data | |
CN110765750B (zh) | 报表数据录入方法及终端设备 | |
CN110795697A (zh) | 逻辑表达式的获取方法、装置、存储介质以及电子装置 | |
CN111881158A (zh) | 一种管理报表数据处理方法、装置、计算机系统及可读存储介质 | |
CN110750969A (zh) | 一种生成报表的方法及装置 | |
CN106844320B (zh) | 一种财务报表整合方法和设备 | |
CN109101541B (zh) | 新增指标管理方法、设备及计算机可读存储介质 | |
CN117520269A (zh) | 一种数据查询方法及装置 | |
CN115456413A (zh) | 人员与岗位的匹配方法、装置、设备及存储介质 | |
CN112527818A (zh) | 报表生成方法、装置、设备及存储介质 | |
CN113590841B (zh) | 智能化快速审单与基于知识图谱的智能预警系统与方法 | |
CN112948441B (zh) | 一种面向财务数据的多维数据归集方法及设备 | |
CN115759019B (zh) | 业务数据计算方法、装置、存储介质、计算机设备 | |
CN111967237B (zh) | 汇款表单填写方法及装置 | |
CN111079391B (zh) | 一种报表的生成方法及装置 | |
CN118014426A (zh) | 流程质量测量系统的获取方法和设备 | |
CN115794866A (zh) | 面向数据看板的数据服务方法、装置和电子设备 | |
CN116166641A (zh) | 数据模型和数据标准的映射方法、装置、设备及介质 | |
CN117829121A (zh) | 数据处理方法、装置、电子设备和介质 | |
CN116823505A (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 |