一种大数据多维分析计算效率提升方法及系统技术方案

技术编号:22075594 阅读:65 留言:0更新日期:2019-09-12 14:06
本发明专利技术公开了一种大数据多维分析计算效率提升方法,包括以下过程:确定某一业务场景的事实表和维度表,以及不同维度下的统计指标类型;将事实表与维度表进行关联构建数据模型;根据数据模型设计数据立方体Cube;针对Cube计算获得不同维度的统计指标;将统计指标值存储至HBase;当查询此业务场景的不同维度下统计指标时,直接查询HBase中存储的统计指标值。本发明专利技术基于大数据平台的计算能力和存储能力,快速构建数据立方体Cube,并将数据立方体存储在Key‑value数据库HBase中,有效解决了大数据中OLAP延迟高的问题,提高了运行效率,提升了业务应用服务质量。

An Efficiency Improvement Method and System for Large Data Multidimensional Analysis and Computation

【技术实现步骤摘要】
一种大数据多维分析计算效率提升方法及系统
本专利技术属于大数据分析
,具体涉及一种大数据多维分析计算效率提升方法及系统。
技术介绍
随着电网运行信息化、数字化推进,积累的数据量持续增长。对积累的海量数据进行多维度分析有迫切需求。但是传统的OLAP(联机分析处理)技术难以满足效率要求,需要基于大数据平台实现数十亿级别的数据的OLAP分析。但是直接采用大数据Map/Reduce技术也是很难保证计算效率,如直接采用Hive数据仓库,存在延迟较高、计算资源占用高的缺点。尤其在集中生成月度、季度、年度报表的时候,需要运行非常多的用来产生报表的SQL脚本,此时对大数据平台的运行效率有较明显的影响,极有可能导致部分任务失败。
技术实现思路
本专利技术的目的在于克服现有技术的不足,提供了一种大数据多维分析计算效率提升方法,解决了现有技术中查询效率低的技术问题。为解决上述技术问题,本专利技术提供了一种大数据多维分析计算效率提升方法,其特征是,包括以下过程:确定某一业务场景的事实表和维度表,以及不同维度下的统计指标类型;将事实表与维度表进行关联构建数据模型;根据数据模型设计数据立方体Cube;根据确定的不同维度下统计指标,针对Cube计算获得不同维度的统计指标;将统计指标值存储至HBase;当查询此业务场景的不同维度下统计指标时,直接查询HBase中存储的统计指标值。进一步的,事实表和维度表存储在Hive中。进一步的,统计指标包括求和、平均、TopN、计数、最大和最小。进一步的,通过MapReduce计算不同维度的统计指标值。进一步的,通过MapReduce计算不同维度的统计指标值包括:按Cube中维度数逐渐减少来计算;通过MapReduce计算每个维度数层级的统计指标值。进一步的,Cube中所有层级的MapReduce计算过程串行执行。相应的,本专利技术还提供了一种大数据多维分析计算效率提升系统,其特征是,包括场景数据确定模块、模型构建模块、数据立方体设计模块、计算模块、存储模块和查询模块;场景数据确定模块,用于确定某一业务场景的事实表和维度表,以及不同维度下的统计指标;模型构建模块,用于将事实表与维度表进行关联构建数据模型;数据立方体设计模块,用于根据数据模型设计数据立方体Cube;计算模块,用于根据确定的不同维度下统计指标,针对Cube计算获得不同维度的统计指标值;存储模块,用于将统计指标值存储至HBase;查询模块,用于当查询此业务场景的不同维度下统计指标时,直接查询HBase中存储的统计指标值。进一步的,场景数据确定模块中,事实表和维度表存储在Hive中。进一步的,场景数据确定模块中,统计指标包括求和、平均、TopN、计数、最大和最小。本专利技术还提供了一种计算机存储介质,其特征在于,所述计算机存储介质存储有一种大数据多维分析计算效率提升方法的程序,所述一种大数据多维分析计算效率提升方法的程序被至少一个处理器执行时实现前述一种大数据多维分析计算效率提升方法的步骤。与现有技术相比,本专利技术所达到的有益效果是:本专利技术创新地采用了预计算策略,基于大数据平台的计算能力和存储能力,快速构建数据立方体(Cube),并将数据立方体存储在Key-value数据库HBase中,有效解决了大数据中OLAP延迟高的问题,提高了运行效率,提升了业务应用服务质量。附图说明图1为本专利技术方法的流程图。具体实施方式下面结合附图对本专利技术作进一步描述。以下实施例仅用于更加清楚地说明本专利技术的技术方案,而不能以此来限制本专利技术的保护范围。本专利技术的一种大数据多维分析计算效率提升方法,该方法的实现是基于Hadoop大数据环境,主要需要Hive组件、Hbase组件、MapReduce计算组件。通过预计算思想,以空间换时间。即多维分析可能用到的度量进行预计算,将计算好的结果保存成Cube并存储到HBase中,供查询时直接访问。把高复杂度的聚合运算,多表连接等操作转换成对预计算结果的查询,以提高查询效率。其方法具体包括以下步骤:S1,对某一业务场景进行分析,确定该场景下采用数据立方体(Cube)描述其场景事件所需的事实表和用来描述事实表中特定属性信息的维度表,并明确不同维度下的统计指标类型(例如:求和、平均、TopN、计数等)。事实表和维度表,它们是存储在Hive中的。S2,根据S1中分析出的事实表和维度表,将其同步至本系统cube中,为后续计算做准备。S3,根据S2同步完成的事实表与维度表设计数据模型。具体设计是将事实表与各个维度表的关联字段确定,然后统计不同的维度根据维度表中对应的字段进行确定。多个维度表关联完成,不同维度字段选择完成,模型就构建完成。S4,根据S3设计完成的数据模型,开始设计数据立方体Cube。具体设计方法是,首先根据需要统计的业务指标,选择S3模型中所需的字段,然后设置对应字段所需计算的统计度量类型(例如:求和、平均、TopN、计数等)。S5,根据S1中确定的指标及S4中设计出的Cube,通过MapReduce框架进行计算。一个N维的完全Cube,是由:1个N维子立方体,N个(N-1)维子立方体,N*(N-1)/2个(N-2)维子立方体…,N个1维子立方体,1个0维子立方体,总共2^N个子立方体组成的。其具体计算是,通过逐层计算法,在“逐层算法”中,按维度数逐渐减少来计算,每个层级的计算(除了第一层,它是从原始数据聚合而来),是基于它上一层级的结果来计算的。此算法的Mapper和Reducer都比较简单。Mapper以上一层子立方体的结果(Key-Value对)作为输入。由于Key是由各维度值拼接在一起,从其中找出要聚合的维度,去掉它的值成新的Key,然后把新Key和Value输出,进而MapReduce对所有新Key进行排序、洗牌(shuffle)、再送到Reducer处;Reducer的输入会是一组有相同Key的Value集合,对这些Value做聚合计算,再结合Key输出就完成了一轮计算。每一轮的计算都是一个MapReduce任务,且串行执行;一个N维的Cube,至少需要N次MapReduce任务。至此通过MapReduce任务,Cube的各个维度的不同统计指标值计算完成。S6,通过S5的计算,Cube中各个维度的不同统计指标值计算完成,然后将统计指标值存储至HBase。S7,通过S6中存储的数据立方体中的指标值,进行该业务场景数据指标的查询操作。例如上卷、下钻等查询操作。实施例现通过举例说明上述方法如下:实施步骤包括:①启动引擎服务;②业务Cube配置。1.基于大数据平台环境,启动本服务。配置JDK等环境变量,将大数据环境Hive、HBASE等环境变量配置完成,然后运行启动脚本即可启动引擎服务。2.业务Cube配置包括以下步骤:2.1新建一个项目首先添加一个新的多维数据分析(OLAP)项目,填写项目描述信息并提交。2.2同步Hive数据表加载Hive表元数据,选择需要同步的表,进行同步,将源数据加入引擎管理。2.3新建一个Cube添加Cube,然后进行Cube设计,Cube设计主要包含以下步奏:(1)填写Cube基本信息;(2)建立事实表,即原始数据表;(3)添加一个新的维度,可以选择不同类型的维度加入同一个Cube,通常从事实表或者维度本文档来自技高网...

【技术保护点】
1.一种大数据多维分析计算效率提升方法,其特征是,包括以下过程:确定某一业务场景的事实表和维度表,以及不同维度下的统计指标;将事实表与维度表进行关联构建数据模型;根据数据模型设计数据立方体Cube;根据确定的不同维度下统计指标,针对Cube计算获得不同维度的统计指标值;将统计指标值存储至HBase;当查询此业务场景的不同维度下统计指标时,直接查询HBase中存储的统计指标值。

【技术特征摘要】
1.一种大数据多维分析计算效率提升方法,其特征是,包括以下过程:确定某一业务场景的事实表和维度表,以及不同维度下的统计指标;将事实表与维度表进行关联构建数据模型;根据数据模型设计数据立方体Cube;根据确定的不同维度下统计指标,针对Cube计算获得不同维度的统计指标值;将统计指标值存储至HBase;当查询此业务场景的不同维度下统计指标时,直接查询HBase中存储的统计指标值。2.根据权利要求1所述的一种大数据多维分析计算效率提升方法,其特征是,事实表和维度表存储在Hive中。3.根据权利要求1所述的一种大数据多维分析计算效率提升方法,其特征是,统计指标包括求和、平均、TopN、计数、最大和最小。4.根据权利要求1所述的一种大数据多维分析计算效率提升方法,其特征是,计算获得不同维度的统计指标值的步骤包括:通过MapReduce计算不同维度的统计指标值。5.根据权利要求4所述的一种大数据多维分析计算效率提升方法,其特征是,通过MapReduce计算不同维度的统计指标值包括:按Cube中维度数逐渐减少来计算;通过MapReduce计算每个维度数层级的统计指标值。6.根据权利要求5所述的一种大数据多维分析计算效率提升方法,其特征是,Cube中所有层级的MapReduce...

【专利技术属性】
技术研发人员:张琦孙立华刘士进孟庆强郑浩泉杨志刘铭钱亚康周洁
申请(专利权)人:国网上海市电力公司南京南瑞信息通信科技有限公司
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1