多维数据的数据分析方法、数据分析装置和数据分析系统与流程

文档序号:36240483发布日期:2023-12-02 00:42阅读:34来源:国知局
多维数据的数据分析方法与流程

本发明涉及数据处理领域,具体而言,涉及一种多维数据的数据分析方法、数据分析装置、计算机可读存储介质和数据分析系统。


背景技术:

1、联机分析处理(online analytical processing,olap)系统是数据仓库系统最主要的应用,专门用于支持复杂的分析操作,侧重对决策人员和高层管理人员的决策支持。olap系统按照其存储器的数据存储格式可以分为关系olap(relationalolap,rolap)、多维olap(multidimensionalolap,molap)和混合型olap(hybridolap,holap)三种类型。其中,molap将olap分析所用到的多维数据物理上存储为多维数组的形式,形成“立方体”的结构。molap操作包括:下钻(drill-down)、上卷(roll-up)、切片(slice)、切块(dice)以及旋转(pivot)。

2、基于海量数据的molap多维分析,首先要解决的是大数据量的计算问题。第二个是维度的问题,多维分析常常需要多十多个维度上进行分析,并且维度之间需要组合进行分析,这就导致大数据量级的计算任务剧增。第三个是无法保证多维分析查询结果的时效性。

3、现有技术只是考虑了如何构建数据模型及设置维度和度量,没有考虑的维度的个数对后续的影响。现有技术都会对每一个维度之间进行组合,进行预计算,并将结果保存在数据库或分布式存储中。假设有4个维度,那维度组合只有2^4=16中形式。但实际情况中,多维分析的维度数量一般远远大于4个。假设有20个维度,那维度组合就有2^20=1048576个,这种数量级的维度组合,对数据计算、存储都会是巨大的压力。


技术实现思路

1、本技术的主要目的在于提供一种多维数据的数据分析方法、数据分析装置、计算机可读存储介质和数据分析系统,以至少解决现有技术中对数据模型进行数据分析时对所有维度进行维度组合导致计算量过大,占用资源过多的问题。

2、为了实现上述目的,根据本技术的一个方面,提供了一种多维数据的数据分析方法,包括:获取目标数据表,并对所述目标数据表进行分析得到事实表和多个维度表,所述目标数据表为待数据分析的数据表,所述事实表用于存储事件记录,所述维度表用于存储所述事实表中所述事件记录的特性;根据所述事实表和各所述维度表分析得到多个维度字段和多个度量字段,所述维度字段为用于描述所述事件记录特性的字段,所述度量字段为所述事件记录中的数值的字段,一个所述维度字段对应一个所述度量字段;对各所述维度字段进行分析确定各所述维度字段之间的第一关联类型并根据所述第一关联类型对所述维度字段进行组合得到多个第一维度组,所述第一关联类型包括相似字段、互斥字段和无关联字段,所述第一维度组中任意两个所述维度字段之间的所述第一关联类型不为所述相似字段或所述互斥字段;将与各所述第一维度组中的所述维度字段对应的所述度量字段添加至对应的所述第一维度组得到多个第二维度组,并根据各所述第二维度组构建对应数据模型得到多个立方体;对各立方体进行数据分析得到多个数据分析结果。

3、可选地,根据所述事实表和各所述维度表分析得到多个维度字段和多个度量字段,包括:对所述事实表和各所述维度表中的字段进行对比,得到多个关联字段和无意义字段,所述关联字段为所述维度表中与所述事实表中相同的字段,所述无意义字段为所述事实表和所述维度表中用于表征系统状态控制和配置控制的字段;根据各所述维度表中所述关联字段的占比确定所述维度表与所述事实表的第二关联类型,所述第二关联类型包括内关联、左外关联、右外关联和全外关联,所述第二关联类型与所述维度表一一对应;删除所述事实表和各所述维度表中的所述无意义字段,并根据所述事实表、各所述维度表和各所述第二关联类型构建星型数据模型;对所述星型数据模型中的各所述字段进行分析,得到多个所述维度字段和所述度量字段。

4、可选地,对各所述维度字段进行分析确定各所述维度字段之间的第一关联类型,包括:对各所述维度字段进行语义分析,将对应语义相似度超出第一阈值的所述维度字段之间的第一关联类型确定为所述相似字段;查阅预设信息表得到对应所述第一关联类型为所述互斥字段的所述维度字段,所述预设信息表包括数据分析需求中不进行组合的所述维度字段;将所述第一关联类型不是所述相似字段和所述互斥字段的所述维度字段之间的所述第一关联类型确定为无关联字段。

5、可选地,根据所述第一关联类型对所述维度字段进行组合得到多个第一维度组,包括:对各所述维度字段进行分析并将对应同一所述特性的所述维度字段归类为同一层级得到多个维度层次;根据所述第一关联类型和所述维度层次对所述维度字段进行组合得到多个所述第一维度组,所述第一维度组中任意两个所述维度字段不处于同一所述维度层次。

6、可选地,将与各所述第一维度组中的所述维度字段对应的所述度量字段添加至对应的所述第一维度组得到多个第二维度组,并根据各所述第二维度组构建对应数据模型得到多个立方体,包括:获取步骤,获取多个目标关联字段,所述目标关联字段为与目标第一维度组中所述维度字段存在相同的字段的所述关联字段,所述目标第一维度组为所述第一维度组中的任意一个;确定步骤,根据各所述目标关联字段确定目标度量字段,所述目标度量字段为存在与所述关联字段相同字段的所述度量字段;整合步骤,将多个所述目标度量字段添加至所述目标第一维度组得到所述第二维度组;依次重复所述获取步骤、所述确定步骤和所述整合步骤至少一次,直至得到所有所述第二维度组;根据各所述第二维度组中的所述维度字段和所述度量字段设置对应运算函数得到多个度量函数,所述度量函数包括求和、求最小值、求最大值、求平均值、计数、求标准差和求方差;根据各所述第二维度组和对应的所述度量函数构建数据模型得到对应的所述立方体。

7、可选地,对各立方体进行数据分析得到多个数据分析结果,包括:第一构建步骤,根据目标立方体中的所述维度字段构建分组sql语句,所述目标立方体为所述立方体中的任意一个;第二构建步骤,根据所述目标立方体中的所述度量函数构建取值sql语句;组合步骤,对所述分组sql语句和所述取值sql语句进行组合得到对应的目标sql语句;依次重复所述第一构建步骤、所述第二构建步骤和所述组合步骤至少一次,直到得到所有所述立方体对应的所述目标sql语句;依次执行各所述目标sql语句得到各所述立方体对应的所述数据分析结果。

8、可选地,在对各立方体进行数据分析得到多个数据分析结果之后,所述方法还包括:对各所述维度字段进行排序得到与各所述维度字段对应的序列号;根据各所述立方体中所述维度字段对各所述序列号设置对应的标识信息,所述标识信息用于表征所述序列号对应的所述维度字段是否存在于所述立方体;根据所述标识信息生成第一行键值,根据所述数据分析结果生成第二行键值;对所述第一行键值与所述第二行键值进行组合得到目标行键值,并将所述目标行键值存储至分布式集群中对应位置。

9、根据本技术的另一方面,提供了一种多维数据的数据分析装置,所述装置包括:获取单元,用于获取目标数据表,并对所述目标数据表进行分析得到事实表和多个维度表,所述目标数据表为待数据分析的数据表,所述事实表用于存储事件记录,所述维度表用于存储所述事实表中所述事件记录的特性;第一分析单元,用于根据所述事实表和各所述维度表分析得到多个维度字段和多个度量字段,所述维度字段为用于描述所述事件记录特性的字段,所述度量字段为所述事件记录中的数值的字段,一个所述维度字段对应一个所述度量字段;第二分析单元,用于对各所述维度字段进行分析确定各所述维度字段之间的第一关联类型并根据所述第一关联类型对所述维度字段进行组合得到多个第一维度组,所述第一关联类型包括相似字段、互斥字段和无关联字段,所述第一维度组中任意两个所述维度字段之间的所述第一关联类型不为所述相似字段或所述互斥字段;构建单元,用于将与各所述第一维度组中的所述维度字段对应的所述度量字段添加至对应的所述第一维度组得到多个第二维度组,并根据各所述第二维度组构建对应数据模型得到多个立方体;第三分析单元,用于对各立方体进行数据分析得到多个数据分析结果。

10、根据本技术的再一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的程序,其中,在所述程序运行时控制所述计算机可读存储介质所在设备执行任意一种所述的方法。

11、根据本技术的又一方面,提供了一种数据分析系统,包括:一个或多个处理器,存储器,以及一个或多个程序,其中,所述一个或多个程序被存储在所述存储器中,并且被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行任意一种所述的方法。

12、应用本技术的技术方案,在上述多维数据的数据分析办法中,首先,获取目标数据表,并对上述目标数据表进行分析得到事实表和多个维度表,上述目标数据表为待数据分析的数据表,上述事实表用于存储事件记录,上述维度表用于存储上述事实表中上述事件记录的特性;然后,根据上述事实表和各上述维度表分析得到多个维度字段和多个度量字段,上述维度字段为用于描述上述事件记录特性的字段,上述度量字段为上述事件记录中的数值的字段,一个上述维度字段对应一个上述度量字段;之后,对各上述维度字段进行分析确定各上述维度字段之间的第一关联类型并根据上述第一关联类型对上述维度字段进行组合得到多个第一维度组,上述第一关联类型包括相似字段、互斥字段和无关联字段,上述第一维度组中任意两个上述维度字段之间的上述第一关联类型不为上述相似字段或上述互斥字段;之后,将与各上述第一维度组中的上述维度字段对应的上述度量字段添加至对应的上述第一维度组得到多个第二维度组,并根据各上述第二维度组构建对应数据模型得到多个立方体;最后,对各立方体进行数据分析得到多个数据分析结果。本技术针对数据模型中的维度字段进行含义分析,确定在数据分析中功能相似的字段为相似字段,不应该同时进行分析的字段为互斥字段,在维度组合时设置互为相似字段和互斥字段的维度和对应度量不存在于同一组合中,极大减少了不必要的维度组合,解决了现有技术中对数据模型进行数据分析时对所有维度进行维度组合导致计算量过大,占用资源过多的问题。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1