CN117056350A - 一种基于自适应的多维分析动态加速方法、***及装置 - Google Patents

一种基于自适应的多维分析动态加速方法、***及装置 Download PDF

Info

Publication number
CN117056350A
CN117056350A CN202311093350.2A CN202311093350A CN117056350A CN 117056350 A CN117056350 A CN 117056350A CN 202311093350 A CN202311093350 A CN 202311093350A CN 117056350 A CN117056350 A CN 117056350A
Authority
CN
China
Prior art keywords
query
dimension
common
summary table
logic
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
Application number
CN202311093350.2A
Other languages
English (en)
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.)
Jiangsu Suning Bank Co Ltd
Original Assignee
Jiangsu Suning Bank 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 Jiangsu Suning Bank Co Ltd filed Critical Jiangsu Suning Bank Co Ltd
Priority to CN202311093350.2A priority Critical patent/CN117056350A/zh
Publication of CN117056350A publication Critical patent/CN117056350A/zh
Pending legal-status Critical Current

Links

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/242Query formulation
    • G06F16/2433Query languages
    • 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/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及数据分析技术领域,公开了一种基于自适应的多维分析动态加速方法、***及装置,其技术方案要点是包括如下步骤:根据动态加速指令,基于数仓中的事实表,构建逻辑模型表,定义逻辑模型表的维度、度量以及计算逻辑;为非可加性指标,建立虚拟计算度量,所述虚拟计算度量通过编程语句定义计算逻辑,所述非可加性指标对应所述虚拟计算度量的总和;为逻辑模型表关联明细表和预汇总表,根据常用分析场景,获取常用查询维度组合,并定义所述预汇总表的维度和度量,所述预汇总表用于为常用查询维度组合进行预计算;响应于查询语句的查询命令,判断是否有与查询语句对应的预汇总表,若有,则路由至对应的预汇总表,若否,则路由至明细表。

Description

一种基于自适应的多维分析动态加速方法、***及装置
技术领域
本发明涉及数据分析技术领域,更具体地说,它涉及一种基于自适应的多维分析动态加速方法、***及装置。
背景技术
在数仓和多维分析领域中,指标有一种特性,叫做可加性。
可加性是指按照各个维度都可以相加的度量值。如销售金额,每一笔明细的销售金额都可以累积起来计算汇总,从地域、部门维度、商品维度、时间维度上销售金额都是可加的。
半可加性是指只能按照特定维度相加才有意义的度量值。如库存,今天的库存和明天库存相加没有意义,但是A地的库存和B地的库存相加就有意义。
不可加性是指无论按照哪个纬度都不可以相加的度量值。主要包含有2大类,一类是相对性指标如毛利率、同比、环比等,另一类是去重性指标如UV。
对于可加性指标,可以采用预汇总表进行加速,以空间换时间来提升查询性能。这类代表性的多维分析引擎有kylin、druid、dremio等。在维度数目很多的情况下,如果对于每种维度组合都建预汇总表的话,数据膨胀率是非常大的。因此一般会根据业务场景,对于经常使用的维度组合创建cube。查询语句在没有直接命中cube的情况下,会从上一级的cube中进行汇总,直到明细表数据。例如建立了一个大区、品类、时间、渠道这四个维度组合的预汇总表。如果要对大区、品类这两个维度进行汇总,则可以从这个预汇总表上进行二次汇总,这可以大大提升查询性能,减少资源消耗。如果没有任何预汇总表可以命中,则从明细数据中进行汇总。
对于非可加性指标,用预汇总表进行加速就比较复杂了。大致可以分成如下三类情况:
1、对于比值类的数据,例如平均值,虽然该度量不具备可加性,但是平均值是根据sum值和count值来进行计算的,而这两个度量是具备可加性的,因此可以通过对这两个度量进行预汇总加速。
2、对于去重类指标,通过一些算法,也可以实现指标的可加性。例如使用hll进行非精确的去重计算,使用bitmap来进行精确去重汇总。
3、但是有一些指标则无法实现可加性,如果通过预汇总表来进行加速,则需要对所有维度组合都进行计算,维度组合数目是按照维度的个数呈指数型增长,可能数据量非常巨大,根本无法实现。另外如果查询条件中加上了不同于分析维度的过滤条件,则根本无法使用预汇总表,还得从明细数据进行计算。通常这类指标的多维分析汇总计算又比较复杂,很难通过简单的SQL语句来满足计算要求。例如复购人数,就要求计算在一个时间段内购买商品天数超过两天以上的会员人数。预汇总数据不是简单的从明细数据中汇总而来,而是有着比较复杂的逻辑运算关系。
这类指标还包括TOP N,新老买家销售额等。在海量数据量下,这类指标的计算有可能非常慢,无法满足业务对性能上的需求。
发明内容
本发明的目的是提供一种基于自适应的多维分析动态加速方法、***及装置,既能够满足任意维度组合的多维分析,同时也可以对常用查询场景进行加速,满足用户需求。
本发明的上述技术目的是通过以下技术方案得以实现的:一种基于自适应的多维分析动态加速方法,包括如下步骤:
根据动态加速指令,基于数仓中的事实表,构建逻辑模型表,定义逻辑模型表的维度、度量以及计算逻辑;为非可加性指标,建立虚拟计算度量,所述虚拟计算度量通过编程语句定义计算逻辑,所述非可加性指标对应所述虚拟计算度量的总和;
为逻辑模型表关联一个明细表和至少一个预汇总表,根据常用分析场景,获取常用查询维度组合,并根据常用查询维度组合定义所述预汇总表的维度和度量,所述预汇总表用于为常用查询维度组合进行预计算;
响应于查询语句的查询命令,判断是否有与查询语句对应的预汇总表,若有,则路由至对应的预汇总表,从预汇总表中直接获取查询结果,若否,则路由至明细表。
作为本发明的一种优选技术方案,计算逻辑包括若干带有带变量的编程语句或脚本,所述计算逻辑中带有待输入参数的算式,在预汇总表进行预计算时,输入参数,对算式进行运算,得到对应的计算结果。
作为本发明的一种优选技术方案,编程语句或脚本还用于在用户查询指定维度组合时,若没有对应的预汇总表,则通过编程语句或脚本,在明细表中获取相应数据进行计算,得到对应的查询结果。
作为本发明的一种优选技术方案,所述逻辑模型表的度量包括虚拟计算度量、普通度量以及衍生指标,所述衍生指标为两个以上虚拟计算度量和/或普通度量之间的计算结果。
作为本发明的一种优选技术方案,根据查询场景,获取常用查询维度组合的步骤包括:在业务场景内收集常用分析场景,根据常用分析场景获取常用查询维度组合。
作为本发明的一种优选技术方案,响应于查询语句的查询命令时,先对查询语句进行解析,获取查询维度和过滤维度。
作为本发明的一种优选技术方案,常用查询维度组合包括以下组合情况的一种或多种:
所有可能维度组合;
用户关注的维度组合,划分出关注的组合大类,形成聚合组;
用户指定的固定维度组合;
强制维度组合。
一种基于自适应的多维分析动态加速***,包括:
逻辑模型表构建模块,用于根据动态加速指令,基于数仓中的事实表,构建逻辑模型表,定义逻辑模型表的维度、度量以及计算逻辑;为非可加性指标,建立虚拟计算度量,所述虚拟计算度量通过编程语句定义计算逻辑,所述非可加性指标对应所述虚拟计算度量的总和;
预汇总表关联模块,用于为逻辑模型表关联一个明细表和至少一个预汇总表,根据常用分析场景,获取常用查询维度组合,并根据常用查询维度组合定义所述预汇总表的维度和度量,所述预汇总表用于为常用查询维度组合进行预计算;
查询获取模块,用于响应查询语句的查询命令,判断是否有与查询语句对应的预汇总表,若有,则路由至对应的预汇总表,从预汇总表中直接获取查询结果,若否,则路由至明细表。
作为本发明的一种优选技术方案,***中还设置有解析组件、监控模块和智能优化模块;
所述解析组件用于将查询语句命令翻译为适应于明细表的编程语句;
所述监控模块用于在***实际使用中,收集实际的查询场景;
所述智能优化模块用于根据收集到的实际查询场景,判断超过预设常用阈值的维度组合,判断低于预设查询时间阈值的查询语句;
对超过预设常用阈值且低于预设查询时间的维度组合,若满足预汇总表路由条件,则构建新的预汇总表;对于低于预设常用阈值的维度组合取消预汇总表。
一种基于自适应的多维分析动态加速装置,包括:处理器和存储器,所述存储器存储有所述处理器可执行的计算机程序,所述处理器执行所述计算机程序时实现权利要求1-7中任一项所述的方法。
综上所述,本发明具有以下有益效果:针对非可加性指标,提出了动态智能加速技术,既能够满足任意维度组合的多维分析,同时也可以对常用查询场景进行加速,满足用户的性能需求,在性能和通用计算上取得一种较好的平衡。另外还可以根据实际查询情况,动态地调整加速策略,使其更符合实际的数据分析场景。
同时通过SQL on logical model和智能路由的技术,定向加速对于指标使用用户来讲是透明的,最终用户不需要了解具体的加速情况。能够简化用户的开发流程,降低开发成本,并且可以和其它指标可以一起进行联合查询,比较适合于现有流行的数据中台架构,提供了数据分析和指标复用的功能。
附图说明
图1是本发明的流程图;
图2是本发明的SQL语句处理逻辑流程图。
具体实施方式
以下结合附图对本发明作进一步详细说明。
如图1和2所示,本发明提供一种基于自适应的多维分析动态加速方法和***,包括通过***中模块执行的如下步骤:
S1、通过逻辑模型表构建模块,根据动态加速指令,基于数仓中的hive事实表,构建逻辑模型表,定义逻辑模型表的维度、度量以及计算逻辑;一般的逻辑模型表可以为星型和宽表。并且模型中的维度可以和维度表相关联,用于获取其余维度信息。
具体的,逻辑模型表的度量包括虚拟计算度量、普通度量以及衍生指标,为了满足本发明中提出的不可加的指标之间计算的需求,本发明为非可加性指标,建立了虚拟计算度量,虚拟计算度量通过编程语句定义计算逻辑,例如在复购类模型中,购买人数和复购人数都是计算度量。在数仓表中是不存在这类字段的,而是根据会员ID的购买情况和业务规则计算出来的。
并且对于非可加性指标,将其定义为虚拟计算度量的sum操作,例如指标复购人数这个指标就是对复购人数。
同时也会产生衍生指标,衍生指标为两个以上虚拟计算度量和/或普通度量之间的计算结果,用于对不同指标做计算,例如复购率=复购人数/购买人数。实际用户在使用时不用关系内在的复杂处理逻辑。
但是在指标定义时,不支持Case when这种情况。如果有这种情况,则适应性的在度量中增加一类计算度量。
作为本发明的一个实施例,对于计算复购人数、复购率之类的指标,在设计逻辑模型表时,设计包含以下维度和度量信息。
维度:时间、门店、大区、品类、明细渠道、事业部、营销活动、会员ID、时间粒度(可以设置为月、季、半年、年等)
度量:
购买人数(计算度量,在指定时间内购买商品的人数)、复购人数(计算度量,购买天数大于等于两天的人数)、复购率(衍生指标,复购人数/购买人数)。
有关于计算逻辑的定义:对于非可加性指标的计算逻辑通常比较复杂,很难通过简单的sum、max、count distinct等聚合函数来完成,例如复购类的计算,新老买家销售额的计算等等。因此需要在定义逻辑模型表的同时也需要定义计算逻辑。
计算逻辑包括若干带有带变量的编程语句或脚本,计算逻辑中带有待输入参数的算式,在预汇总表进行预计算时,输入参数,对算式进行运算,得到对应的计算结果。编程语句或脚本还用于在用户查询指定维度组合时,若没有对应的预汇总表,则通过编程语句或脚本,在明细表中获取相应数据进行计算,得到对应的查询结果。
具体的,有两种方案支持计算逻辑的编写:
1、SQL语句,SQL语句是带有变量的,需要在进行预计算时根据传入参数,将变量转换为实际的值。例如对于复购类的模型,计算逻辑可以写成如下SQL语句:
with preAgg as(
select${groupbyColumns},member_id,max(__time)
max_statis_date,min(__time)min_statis_date
from${parquetTable}tt2
where$timeRange
group by${groupbyColumns},member_id)
select${cuboid},$groupbyColumns,count(distinct member_id)as购买人数
,count(case when max_statis_date!=min_statis_date then member_idelse null end)as复购人数
from preAgg group by$cuboid,${groupbyColumns}
其中以$开头的表示变量,在实际执行中要以实际值来代替。其中
${groupByColumns}指的是此次SQL执行语句中的维度组合
${parquetTable}是指在模型数仓表拉宽后的那张parquet表
${timeRange}是指当天对应的周期时间范围。例如如果时间周期是周,当前计算时间为2018-11-30,那么timeRange则为__time>=’2018-11-26 00:00:00’and__time<’2018-12-02 00:00:00’
${cuboid}指明某个维度组合,指定了groupByColumns,cuboid值也即可以算出。
标红的购买人数、复购人数是模型中的计算度量,实际以模型定义中的对应计算度量名称为准。
这个SQL语句也可以根据实际情况加上其他过滤条件,值得注意的是,该SQL语句不仅仅能作为预计算来使用,另外一个功能是可以作为一种兜底(fallback)方案。即在用户查询指定维度组合指标时,如果发现没有对应的预计算表,可以将查询计算路由明细表中,通过接口或脚本,构造明细表分析汇总对应的SQL语句中,通过该SQL语句,理论上是可以解决该模型中任意维度组合的指标汇总的服务的。
2、脚本或者Java程序,对于比较复杂的,可能无法通过上述SQL语句的方法来构建SQL语句,对于这种情况,可以通过编写groovy、Javascript等脚本或者Java程序。
具体的,对于Java程序,提供了一个接口,ISQLBuilder,该接口定义一个方法:
Public String buildSql(olapContext OLAPContext)
OLAPContext是构建任务时的上下文对象实例,在进行预计算时,会将维度组合、统计周期等信息传递进来。接口实现类可以根据这些信息来构建实际的SQL语句。
S1步骤中,除了需要定义逻辑模型表的维度、度量以及计算逻辑之外,还需要执行其他的事项,例如存储、加速任务和补数。
关于存储,可以设定预计算结果存储在druid、HBASE或者RDB中。
关于加速任务和补数,普通druid加速只需要将数仓中的表拉宽后,就可以将数据入到druid中了。而预汇总表中无法直接从宽表中导数据,需要对宽表按照定义的维度进行预计算处理后,才可以将数据入到druid中。具体处理逻辑就是使用SQL语句来加工。如图2所示,其流程如下:
首先进行数仓拉宽,确定$parquetTable,对该模型时间周期循环,确定$timeRange,对该周期中的维度组合循环,判断是否有强制维度,如有,则将强制维度加入维度组合后执行计算$groupByColumns,若无则直接执行$groupByColumns,再计算$cuboid,构造计算SQL语句,将计算结果写入到HDFS中,同时将数据导入到druid中,在判断组合循环是有结束,如否,则继续对该周期中的维度组合循环,若是,则将数据导入到druid,之后判断时间周期循环是否结束,若未结束则继续对该模型时间周期循环。
S2、通过预汇总表关联模块,为逻辑模型表关联一个明细表和至少一个预汇总表,根据常用分析场景,获取常用查询维度组合,并根据常用查询维度组合定义预汇总表的维度和度量,预汇总表用于为常用查询维度组合进行预计算;
具体的,预汇总表也就是预计算结果表,表中的每种维度组合都是唯一的。因此对于单一指标的计算可以转换为对模型中计算度量进行sum操作。所以单一指标一律简化为对计算度量的sum操作。
一个预汇总表只能适用于一种维度组合,无法对该表进行上卷下钻操作。而维度组合的个数是根据维度的个数呈指数型增长。因此,对于这类多维分析,需要根据业务场景,选择最常用的维度组合。一般的做法是:在业务场景内收集常用分析场景,根据常用分析场景获取常用查询维度组合。
具体的,常用查询维度组合包括以下组合情况的一种或多种:所有可能维度组合,这类可应用于维度个数不多的场景;
用户根据自己关注的维度组合,划分出关注的组合大类,形成聚合组,在每一个聚合组中,对所有的可能维度组合进行汇总计算,预先计算出数值。维度分组中的维度个数不宜太多,一般3到5个。
用户指定的固定维度组合,根据用户指定的维度组合生成预汇总表。后面可以根据需要增加或者减少维度组合;
强制维度组合,强制维度是指一定会在每种维度组合中都会出现的维度。强制维度一般包含时间和统计周期,也可以指定其余维度作为强制维度。
S3、通过查询获取模块,响应于查询语句的查询命令,判断是否有与查询语句对应的预汇总表,若有,则路由至对应的预汇总表,从预汇总表中直接获取查询结果,若否,则路由至明细表。
响应于查询语句的查询命令时,先对查询语句进行解析,获取查询维度和过滤维度。
S3在执行时,不需要最终用户了解复杂的业务逻辑。只需要进行路由规则匹配,这里的路由是要求完全匹配,所谓的完全匹配,是指没有过滤维度或者过滤维度是分析维度组合的子集,是指group by中的字段与模型中预汇总表中的所有维度都相同,并且过滤条件中的字段包含在group by字段中。路由成功就可以到该预汇总表中,直接获取最终结果。这个相当于kv的查询,性能和并发性都会非常好。
如果没有预汇总表能够命中,就需要到明细表中去查询。
本发明的***中还设置有解析组件、监控模块和智能优化模块;
解析组件用于将查询语句命令翻译为适应于明细表的编程语句;
监控模块用于在***实际使用中,收集实际的查询场景,根据场景,判断哪些维度组合经常被使用,哪些查询语句比较慢。然后找出经常被查询的维度组合;
智能优化模块用于根据收集到的实际查询场景,判断超过预设常用阈值的维度组合,判断低于预设查询时间阈值的查询语句;
对超过预设常用阈值且低于预设查询时间的维度组合,若满足预汇总表路由条件,则构建新的预汇总表,针对该预汇总表的查询就会被大大加速,而这一切用户是不需要参与;对于低于预设常用阈值的维度组合取消预汇总表,减少相应的资源占用,整体上提升资源利用率和实际查询速率。
对应于上述的方法和***,本发明还提供一种基于自适应的多维分析动态加速装置,包括:处理器和存储器,存储器存储有处理器可执行的计算机程序,处理器执行计算机程序时实现上述方法。
本发明的优势在于:针对非可加性指标,提出了动态智能加速技术,既能够满足任意维度组合的多维分析,同时也可以对常用查询场景进行加速,满足用户的性能需求,在性能和通用计算上取得一种较好的平衡。另外还可以根据实际查询情况,动态地调整加速策略,使其更符合实际的数据分析场景。
同时通过SQL on logical model和智能路由的技术,定向加速对于指标使用用户来讲是透明的,最终用户不需要了解具体的加速情况。能够简化用户的开发流程,降低开发成本,并且可以和其它指标可以一起进行联合查询,比较适合于现有流行的数据中台架构,提供了数据分析和指标复用的功能。
在实际应用中,针对前述的复购人数统计建立了一个逻辑模型,然后事先收集了常用的分析场景,预先建立了10余个预汇总表。在SQL语句能够命中预汇总表的情况下,延迟基本上在100ms以下,并发数能达到上千。另外有些少量的查询确实需要到明细数据中进行汇总,这个查询量占比在10%左右,这时延迟需要10秒到100秒之间,基本上可以满足业务上的要求。后面在智能优化时,针对某个经常使用的查询维度组合还可以自动增加了预汇总表,提升了查询性能。
因此采用本发明的加速技术,大幅降低了用户的开发成本,且这些指标可以和销售域、流量域指标等指标一起进行数据分析,提升了指标复用性,增加了业务价值。
以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

1.一种基于自适应的多维分析动态加速方法,其特征是:包括如下步骤:
根据动态加速指令,基于数仓中的事实表,构建逻辑模型表,定义逻辑模型表的维度、度量以及计算逻辑;为非可加性指标,建立虚拟计算度量,所述虚拟计算度量通过编程语句定义计算逻辑,所述非可加性指标对应所述虚拟计算度量的总和;
为逻辑模型表关联一个明细表和至少一个预汇总表,根据常用分析场景,获取常用查询维度组合,并根据常用查询维度组合定义所述预汇总表的维度和度量,所述预汇总表用于为常用查询维度组合进行预计算;
响应于查询语句的查询命令,判断是否有与查询语句对应的预汇总表,若有,则路由至对应的预汇总表,从预汇总表中直接获取查询结果,若否,则路由至明细表。
2.根据权利要求1所述的一种基于自适应的多维分析动态加速方法,其特征是:计算逻辑包括若干带有带变量的编程语句或脚本,所述计算逻辑中带有待输入参数的算式,在预汇总表进行预计算时,输入参数,对算式进行运算,得到对应的计算结果。
3.根据权利要求2所述的一种基于自适应的多维分析动态加速方法,其特征是:编程语句或脚本还用于在用户查询指定维度组合时,若没有对应的预汇总表,则通过编程语句或脚本,在明细表中获取相应数据进行计算,得到对应的查询结果。
4.根据权利要求3所述的一种基于自适应的多维分析动态加速方法,其特征是:所述逻辑模型表的度量包括虚拟计算度量、普通度量以及衍生指标,所述衍生指标为两个以上虚拟计算度量和/或普通度量之间的计算结果。
5.根据权利要求4所述的一种基于自适应的多维分析动态加速方法,其特征是:根据查询场景,获取常用查询维度组合的步骤包括:在业务场景内收集常用分析场景,根据常用分析场景获取常用查询维度组合。
6.根据权利要求5所述的一种基于自适应的多维分析动态加速方法,其特征是:响应于查询语句的查询命令时,先对查询语句进行解析,获取查询维度和过滤维度。
7.根据权利要求6所述的一种基于自适应的多维分析动态加速方法,其特征是:常用查询维度组合包括以下组合情况的一种或多种:
所有可能维度组合;
用户关注的维度组合,划分出关注的组合大类,形成聚合组;
用户指定的固定维度组合;
强制维度组合。
8.一种基于自适应的多维分析动态加速***,其特征是:包括:
逻辑模型表构建模块,用于根据动态加速指令,基于数仓中的事实表,构建逻辑模型表,定义逻辑模型表的维度、度量以及计算逻辑;为非可加性指标,建立虚拟计算度量,所述虚拟计算度量通过编程语句定义计算逻辑,所述非可加性指标对应所述虚拟计算度量的总和;
预汇总表关联模块,用于为逻辑模型表关联一个明细表和至少一个预汇总表,根据常用分析场景,获取常用查询维度组合,并根据常用查询维度组合定义所述预汇总表的维度和度量,所述预汇总表用于为常用查询维度组合进行预计算;
查询获取模块,用于响应查询语句的查询命令,判断是否有与查询语句对应的预汇总表,若有,则路由至对应的预汇总表,从预汇总表中直接获取查询结果,若否,则路由至明细表。
9.根据权利要求8所述的一种基于自适应的多维分析动态加速***,其特征是:***中还设置有解析组件、监控模块和智能优化模块;
所述解析组件用于将查询语句命令翻译为适应于明细表的编程语句;
所述监控模块用于在***实际使用中,收集实际的查询场景;
所述智能优化模块用于根据收集到的实际查询场景,判断超过预设常用阈值的维度组合,判断低于预设查询时间阈值的查询语句;
对超过预设常用阈值且低于预设查询时间的维度组合,若满足预汇总表路由条件,则构建新的预汇总表;对于低于预设常用阈值的维度组合取消预汇总表。
10.一种基于自适应的多维分析动态加速装置,其特征是:包括:处理器和存储器,所述存储器存储有所述处理器可执行的计算机程序,所述处理器执行所述计算机程序时实现权利要求1-7中任一项所述的方法。
CN202311093350.2A 2023-08-29 2023-08-29 一种基于自适应的多维分析动态加速方法、***及装置 Pending CN117056350A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311093350.2A CN117056350A (zh) 2023-08-29 2023-08-29 一种基于自适应的多维分析动态加速方法、***及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311093350.2A CN117056350A (zh) 2023-08-29 2023-08-29 一种基于自适应的多维分析动态加速方法、***及装置

Publications (1)

Publication Number Publication Date
CN117056350A true CN117056350A (zh) 2023-11-14

Family

ID=88657026

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311093350.2A Pending CN117056350A (zh) 2023-08-29 2023-08-29 一种基于自适应的多维分析动态加速方法、***及装置

Country Status (1)

Country Link
CN (1) CN117056350A (zh)

Similar Documents

Publication Publication Date Title
US9734202B2 (en) Systems and methods for rapid data analysis
CN103748579B (zh) 在映射化简框架中处理数据
CN107193967A (zh) 一种多源异构行业领域大数据处理全链路解决方案
JP6779231B2 (ja) データ処理方法及びシステム
US20160092596A1 (en) Database migration method and apparatus
US11442694B1 (en) Merging database tables by classifying comparison signatures
US10706077B2 (en) Performance of distributed databases and database-dependent software applications
CN110704336B (zh) 一种数据缓存方法及装置
CN110555035A (zh) 一种对查询语句进行优化的方法、装置
CN115129782A (zh) 一种分布式数据库的分区级连接方法和装置
US20070118541A1 (en) Generation of a Categorization Scheme
CN108182204A (zh) 基于房产交易多维度数据的数据查询的处理方法及装置
CN117056350A (zh) 一种基于自适应的多维分析动态加速方法、***及装置
CN110032615A (zh) 一种基于规则库实现gis空间数据在线统计的方法
CN111061767B (zh) 一种基于内存计算与sql计算的数据处理方法
CN109241048A (zh) 用于数据统计的数据处理方法、服务器及存储介质
CN113255309B (zh) 一种基于多维模型的指标计算引擎实现方法
US20220351087A1 (en) Feature pruning and algorithm selection for machine learning
CN111782658B (zh) 交叉表处理方法、装置、电子设备及存储介质
CN110414813B (zh) 指标曲线的构建方法、装置及设备
CN112506953A (zh) 基于结构化查询语言sql的查询方法、装置及存储介质
CN112667859A (zh) 基于内存的数据处理方法及装置
CN106557469B (zh) 一种处理数据仓库中数据的方法及装置
CN115840885B (zh) 一种深度合成特征的特征选择方法及装置
US11809390B2 (en) Context-dependent event cleaning and publication

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