分享

Pentaho是什么

 荷露叮咚 2009-01-16

这是主页的自我介绍:Image

The Pentaho BI Project provides enterprise-class reporting, analysis, dashboard, data mining and workflow capabilities that help organizations operate more efficiently and effectively. The software offers flexible deployment options that enable use as embeddable components, customized BI application solutions, and as a complete out-of-the-box, integrated BI platform. Ranked #1 in Open Source Business Intelligence.

主要产品:报表设计--report designer;ETL工具--Kettle;在线分析工具---mendrian

以及BI suite 等。

一、Pentaho BI 平台介绍
    Pentaho BI 平台不同于传统的BI 产品,它是一个以流程为中心的,面向解决方案(Solution)的框架。其目的在于将一系列企业级BI产品、开源软件、API等等组件集成起来,方便商务智能应用的开发。它的出现,使得一系列的面向商务智能的独立产品如Jfree、Quartz等等,能够集成在一起,构成一项项复杂的、完整的商务智能解决方案。
    Pentaho BI 平台,Pentaho Open BI 套件的核心架构和基础,是以流程为中心的,因为其中枢控制器是一个工作流引擎。工作流引擎使用流程定义来定义在BI 平台上执行的商业智能流程。流程可以很容易的被定制,也可以添加新的流程。BI 平台包含组件和报表,用以分析这些流程的性能。目前,Pentaho的主要组成元素包括报表生成、分析、数据挖掘和工作流管理等等。这些组件通过J2EE、WebService、SOAP、HTTP、Java、JavaScript、Portals等技术集成到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 BI 平台构建于服务器,引擎和组件的基础之上。这些提供了系统的J2EE 服务器,安全,portal,工作流,规则引擎,图表,协作,内容管理,数据集成,分析和建模功能。这些组件的大部分是基于标准的,可使用其他产品替换之。Pentaho服务器组件是整套系统的基础,
下面做个简要介绍。

二、Pentaho服务器组件
    Pentaho服务器由一个BI 平台和传送最终用户BI 能力的库组成。服务器运行于一个
J2EE 兼容的web 服务器(如Apache,JBOSS AS,WebSphere,WebLogic 和Oracle AS)
上。Pentaho 服务器使得BI 平台的很多功能以一种一致的,熟悉的外观和行为展示给用户。例如,一个组件产生了用户可以访问的报表列表,另一个以日历的方式列出了任务相关的最终期限,第三个显示了用户需要完成的当前任务。每个组件产生的内容
和每个用户的角色相关。Pentaho 服务器包含用于报表,分析,商业规则,email 和桌面通知以及工作流的引擎和组件。这些组件被集成在一起,用于解决商业智能问题。
在一个解决方案(Solution)中,每个子系统的行为,相互作用和用户交互被解决方案(Solution)定义文档的一个集合所定义。解决方案(Solution)定义文档是XML 文档,它包含:
    业务流程的定义(XPDL标准)
    活动的定义,这些活动按需作为部分流程执行,或被web 服务调用,其包含以下定义:
    数据源,查询,报表模板,传送和通知规则,商业规则,仪表盘和分析视图。
    以上所有的项之间的关系
    服务器中的组件依赖于一个解决方案(Solution)引擎,可获得可用解决方案(Solution)
文档,安全支持,报表,工作流项,数据,和审计信息。在服务器上可以执行多于一个的解决方案(Solution)。解决方案(Solution)定义文档可从一个服务器复制到另一个,并可被自由分发。服务器包含如下部分:
    高级系统管理的基础设施。这包括系统监控(SMNP)服务,使用报表,Web 服务支持,配置确认工具,和诊断工具。
    高级流程性能报表和分析的系统和组件。这包括工作流任务上涉及到的工作流项目,单独任务,employees 和services 上属性的切片和切块(slice-and-dice),what-if 和数据挖掘能力。
    支持Enterprise Application Integration (EAI),用于和operational 应用live集成,以及Extract, Transform, and Load (ETL) 能力,用于创建数据仓库和数据集市。

三、Pentaho软件层次结构
    Pentaho平台是Pentaho运行系统中的核心部分,它本身是一个Web应用,部署于一个J2EE兼容的应用服务器上。它又作为Solution的服务器存在着,是Solution中各个Action序列的解释执行者。Pentaho平台大致可分为三个层次:界面层、核心层和插
件层。界面层是外部用户访问Pentaho服务的接口,主要包含三个部分:UDDI、Web页面、Navigation Component。UDDI为外部应用程序或Web Service访问Pentaho服务提供接口;Web页面则为用户通过浏览器访问Pentaho服务提供接口;Navigation Component实质上是一组Servelet,它主要用于显示当前部署在Pentaho平台上的Solution中所包含的
各个Action序列,用户可在其中选择需要执行的Action序列。

核心层主要由Solution Engine和它的Runtime环境组成。Solution Engine实质上是一个解释执行Action序列描述文件的解释器,它接收来自用户界面的请求,这个请求通常是要求执行Solution中的某个Action序列。Solution Engine连同其Runtime环境就负责解释执行这些Action序列。解释执行过程中,出于调试和性能分析的需要,引入了一个Audit机制,该机制类似一个日志记录系统,记录Pentaho平台运行过程中的一些动态过程。Solution Engine和Audit机制的运行都需要访问许多相关的数据资源,这些数据资源被称为"资源库",也就是图中的各个Repository。

插件层主要包括了集成到Pentaho平台中的各种BI产品,如Quartz、Jfree等等。从图3中可以看出,插件层又可分为两类模块,一类叫作Component模块,这种模块是插件层与核心层的接口模块,它们将各种不同的插件的功能以一个统一的接口提供给上层使用,起到一个功能抽象的作用。另一类则是形形色色的BI插件的具体实现,这通常由第三方开发者提供。各种插件运行过程中可能会用到自身的私有数据,这些数据在Pentaho平台中也被抽象成为资源库(Responsory),这使得不同的插件可以以一种统一的方式访问自己的数据。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多