一种基于Hadoop和HBase的大数据多维数据分析方法及系统技术方案

技术编号:22330113 阅读:52 留言:0更新日期:2019-10-19 12:16
本发明专利技术提供一种基于Hadoop和HBase的大数据多维数据分析方法,包括:定义多维数据模型,其维度根据用户需要从源数据的表的字段中选取,并配置需要的分析度量;根据定义的多维分析数据模型的维度n,从数据源中读取对应的数据,采用Hadoop对所述数据进行计算,得到2

A method and system of big data multidimensional data analysis based on Hadoop and HBase

【技术实现步骤摘要】
一种基于Hadoop和HBase的大数据多维数据分析方法及系统
本专利技术涉及数据库领域,尤其涉及一种基于Hadoop和HBase的大数据多维数据分析方法及系统。
技术介绍
Hadoop是大型数据集处理的Apache的开源框架,Hadoop框架应用工程提供跨计算机集群的分布式存储和计算的环境。Hadoop是专为从单一服务器到上千台机器扩展,每个机器都可以提供本地计算和存储,在其核心,Hadoop主要有两个层次,即:加工/计算层(MapReduce),以及存储层(Hadoop分布式文件系统)。HBase是一个高可靠性、高性能、面向列、可伸缩的分布式NoSQL数据库,其设计目标是用来解决关系型数据库在处理海量数据时的理论和实现上的局限性。HBsae中每张表的记录数(行数)可达几十亿条,甚至更多,每条记录可以拥有多达上百万的字段。一方面HBase使用RowKey基于字典序的快速检索,另一方面通过Scan方式进行查询,设置其实行和结束行,把这个搜索限定在一个区域中进行。在使用传统数据库以及大数据平台碰到了瓶颈,即传统的架构只支持垂直扩展,通过在一台机器上增加内存和CPU等硬件资源来提升数据处理能力,但是相对数据呈指数型增长,单机拓展很快就达到来极限。虽然Hadoop大数据平台能够存储和计算大规模数据,但是无法提供高效的交互式查询,查询效率低。
技术实现思路
本专利技术要解决的技术问题之一,在于提供一种基于Hadoop和HBase的大数据多维数据分析方法,满足超大数据集下的实时查询、分组和聚合,提高数据处理效率。本专利技术要解决的技术问题之一是这样实现的:一种基于Hadoop和HBase的大数据多维数据分析方法,包括如下步骤:步骤1、定义多维数据模型,所述多维数据模型的维度根据用户需要从源数据的表的字段中选取,并配置需要的分析度量;步骤2、根据定义的多维分析数据模型的维度n,从数据源中读取对应的数据,采用Hadoop对所述数据进行计算,得到2n种组合的数据立方体,将所述数据立方体保存到HBase数据库中;步骤3、输入一数据库查询语句,通过Rest服务层转发给查询引擎,所述查询引擎将所述数据库查询语句转换为对应的符合HBase查询的API语句,根据所述API语句通过路由选择并结合HBase自带的查询机制获取HBase内符合查询条件的数据或数据集。进一步的,所述分析度量包括SUM、MIN、MAX、COUNT和TOP_N中的一种或多种。进一步的,所述HBase自带的查询机制包括RowKey和Scan查询机制。进一步的,所述步骤3中“输入一数据库查询语句”进一步包括:通过SQL基础工具或第三方应用程序提供的查询界面,输入SQL数据库查询语言。进一步的,所述方法还包括步骤5、将所述步骤4中获取到的数据或数据集存入内存,在需要再次查询时,直接通过对内存中的数据或数据集进行查询,实现二次查询。本专利技术要解决的技术问题之二,在于提供一种基于Hadoop和HBase的大数据多维数据分析系统,满足超大数据集下的实时查询、分组和聚合,提高数据处理效率。本专利技术要解决的技术问题之二是这样实现的:一种基于Hadoop和HBase的大数据多维数据分析系统,包括:一模型定义模块,用于定义多维数据模型,所述多维数据模型的维度根据用户需要从源数据的表的字段中选取,并配置需要的分析度量;一数据立方体创建模块,用于根据定义的多维分析数据模型的维度n,从数据源中读取对应的数据,采用Hadoop对所述数据进行计算,得到n2种组合的数据立方体,将所述数据立方体保存到HBase数据库中;一查询模块,用于输入一数据库查询语句,通过Rest服务层转发给查询引擎,所述查询引擎将所述数据库查询语句转换为对应的符合HBase查询的API语句,根据所述API语句通过路由选择并结合HBase自带的查询机制获取HBase内符合查询条件的数据或数据集。进一步的,所述分析度量包括SUM、MIN、MAX、COUNT和TOP_N中的一种或多种。进一步的,所述HBase自带的查询机制包括RowKey和Scan查询机制。进一步的,所述查询模块中“输入一数据库查询语句”进一步包括:通过SQL基础工具或第三方应用程序提供的查询界面,输入SQL数据库查询语言。进一步的,所述系统还包括二次查询模块,用于将所述查询模块中获取到的数据或数据集存入内存,在需要再次查询时,直接通过对内存中的数据或数据集进行查询,实现二次查询。本专利技术具有如下优点:通过预先定义好的多维数据立方体模型,对需要分析的数据集使用Hadoop平台的分布式计算能力进行分布式计算;将处理完后的多维数据存储到NoSQL数据库HBase中,构建多维立方体模型,实现多维预处理,将预处理结果冗余存储,数据查询只需要对预处理结果表进行统计分析即可,最大程度上缩减数据分析时间。附图说明下面参照附图结合实施例对本专利技术作进一步的说明。图1为本专利技术一种基于Hadoop和HBase的大数据多维数据分析方法执行流程图。图2为本专利技术一种基于Hadoop和HBase的大数据多维数据分析系统的系统框图。图3为本专利技术基于Hadoop和HBase的大数据多维数据分析的原理示意图。图4为本专利技术一实施例中多维数据模型的组合示意图。具体实施方式如图1、3和4所示,本专利技术的一种基于Hadoop和HBase的大数据多维数据分析方法,包括如下步骤:步骤1、定义多维数据模型,所述多维数据模型的维度根据用户需要从源数据(所述数据源可以是Hive、Kafka、或者RDBMS(关系数据库))的表的字段中选取(比如选择字段A、B、C和D作为4个维度),并配置需要的分析度量,其中,所述分析度量包括SUM、MIN、MAX、COUNT和TOP_N等组合中的一种或多种;步骤2、根据定义的多维分析数据模型的维度n,从数据源中读取对应的数据,采用Hadoop平台下的MapReduce框架(或Spark)对所述数据进行计算,得到2n种组合的数据立方体,将所述数据立方体保存到HBase数据库中,比如采用MapReduce框架(即MR)计算由A、B、C、D字段组合得到的如图4所示16种组合的数据;步骤3、输入一数据库查询语句,通过Rest服务层转发给查询引擎,所述查询引擎将所述数据库查询语句转换为对应的符合HBase查询的API语句,根据所述API语句通过路由选择并结合HBase自带的查询机制获取HBase内符合查询条件的数据或数据集,即根据所述API语句中的分析度量计算结果路由选择符合的组合数据。其中,所述HBase自带的查询机制包括RowKey和Scan查询机制。其中,所述步骤3中“输入一数据库查询语句”进一步包括:通过SQL基础工具或第三方应用程序提供的查询界面,输入SQL数据库查询语言。其中,所述方法还包括步骤5、将所述步骤4中获取到的数据或数据集存入内存,在需要再次查询时,直接通过对内存中的数据或数据集进行查询,实现二次查询。如图2、3和4所示,本专利技术的一种基于Hadoop和HBase的大数据多维数据分析系统,包括:一模型定义模块,用于定义多维数据模型,所述多维数据模型的维度根据用户需要从源数据(所述数据源可以是Hive、Kafka、或者RDBMS(关系数据库))的表的字段中选取(比如选择字段A、本文档来自技高网...

【技术保护点】
1.一种基于Hadoop和HBase的大数据多维数据分析方法,其特征在于:包括如下步骤:步骤1、定义多维数据模型,所述多维数据模型的维度根据用户需要从源数据的表的字段中选取,并配置需要的分析度量;步骤2、根据定义的多维分析数据模型的维度n,从数据源中读取对应的数据,采用Hadoop对所述数据进行计算,得到2

【技术特征摘要】
1.一种基于Hadoop和HBase的大数据多维数据分析方法,其特征在于:包括如下步骤:步骤1、定义多维数据模型,所述多维数据模型的维度根据用户需要从源数据的表的字段中选取,并配置需要的分析度量;步骤2、根据定义的多维分析数据模型的维度n,从数据源中读取对应的数据,采用Hadoop对所述数据进行计算,得到2n种组合数据立方体,将所述数据立方体保存到HBase数据库中;步骤3、输入一数据库查询语句,通过Rest服务层转发给查询引擎,所述查询引擎将所述数据库查询语句转换为对应的符合HBase查询的API语句,根据所述API语句通过路由选择并结合HBase自带的查询机制获取HBase内符合查询条件的数据或数据集。2.根据权利要求1所述的一种基于Hadoop和HBase的大数据多维数据分析方法,其特征在于:所述分析度量包括SUM、MIN、MAX、COUNT和TOP_N中的一种或多种。3.根据权利要求1所述的一种基于Hadoop和HBase的大数据多维数据分析方法,其特征在于:所述HBase自带的查询机制包括RowKey和Scan查询机制。4.根据权利要求1所述的一种基于zookeeper的主从本地定时任务处理方法,其特征在于:所述步骤3中“输入一数据库查询语句”进一步包括:通过SQL基础工具或第三方应用程序提供的查询界面,输入SQL数据库查询语言。5.根据权利要求1所述的一种基于Hadoop和HBase的大数据多维数据分析方法,其特征在于:所述方法还包括步骤5、将所述步骤4中获取到的数据或数据集存入内存,在需要再次查询时,直接通过对内存中的数据或数据集进行查询,实现二次查询。6.一种基于Hadoop和...

【专利技术属性】
技术研发人员:蔡剑齐蔡炜榕
申请(专利权)人:南威软件股份有限公司
类型:发明
国别省市:福建,35

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

1