CN117076462A - 基于配置化的数据查询方法、装置、存储介质及计算设备 - Google Patents
基于配置化的数据查询方法、装置、存储介质及计算设备 Download PDFInfo
- Publication number
- CN117076462A CN117076462A CN202311198571.6A CN202311198571A CN117076462A CN 117076462 A CN117076462 A CN 117076462A CN 202311198571 A CN202311198571 A CN 202311198571A CN 117076462 A CN117076462 A CN 117076462A
- Authority
- CN
- China
- Prior art keywords
- data
- queried
- information
- configuration information
- determining
- 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 83
- 238000012545 processing Methods 0.000 claims description 122
- 230000002776 aggregation Effects 0.000 claims description 21
- 238000004220 aggregation Methods 0.000 claims description 21
- 238000001914 filtration Methods 0.000 claims description 17
- 238000004364 calculation method Methods 0.000 claims description 14
- 238000003058 natural language processing Methods 0.000 claims description 10
- 238000004422 calculation algorithm Methods 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 8
- 230000008859 change Effects 0.000 claims description 5
- 230000004931 aggregating effect Effects 0.000 claims description 2
- 238000011161 development Methods 0.000 abstract description 28
- 230000008569 process Effects 0.000 abstract description 20
- 235000019580 granularity Nutrition 0.000 description 26
- 238000006243 chemical reaction Methods 0.000 description 11
- 230000008901 benefit Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 10
- 230000006399 behavior Effects 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000012552 review Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013519 translation 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/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/2282—Tablespace storage structures; 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
-
- 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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/283—Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
-
- 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)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开的实施方式提供了一种基于配置化的数据查询方法、装置、存储介质及计算设备,涉及计算机技术领域。该方法包括:响应于数据查询请求,确定待查询数据的配置信息;配置信息包括指标信息和维度信息,指标信息用于表示待查询数据的类别,维度信息用于表示指标信息的属性;基于预先配置的数据定位服务,确定目标数据表;数据表中包括表征指标信息的字段和表征维度信息的字段,数据定位服务用于根据配置信息确定数据表;根据待查询数据的指标信息和维度信息,从目标数据表中确定待查询数据。通过对数据查询过程进行配置,后端开发不需要编写复杂SQL,不同数据产品也不需要按照各自查询框架进行数据查询,提高数据查询的效率。
Description
技术领域
本公开的实施方式涉及计算机领域,更具体地,本公开的实施方式涉及一种基于配置化的数据查询方法、装置、存储介质及计算设备。
背景技术
本部分旨在为本公开的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
随着用户对数据查询的需求越来越多,开发出了各种各样的数据产品。数据产品可以为用户提供有价值的业务洞察和决策支持,用户可以通过数据产品进行数据查询。
目前,不同数据产品都对应有自己的查询框架,后端开发人员需要非常熟悉每一套查询框架,手动编写业务SQL(Structured Query Language,结构化查询语言),开发成本高,运维难度大,对开发人员的专业要求较高,容易出现错误,影响数据查询的精度。
发明内容
本公开提供一种基于配置化的数据查询方法、装置、存储介质及计算设备,以降低数据查询的后端开发难度,提高数据查询的精度。
在本公开实施方式的第一方面中,提供了一种基于配置化的数据查询方法,包括:
响应于数据查询请求,确定待查询数据的配置信息;其中,所述配置信息包括指标信息和维度信息,所述指标信息用于表示待查询数据的类别,所述维度信息用于表示指标信息的属性;
基于预先配置的数据定位服务,确定与所述待查询数据的配置信息对应的数据表,为目标数据表;其中,所述数据表中包括表征指标信息的字段和表征维度信息的字段,所述数据定位服务用于根据配置信息确定数据表;
根据所述待查询数据的指标信息和维度信息,从所述目标数据表中确定所述待查询数据。
在本公开实施方式的第二方面中,提供了一种基于配置化的数据查询装置,包括:请求响应模块,用于响应于数据查询请求,确定待查询数据的配置信息;其中,所述配置信息包括指标信息和维度信息,所述指标信息用于表示待查询数据的类别,所述维度信息用于表示指标信息的属性;
目标确定模块,用于基于预先配置的数据定位服务,确定与所述待查询数据的配置信息对应的数据表,为目标数据表;其中,所述数据表中包括表征指标信息的字段和表征维度信息的字段,所述数据定位服务用于根据配置信息确定数据表;
数据确定模块,用于根据所述待查询数据的指标信息和维度信息,从所述目标数据表中确定所述待查询数据。
在本公开实施方式的第三方面中,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如第一方面所述的方法。
在本公开实施方式的第四方面中,提供了一种计算设备,包括:
至少一个处理器;
以及与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述计算设备执行如第一方面所述的方法。
根据本公开实施方式的一种基于配置化的数据查询方法、装置、存储介质及计算设备,可以在响应到数据查询请求时,确定待查询数据的指标信息和维度信息等配置信息。根据预先配置的数据定位服务,确定与待查询数据的配置信息对应的数据表,作为目标数据表。从目标数据表中,确定出与待查询数据的指标信息和维度信息对应的数据,作为待查询数据。通过预先配置各种指标信息和维度信息等配置信息,以及数据定位服务,能够减少数据查询时SQL语句的组装过程,根据预设的配置能够快速寻找到待查询数据,提高数据查询的效率和灵活性。且不需要后端开发人员对查询过程进行复杂的代码开发,降低开发难度,有效节约开发和运维的人力和时间弄,避免代码错误对数据查询精度造成影响。
附图说明
通过参考附图阅读下文的详细描述,本公开示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本公开的若干实施方式,其中:
图1示意性地示出了根据本公开实施方式的应用场景示意图;
图2示意性地示出了根据本公开实施例的一种基于配置化的数据查询方法的流程示意图;
图3示意性地示出了根据本公开实施例的一种基于配置化的数据查询方法的流程示意图;
图4示意性地示出了根据本公开实施例的一种基于配置化的数据查询方法的流程示意图;
图5示意性地示出了根据本公开实施例的数据查询引擎的系统架构图;
图6示意性地示出了根据本公开实施例的一种基于配置化的数据查询方法的流程示意图;
图7示意性地示出了根据本公开实施例提供的程序产品的示意图;
图8示意性地示出了根据本公开实施例提供的一种基于配置化的数据查询装置的结构示意图;
图9示意性地示出了根据本公开实施例提供的计算设备的结构示意图。
在附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
下面将参考若干示例性实施方式来描述本公开的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本公开,而并非以任何方式限制本公开的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
本领域技术人员知道,本公开的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
根据本公开的实施方式,提出了一种基于配置化的数据查询方法、装置、存储介质及计算设备。
在本文中,需要理解的是,所涉及的术语含义如下:
数据产品:指基于数据进行查询和分析的应用程序,旨在为用户提供有价值的业务洞察和决策支持。
指标信息:用于表示业务绩效或者用户行为等不同类别的数据,例如,转化率、点击率等。
维度信息:用于描述指标信息的属性,例如时间、地理位置、用户类型等,通常用于对指标进行分组或者筛选。
数仓:数据仓库,指一个企业或者组织中用于集中存储和管理各种数据的系统,可以包括多张数据表,旨在为数据分析和业务决策提供可信的数据基础。
需要说明的是,本公开所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
此外,附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。
下面参考本公开的若干代表性实施方式,详细阐释本公开的原理和精神。
发明概述
本发明人发现,相关技术中由于使用人不同,以及看数据的角度不同,市面上出现了各式各样的数据产品。例如,产品A偏向于管理层决策,产品B偏向于活动运营、用户运营,产品C偏向于活动展示。不同的数据产品对应有不同的后端服务,根据不同数据产品的侧重点不同,每一个后端服务都有着一套自己的数据查询框架。
不同的数据查询框架带来较高的开发成本和维护成本,后端开发人员需要非常熟悉每一套数据查询框架,一旦出现线上bug,必须根据代码进行抽丝剥茧,排查问题极其困难。另外,在开发数据产品的新功能时,不同数据产品之间即使功能类似,也需要在不同后端服务中依据自己的框架重新开发一遍,开发周期被拉长。在开发时,部分指标计算SQL难以保证正确性,导致在进行数据查询时出现错误,影响数据查询的效率和精度。
通常来说,根据不同的产品需求和应用场景采用硬编码的方式,需要经历需求分析、产品设计、产品评审、技术评审、编码阶段、测试阶段、产品验收、部署上线一整套流程,缺一不可。在此流程下,如果需要开发一个新的数据产品的需求,需要后端开发人员与数仓共同评审该需求的模型是否合理可用,后端开发需要手动编写业务SQL,并进行正确性验证。在进行数据查询时,因为不同的数据产品后端都封装了自己的数据查询框架,因此,必须使用对应的API(Application Programming Interface,应用程序编程接口)去构建查询参数,拼装SQL语句,然后按照对应框架的规则去处理数据集,再按照各自的规范返回给前端。如果数据产品需求有变更,整套流程需要重新梳理开发上线,该方式沟通成本高、开发速度慢,而且容易出错,影响数据查询的精度,进而影响用户体验。
本申请减少了代码开发的过程,将原先的后端开发逻辑抽象出一个数据查询引擎,在数据查询引擎中对数据查询的需求进行配置。运营人员在确定产品需求后,只需要在前端页面上,配置好相关的指标信息和维度信息,即可快速完成一个查询场景的搭建,查询场景灵活可变,满足不同的业务需求,降低开发难度,缩短开发周期。当用户需要进行数据查询时,根据预先的配置,确定所要查询的数据的指标信息和维度信息,从对应的数据表中获取到相关数据。再依据预先配置的处理方式,对获取到的数据进行处理和转换,达到快速响应数据查询请求的目的,提高数据查询的效率。
在介绍了本公开的基本原理之后,下面具体介绍本公开的各种非限制性实施方式。
应用场景总览
首先参考图1,图1为本公开提供的一种应用场景示意图。电子设备在执行程序过程中,当响应到数据查询请求时,电子设备确定待查询数据的配置信息。将与待查询数据的配置信息对应的数据表,确定为目标数据表,从目标数据表中确定待查询数据。例如,图1中,电子设备中预先配置有多种指标信息和维度信息,还存储有多张数据表。当电子设备响应到数据查询请求,可以根据预先的配置,从多张数据表中确定出目标数据表,进而从目标数据表中得到待查询数据。
示例性方法
下面结合图1的应用场景,参考图2-6来描述根据本公开示例性实施方式的基于配置化的数据查询方法。需要注意的是,上述应用场景仅是为了便于理解本公开的精神和原理而示出,本公开的实施方式在此方面不受任何限制。相反,本公开的实施方式可以应用于适用的任何场景。
图2为本公开实施例提供的一种基于配置化的数据查询方法的流程示意图。如图2所示,该方法包括以下步骤:
S201、响应于数据查询请求,确定待查询数据的配置信息;其中,配置信息包括指标信息和维度信息,指标信息用于表示待查询数据的类别,维度信息用于表示指标信息的属性。
示例性地,用户可以通过数据产品进行数据查询,数据产品可以是安装于用户终端上的应用软件,可以作为前端与用户进行交互。用户在前端发出数据查询请求,前端将数据查询请求发送给后端。本实施例中,后端可以是指数据查询引擎,数据查询引擎可以用于对待查询数据进行查询和处理。
数据产品在收到用户的数据查询请求后,可以将数据查询请求发送给数据查询引擎。数据查询引擎在响应到数据查询请求后,可以从数据查询请求中确定出待查询数据的配置信息。配置信息可以包括指标信息和维度信息,指标信息可以用于表示待查询数据的类别,待查询数据的类别可以根据实际的业务需求确定,例如,待查询数据的类别可以是销售额、转化率、点击率、销量等。维度信息可以用于表示指标信息的属性,指标的属性可以包括时间、地理位置、用户类型等。数据查询请求中可以包括待查询数据的指标信息和维度信息,例如,用户想要查询的待查询数据为1月份的销售额,则可以确定待查询数据的指标信息为销售额,维度信息为表示时间属性的1月份。又例如,用户想要查询的待查询数据为A省的商品点击率,则指标信息为商品点击率,维度信息为表示地理位置属性的A省。
数据查询引擎中预先存储有各个指标信息和维度信息,即,可以预先配置用户能够搜索哪些指标和哪些维度。例如,预先配置的指标有点击率和转化率,则待查询数据的指标信息只能是点击率或转换率。若需要新增指标或维度,则可以由工作人员在预设的配置中进行添加即可,不需要对代码进行更改。数据查询引擎中可以预先配置有不同的查询场景,不同查询场景可以对应不同的配置信息。例如,数据查询引擎中配置有场景一和场景二,场景一对应的配置信息为销售额的指标信息和1月份的维度信息,场景二对应的配置信息为商品点击率的指标信息和A省的维度信息。用户在进行查询时,只需确定所要查询的查询场景即可,例如,数据查询请求中的查询场景为场景一,则可以确定待查询数据为1月份的销售额,即指标信息为销售额,维度信息为1月份。
本实施例中,该方法还包括:从数据查询请求中获取用户信息;其中,用户信息用于表示用户的权限;若根据用户信息,确定用户具有对待查询数据进行查询的权限,则执行基于预先配置的数据定位服务,确定与待查询数据的配置信息对应的数据表,为目标数据表。
具体的,数据查询引擎在接收到数据查询请求后,可以先对要查询数据的用户进行权限判断。确定用户是否具有查询数据的权限,若是,则可以基于预先配置的数据定位服务,确定与待查询数据的配置信息对应的数据表;若否,则不为该用户查询待查询数据,并可以通过数据产品的界面向用户发出提示信息,提示用户不具备查询权限。
可以从数据查询请求中获取用户信息,用户信息可以用于表示用户的权限,例如,用户信息可以是用户的账号、职位、部门等。不同用户信息所对应的权限可以不同,例如,用户的职位为普通员工,则用户的权限等级为一级;若用户的职位为高级工程师,则用户权限的等级为二级。
根据用户信息,基于预设的判断条件,判断用户是否具有对待查询数据进行查询的权限。本实施例中,对预设的判断条件不做具体限定。例如,不同用户信息所能查询的指标和维度不同,判断用户所在的权限中,是否存在待查询数据的指标和维度,若存在,则确定用户具有权限;若不存在,则确定用户不具有权限。本实施例中,可以先获取待查询数据的配置信息,再判断用户权限,也可以先判断用户权限,再根据判断结果确定是否需要获取配置信息。若用户没有权限,则不需要获取待查询数据的配置信息;若用户存在权限,则可以获取待查询数据的配置信息。例如,用户信息为用户的职位,用户的职位为临时工作人员,预先设置临时工作人员不具有查询权限,则不需要获取待查询数据的配置信息。
这样设置的有益效果在于,对用户进行权限判断,避免数据在查询时被泄露,提高数据的安全性。权限的判断条件可以预先进行配置,工作人员可以根据实际情况随时更新判断条件,提高数据查询的灵活性,提升用户的查询体验。
S202、基于预先配置的数据定位服务,确定与待查询数据的配置信息对应的数据表,为目标数据表;其中,数据表中包括表征指标信息的字段和表征维度信息的字段,数据定位服务用于根据配置信息确定数据表。
示例性地,数据查询引擎中设置数据仓库,数据仓库中包括多张数据表。数据表中可以包括表征指标信息的字段和表征维度信息的字段,不同数据表中的字段可以不同,例如,一张数据表中存储的是某省中各个城市在一个月内,每天的销售额;另一张数据表中存储的是在一个月内,多个商品的点击率。
数据查询引擎中可以预先配置有数据定位服务,数据定位服务可以根据配置信息,从数仓中确定出所需的数据表。例如,数据定位服务可以是polaris(北极星)定位服务或自定义配置的定位服务。本实施例中,对数据定位服务不做具体限定。在确定出待查询数据的配置信息后,可以根据数据定位服务,在数仓中定位出与配置信息对应的数据表。将定位到的数据表,确定为目标数据表。可以将配置信息作为查询条件,数据定位服务可以根据查询条件,查询到对应的数据表。
目标数据表可以是一张或多张,例如,配置信息中包括一个指标信息和两个维度信息,根据指标信息和其中一个维度信息,可以定位到一张数据表,根据指标信息和另一个维度信息,可以定位到另一张数据表,则这两张数据表均为目标数据表。
S203、根据待查询数据的指标信息和维度信息,从目标数据表中确定待查询数据。
示例性地,在得到目标数据表后,可以从目标数据表中查找到待查询数据。目标数据表中的字段含有待查询数据的配置信息的字段,即含有待查询数据的指标信息的字段和维度信息的字段。可以从目标数据表中查找待查询数据的指标信息和维度信息所在字段下的字段内容,作为待查询数据。例如,待查询数据的指标信息为销售额,维度信息为A省。目标数据表中的行表示地区这一属性的维度信息,第一行为A省,第二行为B省,第三行为C省。列表示指标信息,第一列的指标为销售额,第二列的指标为销量。从目标数据表中查找第一行第一列所在的字段内容,即为待查询的A省销售额。若待查询数据的指标信息还有销量,则还可以从目标数据表中获取第一行第二列的字段内容,也作为待查询数据。
本实施例中,该方法还包括:根据预设的数据结构,对待查询数据进行格式转化,将转化后的待查询数据进行显示。
具体的,在得到待查询数据后,可以将待查询数据展示给用户进行查看。例如,数据查询引擎可以将待查询数据发送给数据产品进行显示。可以预先配置数据结构,数据结构可以表示为待查询数据的展示样式。根据预先配置的数据结构,对待查询数据进行格式转化,将待查询数据转换为预先配置的数据结构。例如,可以支持指标卡、单一维度列表和层级维度列表等结构。若预设的数据结构为指标卡,则可以采用预设的指标卡的形式展示待查询数据;若预设的数据结构为单一维度列表,则可以将各个维度的数据单独显示在各自的列表中;若预设的数据结构为层级维度列表,则可以按照预设的维度层级,将待查询数据显示在预设的列表中。本实施例中,对显示的样式不做具体限定,可以采用图表、曲线等各种形式进行展示,工作人员可以根据业务需求进行灵活配置。
这样设置的有益效果在于,根据实际需求预先配置数据结构,例如,可以采用列表或图表等形式进行显示,提高数据展示的灵活性。
根据本公开实施方式的一种数据查询的方法,可以在响应到数据查询请求时,确定待查询数据的指标信息和维度信息等配置信息。根据预先配置的数据定位服务,确定与待查询数据的配置信息对应的数据表,作为目标数据表。从目标数据表中,确定出与待查询数据的指标信息和维度信息对应的数据,作为待查询数据。通过预先配置各种指标信息和维度信息等配置信息,以及数据定位服务,能够减少数据查询时SQL语句的组装过程,根据预设的配置能够快速寻找到待查询数据,提高数据查询的效率和灵活性。且不需要后端开发人员对查询过程进行复杂的代码开发,降低开发难度,有效节约开发和运维的人力和时间弄,避免代码错误对数据查询精度造成影响。
图3为本公开实施例提供的一种基于配置化的数据查询方法的流程示意图。
本实施例中,根据待查询数据的指标信息和维度信息,从目标数据表中确定待查询数据,可细化为:从目标数据表中,获取在指标信息和维度信息下的字段内容,作为待处理字段内容;根据预设的数据处理规则配置信息,对待处理字段内容进行预设操作手段的处理,得到待查询数据;其中,预设操作手段包括聚合、过滤、列运算中的至少一项。
如图3所示,该方法包括以下步骤:
S301、响应于数据查询请求,确定待查询数据的配置信息;其中,配置信息包括指标信息和维度信息,指标信息用于表示待查询数据的类别,维度信息用于表示指标信息的属性。
示例性地,本步骤可以参见上述步骤S201,不再赘述。
S302、基于预先配置的数据定位服务,确定与待查询数据的配置信息对应的数据表,为目标数据表;其中,数据表中包括表征指标信息的字段和表征维度信息的字段,数据定位服务用于根据配置信息确定数据表。
示例性地,本步骤可以参见上述步骤S202,不再赘述。
S303、从目标数据表中,获取在待查询数据的指标信息和维度信息下的字段内容,作为待处理字段内容。
示例性地,从目标数据表中确定待查询数据的指标信息所对应的字段和维度信息所对应的字段,将待查询数据的指标信息所对应的字段确定为指标字段,将待查询数据的维度信息所对应的字段确定为维度字段。从目标数据表中获取指标字段和维度字段所对应的字段内容,将获取到的字段内容确定为待处理字段内容。例如,待查询数据的指标信息为销售额,维度信息为A省,则可以从目标数据表中确定销售额的字段和地点为A省的字段,将这两种字段共同对应的内容确定为待处理字段内容。
本实施例中,从目标数据表中,获取在待查询数据的指标信息和维度信息下的字段内容,作为待处理字段内容,包括:确定目标数据表中,待查询数据的维度信息的数据划分粒度;其中,数据划分粒度表征维度信息所表示的属性的最小单位;从目标数据表中,获取在维度信息的范围内,数据划分粒度对应的待查询数据的指标信息的字段内容,作为待处理字段内容。
具体的,维度信息用于表示指标的属性,例如,指标的属性可以是时间、地点位置、用户类型等。不同维度信息可以对应有不同的数据划分粒度,数据划分粒度可以表示为维度信息所表示的属性的最小单位。例如,维度信息所表示的属性为时间,数据划分粒度可以是天,即数据表中可以存储每一天的各个指标的数据;维度信息所表示的属性为地理位置,数据划分粒度为城市,即数据表中可以存储省份中每一个城市的各个指标的数据;维度信息所表示的属性为用户类型,数据划分粒度可以是单个用户,即数据表中可以存储某用户类型下的各个用户的行为数据。不同数据表中,维度信息的数据划分粒度可以相同,也可以不同。
确定待查询数据的维度信息,在得到目标数据表后,确定目标数据表中,该维度信息的数据划分粒度。例如,待查询数据的维度信息为9月1日至9月7日的时间,目标数据表中存储有每一天的指标信息,可以确定出目标数据表中时间的数据划分粒度为天。
确定待查询数据的维度信息,确定目标数据表中,该维度信息的范围下的所有数据划分粒度所对应的指标信息的字段内容。即,从目标数据表中,获取在维度信息的范围内,每一个数据划分粒度对应的待查询数据的指标信息的字段内容,作为待处理字段内容。例如,待查询数据的维度信息为9月1日至9月7日,指标信息为销售额,数据划分粒度为天,则可以从目标数据表中获取9月1日至9月7日这一范围内,每一天的销售额。
这样设置的有益效果在于,确定维度信息的数据划分粒度,无论维度信息的范围是多少,都可以从该范围内确定出需要的所有指标信息,用户可以根据实际需求输入待查询数据的维度信息的范围,提高数据查询的灵活性。
本实施例中,该方法还包括:若待处理字段内容的数值大小在预设的数值范围内,则执行根据预设的数据处理规则配置信息,对待处理字段内容进行预设操作手段的处理,得到待查询数据。
具体的,在得到待处理字段内容后,可以对待处理字段内容进行校验,判断待处理字段内容是否符合预设的规范,若是,再继续执行S304;若否,则认为获取到的待处理字段内容存在问题,不进行后续的数据处理,并可以向用户发出提示信息,提示用户数据存在问题,可以重新进行查询。
可以针对不同的指标信息预先配置数值范围,在得到待处理字段内容后,确定待处理字段内容对应的指标信息所对应的数值范围。将待处理字段内容的数值大小与预设的数值范围进行比较,判断待处理字段内容的数值大小是否在预设的数值范围内。若是,则执行S304;若否,则不进行后续的数据处理。
这样设置的有益效果在于,在得到待处理字段内容后,可以对待处理字段内容进行校验,确认待处理字段内容无误,避免对错误的数据进行处理,提高数据查询的精度。
S304、根据预设的数据处理规则配置信息,对待处理字段内容进行预设操作手段的处理,得到待查询数据;其中,预设操作手段包括聚合、过滤、列运算中的至少一项。
示例性地,在数据查询引擎中预先配置有数据处理规则配置信息,数据处理规则配置信息是指对待处理字段内容进行处理的规则。数据处理规则配置信息中可以预设有多种操作手段,即,可以通过预设的操作手段,对待处理字段内容进行处理,处理后即得到待查询数据。预设操作手段可以包括聚合、过滤、列运算中的至少一项,即,可以对待处理字段内容进行聚合、过滤、列运算等处理。
工作人员可以随时配置或更新数据处理规则配置信息,可以针对不同的场景,设置不同的数据处理规则配置信息,提高数据查询的灵活性,便于满足实际的业务需求。可以在数据查询引擎中抽象出不同的transform(转换)组件,transform组件是整个数据查询引擎的核心,可以在transform组件中设置数据处理规则配置信息,通过对不同类型的transform组件的插拔完成数据的关联、聚合、列运算等。例如,可以预设关联条件为同维度信息的字段内容之间存在关联关系,便于后续将同纬度信息的字段内容进行合并。
本实施例中,根据预设的数据处理规则配置信息,对待处理字段内容进行预设操作手段的处理,得到待查询数据,包括:将数据划分粒度对应的待查询数据的指标信息的字段内容进行聚合处理,得到待查询数据的维度信息所对应的指标信息的字段内容;将待查询数据的维度信息所对应的指标信息的字段内容,确定为待查询数据。
具体的,预设的操作手段可以是聚合操作,聚合是指将多个待处理字段内容的数值聚合为一个数值。例如,可以将多个待处理字段内容的数值进行相加,将相加后得到的数据作为待查询数据。
数据划分粒度是维度信息的最小单位,目标数据表中,待查询数据的维度信息下的指标信息是多个数据划分粒度所对应的指标信息。即,维度信息所对应的指标信息的字段内容被拆解成了多个数据划分粒度所对应的指标信息。因此,可以对数据划分粒度所对应的指标信息进行聚合,得到待查询数据的维度信息下的指标信息,即得到待查询数据。例如,对于一个月内的销售额,从目标数据表中获取的是30天内,每一天的销售额。为了得到一个月内的销售额,可以将30天内每一天的销售额进行聚合处理,即进行相加,从而得到一个月内的总销售额。
这样设置的有益效果在于,按照相同维度合并多条待处理字段内容,使处理后的数据满足用户的查询需求,提升用户的查询体验。
本实施例中,在得到待查询数据的维度信息所对应的指标信息的字段内容之后,还包括:将数据划分粒度对应的待查询数据的指标信息的字段内容进行过滤处理。
具体的,预设的操作手段可以是过滤操作,过滤操作是指对得到的数据进行筛选。用户想要查询的数据是聚合后的数据,即聚合前的各个待处理字段内容并不是用户想要查询的数据。因此,在进行聚合操作后,可以将从目标数据表中获取到的,数据划分粒度对应的指标信息的字段内容进行筛除,只保留聚合后的待查询数据返回给用户。
也就是说,为了减少中间数据在系统中传输,可以按照预设的过滤规则,将多余数据过滤。例如,当前时间为2023年9月7日星期四,数据产品上需要展示本周的指标信息,原本获取有2023年9月4日至2023年9月7每一天的数据,经过聚合后就只剩本周这一个数据,其余的每一天的数据就都是多余的了。当然如果需要环比、同比、趋势图等计算,则需要保留的数据会变多,但是仍然有许多数据可以提前过滤。本实施例中,对过滤规则不做具体限定。
这样设置的有益效果在于,目标数据表中所获取的数据并不是全部需要,根据场景的实际需求过滤所要返回的数据,有效减少数据量,提高数据查询的效率,提升用户的查询体验。
本实施例中,根据预设的数据处理规则配置信息,对待处理字段内容进行预设操作手段的处理,得到待查询数据,包括:根据预设的数据处理规则配置信息中的列运算处理方式,对待处理字段内容进行列运算处理,得到列运算处理结果;其中,列运算处理方式包括环比计算、同比计算、数据变化趋势计算中的至少一项;将列运算处理结果确定为待查询数据。
具体的,预设的操作手段可以是列运算操作,列运算操作是指对待处理字段内容进行列间计算。例如,可以计算环比、同比、趋势图等,趋势图用于表示数据的变化趋势。
数据处理规则配置信息中预设设置有一种或多种列运算处理方式,对待处理字段内容进行列运算处理,得到列运算处理结果,例如,可以以聚合完成后的数据为输入,进行列运算。列运算后也可以进行过滤操作,将列运算处理结果确定为待查询数据,将其他数据进行筛除。
这样设置的有益效果在于,通过配置列运算处理方式,可以对待处理字段内容进行自动计算,处理方式可以灵活变动,通过对不同transform组件的编排,可以开发配置出不同的场景,满足业务需求的变更,提高数据查询的效率和精度。
本实施例中,根据预设的数据处理规则配置信息,对待处理字段内容进行预设操作手段的处理,得到待查询数据,包括:根据预设的指标信息与数据处理规则配置信息之间的关联关系,确定与待查询数据的指标信息对应的数据处理规则配置信息,作为目标数据处理规则配置信息;根据目标数据处理规则配置信息,对待处理字段内容进行预设操作手段的处理,得到待查询数据。
具体的,对于不同的指标信息,可以预先配置有不同的数据处理规则配置信息,预先存储指标信息与数据处理规则配置信息之间的关联关系。确定待查询数据所对应的指标信息,根据预设的指标信息与数据处理规则配置信息之间的关联关系,确定与待查询数据的指标信息对应的数据处理规则配置信息,将确定出的数据处理规则配置信息确定为目标数据处理规则配置信息。
根据目标数据处理规则配置信息,对待处理字段内容进行预设操作手段的处理。例如,根据目标数据处理规则配置信息,需要对待处理字段内容进行聚合、过滤和环比计算,或者需要对待处理字段内容进行聚合和同比计算等,从而得到待查询数据。
这样设置的有益效果在于,对于不同的指标信息,可以预设不同的数据处理规则配置信息,从而能够对不同的指标信息进行针对性处理,提高数据查询的精度。
本实施例中,该方法还包括:响应于列运算处理方式的更新指令,确定待更新的列运算处理方式以及待更新的数据处理规则配置信息;根据待更新的列运算处理方式,对待更新的数据处理规则配置信息进行更新。
具体的,工作人员可以对数据处理规则配置信息进行更新,例如,可以更新数据处理规则配置信息中的列运算处理方式。工作人员发出列运算处理方式的更新指令,列运算处理方式的更新指令中可以包括待更新的列运算处理方式以及待更新的数据处理规则配置信息,待更新的数据处理规则配置信息即为待更新的列运算处理方式所属的数据处理规则配置信息。
响应到列运算处理方式的更新指令,确定出待更新的列运算处理方式以及待更新的数据处理规则配置信息。根据待更新的列运算处理方式,对待更新的数据处理规则配置信息进行更新,例如,可以在待更新的数据处理规则配置信息中,增加或删除待更新的列运算处理方式,从而完成对数据处理规则配置信息的更新。
这样设置的有益效果在于,更新过程中只需要改变原先的数据处理规则配置信息即可,不涉及代码的修改,更新过程快速,且不易出错,提高数据查询的灵活性,便于满足实际的业务需求。
工作人员在确定数据查询的场景需求后,只需要在低代码平台搭建的前端页面上,配置好相关指标、维度和数据处理规则配置信息等,即可快速完成一个场景的搭建,不再需要技术人员介入,省去了硬编码测试等一系列过程,缩短开发周期,提高数据产品的开发效率。
根据本公开实施方式的一种数据查询的方法,可以在响应到数据查询请求时,确定待查询数据的指标信息和维度信息等配置信息。根据预先配置的数据定位服务,确定与待查询数据的配置信息对应的数据表,作为目标数据表。从目标数据表中,确定出与待查询数据的指标信息和维度信息对应的数据,作为待查询数据。通过预先配置各种指标信息和维度信息等配置信息,以及数据定位服务,能够减少数据查询时SQL语句的组装过程,根据预设的配置能够快速寻找到待查询数据,提高数据查询的效率和灵活性。且不需要后端开发人员对查询过程进行复杂的代码开发,降低开发难度,有效节约开发和运维的人力和时间弄,避免代码错误对数据查询精度造成影响。
图4为本公开实施例提供的一种基于配置化的数据查询方法的流程示意图。
本实施例中,基于预先配置的数据定位服务,确定与待查询数据的配置信息对应的数据表,为目标数据表,可细化为:根据预设的配置信息与数据表标识之间的关联关系,确定与待查询数据的配置信息对应的数据表标识;根据与待查询数据的配置信息对应的数据表标识,确定与待查询数据的配置信息对应的目标数据表。
如图4所示,该方法包括以下步骤:
S401、响应于数据查询请求,确定待查询数据的配置信息;其中,配置信息包括指标信息和维度信息,指标信息用于表示待查询数据的类别,维度信息用于表示指标信息的属性。
示例性地,响应到数据查询请求,数据查询请求表示用户想要查询待查询数据。根据数据查询请求,可以确定待查询数据的配置信息。配置信息可以用于表征数据,不同的配置信息可以对应不同的数据。
本实施例中,确定待查询数据的配置信息,包括:从数据查询请求中获取用户输入的自然语言;其中,用户输入的自然语言中包括待查询数据的配置信息;根据预设的自然语言处理算法,对用户输入的自然语言进行解析,得到待查询数据的配置信息。
具体的,用户可以通过在数据产品上输入自然语言来发出数据查询请求,用户输入的自然语言中可以包括待查询数据的配置信息。例如,用户可以输入“A省销售额”,表示用户想要查询A省的销售额,自然语言中的指标信息为销售额,维度信息为A省。
在响应到数据查询请求后,可以从数据查询请求中获取用户输入的自然语言。对用户输入的自然语言进行解析,从自然语言中得到待查询数据的配置信息。例如,可以基于预设的NLP(Natural Language Processing,自然语言处理)算法对自然语言进行解析。本实施例中,对NLP算法不做具体限定。可以在数据查询引擎中预先配置NLP算法,实现从数据查询请求中拆解出指标信息和维度信息。
这样设置的有益效果在于,根据预设的NLP算法自动得到指标信息和维度信息,从而根据指标信息和维度信息对数据进行针对性查询,提高数据查询的精度和效率。
本实施例中,该方法还包括:根据预设的自然语言格式,对用户输入的自然语言进行解析,得到待查询数据的配置信息。
具体的,可以预先配置自然语言格式,用户在输入自然语言时,需要按照预设的自然语言格式进行输入。例如,预设的自然语言格式为“维度信息-指标信息”,则用户需要按照该格式先输入维度信息,再输入指标信息,输入完成后发出数据查询请求。
响应到数据查询请求,从数据查询请求中获取用户输入的自然语言。根据预设的自然语言格式,对用户输入的自然语言进行解析,从用户输入的自然语言中得到待查询数据的配置信息。例如,自然语言格式中规定前两个字符表示维度信息,后两个字符表示指标信息,则从用户输入的自然语言中获取前两个字符,作为待查询数据的维度信息,以及获取后两个字符,作为待查询数据的指标信息。
这样设置的有益效果在于,工作人员可以预先确定拆解数据查询请求的方式,可以通过NLP直接解析用户输入的自然语言,也可以选择通过相对比较固定格式进行解析,提高配置的灵活性,保证对数据查询请求进行准确解析,进而提高数据查询的精度。
本实施例中,确定待查询数据的配置信息,包括:从数据查询请求中获取待查询数据的场景信息;其中,场景信息用于表示数据的业务场景;根据预设的场景信息与配置信息之间的关联关系,确定与待查询数据的场景信息对应的配置信息;将与待查询数据的场景信息对应的配置信息,确定为待查询数据的配置信息。
具体的,数据查询请求中可以不含有配置信息,而是含有场景信息。场景信息可以用于表示数据的业务场景或查询场景,例如,用户发出的数据查询指令为“查询X场景的数据”,则场景信息为“X”。可以在收到数据查询请求后,对数据查询请求进行解析,从数据查询请求中获取待查询数据的场景信息。
数据查询引擎中可以预先存储场景信息与配置信息之间的关联关系,例如,对于X场景,关联的配置信息为指标信息是销售额,维度信息是A省。在得到待查询数据的场景信息后,根据预设的场景信息与配置信息之间的关联关系,确定与待查询数据的场景信息对应的配置信息,将确定出的配置信息确定为待查询数据的配置信息。
这样设置的有益效果在于,不需要解析出配置信息,只需要确定出场景信息即可,不同场景信息可以关联不同的配置信息。场景信息与配置信息之间的关联关系可以根据实际需求进行变更,提高了数据查询的灵活性。
本实施例中,该方法还包括:响应于配置信息更新指令,确定待更新的配置信息以及与待更新的配置信息对应的场景信息;根据待更新的配置信息以及与待更新的配置信息对应的场景信息,更新场景信息与配置信息之间的关联关系。
具体的,预先配置不同场景信息需要展示哪些指标信息和哪些维度信息,从而根据用户所指示的场景信息,直接确定对应的指标信息和维度信息。
当需要变更场景信息对应的配置信息时,工作人员可以发出配置信息更新指令。配置信息更新指令中可以包括待更新的配置信息以及与待更新的配置信息对应的场景信息。在响应到配置信息更新指令后,从配置信息更新指令中确定待更新的配置信息以及与待更新的配置信息对应的场景信息。例如,工作人员要对X场景进行配置信息的更新,需要将原先的销售额变为销量,则配置信息更新指令中可以表明将X场景中的指标信息由销售额变为销量。
根据待更新的配置信息以及与待更新的配置信息对应的场景信息,可以更新该场景信息与配置信息之间的关联关系。例如,将指标信息由销售额更新为销量。
这样设置的有益效果在于,当需求发生变更时,可以对配置信息进行修改。例如,可以新增或删除配置信息。修改方式更加方便灵活,降低数据产品的开发难度和开发周期。
S402、根据预设的配置信息与数据表标识之间的关联关系,确定与待查询数据的配置信息对应的数据表标识。
示例性地,数仓中可以包括多张数据表,每张数据表对应有唯一的数据表标识,预先存储配置信息与数据表标识之间的关联关系。例如,可以预先存储指标信息与数据表标识之间的关联关系、或维度信息与数据表标识之间的关联关系、或指标信息与维度信息共同与数据表标识之间的关联关系。在确定待查询数据的配置信息后,根据预设的关联关系,确定与待查询数据的配置信息对应的数据表标识。
本实施例中,通过配置polaris或自定义的数据定位服务,数据定位服务可以根据预设的关联关系,获取到配置信息关联的定位code(编码),定位code即为数据表标识。
S403、根据与待查询数据的配置信息对应的数据表标识,确定与待查询数据的配置信息对应的目标数据表。
示例性地,在得到数据表标识后,可以获取到该数据表标识对应的数据表,作为目标数据表。本实施例中,获取的数据表标识可以有多个,每个数据表标识对应一个数据表,即目标数据表可以有多个。
S404、根据待查询数据的指标信息和维度信息,从目标数据表中确定待查询数据。
示例性地,在得到目标数据表后,可以从目标数据表中查找到待查询数据。目标数据表中的字段包括待查询数据的配置信息的字段,即包括待查询数据的指标信息的字段和维度信息的字段。可以从目标数据表中查找待查询数据的指标信息和维度信息所在字段下的字段内容,作为待查询数据。
图5为本公开实施例中的数据查询引擎的系统架构图。图5中数据查询引擎的系统架构包括接入层、路由层、查询层、转化层和组合层。图5中的外部应用表示数据产品,接入层可以提供一种或多种接入方式,与外部应用进行交互。例如,可以提供HTTP(Hyper TextTransfer Protocol,超文本传输协议)和SDK(Software Development Kit,软件开发工具包)两种接入方式。接入层还可以用于对用户进行权限管理,即判断用户是否具有查询数据的权限,若不具有,则不为用户提供查询服务,若具有,则继续进入路由层。路由层可以基于预先配置的算法或自然语言格式,解析数据查询请求,得到待查询数据的指标信息和维度信息。查询层中封装各种类型的query(查询)组件,通过polaris或自定义配置的数据定位服务进行数据定位,即定位出数据表标识,再根据数据表标识去数仓查询目标数据表,从目标数据表中获取待处理字段内容。转化层中封装各种类型的transform组件,用于对待处理字段内容进行关联、聚合、排序、过滤、列运算等后置处理,得到待查询数据。组合层用于将待查询数据按照预先配置的数据结构进行格式转换,并返回给各自的数据产品进行显示。例如,可以采用指标卡的形式或维度列表的形式进行显示。
工作人员可以针对系统架构中的各个层级进行预先配置,例如,可以预先确定各个场景需要展示哪些指标、哪些维度、是否需要环比、同比、趋势图等。在查询层录入指标和维度所对应的数据表标识等信息,便于进行数据定位服务。在路由层可以配置解析数据查询请求的方式,可以通过NLP直接解析,也可以通过预设的自然语言格式进行解析。在转化层可以配置数据处理规则配置信息,数据处理规则配置信息是整个数据查询进行数据处理的核心,可以将获取到的字段内容进行关联、聚合、列间运算等一系列转化。在组合层可以配置数据结构,来加工转化层处理后得到的数据。例如,可以采用指标卡的样式展示总的销售额、销量等指标,或者,采用列表的形式对数据进行升序或降序的排序,再进行展示。在对数据查询引擎的各层级进行配置完成后,在测试环境进行验证。验证通过后,通过一键同步上线的方式,自动将所有配置同步到线上,完成整个场景的开发,无需后端介入。当产品需求发生变更,只需修改各层组件的配置信息就可以直接生效完成上线。
根据本公开实施方式的一种数据查询的方法,可以在响应到数据查询请求时,确定待查询数据的指标信息和维度信息等配置信息。根据预先配置的数据定位服务,确定与待查询数据的配置信息对应的数据表,作为目标数据表。从目标数据表中,确定出与待查询数据的指标信息和维度信息对应的数据,作为待查询数据。通过预先配置各种指标信息和维度信息等配置信息,以及数据定位服务,能够减少数据查询时SQL语句的组装过程,根据预设的配置能够快速寻找到待查询数据,提高数据查询的效率和灵活性。且不需要后端开发人员对查询过程进行复杂的代码开发,降低开发难度,有效节约开发和运维的人力和时间弄,避免代码错误对数据查询精度造成影响。
图6为本公开实施例提供的一种基于配置化的数据查询方法的流程示意图。如图6所示,该方法包括以下步骤:
S601、获取数据查询请求。
S602、判断用户是否具有查询权限。
S603、若没有查询权限,则停止进行数据查询。
S604、若有查询权限,则根据数据查询请求,确定待查询数据的配置信息。
S605、确定与待查询数据的配置信息对应的数据表标识。
S606、确定与数据表标识对应的目标数据表,从目标数据表中获取待处理字段内容。
S607、判断待处理字段内容的数值是否在预设的数值范围内。
S608、若不在,则停止进行数据查询。
S609、若在,则对待处理字段内容进行关联、聚合、过滤、列运算等处理,得到待查询数据。
S610、根据预设的数据结构,对待查询数据进行格式转化,将转化后的待查询数据进行显示。
示例性介质
在介绍了本公开示例性实施方式的方法之后,接下来,参考图7对本公开示例性实施方式的存储介质进行说明。
参考图7所示,存储介质70中存储着根据本公开的实施方式的用于实现上述方法的程序产品,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本公开的程序产品不限于此。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备。
示例性装置
在介绍了本公开示例性实施方式的介质之后,接下来,参考图8对本公开示例性实施方式的基于配置化的数据查询装置800进行说明,用于实现上述任一方法实施例中的方法,其实现原理和技术效果类似,在此不再赘述。
如图8所示,本实施例提供了一种基于配置化的数据查询装置的结构示意图,包括:
请求响应模块801,用于响应于数据查询请求,确定待查询数据的配置信息;其中,所述配置信息包括指标信息和维度信息,所述指标信息用于表示待查询数据的类别,所述维度信息用于表示指标信息的属性;
目标确定模块802,用于基于预先配置的数据定位服务,确定与所述待查询数据的配置信息对应的数据表,为目标数据表;其中,所述数据表中包括表征指标信息的字段和表征维度信息的字段,所述数据定位服务用于根据配置信息确定数据表;
数据确定模块803,用于根据所述待查询数据的指标信息和维度信息,从所述目标数据表中确定所述待查询数据。
在本公开的一个实施例中,数据确定模块803,包括:
字段内容获取单元,用于从所述目标数据表中,获取在所述待查询数据的指标信息和维度信息下的字段内容,作为待处理字段内容;
字段内容处理单元,用于根据预设的数据处理规则配置信息,对所述待处理字段内容进行预设操作手段的处理,得到待查询数据;其中,所述预设操作手段包括聚合、过滤、列运算中的至少一项。
在本公开的一个实施例中,字段内容获取单元,具体用于:
确定所述目标数据表中,所述待查询数据的维度信息的数据划分粒度;其中,所述数据划分粒度表征维度信息所表示的属性的最小单位;
从所述目标数据表中,获取在所述维度信息的范围内,所述数据划分粒度对应的所述待查询数据的指标信息的字段内容,作为待处理字段内容。
在本公开的一个实施例中,还包括:
字段内容校验模块,用于若所述待处理字段内容的数值大小在预设的数值范围内,则执行所述根据预设的数据处理规则配置信息,对所述待处理字段内容进行预设操作手段的处理,得到待查询数据。
在本公开的一个实施例中,字段内容处理单元,包括:
聚合子单元,用于将所述数据划分粒度对应的所述待查询数据的指标信息的字段内容进行聚合处理,得到所述待查询数据的维度信息所对应的所述指标信息的字段内容;将所述待查询数据的维度信息所对应的所述指标信息的字段内容,确定为所述待查询数据。
在本公开的一个实施例中,还包括:
过滤子单元,用于在得到所述待查询数据的维度信息所对应的所述指标信息的字段内容之后,将所述数据划分粒度对应的所述待查询数据的指标信息的字段内容进行过滤处理。
在本公开的一个实施例中,字段内容处理单元,包括:
列运算子单元,用于根据预设的数据处理规则配置信息中的列运算处理方式,对所述待处理字段内容进行列运算处理,得到列运算处理结果;其中,所述列运算处理方式包括环比计算、同比计算、数据变化趋势计算中的至少一项;将所述列运算处理结果确定为所述待查询数据。
在本公开的一个实施例中,字段内容处理单元,具体用于:
根据预设的指标信息与数据处理规则配置信息之间的关联关系,确定与所述待查询数据的指标信息对应的数据处理规则配置信息,作为目标数据处理规则配置信息;
根据所述目标数据处理规则配置信息,对所述待处理字段内容进行预设操作手段的处理,得到所述待查询数据。
在本公开的一个实施例中,还包括:
规则更新模块,用于响应于列运算处理方式的更新指令,确定待更新的列运算处理方式以及待更新的数据处理规则配置信息;根据所述待更新的列运算处理方式,对所述待更新的数据处理规则配置信息进行更新。
在本公开的一个实施例中,还包括:
格式转换模块,用于根据预设的数据结构,对所述待查询数据进行格式转化,将转化后的待查询数据进行显示。
在本公开的一个实施例中,请求响应模块801,包括:
语言获取单元,用于从所述数据查询请求中获取用户输入的自然语言;其中,用户输入的自然语言中包括待查询数据的配置信息;
语言处理单元,用于根据预设的自然语言处理算法,对所述用户输入的自然语言进行解析,得到所述待查询数据的配置信息。
在本公开的一个实施例中,还包括:
语言解析单元,用于根据预设的自然语言格式,对所述用户输入的自然语言进行解析,得到所述待查询数据的配置信息。
在本公开的一个实施例中,请求响应模块801,具体用于:
从所述数据查询请求中获取待查询数据的场景信息;其中,所述场景信息用于表示数据的业务场景;
根据预设的场景信息与配置信息之间的关联关系,确定与所述待查询数据的场景信息对应的配置信息;
将与所述待查询数据的场景信息对应的配置信息,确定为待查询数据的配置信息。
在本公开的一个实施例中,还包括:
配置更新模块,用于响应于配置信息更新指令,确定待更新的配置信息以及与所述待更新的配置信息对应的场景信息;根据所述待更新的配置信息以及与所述待更新的配置信息对应的场景信息,更新场景信息与配置信息之间的关联关系。
在本公开的一个实施例中,目标确定模块802,包括:
标识确定单元,用于根据预设的配置信息与数据表标识之间的关联关系,确定与所述待查询数据的配置信息对应的数据表标识;
数据表确定单元,用于根据与所述待查询数据的配置信息对应的数据表标识,确定与所述待查询数据的配置信息对应的目标数据表。
在本公开的一个实施例中,还包括:
用户信息获取模块,用于从所述数据查询请求中获取用户信息;其中,所述用户信息用于表示用户的权限;
权限确定模块,用于若根据所述用户信息,确定用户具有对所述待查询数据进行查询的权限,则执行所述基于预先配置的数据定位服务,确定与所述待查询数据的配置信息对应的数据表,为目标数据表。
示例性计算设备
在介绍了本公开示例性实施方式的方法、介质和装置之后,接下来,参考图9对本公开示例性实施方式的计算设备进行说明。
图9显示的计算设备900仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图9所示,计算设备900以通用计算设备的形式表现。计算设备900的组件可以包括但不限于:至少一个处理单元901、至少一个存储单元902,连接不同系统组件(包括处理单元901和存储单元902)的总线903。其中,至少一个存储单元902中存储有计算机执行指令;至少一个处理单元901包括处理器,处理器执行该计算机执行指令,以实现上文描述的方法。
总线903包括数据总线、控制总线和地址总线。
存储单元902可以包括易失性存储器形式的可读介质,例如随机存取存储器(RAM)9021和/或高速缓存存储器9022,可以进一步包括非易失性存储器形式的可读介质,例如只读存储器(ROM)9023。
存储单元902还可以包括具有一组(至少一个)程序模块9024的程序/实用工具9025,这样的程序模块9024包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
计算设备900也可以与一个或多个外部设备904(例如键盘、指向设备等)通信。这种通信可以通过输入/输出(I/O)接口905进行。并且,计算设备900还可以通过网络适配器906与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图9所示,网络适配器906通过总线903与计算设备900的其它模块通信。应当理解,尽管图中未示出,可以结合计算设备900使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
应当注意,尽管在上文详细描述中提及了数据库权限的配置装置的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。
此外,尽管在附图中以特定顺序描述了本公开方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
虽然已经参考若干具体实施方式描述了本公开的精神和原理,但是应该理解,本公开并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本公开旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。
Claims (10)
1.一种基于配置化的数据查询方法,包括:
响应于数据查询请求,确定待查询数据的配置信息;其中,所述配置信息包括指标信息和维度信息,所述指标信息用于表示待查询数据的类别,所述维度信息用于表示指标信息的属性;
基于预先配置的数据定位服务,确定与所述待查询数据的配置信息对应的数据表,为目标数据表;其中,所述数据表中包括表征指标信息的字段和表征维度信息的字段,所述数据定位服务用于根据配置信息确定数据表;
根据所述待查询数据的指标信息和维度信息,从所述目标数据表中确定所述待查询数据。
2.根据权利要求1所述的方法,根据所述待查询数据的指标信息和维度信息,从所述目标数据表中确定所述待查询数据,包括:
从所述目标数据表中,获取在所述待查询数据的指标信息和维度信息下的字段内容,作为待处理字段内容;
根据预设的数据处理规则配置信息,对所述待处理字段内容进行预设操作手段的处理,得到待查询数据;其中,所述预设操作手段包括聚合、过滤、列运算中的至少一项。
3.根据权利要求2所述的方法,从所述目标数据表中,获取在所述待查询数据的指标信息和维度信息下的字段内容,作为待处理字段内容,包括:
确定所述目标数据表中,所述待查询数据的维度信息的数据划分粒度;其中,所述数据划分粒度表征维度信息所表示的属性的最小单位;
从所述目标数据表中,获取在所述维度信息的范围内,所述数据划分粒度对应的所述待查询数据的指标信息的字段内容,作为待处理字段内容。
4.根据权利要求3所述的方法,根据预设的数据处理规则配置信息,对所述待处理字段内容进行预设操作手段的处理,得到待查询数据,包括:
将所述数据划分粒度对应的所述待查询数据的指标信息的字段内容进行聚合处理,得到所述待查询数据的维度信息所对应的所述指标信息的字段内容;
将所述待查询数据的维度信息所对应的所述指标信息的字段内容,确定为所述待查询数据。
5.根据权利要求4述的方法,根据预设的数据处理规则配置信息,对所述待处理字段内容进行预设操作手段的处理,得到待查询数据,包括:
根据预设的数据处理规则配置信息中的列运算处理方式,对所述待处理字段内容进行列运算处理,得到列运算处理结果;其中,所述列运算处理方式包括环比计算、同比计算、数据变化趋势计算中的至少一项;
将所述列运算处理结果确定为所述待查询数据。
6.根据权利要求1所述的方法,确定待查询数据的配置信息,包括:
从所述数据查询请求中获取用户输入的自然语言;其中,用户输入的自然语言中包括待查询数据的配置信息;
根据预设的自然语言处理算法,对所述用户输入的自然语言进行解析,得到所述待查询数据的配置信息。
7.根据权利要求1所述的方法,基于预先配置的数据定位服务,确定与所述待查询数据的配置信息对应的数据表,为目标数据表,包括:
根据预设的配置信息与数据表标识之间的关联关系,确定与所述待查询数据的配置信息对应的数据表标识;
根据与所述待查询数据的配置信息对应的数据表标识,确定与所述待查询数据的配置信息对应的目标数据表。
8.一种基于配置化的数据查询装置,包括:
请求响应模块,用于响应于数据查询请求,确定待查询数据的配置信息;其中,所述配置信息包括指标信息和维度信息,所述指标信息用于表示待查询数据的类别,所述维度信息用于表示指标信息的属性;
目标确定模块,用于基于预先配置的数据定位服务,确定与所述待查询数据的配置信息对应的数据表,为目标数据表;其中,所述数据表中包括表征指标信息的字段和表征维度信息的字段,所述数据定位服务用于根据配置信息确定数据表;
数据确定模块,用于根据所述待查询数据的指标信息和维度信息,从所述目标数据表中确定所述待查询数据。
9.一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如权利要求1至7中任一项所述的方法。
10.一种计算设备,包括:
至少一个处理器;
以及与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述计算设备执行如权利要求1至7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311198571.6A CN117076462A (zh) | 2023-09-15 | 2023-09-15 | 基于配置化的数据查询方法、装置、存储介质及计算设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311198571.6A CN117076462A (zh) | 2023-09-15 | 2023-09-15 | 基于配置化的数据查询方法、装置、存储介质及计算设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117076462A true CN117076462A (zh) | 2023-11-17 |
Family
ID=88719538
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311198571.6A Pending CN117076462A (zh) | 2023-09-15 | 2023-09-15 | 基于配置化的数据查询方法、装置、存储介质及计算设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117076462A (zh) |
-
2023
- 2023-09-15 CN CN202311198571.6A patent/CN117076462A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111177231A (zh) | 报表生成方法和报表生成装置 | |
US20230418570A1 (en) | Constructing executable program code based on sequence codes | |
CN111708804B (zh) | 数据处理方法、装置、设备及介质 | |
CN110795509A (zh) | 一种数据仓库的指标血缘关系图的构建方法、装置和电子设备 | |
CN104133772A (zh) | 一种自动生成测试数据的方法 | |
US11615076B2 (en) | Monolith database to distributed database transformation | |
CN113360519B (zh) | 数据处理方法、装置、设备和存储介质 | |
CN110795478A (zh) | 一种应用于金融业务的数据仓库更新方法、装置和电子设备 | |
CN110807016A (zh) | 一种应用于金融业务的数据仓库构建方法、装置和电子设备 | |
CN112949269A (zh) | 可视化数据分析报表的生成方法、系统、设备及存储介质 | |
CN111414410A (zh) | 数据处理方法、装置、设备和存储介质 | |
US20050138146A1 (en) | On-demand creation of POSIX locale source | |
CN116957813B (zh) | 风控策略测试方法、装置、电子设备及可读存储介质 | |
CN112102099B (zh) | 保单数据处理方法、装置、电子设备及存储介质 | |
US20210124752A1 (en) | System for Data Collection, Aggregation, Storage, Verification and Analytics with User Interface | |
CN113010208A (zh) | 一种版本信息的生成方法、装置、设备及存储介质 | |
US10003492B2 (en) | Systems and methods for managing data related to network elements from multiple sources | |
CN117076462A (zh) | 基于配置化的数据查询方法、装置、存储介质及计算设备 | |
CN115422202A (zh) | 业务模型的生成方法、业务数据查询方法、装置及设备 | |
US20230195792A1 (en) | Database management methods and associated apparatus | |
CN114860759A (zh) | 一种数据处理方法、装置、设备及可读存储介质 | |
CN115017185A (zh) | 一种数据处理方法、装置及存储介质 | |
JP6695847B2 (ja) | ソフトウェア部品管理システム、計算機 | |
CN113377604A (zh) | 一种数据处理方法、装置、设备和存储介质 | |
CN112416713A (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 |