技术开发 频道

用IBM DWE数据仓库建立数据分析


四、通过Alphablox快速创建多维分析应用

    当定义好多维数据模型及相应立方体后,我们便可以通过Alphablox来快速创建一个多维查询应用。
Alphablox是一个前端分析软件,它同其他传统的前端分析工具一个最大的不同,它是基于J2EE架构,因此,非常容易定制化。它只提供BS结构,主要定位于提供嵌入式的、可定制化的应用。 
    Alphablox采用三层架构,如下图:


 数据源支持DB2、Oracle、SQL Server、Sybase等主流关系型数据库;Essbase、MS Analysis Server、DB2 OLAP Server等多维数据库及DWE OLAP。
 应用服务器支持Websphere Application Server、Weblogic及Tomcat。 

    Alphablox应用开发主要是写JSP以及一些必要的Java代码。Alphablox软件提供了一系列预先定制的、用于多维分析应用的Blox,这些Blox是一些JavaBean,用户编写分析应用时,主要就是通过在JSP页面中嵌入这些Blox来完成的。
Alphablox提供的Blox主要包括下面几类:
 Infrastructure,主要用于对Alphablox元数据进行管理。
 Data Access,主要用于对数据源进行访问,获取分析数据。
 Presentation,主要用于前端数据分析、处理及展现。 


    在JSP页面中,我们是通过Taglib来引用这些Blox的,Alphablox主要提供了以下几个Taglib: 


    在开发Alphablox应用时,JSP页面的基本编写框架如下所示: 



    下边,我们就使用Alphablox来创建一个简单的多维查询应用。 

    首先,通过Alphablox管理界面来创建关系数据源DWEOLAP, 


    接下来,创建“Sales Analysis”Alphablox立方体,并通过“Enable DB2 Cube View Settings”功能将我们在前边DWE OLAP中创建的”销售分析“立方体模型及”销售分析“立方体导入到Alphablox中,如下图: 

    下面,我们创建 “dwecube”Alphablox Cube Server Adapter数据源,用于后面Bloxbuilder应用程序进行多维查询工作, 

    验证数据源是否可以连接成功, 

    当创建好“Sales Analysis” Alphablox立方体后,我们要在General下边的Runtime Management文件夹中启动“Sales Analysis”Alphablox立方体, 




    下边,我们就可以创建自己的多维分析应用了。在本文的例子中,我们创建“SalesAnalysis”Alphablox应用程序,并将Home URL指定为index.jsp, 


    创建好的“SalesAnalysis”应用程序,以SalesAnalysis.ear的形式保存在Alphablox应用程序目录下,如: C:\Program Files\IBM\dwe\Alphablox\installableApps\SalesAnalysis.ear。
我们需要通过WAS(Websphere Application Server)的管理控制台将该应用部署到WAS中, 

    当将SalesAnalysis应用部署到WAS后,要启动该应用, 

    接下来,我们要开始编写“SalesAnalysis”应用程序中的index.jsp文件,来提供多维查询功能。通常,index.jsp页面需要我们自己写代码来完成,我们需要在页面中引用各种blox,有些blox代码比较长,特别是数据查询代码,有时写起来也比较烦琐,为了加速Alphablox应用开发,Alphablox提供了一个可视化的、快速开发blox应用的Query Builder程序,来简化Alphablox应用开发。
我们就通过Query Builder来构造一个多维查询, 



    在Query Builder中,连接我们创建的Alphablox Cube Adapter数据源“dwecube”, 



    并构造我们需要的多维查询, 


    通过点击“生成Blox”按钮,将我们在Query Builder工具中定义好的多维查询,自动生成相应的Blox代码, 



    并将该代码拷贝到我们index.jsp文件中blox代码相对应的位置上,如图: 


    将我们编写好的index.jsp文件拷贝到WAS相应下的目录下,如,
C:\Program Files\IBM\dwe\appServer\profiles\default\installedApps\IBM-99LKCYANode01Cell\SalesAnalysis.ear\SalesAnalysis.war\index.jsp 
    这样,我们就可以通过浏览器来调用我们的应用程序了,并且以此为基础,来构建更复杂的查询分析应用。 



    另外,Alphablox支持MDX查询分析语言,通过MDX,我们还可以实现一些常见的分析功能,如同比、环比、移动平均值、期初分析、期末分析等。 

    下边代码实现了同比分析, 


    下边代码实现了环比分析, 


    下边代码实现了条件查询的功能,
0
相关文章