Pentaho源代码阅读报告

注:文档中图片都没有上传上来。需要阅读原文的可以到pentaho的qq群12635055的公用空间下载。  

Pentaho源代码阅读报告

 

 

 

 

作者:曾坤,吴大愚,张百达

 

 

 注:此文档为2006年国防科大计算机学院高级软件工程课程实习大作业。若需要交流,可以发邮件到[email protected]

 

 

 

 

 

 

 

 


目录

Pentaho项目简介.......................................................................................................... 3

Pentaho的设计思想...................................................................................................... 3

Pentaho的运行系统...................................................................................................... 4

Pentaho运行系统的组成...................................................................................... 4

Pentaho运行系统的配置文件.............................................................................. 5

基于Pentaho平台的BI开发............................................................................... 5

Pentaho平台的软件架构.............................................................................................. 6

Pentaho平台的总体结构...................................................................................... 6

Pentaho的界面层.................................................................................................. 7

Pentaho的核心层.................................................................................................. 8

系统维护部分............................................................................................... 8

服务处理部分............................................................................................... 9

Solution描述部分........................................................................................ 10

运行解释部分.............................................................................................. 11

Pentaho的插件层................................................................................................ 12

Pentaho的资源库系统........................................................................................ 13

Solution 资源库........................................................................................... 13

Runtime资源库............................................................................................ 14

Content资源库............................................................................................ 15

Audit资源库................................................................................................ 16

Pentaho的运行机制.................................................................................................... 17

Pentaho平台的启动与终止................................................................................ 17

PentahoSession的管理......................................................................................... 18

Pentaho平台的Publish机制............................................................................... 19

Action序列的执行机制...................................................................................... 20

Pentaho的插件管理............................................................................................ 22

插件的加载与卸载..................................................................................... 22

插件调用的参数传递................................................................................. 23

插件的参数配置机制................................................................................. 24

PentahoAudict机制........................................................................................ 25

Pentaho核心与Style分离的机制....................................................................... 26

Pentaho相关的设计模式............................................................................................ 26

EventListener模式................................................................................................ 26

抽象工厂模式..................................................................................................... 28

工厂方法模式..................................................................................................... 29

Facade模式......................................................................................................... 30

Adapter模式........................................................................................................ 30

复合模式............................................................................................................. 31

Pentaho源代码文件结构............................................................................................ 32

总结与收获................................................................................................................. 32


Pentaho
项目简介

Pentaho BI 平台是一个以过程为核心,面向解决方案的,可扩展的商务智能平台。其目的在于将一系列企业级BI产品、开源软件、API等等组件集成起来,方便商务智能应用的开发。它的出现,使得一系列的面向商务智能的独立产品如JfreeQuartz等等,能够集成在一起,构成一项项复杂的、完整的商务智能解决方案。

目前,Pentaho的主要组成元素包括报表生成、分析、数据挖掘和工作流管理等等。这些组件通过J2EEWebServiceSOAPHTTPJavaJavaScriptPortals等技术集成到Pentaho平台中来。Pentaho的发行,主要以Pentaho SDK的形式进行。

Pentaho SDK共包含五个部分:Pentaho平台、Pentaho示例数据库、可独立运行的Pentaho平台、Pentaho解决方案示例和一个预先配制好的Pentaho网络服务器。其中Pentaho平台是Pentaho平台最主要的部分,囊括了Pentaho平台源代码的主体;Pentaho数据库为Pentaho平台的正常运行提供的数据服务,包括配置信息、Solution相关的信息等等,对于Pentaho平台来说它不是必须的,通过配置是可以用其它数据库服务取代的;可独立运行的Pentaho平台是Pentaho平台的独立运行模式的示例,它演示了如何使Pentaho平台在没有应用服务器支持的情况下独立运行;Pentaho解决方案示例是一个Eclipse工程,用来演示如何为Pentaho平台开发相关的商业智能解决方案。

本文主要针对部署于应用服务器上的Pentaho平台,介绍该平台的设计思想、软件架构、运行机制及相关的设计模式等等内容。

Pentaho的设计思想

Pentaho的设计思想主要体现在三个方面,一是“集成化”,二是“面向解决方案”,三是“以流程为中心”。

所谓集成化,是指将众多不同的BI产品集成到一个统一的框架中来,使之可以相互协作。以往的BI产品,往往只专注于BI的某一特定领域,如Jfree主要关注表表的生成,Quartz主要关注日程的管理等等。然而一个完整的BI应用往往需要这些BI产品能够相互协作。Pentaho通过引入“Action”的概念,提供了一个让多种BI产品协作的机制。“Action”是Pentaho平台提供的最基本的操作单元,它类似于一种编程语言的基本语句。所有完成具体功能的BI产品作为“插件”集成到Pentaho平台中,每种插件为Pentaho平台提供一种或几种“Action”,每个Action有自己的输入和输出,多个Action连接起来就构成了Action序列,完成一个较复杂的功能。Pentaho平台负责在各个Action之间传递参数,这样多种不同的BI产品便能够协同工作了。

所谓解决方案(Solution),是基于Pentaho平台的一个具体的BI应用。SolutionPentaho平台的关系和Web应用与应用服务器之间的关系十分类似。如 1所示,Pentaho平台本身作为一个Web应用部署在应用服务器上,而Solution又作为一个“Pentaho应用”,部属在Pentaho平台上。Solution本身实质上是一系列Action序列的集合,这些序列在网页上如何显示,如何被调用,功能如何实现完全由Pentaho平台来管理,这使得Solution的开发者,也就是Pentaho的使用者,可以将开发工作集中于具体的BI业务逻辑的开发上,而不用去关心网页的设计、服务器的部署等等细节。

1 Pentaho平台层次关系图

流程即Action序列,是Solution的基本组成单位,它由多个以某种顺序执行的Action组成。ActionPentaho平台所提供的最基本的BI操作,大到生成一个报表,小到打印一行字,都可以是一个ActionAction之间可以顺序执行,也可以有分支或循环。Pentaho平台的“以流程为中心”是指整个平台的工作核心就是如何解释执行一个个Action序列的描述文件。用户在做具体的BI应用开发时,也应当把精力集中在描述Action序列上。

Pentaho平台将BI业务逻辑的开发以Solution的形式与系统的其它部分独立开来,使得用户可以随心所欲的综合运用各种不同的BI

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值