CN115563170A - 一种数据分析方法、装置、电子设备及计算机存储介质 - Google Patents
一种数据分析方法、装置、电子设备及计算机存储介质 Download PDFInfo
- Publication number
- CN115563170A CN115563170A CN202211077405.6A CN202211077405A CN115563170A CN 115563170 A CN115563170 A CN 115563170A CN 202211077405 A CN202211077405 A CN 202211077405A CN 115563170 A CN115563170 A CN 115563170A
- Authority
- CN
- China
- Prior art keywords
- index
- data
- splitting
- dimension
- complex
- 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
Images
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/2457—Query processing with adaptation to user needs
-
- 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
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0639—Performance analysis of employees; Performance analysis of enterprise or organisation operations
- G06Q10/06393—Score-carding, benchmarking or key performance indicator [KPI] analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0201—Market modelling; Market analysis; Collecting market data
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Development Economics (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- General Physics & Mathematics (AREA)
- Entrepreneurship & Innovation (AREA)
- Physics & Mathematics (AREA)
- Economics (AREA)
- Accounting & Taxation (AREA)
- Data Mining & Analysis (AREA)
- Finance (AREA)
- Educational Administration (AREA)
- Game Theory and Decision Science (AREA)
- General Engineering & Computer Science (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种数据分析方法、装置、电子设备及计算机存储介质,该方法包括:接收查询指令,确定与查询指令对应的指标维度信息表;对指标维度信息表中的复杂指标进行拆分处理,得到复杂指标的初始拆分指标数据,复杂指标的数量至少为一个;对初始拆分指标数据进行处理,确定对应的目标拆分指标数据;将目标拆分指标数据进行维度关联,得到每一复杂指标对应的数据表;基于复杂指标对应的数据表中数据执行目标表达式。在本方案通过对指标维度信息表中的复杂指标进行拆分,逻辑解析、和维度关联等处理之后,执行对应的表达式。通过上述方式能够减少指标计算时间。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种数据分析方法、装置、电子设备及计算机存储介质。
背景技术
随着电商行业的快速发展,网上购物越来越受人们的喜爱,因此为了吸引更多人与电商应用的粘性,需要为电商采销和运营了解当前各用户结构和各细分用户群体下用户增长与销售增长的情况,以便快速定位出拉动增长的强势与弱势部门、类目、品牌,以及通过对比强弱势业务的同环比对比数据,帮助采销侧了解其当前的增长趋势,便于采销侧通过多种维度更有方向性地制定品类运营策略。
目前,常见方案的是采用MOLAP架构,通过Spark计算引擎以离线方式计算所有维度下的指标,由于指标的复杂度无法确定,且维度和指标数据的量较多,因此通过上述方式计算指标任务量较大,从而导致指标计算时间较长。
发明内容
有鉴于此,本发明实施例提供一种数据分析方法、装置、电子设备及计算机存储介质,以解决现有技术中出现的指标计算时间较长的问题。
为实现上述目的,本发明实施例提供如下技术方案:
本发明实施例第一方面示出了一种数据分析方法,应用于数据处理系统,所述方法包括:
接收查询指令,确定与所述查询指令对应的指标维度信息表;
对所述指标维度信息表中的复杂指标进行拆分处理,得到所述复杂指标的初始拆分指标数据,所述复杂指标的数量至少为一个;
对所述初始拆分指标数据进行处理,确定对应的目标拆分指标数据;
将所述目标拆分指标数据进行维度关联,得到每一复杂指标对应的数据表;
基于所述复杂指标对应的数据表中数据执行目标表达式,其中,所述目标表达式是从所述指标维度信息表中获取的与所述复杂指标对应的指标表达式。
可选的,所述对所述指标维度信息表中的复杂指标进行拆分处理,得到所述复杂指标的初始拆分指标数据,包括:
从所述指标维度信息表中查找与所述复杂指标对应的结构数据;
基于所述结构数据中子指标将所述复杂指标进行拆分,得到与每一所述子指标对应的初始拆分指标数据。
可选的,所述对所述初始拆分指标数据进行处理,确定对应的目标拆分指标数据,包括:
若所述查询指令中未携带有维度修改请求,且确定需要修改所述初始拆分指标数据中指标过滤条件所对应的数据时,基于雪花模型中的数据和所述初始拆分指标数据,修改所述初始拆分指标数据中指标过滤条件所对应的数据;
若所述查询指令中携带有维度修改请求,基于所述维度修改请求对所述初始拆分指标数据中的指标分组维度所对应的数据进行修改;
将修改后的初始拆分指标数据作为目标拆分指标数据。
可选的,若确定需要修改所述拆分指标据中指标过滤条件所对应的数据时,基于雪花模型中的数据和所述初始拆分指标数据,修改所述初始拆分指标数据中指标过滤条件所对应的数据,包括:
根据所述初始拆分指标数据中子指标含义确定是否需要修改指标过滤条件所对应的数据;
若需要,基于所述雪花模型中的数据对所述指标过滤条件所对应的数据进行修改。
可选的,将所述目标拆分指标数据进行维度关联,得到每一复杂指标对应的数据表,包括:
利用所述目标拆分指标数据对应的语句查询雪花模型中的数据,得到对应的结果数据;
按照指标维度数据对所述结果数据进行维度关联,得到每一复杂指标对应的数据表,所述指标维度的数据是从所述目标拆分指标数据中的指标分组维度确定的。
本发明实施例第二方面示出了一种数据处理装置,应用于数据处理系统,所述装置包括:
获取单元,用于接收查询指令,确定与所述查询指令对应的指标维度信息表;
拆分单元,用于对所述指标维度信息表中的复杂指标进行拆分处理,得到所述复杂指标的初始拆分指标数据,所述复杂指标的数量至少为一个;
逻辑解析单元,用于对所述初始拆分指标数据进行处理,确定对应的目标拆分指标数据;
维度关联单元,用于将所述目标拆分指标数据进行维度关联,得到每一复杂指标对应的数据表;
处理单元,用于基于所述复杂指标对应的数据表中数据执行目标表达式,其中,所述目标表达式是从所述指标维度信息表中获取的与所述复杂指标对应的指标表达式。
可选的,所述拆分单元,具体用于:从所述指标维度信息表中查找与所述复杂指标对应的结构数据;基于所述结构数据中子指标将所述复杂指标进行拆分,得到与每一所述子指标对应的初始拆分指标数据。
可选的,所述逻辑解析单元,具体用于:若所述查询指令中未携带有维度修改请求,且确定需要修改所述初始拆分指标数据中指标过滤条件所对应的数据时,基于雪花模型中的数据和所述初始拆分指标数据,修改所述初始拆分指标数据中指标过滤条件所对应的数据;若所述查询指令中携带有维度修改请求,基于所述维度修改请求对所述初始拆分指标数据中的指标分组维度所对应的数据进行修改;将修改后的初始拆分指标数据作为目标拆分指标数据。
本发明实施例第三方面示出了一种电子设备,所述电子设备用于运行程序,其中,所述程序运行时执行如本发明实施例第一方面示出的数据分析方法。
本发明实施例第四方面示出了一种计算机存储介质,所述存储介质包括存储程序,其中,在所述程序运行时控制所述存储介质所在设备执行如本发明实施例第一方面示出的数据分析方法。
基于上述本发明实施例提供的一种数据分析方法、装置、电子设备及计算机存储介质,该方法包括:接收查询指令,确定与所述查询指令对应的指标维度信息表;对所述指标维度信息表中的复杂指标进行拆分处理,得到所述复杂指标的初始拆分指标数据,所述复杂指标的数量至少为一个;对所述初始拆分指标数据进行处理,确定对应的目标拆分指标数据;将所述目标拆分指标数据进行维度关联,得到每一复杂指标对应的数据表;基于所述复杂指标对应的数据表中数据执行目标表达式,其中,所述目标表达式是从所述指标维度信息表中获取的与所述复杂指标对应的指标表达式。在本发明实施例中,通过对指标维度信息表中的复杂指标进行拆分,逻辑解析、和维度关联等处理之后,执行对应的表达式。通过上述方式能够减少指标计算时间。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例示出的一种数据分析系统的架构示意图;
图2为本发明实施例示出的雪花模块的结构示意图;
图3为本发明实施例示出的一种数据分析方法的流程示意图;
图4为本发明实施例示出的指标拆分过程的示意图;
图5为本发明实施例示出的维度关联生成数据表的示意图;
图6为本发明实施例示出的确定目标拆分指标数据的示意图;
图7为本发明实施例示出的逻辑解析确定目标拆分指标数据的示意图;
图8为本发明实施例示出的一种数据分析装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
参见图1,为本发明实施例示出的一种数据分析系统的架构示意图,该系统包括:服务层10、查询引擎模块20、ClickHouse存储模块30和HIVE数据仓库40。
服务层10包括应用程序编程接口API、用户的权限管理和缓存管理等子模块,用于为用户提供预先定义的接口。
查询引擎模块20包括指标拆分、逻辑解析、维度关联和规则运算子模块,用于执行引擎负责指标转换及查询功能。
使用开源的列式存储数据库ClickHouse存储模块30,包括订单表、新老客表等表格,用于存储订单、画像等明细数据。
HIVE数据仓库40,包括订单表、新老客表、画像表、首购来源表和平台端表等表格,用于存储各个主题的离线数据。
需要说明的是,ClickHouse存储模块30和HIVE数据仓库40之间的数据实时同步。
由于数据量过大导查询执行时间过长,影响用户体验。规模较大电商每年订单量近百亿,用户量也均超亿,而电商用户增长会频繁分析订单相关数据。因此将ClickHouse存储模块30和HIVE数据仓库40中的数据以雪花模型的形式存储。以便于相关数据能够快速被查询到。
具体的,ClickHouse存储模块30和HIVE数据仓库40中每天需要存储几亿数据量,由于数据量大小直接影响查询效率,因此需要将数据表与多个表做关联操作,以减少查询效率。具体构建雪花模型的过程为:按照各表中存在关联的数据对各个表进行关联操作,以形成了一套针对电商用户增长数据的雪花模型,以减少数据冗余,且能够提高查询效率。
例如:如图2所示,ClickHouse存储模块30和HIVE数据仓库40可把订单明细表作为事实表,用户画像作为明细表,二者用部门编码、类目编码作为FK外键,基于所述FK外键将所述订单明细表与用户画像进行关联,以此类推,将订单明细表分别通过不同的外键FK与部门信息维度表、订单渠道来源表、新客标签维度表进行关联。
接着参见图2,为了让ClickHouse有更好的压缩率,把原画像表中的标签名称单独做成一个表,形成了用户画像表和标签信息维表两个表,使得用户画像表和标签信息维表之间通过一定的外键连接。
可选的,这样用户画像表与订单明细表在ClickHouse进行JOIN操作,返回聚合查询结果数据,此时结果数据中的数据量正常只有几条,最后在服务端对结果数据补充标签名字。
基于上述本发明实施例示出的架构具体示出数据分析的过程,包括:
查询引擎模块20接收查询指令,获取应用系统中与所述查询指令对应的指标维度信息表;
其中,应用系统可为电商应用系统。
查询引擎模块20中的指标拆分子模块对所述指标维度信息表中的复杂指标进行拆分处理,得到所述复杂指标的初始拆分指标数据,所述复杂指标的数量至少为一个。
查询引擎模块20中的逻辑解析子模块对所述初始拆分指标数据进行处理,确定对应的目标拆分指标数据。
查询引擎模块20中的维度关联子模块将所述目标拆分指标数据进行维度关联,得到每一复杂指标对应的数据表;
查询引擎模块20中的规则运算子模块基于所述复杂指标对应的数据表中数据执行目标表达式,并将执行结果反馈给用户,其中,所述目标表达式是从所述指标维度信息表中获取的与所述复杂指标对应的指标表达式。
在本发明实施例中,接收查询指令,确定与查询指令对应的指标维度信息表;对指标维度信息表中的复杂指标进行拆分处理,得到复杂指标的初始拆分指标数据,复杂指标的数量至少为一个;对初始拆分指标数据进行处理,确定对应的目标拆分指标数据;将目标拆分指标数据进行维度关联,得到每一复杂指标对应的数据表;基于复杂指标对应的数据表中数据执行目标表达式。在本方案通过对指标维度信息表中的复杂指标进行拆分,逻辑解析、和维度关联等处理之后,执行对应的表达式。通过上述方式能够减少指标计算时间。进一步的,利用雪花模型存储数据,使得查询的数据能够快速被找到,从而进行查询时间。
参见图3,为本发明实施例示出一种数据分析方法的流程示意图,该方法包括:
步骤S301:接收查询指令,确定与所述查询指令对应的指标维度信息表。
在步骤S301中,查询指令中可能携带有维度修改请求。
可选的,用户,即采销或运营人员基于想要了解的用户数据通过查询引擎输入的查询指令。
在具体实现步骤S301的过程中,接收查询指令,通过该查询请求获取应用系统中与所述查询指令对应的指标维度信息表。
需要说明的是,指标维度信息表包括很多结构数据,该结构数据可为指标编码、指标名称、表达式和子指标等数据。
例如:表(1)示出的指标维度信息表,表(1)中指标编码包括指标编码userCnt、userCntLastYear、userCntLastPeriod、userCntYOY和userCntMOM;指标编码userCnt对应指标名称为用户数,对应的表达式和子指标为空;指标编码userCntLastYear对应指标名称为去年用户数,对应的表达式和子指标为空;指标编码userCntLastPeriod对应指标名称为上一周期用户数,对应的表达式和子指标为空;指标编码userCntYOY对应指标名称为用户数同比,对应的表达式为userCnt/userCntLastYear-1,对应的子指标为userCnt,userCntLastYear;指标编码userCntMOM对应指标名称为用户数环比,对应的表达式为userCnt/userCntLastPeriod-1,对应的子指标为userCnt,userCntLastPeriod。
表(1):
步骤S302:对所述指标维度信息表中的复杂指标进行拆分处理,得到所述复杂指标的初始拆分指标数据。
在具体实现步骤S302中,所述复杂指标的数量至少为一个。
在本发明实施例中,由于所述指标维度信息表中表达式为空的是基础指标,其余为复合指标。复合指标通过基础指标根据表达式运算得到。
需要说明的是,具体实现步骤S302的过程,包括以下步骤:
步骤S11:从所述指标维度信息表中查找与所述复杂指标对应的结构数据。
在具体实现步骤S11的过程中,查找所述指标维度信息表中存在表达式的指标编码,并确定该指标编码对应的指标名称、表达式和子指标。
步骤S12:基于所述结构数据中子指标将所述复杂指标进行拆分,得到与每一所述子指标对应的初始拆分指标数据。
在具体实现步骤S12的过程中,基于所述子指标的数据将复杂指标进行拆分,得到与每一所述子指标对应的初始拆分指标数据。
可选的,若存在多个复杂指标,则拆分后子指标的初始拆分指标数据相同,可将其合并。
例如:查找所述指标维度信息表,即表(1)中存在表达式的指标编码userCntYOY和userCntMOM,并确定该指标编码userCntYOY的指标名称为用户数同比,对应的表达式为userCnt/userCntLastYear-1,对应的子指标为userCnt,userCntLastYear;指标编码userCntMOM对应指标名称为用户数环比,对应的表达式为userCnt/userCntLastPeriod-1,对应的子指标为userCnt,userCntLastPeriod。
针对复杂指标userCntYOY的指标,按照其的子指标userCnt,userCntLastYear将其拆分,得到子指标userCnt对应的初始拆分指标数据和子指标userCntLastYear对应的初始拆分指标数据;针对复杂指标userCntMOM,按照其的子指标userCnt,userCntLastPeriod将其拆分,得到子指标userCnt对应的初始拆分指标数据和子指标userCntLastPeriod对应的初始拆分指标数据;由于两个子指标userCnt对应的初始拆分指标数据相同,因此将其合并,如图4所示。
其中,子指标userCnt对应的初始拆分指标数据包括指标名称metric为userCnt,指标分组维度dimensions为quarter,deptId1,指标过滤条件filters为时间字段2020-11-01至2020-11-07;子指标userCntLastYear对应的初始拆分指标数据包括指标名称metric为userCntLastYear,指标分组维度dimensions为quarter,deptId1,指标过滤条件filters为时间字段2020-11-01至2020-11-07;子指标userCntLastPeriod对应的初始拆分指标数据包括指标名称metric为userCntLastPeriod,指标分组维度dimensions为quarter,deptId1,指标过滤条件filters为时间字段2020-11-01至2020-11-07。
步骤S303:对所述初始拆分指标数据进行处理,确定对应的目标拆分指标数据。
在具体实现步骤S303的过程中,对所述初始拆分指标数据进行下钻、上卷、及时间等数据分析口径的逻辑解析功能,以对初始拆分指标数据进行修改,确定对应的目标拆分指标数据。
步骤S304:将所述目标拆分指标数据进行维度关联,得到每一复杂指标对应的数据表。
需要说明的是,具体实现步骤S304的过程包括以下步骤:
步骤S21:利用所述目标拆分指标数据对应的语句查询雪花模型中的数据,得到对应的结果数据。
在具体实现步骤S21的过程中,首先,将目标拆分指标数据通过MyBatis或其他ORM框架生成数据库查询语句SQL,并查询雪花模型得到对应返回的结果数据。
需要说明的是,SQL返回结果数据注册为读写图表数据Tablesaw的Table对象。
步骤S22:按照目标指标维度对所述结果数据进行维度关联,得到每一复杂指标对应的数据表。
在步骤S22中,所述目标指标维度是从所述目标拆分指标数据中的指标分组维度确定的。
在具体实现步骤S22的过程中,从所述目标拆分指标数据中的指标分组维度中指定任一一个指标维度为目标指标维度,并按照目标指标维度将每一子指标的结果数据进行维度关联,得到每一复杂指标对应的数据表。
比如:假设若子指标userCnt的目标拆分指标数据中quarter为1,deptId1为123,对应的结果数据为10;quarter为1,deptId1为234,对应的结果数据为20;quarter为1,deptId1为345,对应的结果数据为30。若子指标userCntLastYear的目标拆分指标数据中quarter为1,deptId1为123,对应的结果数据为1;quarter为1,deptId1为234,对应的结果数据为2。若子指标userCntLastPeriod的目标拆分指标数据中quarter为1,deptId1为123,对应的结果数据为5;quarter为1,deptId1为234,对应的结果数据为6。按照指标维度deptId1作为目标指标维度,并按照deptId1每一子指标的结果数据进行维度关联,得到每一复杂指标对应的数据表,如图5所示。
步骤S305:基于所述复杂指标对应的数据表中数据执行目标表达式。
在步骤S305中,所述目标表达式是从所述指标维度信息表中获取的与所述复杂指标对应的指标表达式。
在具体实现步骤S305的过程中,从所述指标维度信息表中获取的与所述复杂指标对应的指标表达式,并将数据表中数据多列进行四则运算并生成指标。根据指标的表达式,指定需要计算的列名,被指定列做四则运算。即实现把Tablesaw中Table对象作为入参,并指定请求指标的表达式完成规则运算。
可选的,还包括:将执行目标表达式得到的执行结果反馈给用户。
可选的,目标表达式还可以是用户基于实际情况、经验或多次实验输入的。
在本发明实施例中,接收查询指令,确定与查询指令对应的指标维度信息表;对指标维度信息表中的复杂指标进行拆分处理,得到复杂指标的初始拆分指标数据,复杂指标的数量至少为一个;对初始拆分指标数据进行处理,确定对应的目标拆分指标数据;将目标拆分指标数据进行维度关联,得到每一复杂指标对应的数据表;基于复杂指标对应的数据表中数据执行目标表达式。在本方案通过对指标维度信息表中的复杂指标进行拆分,逻辑解析、和维度关联等处理之后,执行对应的表达式。通过上述方式能够减少指标计算时间。进一步的,利用雪花模型存储数据,使得查询的数据能够快速被找到,从而进行查询时间。
基于上述示出的数据分析方法,具体实现步骤S303对所述初始拆分指标数据进行处理,确定对应的目标拆分指标数据的过程包括以下步骤:
步骤S31:判断所述查询指令中是否携带有维度修改请求,若是,执行步骤步骤S32,若否,执行步骤S33。
在具体实现步骤S31的过程中,将所述查询请求输入到逻辑解析模块,逻辑解析模块确定是否维度修改请求,若是,执行步骤步骤S32,若否,执行步骤S33。
步骤S32:基于所述维度修改请求对所述初始拆分指标数据中的指标分组维度所对应的数据进行修改。
在具体实现步骤S32的过程中,基于所述所述维度修改请求判断是否需要对指标分组维度进行下钻解析,若需要,基于所述雪花模型中的数据对指标分组维度进行下钻解析,以确定需要修改的维度数据,并基于所述维度数据对指标分组维度所对应的数据进行修改;若不需要,基于所述所述维度修改请求判断是否需要对指标分组维度进行上卷解析,若需要,基于所述雪花模型中的数据对指标分组维度进行上卷解析,以确定需要修改的维度数据,并基于所述维度数据对指标分组维度所对应的数据进行修改,接着执行步骤S33。
需要说明的是,由于存在维度修改请求,因此必存在对维度修改请求进行下钻解析或上卷解析的情况。
例如,指标分组维度中存储这2级部门的维度数据,维度修改请求指示查看3级部门对应的指标数据,此时可确定需要对指标分组维度进行下钻解析,基于所述雪花模型中的数据对指标分组维度进行下钻解析,以确定所述雪花模型中3级部门对应的维度数据作为修改的维度数据,并基于所述维度数据对指标分组维度所对应的数据进行修改,所谓上卷解析就是反过来。
步骤S33:确定是否需要修改所述初始拆分指标数据中指标过滤条件所对应的数据,若确定需要修改所述初始拆分指标数据中指标过滤条件所对应的数据时,执行步骤S34,若确定不需要修改所述初始拆分指标数据中指标过滤条件所对应的数据时,确定不需要修改指标分组维度dimensions和指标过滤条件filters,并直接执行步骤S35。
需要说明的是,具体实现步骤S33的过程,包括以下步骤:
步骤S41:根据所述初始拆分指标数据中子指标含义确定是否需要修改指标过滤条件所对应的数据,若需要,则执行步骤S42,若不需要,则不对指标过滤条件所对应的数据进行修改。
在具体实现步骤S41的过程中,由于拆分后的指标过滤条件中的时间段为查询指令时的当前时间,因此需要判断所述子指标含义是否存在表示过去或未来的词义的词,若存在,执行步骤S42,若不存在,则不对指标过滤条件所对应的数据进行修改。
步骤S42:基于所述雪花模型中的数据对所述指标过滤条件所对应的数据进行修改。
在具体实现步骤S42的过程中,基于所述雪花模型中的数据对指标过滤条件紧张时间解析,以通过所述子指标含义查找雪花模型中的数据,确定需要修改的过滤条件数据,基于所述过滤条件数据对所述指标过滤条件所对应的数据进行修改。
例如:基于所述雪花模型中的数据对指标过滤条件紧张时间解析,以通过所述子指标userCntLastYear含义去年用户数查找雪花模型中的数据为filters的时间字段2019-11-01至2019-11-07,子指标userCntLastYear的指标过滤条件中filters的时间字段由2020-11-01至2020-11-07修改为2019-11-01至2019-11-07,如图6所示。
需要说明的是,步骤S32和步骤S33的执行顺序可如上所示,也可以先执行步骤S33再执行步骤S32。
相应的,基于上述步骤S32和步骤S33示出方法可通过图7示出的架构示意图进行处理。
图7中还包括切片解析,所述切片解析是指技术人员除了上述示出的时间解析、下钻解析、及上卷解析外,还可以设置其他的解析。
需要说明的是,还可以设置其他的切片解析功能,以对初始拆分指标数据中的其他数据进行修改。
步骤S34:将修改后的初始拆分指标数据作为目标拆分指标数据。
步骤S35:将初始拆分指标数据作为目标拆分指标数据。
在本发明实施中,对初始拆分指标数据进行处理,确定对应的目标拆分指标数据;进而进行维度关联等处理之后,执行对应的表达式。通过上述方式能够减少指标计算时间。进一步的,利用雪花模型存储数据,使得查询的数据能够快速被找到,从而进行查询时间。
基于上述本发明实施例示出的数据分析方法,本发明实施例还对应示出了一种数据分析装置,所述数据分析装置可设置于数据分析系统中,如图8所示,为本发明实施例示出的一种数据分析装置的结构示意图,该装置包括:
获取单元801,用于接收查询指令,确定与所述查询指令对应的指标维度信息表;
拆分单元802,用于对所述指标维度信息表中的复杂指标进行拆分处理,得到所述复杂指标的初始拆分指标数据,所述复杂指标的数量至少为一个;
逻辑解析单元803,用于对所述初始拆分指标数据进行处理,确定对应的目标拆分指标数据;
维度关联单元804,用于将所述目标拆分指标数据进行维度关联,得到每一复杂指标对应的数据表;
处理单元805,用于基于所述复杂指标对应的数据表中数据执行目标表达式,其中,所述目标表达式是从所述指标维度信息表中获取的与所述复杂指标对应的指标表达式。
需要说明的是,上述本发明实施例公开的数据分析装置中的各个单元具体的原理和执行过程,与上述本发明实施示出的数据分析方法相同,可参见上述本发明实施例公开的数据分析方法中相应的部分,这里不再进行赘述。
在本发明实施例中,接收查询指令,确定与查询指令对应的指标维度信息表;对指标维度信息表中的复杂指标进行拆分处理,得到复杂指标的初始拆分指标数据,复杂指标的数量至少为一个;对初始拆分指标数据进行处理,确定对应的目标拆分指标数据;将目标拆分指标数据进行维度关联,得到每一复杂指标对应的数据表;基于复杂指标对应的数据表中数据执行目标表达式。在本方案通过对指标维度信息表中的复杂指标进行拆分,逻辑解析、和维度关联等处理之后,执行对应的表达式。通过上述方式能够减少指标计算时间。进一步的,利用雪花模型存储数据,使得查询的数据能够快速被找到,从而进行查询时间。
可选的,基于上述本发明实施例示出的数据分析装置,所述拆分单元802,具体用于:从所述指标维度信息表中查找与所述复杂指标对应的结构数据;基于所述结构数据中子指标将所述复杂指标进行拆分,得到与每一所述子指标对应的初始拆分指标数据。
可选的,基于上述本发明实施例示出的数据分析装置,所述逻辑解析单元803,具体用于:若所述查询指令中未携带有维度修改请求,且确定需要修改所述初始拆分指标数据中指标过滤条件所对应的数据时,基于雪花模型中的数据和所述初始拆分指标数据,修改所述初始拆分指标数据中指标过滤条件所对应的数据;若所述查询指令中携带有维度修改请求,基于所述维度修改请求对所述初始拆分指标数据中的指标分组维度所对应的数据进行修改;将修改后的初始拆分指标数据作为目标拆分指标数据。
可选的,基于上述本发明实施例示出的数据分析装置,若确定需要修改所述拆分指标据中指标过滤条件所对应的数据时,基于雪花模型中的数据和所述初始拆分指标数据,修改所述初始拆分指标数据中指标过滤条件所对应的数据,的所述逻辑解析单元803,具体用于:
根据所述初始拆分指标数据中子指标含义确定是否需要修改指标过滤条件所对应的数据;
若需要,基于所述雪花模型中的数据对所述指标过滤条件所对应的数据进行修改。
可选的,基于上述本发明实施例示出的数据分析装置,维度关联单元804,具体用于:
利用所述目标拆分指标数据对应的语句查询雪花模型中的数据,得到对应的结果数据;
按照指标维度数据对所述结果数据进行维度关联,得到每一复杂指标对应的数据表,所述指标维度的数据是从所述目标拆分指标数据中的指标分组维度确定的。
本发明实施例还公开了一种电子设备,该电子设备用于运行数据库存储过程,其中,所述运行数据库存储过程时执行上述图2公开的数据处理方法。
本发明实施例还公开了一种计算机存储介质,所述存储介质包括存储数据库存储过程,其中,在所述数据库存储过程运行时控制所述存储介质所在设备执行上述图2公开的数据处理方法。
在本公开的上下文中,计算机存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种数据分析方法,其特征在于,应用于数据处理系统,所述方法包括:
接收查询指令,确定与所述查询指令对应的指标维度信息表;
对所述指标维度信息表中的复杂指标进行拆分处理,得到所述复杂指标的初始拆分指标数据,所述复杂指标的数量至少为一个;
对所述初始拆分指标数据进行处理,确定对应的目标拆分指标数据;
将所述目标拆分指标数据进行维度关联,得到每一复杂指标对应的数据表;
基于所述复杂指标对应的数据表中数据执行目标表达式,其中,所述目标表达式是从所述指标维度信息表中获取的与所述复杂指标对应的指标表达式。
2.根据权利要求1所述的方法,其特征在于,所述对所述指标维度信息表中的复杂指标进行拆分处理,得到所述复杂指标的初始拆分指标数据,包括:
从所述指标维度信息表中查找与所述复杂指标对应的结构数据;
基于所述结构数据中子指标将所述复杂指标进行拆分,得到与每一所述子指标对应的初始拆分指标数据。
3.根据权利要求1所述的方法,其特征在于,所述对所述初始拆分指标数据进行处理,确定对应的目标拆分指标数据,包括:
若所述查询指令中未携带有维度修改请求,且确定需要修改所述初始拆分指标数据中指标过滤条件所对应的数据时,基于雪花模型中的数据和所述初始拆分指标数据,修改所述初始拆分指标数据中指标过滤条件所对应的数据;
若所述查询指令中携带有维度修改请求,基于所述维度修改请求对所述初始拆分指标数据中的指标分组维度所对应的数据进行修改;
将修改后的初始拆分指标数据作为目标拆分指标数据。
4.根据权利要求3所述的方法,其特征在于,若确定需要修改所述拆分指标据中指标过滤条件所对应的数据时,基于雪花模型中的数据和所述初始拆分指标数据,修改所述初始拆分指标数据中指标过滤条件所对应的数据,包括:
根据所述初始拆分指标数据中子指标含义确定是否需要修改指标过滤条件所对应的数据;
若需要,基于所述雪花模型中的数据对所述指标过滤条件所对应的数据进行修改。
5.根据权利要求1所述的方法,其特征在于,将所述目标拆分指标数据进行维度关联,得到每一复杂指标对应的数据表,包括:
利用所述目标拆分指标数据对应的语句查询雪花模型中的数据,得到对应的结果数据;
按照指标维度数据对所述结果数据进行维度关联,得到每一复杂指标对应的数据表,所述指标维度的数据是从所述目标拆分指标数据中的指标分组维度确定的。
6.一种数据处理装置,其特征在于,应用于数据处理系统,所述装置包括:
获取单元,用于接收查询指令,确定与所述查询指令对应的指标维度信息表;
拆分单元,用于对所述指标维度信息表中的复杂指标进行拆分处理,得到所述复杂指标的初始拆分指标数据,所述复杂指标的数量至少为一个;
逻辑解析单元,用于对所述初始拆分指标数据进行处理,确定对应的目标拆分指标数据;
维度关联单元,用于将所述目标拆分指标数据进行维度关联,得到每一复杂指标对应的数据表;
处理单元,用于基于所述复杂指标对应的数据表中数据执行目标表达式,其中,所述目标表达式是从所述指标维度信息表中获取的与所述复杂指标对应的指标表达式。
7.根据权利要求6所述的装置,其特征在于,所述拆分单元,具体用于:从所述指标维度信息表中查找与所述复杂指标对应的结构数据;基于所述结构数据中子指标将所述复杂指标进行拆分,得到与每一所述子指标对应的初始拆分指标数据。
8.根据权利要求6所述的装置,其特征在于,所述逻辑解析单元,具体用于:若所述查询指令中未携带有维度修改请求,且确定需要修改所述初始拆分指标数据中指标过滤条件所对应的数据时,基于雪花模型中的数据和所述初始拆分指标数据,修改所述初始拆分指标数据中指标过滤条件所对应的数据;若所述查询指令中携带有维度修改请求,基于所述维度修改请求对所述初始拆分指标数据中的指标分组维度所对应的数据进行修改;将修改后的初始拆分指标数据作为目标拆分指标数据。
9.一种电子设备,其特征在于,所述电子设备用于运行程序,其中,所述程序运行时执行如权利要求1-5中任一所述的数据分析方法。
10.一种计算机存储介质,其特征在于,所述存储介质包括存储程序,其中,在所述程序运行时控制所述存储介质所在设备执行如权利要求1-5中任一所述的数据分析方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211077405.6A CN115563170A (zh) | 2022-09-05 | 2022-09-05 | 一种数据分析方法、装置、电子设备及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211077405.6A CN115563170A (zh) | 2022-09-05 | 2022-09-05 | 一种数据分析方法、装置、电子设备及计算机存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115563170A true CN115563170A (zh) | 2023-01-03 |
Family
ID=84738428
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211077405.6A Pending CN115563170A (zh) | 2022-09-05 | 2022-09-05 | 一种数据分析方法、装置、电子设备及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115563170A (zh) |
-
2022
- 2022-09-05 CN CN202211077405.6A patent/CN115563170A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8560531B2 (en) | Search tool that utilizes scientific metadata matched against user-entered parameters | |
US9116899B2 (en) | Managing changes to one or more files via linked mapping records | |
CN106557558B (zh) | 一种数据分析方法及装置 | |
CN106997390B (zh) | 一种设备配件或零部件商品交易信息搜索方法 | |
US20210042589A1 (en) | System and method for content-based data visualization using a universal knowledge graph | |
CN110659282B (zh) | 数据路由的构建方法、装置、计算机设备和存储介质 | |
US20180129708A1 (en) | Query processing management in a database management system | |
CN110928903A (zh) | 数据提取方法及装置、设备和存储介质 | |
CN112364014B (zh) | 数据查询方法、装置、服务器及存储介质 | |
CN110880136A (zh) | 配套产品的推荐方法、系统、设备和存储介质 | |
CN110543484A (zh) | 提示词的推荐方法及装置、存储介质和处理器 | |
CN111414410B (zh) | 数据处理方法、装置、设备和存储介质 | |
CN113760891A (zh) | 一种数据表的生成方法、装置、设备和存储介质 | |
CN110008396B (zh) | 对象信息推送方法、装置、设备及计算机可读存储介质 | |
CN106844638A (zh) | 信息检索方法、装置及电子设备 | |
CN104794130A (zh) | 一种表间关联查询方法和装置 | |
US8781997B2 (en) | Reusing reporting components in customized cubes | |
CN111680110B (zh) | 数据处理方法、装置、bi系统及介质 | |
CN106777405B (zh) | 基于SaaS服务促进低频类商品交易的方法 | |
WO2020253353A1 (zh) | 预设用户的资源获取资质生成方法及相关设备 | |
CN111143356B (zh) | 报表检索方法及装置 | |
CN110059967B (zh) | 一种应用于城市辅助决策分析的数据处理方法及装置 | |
CN107908724B (zh) | 一种数据模型匹配方法、装置、设备及存储介质 | |
CN115563170A (zh) | 一种数据分析方法、装置、电子设备及计算机存储介质 | |
CN113918606B (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 |