CN110442653B - 增量构建cube模型的方法、装置、服务器及存储介质 - Google Patents
增量构建cube模型的方法、装置、服务器及存储介质 Download PDFInfo
- Publication number
- CN110442653B CN110442653B CN201910592045.5A CN201910592045A CN110442653B CN 110442653 B CN110442653 B CN 110442653B CN 201910592045 A CN201910592045 A CN 201910592045A CN 110442653 B CN110442653 B CN 110442653B
- Authority
- CN
- China
- Prior art keywords
- incremental data
- dimension
- fact table
- target
- cube model
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
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/2455—Query execution
- G06F16/24553—Query execution of query operations
- G06F16/24554—Unary operations; Data partitioning operations
- G06F16/24556—Aggregation; Duplicate elimination
-
- 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)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及大数据技术领域,公开了一种增量构建CUBE模型的方法,在接收到检测指令时,检测对应的事实表并获取所述检测指令携带的事实表名称;若检测到所述事实表的增量数据,获取所述事实表和关联维度表中所述增量数据的属性信息;基于所述增量数据的属性信息和所述事实表名称,查询预置CUBE模型,确定所述增量数据的目标位置;基于确定的所述目标位置,构建所述增量数据的属性信息。本发明还公开了一种增量构建CUBE模型的装置、服务器及存储介质。本发明实现了无需人工操作,自动完成CUBE模型的增量构建,并提高了构建效率。
Description
技术领域
本发明涉及大数据处理领域,尤其涉及增量构建CUBE模型的方法、装置、服务器及计算机可读存储介质。
背景技术
联机分析处理(on-line analytical processing,OLAP)是在基于数据仓库多维立方体模型(Cube)的基础上实现的面向分析的各类操作的集合,Cube模型在构建时有增量构建和全量构建。每次Cube的构建都会从事实表中批量读取数据,而对于大多数业务场景来说,事实表中的数据处于不断增长的状态。为了支持Cube中的数据能够不断地得到更新,且无需重复地为已经处理过的历史数据构建Cube,因此对于Cube引入了增量构建的功能。
但目前Cube构建增量数据只能基于人工获取增量数据在事实表中的维度名称以及层次机构等信息,再在Cube模型的数据立方体中进行查找增量数据的位置,然后将增量数据的数据值插入到该位置处,处理的过程十分不便且构建效率低。
发明内容
本发明的主要目的在于提供一种增量构建CUBE模型的方法,旨在解决目前Cube构建增量数据只能基于人工处理,处理的过程十分不便且构建效率低的技术问题。
为实现上述目的,本发明提供一种增量构建CUBE模型的方法,对所述增量构建CUBE模型的方法包括:
在接收到检测指令时,检测对应的事实表并获取所述检测指令携带的事实表名称;
若检测到所述事实表的增量数据,则获取所述事实表和关联维度表中所述增量数据的属性信息;
基于所述增量数据的属性信息和所述事实表名称,查询预置CUBE模型,确定所述增量数据的目标位置;
基于确定的所述目标位置构建所述增量数据的属性信息。
可选的,所述若检测到所述事实表的增量数据,则获取所述事实表和关联维度表中所述增量数据的属性信息包括:
若预置时长内检测到所述事实表的新增分割时间列,则将所述新增分割时间列中的数据作为增量数据,并获取所述事实表中增量数据的维度名称、数据值和新增日期;
在获取到所述增量数据的维度名称时,通过索引所述事实表名称的关联维度表,获取所述关联维度表中所述增量数据的维度层次结构信息,其中,所述维度层次结构信息中包括增量数据的维度名称以及层次级别。
可选的,所述基于所述增量数据的属性信息和所述事实表名称,查询预置CUBE模型,获取所述增量数据的目标位置包括:
基于所述增量数据的维度层次结构信息和所述事实表名称,查询预置CUBE模型,获取所述增量数据的目标层次间;
当获取到所述目标层次间时,通过所述增量数据的维度名称、事实表名称以及所述增量数据的新增日期,获取所述增量数据的目标位置。
可选的,所述基于所述增量数据的维度层次结构信息和事实表名称时,查询预置CUBE模型,获取所述增量事实表的目标层次间包括:
在获取到所述增量数据的维度层次结构信息时,获取所述增量数据的维度名称在所述维度层次结构信息中的层次级别;
当查询所述预置CUBE模型时,获取与所述层次级别对应的多个层次间的维度信息;
将获取到的多个所述层次间的维度信与所述增量数据的维度名称和所述事实表名称进行匹配,获取所述增量数据的目标层次间。
可选的,所述当获取到所述目标层次间时,通过所述增量数据的维度名称、事实表名称以及所述增量数据的新增日期,确定所述增量数据的目标位置包括:
若获取到所述增量数据的目标层次间,则读取所述目标层次间的维度信息,其中,所述维度信息包括时间维度信息;
当读取到所述目标层次间的时间维度信息时,将所述新增日期进行聚合,生成与所述时间维度信息一致的目标新增日期;
将所述增量数据的维度名称、所述事实表名称以及所述目标新增日期作为搜索条件,获取所述增量数据的目标方块;
通过所述新增日期,对所述目标方块进行钻取,按照预置日期排列,确定所述增量数据在所述目标方块中的目标位置。
可选的,所述基于确定的所述目标位置构建所述增量数据的属性信息包括:
若确定所述目标位置,则获取所述目标位置的接口处,并在所述接口处构建所述增量数据的子方块;
当构建所述子方块时,添加所述增量数据的数据值以及新增日期。
可选的,所述获取所述目标位置的接口处,并在所述接口处构建所述增量数据的子方块之后还包括:
当检测到所述接口处构建所述子方块时,判断所述CUBE模型是否成功构建所述子方块;
当检测到所述CUBE模型的job处于READY、RUNNING、ERROR状态时,判定所述CUBE模型成功构建所述子方块。
此外,为实现上述目的,本发明还提供一种增量构建CUBE模型的装置,所述CUBE模型自动构建增量数据的装置包括:
检测单元,用于在接收到检测指令时,检测对应的事实表并获取所述检测指令携带的事实表名称;
获取单元,用于若检测到所述事实表的增量数据,则获取所述事实表和关联维度表中所述增量数据的属性信息;
查询单元,用于基于所述增量数据的属性信息和所述事实表名称,查询预置CUBE模型,确定所述增量数据的目标位置;
构建单元,用于基于确定的所述目标位置构建所述增量数据的属性信息。
可选的,所述获取单元具体用于包括:
若预置时长内检测到所述事实表的新增分割时间列,则将所述新增分割时间列中的数据作为增量数据,并获取所述事实表中增量数据的维度名称、数据值和新增日期;
在获取到所述增量数据的维度名称时,通过索引所述事实表名称的关联维度表,获取所述关联维度表中所述增量数据的维度层次结构信息,其中,所述维度层次结构信息中包括所述增量数据的维度名称以及层次级别。
可选的,所述查询单元包括:
查询子单元,基于所述增量数据的维度层次结构信息和所述事实表名称,查询预置CUBE模型,获取所述增量数据的目标层次间;
第一获取子单元,当获取到所述目标层次间时,通过所述增量数据的维度名称、事实表名称以及所述增量数据的新增日期,获取所述增量数据的目标位置。
可选的,所述查询子单元具体用于:
在获取到所述增量数据的维度层次结构信息时,获取所述增量数据的维度名称在所述维度层次结构信息中的层次级别;
当查询所述预置CUBE模型时,获取与所述层次级别对应的多个层次间的维度信息;
将获取到的多个所述层次间的维度信与所述增量数据的维度名称和所述事实表名称进行匹配,获取所述增量数据的目标层次间。
可选的,所述第一获取子单元具体用于:
若获取到所述增量数据的目标层次间,则读取所述目标层次间的维度信息,其中,所述维度信息包括时间维度信息;
当读取到所述目标层次间的时间维度信息时,将所述新增日期进行聚合,生成与所述时间维度信息一致的目标新增日期;
将所述增量数据的维度名称、所述事实表名称以及所述目标新增日期作为搜索条件,获取所述增量数据的目标方块;
通过所述新增日期,对所述目标方块进行钻取,按照预置日期排列,确定所述增量数据在所述目标方块中的目标位置。
可选的,所述构建单元具体用于:
若确定所述目标位置,则获取所述目标位置的接口处,并在所述接口处构建所述增量数据的子方块;
当构建所述子方块时,添加所述增量数据的数据值以及新增日期。
可选的,所述增量构建CUBE模型的装置,还包括:
判断单元,当检测到所述接口处构建所述子方块时,用于判断所述CUBE模型是否成功构建所述子方块;
判定单元,当检测到所述CUBE模型的job处于READY、RUNNING、ERROR状态时,用于判定所述CUBE模型成功构建所述子方块。
此外,为实现上述目的,本发明还提供一种服务器,所述服务器包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的增量构建CUBE模型的程序,所述增量构建CUBE模型的程序被所述处理器执行时实现如上发明所述增量构建CUBE模型的方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有增量构建CUBE模型的程序,所述增量构建CUBE模型的程序被处理器执行时实现如上发明所述的增量构建CUBE模型的方法的步骤。
本发明实施例提出的一种增量构建CUBE模型的方法、装置、服务器及存储介质,通过在接收到检测指令时,检测对应的事实表并获取所述检测指令携带的事实表名称;若检测到事实表的增量数据,获取事实表和关联维度表中所述增量数据的属性信息;基于增量数据的属性信息和事实表名称,查询预置CUBE模型,确定增量数据的目标位置;基于确定的目标位置构建增量数据的属性信息,实现了无需人工操作,自动完成CUBE模型的增量构建,并提高了构建效率。
附图说明
图1为本发明实施例方案涉及的硬件运行环境的服务器结构示意图;
图2为本发明增量构建CUBE模型的方法第一实施例的流程示意图;
图3为本发明增量构建CUBE模型的方法第二实施例的流程示意图;
图4为本发明增量构建CUBE模型的方法第三实施例的流程示意图;
图5为图4中31的步骤的细化流程示意图;
图6为图4中32的步骤的细化流程示意图;
图7为本发明增量构建CUBE模型的方法第四实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例的主要解决方案是:通过在接收到检测指令时,检测对应的事实表并获取所述检测指令携带的事实表名称;若检测到事实表的增量数据,获取事实表和关联维度表中所述增量数据的属性信息;基于增量数据的属性信息和事实表名称,查询预置CUBE模型,确定增量数据的目标位置;基于确定的目标位置构建增量数据的属性信息。
由于现有技术,目前Cube构建增量数据只能基于人工处理,处理的过程十分不便且易出错的技术问题。
本发明提供一种解决方案,实现了无需人工操作,自动完成CUBE模型的增量构建,并提高了构建效率。
如图1所示,图1为本发明实施例方案涉及的硬件运行环境的终端结构示意图。
本发明实施例终端为服务器。
如图1所示,该终端可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及增量构建CUBE模型的程序。
在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的增量构建CUBE模型的程序,并执行以下操作:
在接收到检测指令时,检测对应的事实表并获取检测指令携带的事实表名称;
若检测到事实表的增量数据,则获取事实表和关联维度表中增量数据的属性信息;
基于增量数据的属性信息和事实表名称,查询预置CUBE模型,确定增量数据的目标位置;
基于确定的目标位置构建增量数据的属性信息。
进一步地,处理器1001可以调用存储器1005中存储的增量构建CUBE模型的程序,还执行以下操作:
若预置时长内检测到事实表的新增分割时间列,则将新增分割时间列中的数据作为增量数据,并获取事实表中增量数据的维度名称、数据值和新增日期;
在获取到增量数据的维度名称时,通过索引事实表名称的关联维度表,获取关联维度表中所述增量数据的维度层次结构信息,其中,维度层次结构信息中包括增量数据的维度名称以及层次级别。
进一步地,处理器1001可以调用存储器1005中存储的增量构建CUBE模型的程序,还执行以下操作:
基于增量数据的维度层次结构信息和所述事实表名称,查询预置CUBE模型,获取增量数据的目标层次间;
当获取到目标层次间时,通过增量数据的维度名称、事实表名称以及增量数据的新增日期,获取增量数据的目标位置。
进一步地,处理器1001可以调用存储器1005中存储的增量构建CUBE模型的程序,还执行以下操作:
在获取到增量数据的维度层次结构信息时,获取增量数据的维度名称在维度层次结构信息中的层次级别;
当查询预置CUBE模型时,获取与层次级别对应的多个层次间的维度信息;
将获取到的多个所述层次间的维度信与增量数据的维度名称和事实表名称进行匹配,获取增量数据的目标层次间。
进一步地,处理器1001可以调用存储器1005中存储的增量构建CUBE模型的程序,还执行以下操作:
若获取到增量数据的目标层次间,则读取目标层次间的维度信息,其中,维度信息包括时间维度信息;
当读取到目标层次间的时间维度信息时,将新增日期进行聚合,生成与时间维度信息一致的目标新增日期;
将增量数据的维度名称、事实表名称以及目标新增日期作为搜索条件,获取增量数据的目标方块;
通过新增日期,对目标方块进行钻取,按照预置日期排列,确定增量数据在目标方块中的目标位置。
进一步地,处理器1001可以调用存储器1005中存储的增量构建CUBE模型的程序,还执行以下操作:
若确定目标位置,则获取目标位置的接口处,并在接口处构建增量数据的子方块;
当构建子方块时,添加增量数据的数据值以及新增日期。
进一步地,处理器1001可以调用存储器1005中存储的增量构建CUBE模型的程序,还执行以下操作:
当检测到接口处构建子方块时,判断CUBE模型是否成功构建子方块;
当检测到CUBE模型的job处于READY、RUNNING、ERROR状态时,判定CUBE模型成功构建子方块。
参照图2,本发明为增量构建CUBE模型的方法的第一实施例,该增量构建CUBE模型的方法包括:
步骤S10,在接收到检测指令时,检测对应的事实表并获取检测指令携带的事实表名称;
服务器在接收到检测指令时,分析该检测指令,实时或定时检测该检测指令对应的事实表,并获取检测指令携带的事实表名称。事实表通常包含业务销售数据,如现金登记事务所产生的数据,且包含大量的行。事实表的主要特点是包含数字数据(事实),并且这些数字信息可以汇总,以提供有关单位作为历史的数据,每个事实数据表包含一个由多个部分组成的索引,该索引包含作为外键的相关性维度表的主键。具体的,预先在服务器中设置检测事实表的时刻,例如每天的8:00定时检测事实表,或者实时对事实表进行检测。
步骤S20,若检测到事实表的增量数据,则获取事实表和关联维度表中增量数据的属性信息;
服务器在检测到事实表中的数据时,将当前检测到事实表中的数据与上一次检测到事实表中的数据进行对比,将当前事实表中新增的数据作为当前事实表的增量数据,获取该增量数据的在事实表和维度表中的属性信息。维度表包含事实记录的特性,有些特性提供描述性信息,有些特性指定如何汇总事实数据表数据,以便为分析者提供有用的信息,维度表包含帮助汇总数据的特性的层次结构。具体为,服务器在检测到事实表中的增量数据时,获取该增量数据在事实表中记录的维度名称、维度值以及新增日期等,并调取该事实表关联的维度表,获取增量数据在维度表中的层次结构信息,层次结构信息包括该增量数据的维度名称所处的层次级别以及该层次结构中各个层次的维度名称。
步骤S30,基于增量数据的属性信息和事实表名称,查询预置CUBE模型,确定增量数据的目标位置;
服务器在获取到增量数据在事实表中记录的维度名称、维度值以及新增日期以及增量数据在维度表中的层次结构信息时,查询预置CUBE模型,CUBE模型也叫数据立方体,是一类多维矩阵,可以从多个角度探索和分析数据集,通常是一次同时考虑三个因素(维度)。当从一堆数据中提取信息时需要工具来找到那些有关联的和重要的信息,以及不同的情景。一份报告,不管是印在纸上的还是出现在屏幕上,都是数据的二维表示,是行和列构成的表格但只能满足两个因素。数据立方体是二维表格的多维扩展,如同几何学中立方体是正方形的三维扩展一样。但是数据立方体不局限于三个维度。大多数在线分析处理能用很多个维度构建数据立方体,例如,微软的SQL Server 2000Analysis Services工具允许维度数高达64个。服务器根据获取到增量数据的属性信息,查询数据立方体的各个层次间,获取各个层次间的维度信息,基于增量数据的属性信息确定该增量数据在数据立方体的目标位置,例如通过增量数据的维度层次结构信息和事实表名称,对数据立方体的第一层次间的维度信息进行匹配,再对第一层次间的下一维第二层次间的维度信息进行匹配,直至获取到增量数据的目标层次间,数据立方体是由每一层次间中的各个方块堆叠起来的,再通过增量数据的日期,获取到目标层次间中的目标方块,确定增量数据在目标方块中的目标位置。
步骤S40,基于确定的目标位置构建增量数据的属性信息。
服务器在确定目标位置时,在目标位置处构建一个子方块,子方块为数据立方体中的层次面上的子方块,在维度的层次结构过高时,数据立方体包含多个层次面,且子方块中包含各个数据的数据值或日期等。在构建立子方块时,将增量数据的属性信息插入到该目标子方块中。
在本实施例中,服务器在接收到检测指令时,检测对应的事实表并获取检测指令携带的事实表名称,若检测到事实表的增量数据,则获取增量数据在事实表和关联维度表中的属性信息,通过该属性信息和维度表名称查询预置CUBE模型,确定增量数据在预置CUBE模型中的具体位置,并在该位置出构建增量数据的属性信息,避免了人工查找CUBE模型,进行增量构建,减少了时间,实现了CUBE模型的自动增减功能。
进一步的,参照图3,图3为本发明增量构建CUBE模型的方法第二实施例,基于上述图2所示的实施例,步骤S20包括:
步骤S21,若预置时长内检测到事实表的新增分割时间列,则将新增分割时间列中的数据作为增量数据,并获取事实表中增量数据的维度名称、数据值和新增日期;
步骤S22,在获取到增量数据的维度名称时,通过索引事实表名称的关联维度表,获取维度表中增量数据的维度层次结构信息,其中,维度层次结构信息中包括增量数据的维度名称以及层次级别。
服务器在预置时长内检测到事实表中的新增时间分割列,时间分割列为数据在预置时长内在事实表中建立分割时间列,服务器在分割时间列中获取增量数据,具体为,服务器在2018年1月1号的00:00-23:59内获取到事实表中的新增时间分割列时,将新增时间分割列中的数据作为增量数据,并获取到该新增时间列的维度名称、数据值、新增日期,其中新增日期为事实表添加新增时间分割列的日期。
服务器在获取到事实表名称时,通过索引事实表名称关联的维度表,每一个事实表关联一个维度表或多个维度表,维度表中记录维度名称的层次级别以及各个级别的维度名称等信息。服务器获取到增量数据的维度名称在关联维度表中各个维度名称的位置或者是连接式等,通过各个维度名称的位置或者是连接式,获取到各个维度名称的维度关系,从而获取到增量数据的维度名称在该维度层次结构信息中的层次级别,例如,服务器在关联维度表中获取到相邻的两个维度名称时,将上一行的维度名称作为下一行维度名称的上一维,或者,将左边的维度名称作为右边的维度名称的上一维等等,或者通过预置连接式,获取到连接式中的维度关系,从而获取到增量数据的维度层次结构信息。
在本实施例中,服务器检测到事实表的新增分割时间列,将新增分割时间列中的数据作为增量数据,获取该增量数据在事实表中的维度名称、数据值以及新增日期,通过事实表名称,获取到该增量数据的维度名称在关联维度表中的层次结构信息,将事实表与维度表进行关联,方便快速的获取到增量数据的属性信息。
参照图4,图4为本发明增量构建CUBE模型的方法第三实施例,基于上述图2所示的实施例,步骤S30包括:
步骤S31,基于增量数据的维度层次结构信息和事实表名称,查询预置CUBE模型,获取增量数据的目标层次间;
步骤S32,当获取到目标层次间时,通过增量数据的维度名称、事实表名称以及增量数据的新增日期,获取增量数据的目标位置。
服务器通过获取到增量数据的维度层次结构信息和事实表名称,查询预置CUBE模型,从而获取到该增量数据在预置CUBE模型的目标层次间,CUBE模型包括多个层次间进行堆叠,由维度来区分上下层关系,且每个层次间包括多个方块。预置CUBE模型根据数据的维度,将数据存放于不同的层次间进行存储。具体为,服务器获取到增量数据的维度层次机构信息中各个维度名称以及各个维度名称的层次级别,其中,各个维度名称包括增量数据的维度名称。通过第一层次级别的维度名称和事实表名称对预置CUBE模型进行查询,例如,服务器在获取到第一层次级别名称机构1、事实表名称上海,通过查询预置CUBE模型,获取到预置CUBE模型第一层次间的各个维度名称,将获取到机构1、上海与第一层次间的各个维度名称进行匹配,从而确定机构1在第一层次间的方块,再对该方块进行钻取,获取到预置CUBE模型第二层次间的各个维度信息,服务器获取第二级别的维度名称业务1,将业务1与上海与第二层次间中的各个维度信息进行匹配,从而确定增量数据在预置CUBE模型的目标层次间,还包括,在预置CUBE模型中建立空间坐标系,将时间维度作为X轴、类型维度作为Y轴、地区维度作为Z轴,从而确定机构1对应的目标层次间。
当服务器确定目标层次间时,通过增量数据的维度名称、事实表名称以及增量数据的新增日期确定该增量数据在目标层次间中的目标位置,具体为时间维度作为X轴、类型维度作为Y轴、地区维度作为Z轴,通过增量数据的维度名称、事实表名称以及增量数据的新增日期在目标层次间中进行定位,获取到增量数据的目标位置。
在本实施例中,服务器通过获取到增量数据的维度层次结构信息和事实表名称,查询预置CUBE模型,从而获取到该增量数据在预置CUBE模型的目标层次间,通过增量数据的维度名称、事实表名称以及增量数据的新增日期确定该增量数据在目标层次间中的目标位置,从而不需要用户对预置CUBE模型进行人工查找,提高了工作效率,节约了人工成本。
参照图5,图5为图4中步骤S31的细化流程示意图,步骤S31包括:
步骤S311,在获取到增量数据的维度层次结构信息时,获取增量数据的维度名称在维度层次结构信息中的层次级别;
步骤S312,当查询预置CUBE模型时,获取与层次级别对应的多个层次间的维度信息;
步骤S313,将获取到的多个所述层次间的维度信与增量数据的维度名称和事实表名称进行匹配,获取增量数据的目标层次间。
服务器在获取到增量数据的维度层次结构信息时,获取增量数据的维度名称在该维度层次结构中的层次级别,具体为,服务器在获取到增量数据的维度层次结构信息的层次结构式,获取各个层次级别的维度名称,例如,层次结构式为机构维度1-业务维度1-口径维度1-场景维度1-分析维度1,增量数据的维度名称为分析维度1,从而确定分析维度1为该维度层次结构中的第五级别。当服务器查询预置CUBE模型时,获取预置CUBE模型中与该维度层次结构中对应的层次间,获取到该层次间中的各个维度信息,其中,层次间为多个,例如,服务器在获取到分析维度1为该维度层次结构中的第五级别时,查询预置CUBE模型,获取到预置CUBE模型的多个第五层次间,并获取每一个第五层次间中的维度信息。在获取到每一个第五层次间中的维度信息,将增量数据的维度名称和事实表名称一一与多个层次间的维度信息进行匹配,获取增量数据的目标层次间,该目标层次间至少为一个。
在本实施例中,服务器在获取到增量数据的维度层次结构信息时,获取增量数据的维度名称在该维度层次结构中的层次级别,查询预置CUBE模型,获取预置CUBE模型中与该维度层次结构中对应的多个层次间,并获取多个层次间中的各个维度信息,将获取到的多个层次间的维度信与增量数据的维度名称和事实表名称进行匹配,获取增量数据的目标层次间,该目标层次间至少为一个,通过增量数据的层次级别以及增量数据的维度名称和事实表名称,快速的获取到增量数据所在的目标层次间。
参照图6,图6为图4中步骤S32的细化流程示意图,步骤S32包括:
步骤S321,若获取到增量数据的目标层次间,则读取目标层次间的维度信息,其中,维度信息包括时间维度信息;
步骤S322,当读取到目标层次间的时间维度信息时,将新增日期进行聚合,生成与时间维度信息一致的目标新增日期;
步骤S323,将增量数据的维度名称、事实表名称以及目标新增日期作为搜索条件,获取增量数据的目标方块;
步骤S324,通过新增日期,对目标方块进行钻取,按照预置日期排列,确定增量数据在目标方块中的目标位置。
服务器在获取到增量数据的目标层次间时,读取该目标层次间的维度信息,其中,维度信息包括时间维度信息,当服务器读取到目标层次间的时间维度信息时,将增量数据的新增日期进行聚合,生成与该时间维信息一致的目标新增日期,具体为,当服务器读取到目标层次间的时间维度信息为2019年时,新增日期为2019年3月1日时,基于时间维度2019年,将新增日期聚合为2019年;当目标层次间为多个时,获取各个目标层次间的时间维度信息2017年、2018年、2019年,也需要新增日期为2019年3月1日聚合为2019年,在获取到聚合后的目标新增日期时,将增量数据的维度名称、事实表名称以及目标新增日期作为搜索条件,获取增量数据在该目标层次间的目标方块。具体为,将该目标层次间作为一个空间坐标系,将时间作为X轴,数据的维度名称作为Z轴、所属事实表的名称作为Y轴,通过增量数据的维度名称、事实表名称以及目标新增日期,获取到该增量数据在目标层次间的目标方块。服务器在获取到目标方块时,通过新增日期将该目标方块的时间维度进行钻取,按照预置日期排列,确定增量数据在目标方块的目标位置,具体为,在获取到目标方块的时间维度信息为2019年的第一季度时,通过增量数据的新增日期2019年3月1日对目标方块的时间维度信息2019年第一季度进行钻取,确定增量数据在目标方块的目标位置。
在本实施例中,服务器在获取到增量数据的目标层次间时,读取该目标层次间的维度信息,其中,维度信息包括时间维度信息,当服务器读取到目标层次间的时间维度信息时,将增量数据的新增日期进行聚合,生成与该时间维信息一致的目标新增日期,将增量数据的维度名称、事实表名称以及目标新增日期作为搜索条件,获取增量数据在该目标层次间的目标方块,通过新增日期将该目标方块的时间维度进行钻取,按照预置日期排列,确定增量数据在目标方块的目标位置,通过对日期的聚合以及对时间维的钻取,快速确定增量数据在预置CUBE模型中的目标位置。
参照图7,图7为本发明增量构建CUBE模型的方法第四实施例,基于上述图2所示的实施例,步骤S40包括:
步骤S41,若确定目标位置,则获取目标位置的接口处,并在接口处构建所述增量数据的子方块;
步骤S42,当构建子方块时,添加增量数据的数据值以及新增日期。
服务器在确定增量数据在预置CUBE模型中的目标位置时,获取目标位置的接口处,接口处的作用是连接上一维。服务器在该接口处构建增量数据的子方块,具体为,子方块为数据立方体中的子方块,在维度的层次结构过高时,数据立方体包含多个层次面,且子方块中包含各个数据的数据值或日期等,当检测到子方块构建成功时将增量数据的数据值以及新增日期插入到该子方块中。
此外,本发明实施例还提出一种服务器,服务器包括:存储器、处理器及存储在存储器上并可在所述处理器上运行的增量构建CUBE模型的程序,增量构建CUBE模型的程序被所述处理器执行时实现如熵实施例的增量构建CUBE模型的方法的步骤。
此外,本发明实施例还提出一种计算机可读存储介质,计算机可读存储介质上存储有增量构建CUBE模型的程序,增量构建CUBE模型的程序被处理器执行时实现如上实施例的增量构建CUBE模型的方法的步骤。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (9)
1.一种增量构建CUBE模型的方法,其特征在于,所述增量构建CUBE模型的方法包括:
在接收到检测指令时,检测对应的事实表并获取所述检测指令携带的事实表名称;所述检测为实时或定时检测所述检测指令对应的事实表;所述定时检测包括预先在服务器中设置检测所述事实表的时刻;
若检测到所述事实表的增量数据,则获取所述事实表和关联维度表中所述增量数据的属性信息;
基于所述增量数据的属性信息和所述事实表名称,查询预置CUBE模型,确定所述增量数据的目标位置;
基于确定的所述目标位置构建所述增量数据的属性信息;
所述基于确定的所述目标位置构建所述增量数据的属性信息包括:若确定所述目标位置,则获取所述目标位置的接口处,并在所述接口处构建所述增量数据的子方块;当构建所述子方块时,添加所述增量数据的数据值以及新增日期。
2.如权利要求1所述的增量构建CUBE模型的方法,其特征在于,所述若检测到所述事实表的增量数据,则获取所述事实表和关联维度表中所述增量数据的属性信息包括:
若预置时长内检测到所述事实表的新增分割时间列,则将所述新增分割时间列中的数据作为增量数据,并获取所述事实表中增量数据的维度名称、数据值和新增日期;
在获取到所述增量数据的维度名称时,通过索引所述事实表名称的关联维度表,获取所述关联维度表中所述增量数据的维度层次结构信息,其中,所述维度层次结构信息中包括所述增量数据的维度名称以及层次级别。
3.如权利要求2所述的增量构建CUBE模型的方法,其特征在于,所述基于所述增量数据的属性信息和所述事实表名称,查询预置CUBE模型,获取所述增量数据的目标位置包括:
基于所述增量数据的维度层次结构信息和所述事实表名称,查询预置CUBE模型,获取所述增量数据的目标层次间;
当获取到所述目标层次间时,通过所述增量数据的维度名称、事实表名称以及所述增量数据的新增日期,获取所述增量数据的目标位置。
4.如权利要求3所述的增量构建CUBE模型的方法,其特征在于,所述基于所述增量数据的维度层次结构信息和事实表名称时,查询预置CUBE模型,获取所述增量事实表的目标层次间包括:
在获取到所述增量数据的维度层次结构信息时,获取所述增量数据的维度名称在所述维度层次结构信息中的层次级别;
当查询所述预置CUBE模型时,获取与所述层次级别对应的多个层次间的维度信息;
将获取到的多个所述层次间的维度信与所述增量数据的维度名称和所述事实表名称进行匹配,获取所述增量数据的目标层次间。
5.如权利要求3所述的增量构建CUBE模型的方法,其特征在于,所述当获取到所述目标层次间时,通过所述增量数据的维度名称、事实表名称以及所述增量数据的新增日期,确定所述增量数据的目标位置包括:
若获取到所述增量数据的目标层次间,则读取所述目标层次间的维度信息,其中,所述维度信息包括时间维度信息;
当读取到所述目标层次间的时间维度信息时,将所述新增日期进行聚合,生成与所述时间维度信息一致的目标新增日期;
将所述增量数据的维度名称、所述事实表名称以及所述目标新增日期作为搜索条件,获取所述增量数据的目标方块;
通过所述新增日期,对所述目标方块进行钻取,按照预置日期排列,确定所述增量数据在所述目标方块中的目标位置。
6.如权利要求1所述的增量构建CUBE模型的方法,其特征在于,所述获取所述目标位置的接口处,并在所述接口处构建所述增量数据的子方块之后还包括:
当检测到所述接口处构建所述子方块时,判断所述CUBE模型是否成功构建所述子方块;
当检测到所述CUBE模型的job处于READY、RUNNING、ERROR状态时,判定所述CUBE模型成功构建所述子方块。
7.一种增量构建CUBE模型的装置,其特征在于,所述CUBE模型自动构建增量数据的装置包括:
检测单元,用于在接收到检测指令时,检测对应的事实表并获取所述检测指令携带的事实表名称;所述检测为实时或定时检测所述检测指令对应的事实表;所述定时检测包括预先在服务器中设置检测所述事实表的时刻;
获取单元,用于若检测到所述事实表的增量数据,则获取所述事实表和关联维度表中所述增量数据的属性信息;
查询单元,用于基于所述增量数据的属性信息和所述事实表名称,查询预置CUBE模型,确定所述增量数据的目标位置;
构建单元,用于基于确定的所述目标位置构建所述增量数据的属性信息;
所述构建单元,还用于若确定所述目标位置,则获取所述目标位置的接口处,并在所述接口处构建所述增量数据的子方块;当构建所述子方块时,添加所述增量数据的数据值以及新增日期。
8.一种服务器,其特征在于,所述服务器包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的增量构建CUBE模型的程序,所述增量构建CUBE模型的程序被所述处理器执行时实现如权利要求1至6中任一项所述增量构建CUBE模型的方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有增量构建CUBE模型的程序,所述增量构建CUBE模型的程序被处理器执行时实现如权利要求1至6中任一项所述的增量构建CUBE模型的方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910592045.5A CN110442653B (zh) | 2019-07-03 | 2019-07-03 | 增量构建cube模型的方法、装置、服务器及存储介质 |
PCT/CN2019/119076 WO2021000500A1 (zh) | 2019-07-03 | 2019-11-18 | 增量构建cube模型的方法、装置、服务器及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910592045.5A CN110442653B (zh) | 2019-07-03 | 2019-07-03 | 增量构建cube模型的方法、装置、服务器及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110442653A CN110442653A (zh) | 2019-11-12 |
CN110442653B true CN110442653B (zh) | 2023-09-29 |
Family
ID=68428460
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910592045.5A Active CN110442653B (zh) | 2019-07-03 | 2019-07-03 | 增量构建cube模型的方法、装置、服务器及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110442653B (zh) |
WO (1) | WO2021000500A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110442653B (zh) * | 2019-07-03 | 2023-09-29 | 平安科技(深圳)有限公司 | 增量构建cube模型的方法、装置、服务器及存储介质 |
CN111026817B (zh) * | 2019-12-09 | 2023-11-28 | 北京中电普华信息技术有限公司 | 一种多维计算方法及装置 |
CN111143412A (zh) * | 2019-12-24 | 2020-05-12 | 中科金审(北京)科技有限公司 | 数据对比方法、装置、计算机及计算机可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101197876A (zh) * | 2006-12-06 | 2008-06-11 | 中兴通讯股份有限公司 | 一种对消息类业务数据进行多维分析的方法和系统 |
CN106095859A (zh) * | 2016-06-02 | 2016-11-09 | 成都淞幸科技有限责任公司 | 基于olam的多维度中医针灸关联规则挖掘方法 |
CN106202408A (zh) * | 2016-07-11 | 2016-12-07 | 华北电力大学(保定) | 基于olap的数据查询服务器、系统和方法 |
CN108334554A (zh) * | 2017-12-29 | 2018-07-27 | 上海跬智信息技术有限公司 | 一种新型的olap预计算模型及构建方法 |
CN108614818A (zh) * | 2016-12-09 | 2018-10-02 | 杭州海康威视数字技术股份有限公司 | 一种数据存储、更新和查询方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7716167B2 (en) * | 2002-12-18 | 2010-05-11 | International Business Machines Corporation | System and method for automatically building an OLAP model in a relational database |
US10762072B2 (en) * | 2017-01-30 | 2020-09-01 | International Business Machines Corporation | Processing messages of a plurality of devices |
CN108874858A (zh) * | 2018-04-13 | 2018-11-23 | 南京中物联科技有限公司 | 一种云环境下构建与查询数据立方体的系统及其方法 |
CN110442653B (zh) * | 2019-07-03 | 2023-09-29 | 平安科技(深圳)有限公司 | 增量构建cube模型的方法、装置、服务器及存储介质 |
-
2019
- 2019-07-03 CN CN201910592045.5A patent/CN110442653B/zh active Active
- 2019-11-18 WO PCT/CN2019/119076 patent/WO2021000500A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101197876A (zh) * | 2006-12-06 | 2008-06-11 | 中兴通讯股份有限公司 | 一种对消息类业务数据进行多维分析的方法和系统 |
CN106095859A (zh) * | 2016-06-02 | 2016-11-09 | 成都淞幸科技有限责任公司 | 基于olam的多维度中医针灸关联规则挖掘方法 |
CN106202408A (zh) * | 2016-07-11 | 2016-12-07 | 华北电力大学(保定) | 基于olap的数据查询服务器、系统和方法 |
CN108614818A (zh) * | 2016-12-09 | 2018-10-02 | 杭州海康威视数字技术股份有限公司 | 一种数据存储、更新和查询方法及装置 |
CN108334554A (zh) * | 2017-12-29 | 2018-07-27 | 上海跬智信息技术有限公司 | 一种新型的olap预计算模型及构建方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110442653A (zh) | 2019-11-12 |
WO2021000500A1 (zh) | 2021-01-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110442653B (zh) | 增量构建cube模型的方法、装置、服务器及存储介质 | |
US6925462B2 (en) | Database management system, and query method and query execution program in the database management system | |
US7406477B2 (en) | Database system with methodology for automated determination and selection of optimal indexes | |
US7756889B2 (en) | Partitioning of nested tables | |
CN106407360B (zh) | 一种数据的处理方法及装置 | |
CN109117440B (zh) | 一种元数据信息获取方法、系统和计算机可读存储介质 | |
CN108388640B (zh) | 一种数据转换方法、装置以及数据处理系统 | |
US20080046455A1 (en) | Query feedback-based configuration of database statistics | |
CN112667697A (zh) | 结合rpa和ai的房产信息的获取方法及装置 | |
CN110928903B (zh) | 数据提取方法及装置、设备和存储介质 | |
CN108713136B (zh) | 物质检测方法、装置、电子设备及计算机可读存储介质 | |
WO2021057383A1 (zh) | 日志查询方法、装置、设备及计算机可读存储介质 | |
CN110659282A (zh) | 数据路由的构建方法、装置、计算机设备和存储介质 | |
CN111190792A (zh) | 一种日志存储的方法、装置、电子设备及可读存储介质 | |
CN112307191A (zh) | 多系统交互式日志查询方法、装置、设备及存储介质 | |
CN111125213A (zh) | 数据采集的方法、装置及其系统 | |
CN110928900B (zh) | 多表数据的查询方法、装置、终端以及计算机存储介质 | |
CN101393624A (zh) | 对物料清单进行操作实现生产管理的方法及装置 | |
CN111092879B (zh) | 日志关联方法及装置、电子设备、存储介质 | |
CN107291951B (zh) | 数据处理方法、装置、存储介质和处理器 | |
CN111966725A (zh) | 一种应用于内外网间的数据获取方法、装置及电子设备 | |
CN107239454B (zh) | 基于文本数据库的检索方法及系统 | |
CN111949845A (zh) | 处理测绘信息的方法、装置、计算机设备和存储介质 | |
US20180075006A1 (en) | System and method for logical identification of differences between spreadsheets | |
EP1555609A1 (en) | Data processing method and data processing program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |