大数据分析的分布式MOLAP技术要点

2018-02-02 18:07刘磊
电脑知识与技术 2018年1期
关键词:分布式大数据

刘磊

摘要:实际工作中需要使用大数据技术,但是由于其带有规模效应,不利于数据分析、数据管理、数据存储等工作。为了确保工作质量,相关技术人员通过研究和试验,发现使用分布式文件系统优势明显,应用MapReduce编程模型可以解决上述问题。具体而言,使用MOLAP技术之后,利用多维模型进行维度的映射,同时使用线性化算法将测量到的维度等数据存储到分布式文件中。该文对在大数据背景下分布式MOLAP技术要点进行分析,希望给有关人士一些借鉴。

关键词:大数据;分布式;MOLAP技术

中图分类号:TP3 文献标识码:A 文章编号:1009-3044(2018)01-0009-02

Abstract: In practical work, large data technology is needed, but because of its scale effect, it is not conducive to data analysis, data management, data storage and so on. In order to ensure the quality of work, the relevant technical personnel through research and experiment, found that the use of distributed file system has obvious advantages, the application of MapReduce programming model can solve these problems. Specifically, after using MOLAP technology, the multi-dimensional model is used to map the dimensions, and the linear algorithm is used to store the measured dimensions and other data into the distributed file. Below on the background of big data distributed MOLAP technology analysis, hoping to draw some reference for the relevant people.

Key words: Big data; distributed; MOLAP Technology

對于MOLAP技术也称之为DOLAP,其使用了多维数据模型,包括维和和事实两个部分,具体操作中必须要找到维和与事实之间的映射关系。DOLAP使用了星象模式,同时使用了关系数据库,将事实数据和维信息都存储到数据库表中。通过外键操作做好对事实数据的映射、维信息的映射等。

1 分析维编码算法和维的遍历算法

1.1 对维编码算法进行深度分析

技术人员都清楚,实际工作中应用OLAP技术进行操作时,需要对维进行频繁的操作,由此可见,实际运行中遍历算法和维编码是非常关键的技术。下面就深入对两种技术进行分析,希望相关人员掌握要领。对于维编码的方法而言,主要包括两种,分别是十进制编码和二进制编码。对于二进制编码而言,内部也将其称之为位图编码,操作中对相关编码进行拼接,进而得到维的级别信息,除此之外,还可以结合编码位移做到对维的遍历,达到最终的技术效果。但是实际使用二进制编码过程中,很容易导致稀疏问题。对于实际运用的十进制编码而言,具体运行操作过程中,系统会对所有级别的维值都使用十进制数进行编码,虽然可以达到相关目的,但是也存在一定的问题,其不能直接得到维值和编码,同时也不能得到相应的映射。在大数据背景下运行,为了有效避免出现稀疏等问题,在DOLAP技术当中进行了处理,其应用十进制进行编码,在此基础上,还开创了一种维的遍历算法,通过这一算法对维值、编码间的映射进行计算。具体而言,设l是维d中的某个维级别,对x∈[1,|md(l)|],vx∈md(l),vx的编码为code(vx),那么就有code(vx)=x1.[1],具体的算法如下:

维编码算法.Input: Dimension d: A target dimension;

Function: DimensionCoding.

1. FOR i=1 TO |L(d)|;

2. FOR j=0 TO |md(li)|?1;

3. Dimension value of vi,j∈md(li)

4. Vi

5. j.code=j;

5. END FOR

6. END FOR

在现实环境中大多数维属于数值型,例如其流水号、价格、经度、高度等,可以结合其值域进行划分,由此可见,对于数值的维可以很容易满足约束条件,但是还有非数值的维,包括部门、城市、日期等,根据这一情况,实际操作时可以使用空值填补维值数,在同一节点上包含相同数目的子节点,相关人员可以参考日期维编码结果。一般在月级别上每个月的天数都是不同的,但是为了满足在这一技术系统中的相关定义,就要设定每月都是31天,针对这一情况,实际操作时一般技术人员会在2月插入29日,或者插入30日和31日。维在实际应用中会变得更加复杂,为了提高工作效率,要将其进行简化,维层次的划分方法有很多,包括维值数法,但是必须满足定义条件。具体处理时可以选用取舍和合并的方法,将TCP-H的雪花模式进行化简,将其变为星型模式,得到的结果可以是SSB数据集中的维模式。对于SUPPLIER维表而言,可以选用区域属性(Nation,Region,City)作为划分维层次的重要依据,最终会得到维层次Nation-Region-City。除此之外,可以在维Nation-Region-City维值树中添加空值,这样就满足相关定义,符合其约束条件[2]。endprint

1.2 分析维的遍历算法

对于DOLAP的维技术人员可以将其视为单根树,记作Td,但是要记住ALL是Td的根节点,可以记做第0级别,对每个级别中的维值视为节点。对于其中每个兄弟节点而言,都有其相同数目的子节点。具体进行OLAP操作时,需要对维值树Td进行遍历操作,而且操作频率较高,工作量比较大。例如要沿着Td下降,或者沿着Td攀升,设其有关系i∈[1,m1],li+1dli,然后就有li+1→li,技术人员要清楚,其中的(vi+1)=vi是比较重要的一个操作内容,利用制定的编码机制,可以表示为vi∈md(li),vi+1∈md(li+1),这样就会得到vi与vi+1二者上卷之间的关系ρd。这种上卷关系,我们可以通过编码运算实现Td中的上卷操作[3]。

2 分析数据的存储

对于传统的DOLAP技术而言,进行数据立方存储成本比较高,而且操作复杂,尤其对高维数据立方进行存储,或者对维包进行存储,其里面含有大量的维值,其存储成本就更大。在传统技术当中,利用访问过程中的多维数组提高OLAP的操作,但是在大数据环境下这一操作非常难实现,其多维组是利用计算机得到的,没有必要进行存储,由此可见,其使用数据立方进行存储代价非常小。DOLAP技术可以对维进行简化,确保在同一级别上维的编码时连续十进制数,在此基础上,每一个兄弟节点都有一个相同的子节点,针对这一情况可以得知,每个维信息只需要维级别的信息进行存储,降低了存储的代价。技术人员可以设维d由m个维级别组成[4],直接记作{li|i∈[1,m]},这样就有d,其存储可以表示这一维级别和维级别规模的序偶所组成的集合,记做{li,|li||i∈[1,m]},在这一公式中li表示这一维级别的名称,由此可见,在这方面使用DOLAP技术之后,工作人员就可以使用XML文件进行信息的存储,同时将其保存到集群主节点中。

3 对OLAP算法进行深入分析

通过对OLAP算法和MapReduce进行分析,发现其建立了不同视图,在使用OLAP算法时[5],可以将其抽象为四元组进行表示,分别是Target,Range,Aggregation,Result,其中,Target代表待分析的数据立方(元数据);Range代表立方中待分析数据的数据范围。Aggregation指的是聚集函数,例如mean、sum、maximum、minimum。其中的Result表示元数据,如果Target最高值比Result的最高维级别低时,就表示已经完成了上卷操作,无论输入还是输出都是数据立方。技术人员要清楚,经过查询之后会生成新的立方,由此可见,Result、Target二者的维度可能有所不同。一般都使用维度进行度量的查询,对于OLAP算法而言,在操作查询中也是由维度构成的,Range属于一个多维二元组,准确指出了Target需要分析数据的范围。该算法和传统的MapReduce进行对比,可以使用比较特殊的多维模型对度量、维和等进行组织。存储代价比较小。因此在实践中得到了普及,一线人员也非常青睐这一方法。

4 总结

通过以上对大数据下DOLAP技术的分析,发现这一技术主要包含以下四方面的内容,第一点,该技术可以使用比较特殊的多维模型对度量、维和等进行组织。第二点,通过对维编码、遍历算法的分析,可以做到对维值树上的上卷下钻操作。第三点,传统维的存储方式比較复杂,代价较大,为了提高工作效率,对存储方法进行了简化,并做到维和度量的映射关系。第四点,技术人员通过深入研究,最终提出了一种OLA算法,将这一算法和HaoLap进行对比,发现后者在数据装载方面没有优势,OLA算法的优势非常明显,在此基础上对这一算法的特点进行总结,希望为以后的发展奠定基础。

参考文献:

[1] 宋杰, 郭朝鹏, 王智,等. 大数据分析的分布式MOLAP技术[J]. 软件学报, 2014, 25(4).

[2] 姜博. 大数据分析的分布式MOLAP技术[J]. 通讯世界, 2015(24).

[3] 熊宁. 大数据分析的分布式MOLAP技术[J]. 信息技术与信息化, 2015(2).

[4] 周青. 大数据分析在智能变电站状态监测系统中的应用研究[D]. 华北电力大学, 2016.

[5] 蒋外文, 熊东平, 张肖霞. 基于多维数据库的MOLAP存储及查询技术研究[J]. 计算机工程与应用, 2005, 33(24).endprint

猜你喜欢
分布式大数据
基于预处理MUSIC算法的分布式阵列DOA估计
大数据环境下基于移动客户端的传统媒体转型思路
西门子 分布式I/O Simatic ET 200AL
家庭分布式储能的发展前景