版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
DocRef:REFDocRefNumber<>深入浅出丛书系列2015-09-15IfSection1>1“DateAuthorVersionChangeReference2015-09-15陈显智1.0NoPreviousDocumentReviewersNamePositionDistributionCopyNo.NameLocationLibraryMasterProjectLibraryProjectManagerNoteToHolders:Ifyoureceiveanelectroniccopyofthisdocumentandprintitout,pleasewriteyournameontheequivalentofthecoverpage,fordocumentcontrolpurposes.Ifyoureceiveahardcopyofthisdocument,pleasewriteyournameonthefrontcover,fordocumentcontrolpurposes.ContentsTOC\o"2-3"DocumentControl ii1. Pentaho初探 21.1. Pentaho简介 21.2. Pentaho安装 32. Pentaho功能 72.1. 查看报表、分析 72.2. 创建数据源Schema 92.3. 创建数据源连接(JDBC) 122.4. Pentaho系统管理 153. Pentaho开发 173.1. 创建CDE分析报表 173.2. 创建JPivot报表 274. Pentaho拓展 314.1. 使用SchemaWorkbench创建数据源 314.2. 使用ReportDesigner创建报表 394.3. 使用Saiku插件创建多维度分析 455. Pentaho改造 505.1. 数据库迁移 505.2. 多语言处理 555.3. 界面修改 576. OpenandClosedIssuesforthisDeliverable 61OpenIssues 61ClosedIssues 61PAGE10Pentaho初探Pentaho简介Pentaho是一个以工作流为核心的、强调面向解决方案而非工具组件的BI套件。它偏向于与业务流程相结合的BI解决方案,侧重于大中型企业应用。它允许商业分析人员或开发人员创建报表,仪表盘,分析模型,商业规则和BI流程。Pentaho整合了多个开源项目,主要包括一个WebServer平台和几个工具软件:报表,分析,图表,数据集成,数据挖掘等,可以说包括了商务智能的方方面面。本文档主要对Pentaho入门级的一些知识和开发进行介绍,大数据、调度计划等内容将在后面的高级篇中进行介绍。功能和特点工作流引擎:SharkandJaWE数据库:FirebirdRDBMS集成管理和开发环境:Eclipse报表工具:EclipseBIRTETL工具:Enhydra/KettleOLAPServer:MondrianOLAP展示:JPivot数据挖掘组件:Weka应用服务器和Portal服务器:JBoss单点登陆服务及LDap认证:JOSSO自定义脚本支持:MozillaRhinoJavascript脚本处理器知识拓展:Mondrian是一个开放源代码的Rolap服务器。它实现了xmla和jolap规范,而且自定义了一种使用mdx语言的客户端接口。Mondrian的元数据主要包括olap建模的元数据,不包括从外部数据源到数据库转换的元数据。在功能上,Mondrian支持共享维和成员计算,支持星型模型和雪花模型的功能。Pentaho版本Pentaho有商业版和社区版,并提供了多种安装平台的系统安装介质。社区版为开源,授权协议为:GPL,LGPL,它是开源的,代码以从官方网站分离,由Sourceforge代为管理。开源社区地址:/Sourceforge地址:/projects/pentaho/商业版需要付费,但提供了试用版本。Pentaho安装主要组件本文主要涉及到BusinessAnalyticsPlatform、ReportDesigner的使用。BusinessAnalyticsPlatform商务分析平台DataIntegration数据集成ReportDesigner报表设计器PentahoMarketplacePentaho市场设计工具本文主要涉及到SchemaWorkbench工具的使用。AggregationDesigner聚合设计器SchemaWorkbenchSchema工作台MetadataEditor元数据编辑器第三方常用插件Saiku是非常流行的多维分析报表展示平台,也可以独立安装部署。Saiku多维度分析组件BusinessAnalyticsPlatform安装步骤1)下载安装程序,目前最新版本是Pentaho5.4/project/pentaho/Business%20Intelligence%20Server/5.4资源说明:biserver-manual-ce--130.zip自定义安装PentahoBI平台,资深用户可能会使用到这一资源biserver-ce--130.zip内置了PentahoBI服务器及管理控制台的Windows版本,当然解压后可以同样用在其他OS中这里一般直接下载biserver-ce--130.zip进行安装使用2)解压程序压缩包,有如下目录主要文件说明:data主要存放Demo数据文件或脚本pentaho-solutions主要存放Pentaho系统组件、配置文件等third-party-tools主要存放Pentaho第三方插件工具tomcat主要存放Pentaho用到的WebServer及JavaWeb程序start-pentaho.batstart-pentaho.shWindow或Linx平台下Pentaho启动脚本start-pentaho-debug.batstart-pentaho-debug.shWindow或Linx平台下Pentaho关闭脚本3)安装JDK,设置环境变量JAVA_HOME4)点击脚本start-pentaho.bat启动Pentaho由于Tomcat启动脚本中没有指定JVM的内存大小,根据默认大小容易产生内存溢出的情况,因此建议,设置JVM的启动大小,路径:biserver-ce\tomcat\bin\catalina.bat如图显示PentahoBI平台服务器就绪,说明Pentaho已经正常启动Web地址http://localhost:8080/pentaho用户/密码管理员:Admin/password业务员:Suzy/password5)进入PentahoHome主页6)总之,基于Pentaho套件安装程序进行系统安装是很方便的,其中数据库使用的是自带免安装的HSQLDB。Pentaho功能Pentaho安装后就能够使用它的标准功能,主要包括:报表、分析浏览;数据源创建、报表、分析创建;报表、分析的权限管理;任务调度管理;职责、用户管理等。下面将结合Pentaho中的Sample数据库和数据,对一些常用的功能进行说明和分析。查看报表、分析1)点击BrowserFiles->Folders->PublicPublic文件下有一些做好的报表或者分析实例2)点击车轮生产销售分析->Analysis下的2005Q1ProductAnalysis,可以看到当前用户针对这个分析的使用权限文件操作说明:Open:打开文件,等同于双击文件的效果Openinanewwindow:在新窗口打开文件Edit:编辑文件Cut:剪切文件Copy:复制文件,可以把文件复制到其他有权限操作的目录MovetoTrash:删除文件Rename:重命名Download:下载文件Share:对文件进行权限管理,如分配和回收等AddtoFavorites:加入关注Properties:查看文件的属性3)打开2005Q1ProductAnalysis分析报表说明:这是基于JPivot技术开发的分析报表,目前Pentaho对其已经不在继续提供支持,对于多维度分析报表,现在在Pentaho平台上采用得比较多的是在Saiku插件,关于Saiku插件的内容,后面章节再介绍。4)Report报表查看与Analysis分析相似,这里以IncomeStatement报表进行展示说明:此报表是基于ReportDesigner开发的,如何使用PentahoReportDesigner报表开发工具进行报表开发,后面章节再介绍。创建数据源Schema数据源Schema是Report报表和Analysis分析展示数据的来源。由于Pentaho是BI前端展示平台,因此这里的数据源主要是数据仓库或数据集市中面向主题的数据,当然也可以是直接用于展示的业务数据。本小节将介绍SQLQuery方式创建DataSourceWizard类型的数据源,这也是Pentaho中最常用的一种方式。1)点击File->New->DataSource进入数据源Schema创建界面(在ManageDataSources功能下也可以进行数据源Schema的创建)2)输入数据源名称、选择来源类型,这里选择名称:DS_TEST来源类型:SQLQuery知识拓展:基于Pentaho数据源向导创建的数据源支持的数据来源类型有SQLQuery:SQL查询数据源、CSVFile:CSV格式文件、DatabaseTables:数据库表。3)选择数据库连接,这里使用SampleData,新建数据源连接见后面章节。4)在SQLQuery区域编写SQL脚本,这里查询Sample中客户表Customs的所有数据5)通过DataPreview来验证SQL是否正确,点击右下角的DataPreview查看6)点击Finsh完成数据源Schema创建,点击File->ManageDataSources进行管理知识拓展:DataSourceWizard类型的数据源创建后,Pentaho系统会自动生成数据源Mondrian文件,可以使用编辑界面进行简单修改。点击Edit对数据源进行编辑修改:使用Export导出功能得到Mondrian文件DS_TEST.mondrian.xml文件:知识拓展:由于Pentaho自带的创建数据源Schema的工具不太方便,因此建议使用第三方工具Schema-Workbench来管理Pentaho的Analysis分析或Report报表的数据源。创建数据源连接(JDBC)Pentaho提供主流的数据库连接支持,可以很方便的进行数据库连接并在数据源中进行使用。本小节将介绍使用Pentaho创建本地的Mysql数据库的连接。目前自带功能支持的数据库主要有:Oracle、MSSqlserver、MySQL、Hive、PostgreSQL、MonetDB、H2、Hypersonic等1)进入ManageDataSources界面,点击图标,选择NewConnection进行创建2)输入ConnectionName:MySQLConnect,选择数DatabaseType:MySQL,Access保持默认:Native(JDBC)2)输入数据库设置信息,下面是我本地MySQL数据库的参数信息HostName:LocalhostDatabase:SampleDataPortNumber:3306UserName:rootPassword:root3)进行了基本设置之后,还可以对数据库连接进行其他参数设置,可以使用左边菜单中的Advanced、Options、Pooling等功能进行一些高级设置4)点击Test进行数据库连接测试,得到下图结果表示数据库连接成功知识拓展:创建数据库连接的时候必须要保证在biserver-ce\tomcat\lib下存在对应的数据库驱动程序Jar,如本实例用到的。另外值得注意的是数据库类型展示出来的数据,是由Pentaho启动的时候根据lib下的驱动包进行加载的。5)点击OK,完成数据库连接创建,并可以在数据源管理界面中进行查看知识拓展:Pentaho支持多种数据源类型,上节创建数据源Schema为DataSourceWizard,本节创建的数据源连接为JDBC。另外Pentaho数据源类型还有Analysis分析数据源、Metadata元数据数据源。其中Analysis与DataSourceWizard数据源的原理是一致,只是Analysis是通过导入Mondrian文件进行创建。Metadata类型则是直接导入数据的XML文件进行创建。Pentaho系统管理1)在系统界面左上角下来列表中选择Administration2)进入到系统管理界面中可以看到,用户&职责管理、邮件服务器及其他系统设置系统管理界面功能使用整体比较简单,这里就不再过多阐述。其中用户&职责管理是比较常用的功能,可以在用户&职责管理Tab页中进行系统职责、管理职责和用户管理。其中管理职责和用户可以新增和删除,系统职责不能进行新增和删除。Report报表及Analysis分析等可以把权限挂到用户或职责上,这样就可以实现对其权限管理的粒度进行很好的控制。知识拓展:Pentaho的权限管理较为灵活,自带的功能实现了一些基本功能,对于报表数据权限标准功能没有很好的支持,后续高级开发将介绍怎样通过登录用户对数据做屏蔽处理。Pentaho开发利用Pentaho自带工具可以实现基本的Report报表、Analysis分析、数据源等开发工作。本章节将介绍基于Pentaho自带的工具进行一些常规的开发。创建CDE分析报表PentahoDashboardsEditor(CDE)仪表盘编辑器,是Pentaho5.4自带的工具,无需单独安装即可使用。本小节将介绍使用CDE工具开发分析报表。路径:File->New->CDEDashBoard点击CDEDashboard就可以进入CDE的编辑页面如图左上方的菜单为New、Save,和Setings没有什么特别的,这里就不再赘述,右上方红框中的三个面板是我们关注的重点:第一个是Layout(布局):控制CDE生成页面的布局方式和定义容纳组件的容器以行和列的形式来控制页面布局,行和列都可以设置很多样式属性第二个是Components(组件):定义要用到的CDE组件并关联到对应容器上切换到Components面板从右则的组件中选择CCCPieChart和CCCBarChart指定大小、数据源、HtmlObject等第三个是DataSource(数据源):提供组件展示用到的数据切换到DataSource面板,左边设置列表中有很多类型的数据源连接方式,如SQLQueries、MDXQueries、MQLQueries、KittleQueries、CommunityDataAccess、OLAP4JQueries等开源社区中的主流方式。通过上面对CDE的简单介绍,相信对CDE有了初步的了解,接下来通过一个实例来介绍基于CDE的分析报表的开发步骤,本例子将MySQL数据库中的客户与客户订单数据进行分析,展示客户及其订单金额的情况,首先一睹为快:1)进入CDEDashboard创建界面,这里使用HOME界面中的菜单进入2)进入布局编辑界面,这里添加了三行(Row)第一行:放置柱状图第二行:空白分割行第三行:Dashboard底部样式拓展知识:编辑界面右上角的按钮从左往右功能依次是保存当前样式到自定义模版库中,以便后续使用使用模版库中的模版添加外部CSS、JavaScript文件,以便在布局中引用添加Bootstrap框架布局添加独立的表单区域添加行(Row)、添加列(Column)添加Space区域添加图片组件添加HTML组件复制当前选中组件删除选中组件3)在行1下添加列并设置属性主要属性:Name:BarPanelSpansize:13Height:4004)在行3下添加列并设置属性Name:Footer_Image在列Footer_Image添加HTML区域,并添加引用LOGO图标的HTML代码HTML代码如下:<astyle="position:relative;top:12;"border="0"title="WebDetails"href="http://www.webdetails.pt"><imgsrc="/wp-content/themes/hand/images/logo.jpg"/></a>5)进入组件编辑页,在左边的组件设置Charts下选择CCCBarChart6)设置CCCBarChart组件的属性Datasource:BarData此名称将用于对应数据来源面板中的数据源名称HtmlObject:BarPanel此名称对应的是布局编辑面板中需要方式组件的区域名称7)进入到数据源设置面板,这里选择使用SQLQuery下的sqloversqljdbc的方式8)对数据源进行设置Name:BarData必须与组件定义界面BarChart中设置的数据源名称一致Driver:com.mysql.jdbc.Driver连接数据库的驱动程序Password:root数据库密码Username:root数据库用户URL:数据库连接字符串jdbc:mysql://localhost:3306/sampledata?useUnicode=true&characterEncoding=utf-8Query:SQL查询脚本SELECTc.CUSTOMERNAMECUSTOMER,SUM(o.QUANTITYORDERED*o.PRICEEACH)ORDERAMOUNTFROMcustomersASc,orderfactASoWHEREc.CUSTOMERNUMBER=o.CUSTOMERNUMBERANDc.CUSTOMERNUMBER<150GROUPBYc.CUSTOMERNAME9)点击右上角按钮进行CDE分析的预览由于一睹为快已经进行了展示,这里截图省略...10)保存CDE报表到文件夹,这里保存到Public文件夹下11)到文件夹Public下查看文件这里看到了三个文件,CDEAnalysisDemo(实际为CDEAnalysisDemo.wcdf)和CDEAnalysisDemo.cdfde是CDE生成的控制仪表盘的显示的文件,而CDEAnalysisDemo.cda是CDA生成的文件提供数据支持下面详细介绍一下这三个文件:>>CDEAnalysisDemo.wcdf文件介绍选中下载后用文本编辑器打开可以看到其实就是一个XML文件,这个文件定义了仪表盘的标题、对仪表盘的描述等,值得注意的是这个XML的根节点为CDF,因为CDE是基于CDF的。Title:定义当仪表盘被渲染时html页面的标题可以在CDE编辑页面设置,默认为文件名description:对仪表盘的描述,可以在CDE编辑页面设置,默认为文件名author:作者记录谁制作的这个仪表,盘默认为空style:指定仪表盘使用的模板,就是一个Html文件在pentaho-cdf-dd\resources\styles目录下系统自带Clean和WDDocs两个模板,也可以定义自己的模板rendererType:渲染类型widget:一个布尔值指定这个仪表盘是否为一个窗口小部件(在保存是可以先Dashboard或widget)widgetname:窗口小部件的名字widgetparameters:渲染窗口小部件时需要的参数>>CDEAnalysisDemo.cda文件介绍CDA这个文件是CDA生成的,如果你没有安装CDA是不会有这个文件的,不过本例数据源涉及到了通过CDA取数,就对这个文件做一个简单说明,选中下载后用文本编辑器打开,可以看到这就是一个数据源的定义XML文件。包括数据库连接驱动Driver、用户User、密码Pass、连接字符串Url、查询语句Query等,都是些常用的JDBC知识,这里就不再一一赘述。>>CDEAnalysisDemo.cdfde文件介绍选中下载后用文本编辑器打开,由于内容太多,主要是对Layout布局、Component组件、Datasource数据源定义的描述,这里就截取一部分进行介绍Layout布局:Component组件:Datasource数据源:CDFDE文件主要定义仪表盘的布局和页面中都包括哪些仪表盘组件,并进行了哪些设置,即CDE生成的控制仪表盘的显示的描述文件。创建JPivot报表JPivot是一组用于操作OLAPTable的JSP标签库,用户可以执行基本的OLAP操作,如切片、切块、上钻、下钻等。JPivot使用Mondrian作为它的OLAP服务器但也支持XMLA数据源访问。目前Pentaho社区版已经停止了对JPivot的支持,但作为Pentaho自带的多维度分析报表工具,本小节也将重点进行介绍。1)准备数据源,本实例将展示Pentaho自带测试库中的orderfact表中的订单销售数据进行展示,主要用到的字段如下:这里主要使用年度year_id、季度qtr_id、月度month_id的时间维度及产品productcode维度对销售总额totalprice进行统计分析2)根据需要展示的事实表数据进行数据源Schema和Cube的创建,创建的方法可以参考1.3.2小节的内容DatasourceName:JPivotDataSQLQuery:SELECTof.totalprice,ductcode,of.year_id,of.month_id,of.qtr_idFROMorderfactasof3)对JPivotData数据源进行修改编辑,调整维度字段、计量字段。维度字段:YEAR、QTR、MONTH、PRODUCT计量字段:TOTAL在数据源管理界面,下载数据源描述文件进行查看(这里主要介绍,界面设置在XML描述文件中是如何体现的)可以看到XML的根节点为Schema的名称名称为JPivotData,Cube节点的属性也为JPivotDataCube的结构中主要包含:View:数据源SQL或者TableDimensionUsage:维度区域,其中使用到的Dimension需要在Cube同级结构中进行定义申明Measure:计量字段定义4)点击HOME界面菜单CreateNew->JPivotView进入到JPivot多维度报表创建界面5)选择数据源及Cube,这里选择前面建立的JPivotData数据源,并点击OK6)进入到JPivot查看及设计界面,这里系统会根据数据源Cube的描述进行自动生成相关样式和结构7),经过简单的调整,这里主要是加上了图标显示功能,用户可以在选择查看不同维度指标数据的时候,响应的图标也会根据展示的内容进行变化,所涉及到的设置功能都可以通过,编辑菜单相关的功能按钮实现,这里就不再一一讲述下图为调整后的展示效果,展示的是所有年度个季度销售数据总和的数据:8)保存报表到Public目录下,名称为:JPivotAnalysisDemoPentaho拓展使用SchemaWorkbench创建数据源PentahoSchemaWorkbench是一个Schema数据源定义及发布工具,主要基于Mondrian技术架构,您可以使用它通过界面化的方式对数据源进行定义,并直接通过工具发布到Pentaho系统中。SchemaWorkbench下载安装1)SchemaWorkbench下载下载版本需要与Pentaho系统中Mondrian的版本一致。Mondrian存放路径:biserver-ce\tomcat\webapps\pentaho\WEB-INF\lib这里可以看到Pentaho5.4中使用的Mondrian版本为3.1,因此SchemaWorkbench我们也选择3.1的版本进行下载。下载地址:/projects/mondrian/files/schema%20workbench/2)SchemaWorkbench安装SchemaWorkbench的安装就没什么特殊的,只需要系统中安装JDK,并在环境变量中进行了配置即可。这里值得注意的是,由于SchemaWorkbench创建Schema数据源的时候需要通过JDBC连接不同的数据库,需要把相应的数据库驱动Jar包存放到工具的drivers目录下,如本实例需要连接的MySQL数据库的驱动Jar包。创建Schema过程1)准备数据源,本实例将展示Pentaho自带测试库中的orderfact表中的订单销售数据进行展示,有三个维度,年度、季度、月度,计量维度为销售总额,数据库MySQL。2)在schema-workbench目录下点击workbench.bat以打开schema-workbench工具3)在Options下选择Connection建立数据库连接,我本地的连接参数如下:连接名称:SampleData连接类型:MySQL连接方式:Native(JDBC)主机名称:localhost数据库名称:sampledata端口号:3306用户名:root密码:root数据库连接面板,左侧有一些高级的设置菜单,适合进行一些高级参数的设置,以提高连接的性能等4)点击File->New->Schema创建Schema并保存为SaleData.xml5)右击Schema,选择Addcube,Name为:SaleAnalysis6)右击SaleAnalysis,选择AddView,Alias为:FACT7)右击View,选择AddSQL,在右边窗口Value中添加SQL语句SELECTof.year_id,of.month_id,of.qtr_id,of.totalpriceFROMorderfactasof8)右击SaleAnalysis,选择AddMeasure,并设置属性9)右击Schema,选择AddDimension,创建维度YEAR10)双击YEAR,设置所有层次的别名11)右击这个层次,
addView,并填写SQL12)右击层次添加至少一个
Level,并设置相关属性13)按照设置YEAR维度的方式设置,QURTER和MONTH14)右击SaleAnalysi,选择AddDimensionUsage,添加维度的引用15)按照设置YEAR维度引用的方式设置,QURTER和MONTH知识拓展:打开生成的SaleData.xml文件我们发现,通过SchemaWorkbench生成的Schema数据源XML文件与之前介绍利用Pentaho自带工具创建的Schema数据源没什么区别,因为都是基于Mondrian技术架构,遵循的xmla和jolap规范。使用SchemaWorkbench的优势在于比使用Pentaho创建Schema数据源更加易于拓展和稳定,功能也更加强大。到这里,一个Schema就已经建好了,下面进行介绍怎样把在SchemaWorkbench中建好的Schema发布到Pentaho平台中。在发布之前,首先要确保Pentaho处于开启状态。16)点击File->Publish,并填写相关参数,我本地的参数如下:ServerURL:http://localhost:8080/pentaho/User:Admin(系统登录用户)Password:Password(系统登录用户密码)PentahoorJNDIDataSource:MySQLConnect(数据库连接必须保证已经存在,没有则需要在Pentaho系统中创建,创建方法见前面章节内容)17)点击Publish,对Schema进行发布18)登录Pentaho系统,进入数据源管理界面,如果看到发布上去的Schema名称,则表示发布成功,并可以在后面的报表开发中使用使用ReportDesigner创建报表PentahoReportDesigner是一款所见即所得的开源报表设计工具,以JFreeReport为核心引擎,是一款所见即所得的报表设计工具。图形化界面,支持拖放,目前支持5种格式(PDF,HTML,XLS,RTF,CSV)预览和生成报表ReportDesigner特点介绍1)是一个独立的报表设计工具。可以不依赖Pentaho的报表服务器2)提供基本的画图功能,主要包括:直线、长方形、椭圆等3)提供SQLquerybuilder,方便用户创建自定义查询4)支持XQuery,Mondrian和自定义数据源5)提供联机报表校验功能,随时提示用户当前报表存在什么错误6)与Pentaho集成性好,可以很方便地发布报表到Pentaho系统中ReportDesigner下载安装1)下载ReportDesigner安装介质下载地址:/projects/pentaho/files/Report%20Designer/5.4/在使用之前请确认系统已经安装了JDK1.6及以上版本,并配置了JAVA_HOME等相关配置文件2)解压文件,可以看到ReportDesigner的系统目录,主要是Jar及配置文件等3)点击report-designer.bat进入工具ReportDesigner实例开发本实例将使用ReportDesigner工具开发客户资料报表,使用Pentaho测试库SampleData中表customer_w_ter的数据,在report-designer\lib\jdbc下添加驱动mysql-connector-java-5.1.17.jar1)点击新增报表,并保存为ReportDesignerDemo,并在右上角Data页中设置数据源2)选择JBDC进入数据源配置界面3)配置JDBC参数,并进行测试4)点击确认后,回到JDBC数据源管理界面,添加报表查询SQL,这里查询customer_w_ter表中的客户相关信息9)Data面板下我们可以看到,这里可以对Report定义功能或是Parameters参数等,本实例将不在继续拓展这里添加一个Functions,用来处理页码,右键Functions->AddFunctions,选择PageofPages,并改名为PageofPages10)调整布局,添加Label、text-filed组件进行编辑,详细步骤较多,这里就不再赘述这里选中区域进行布局后,可以通过右侧的Structrue进行属性配置,如设置位置、大小、颜色、样式等12)点击运行按钮进行调试,这里选择PDF输出13)发布报表到Pentaho,路径File->Publish或者是14)点击OK,如果连接成功会弹出Pentaho的文件管理界面,填好必要的参数和选择所要存放的路径15)发布成功后,登录Pentao系统,在BrowserFile下对Report进行管理16)点击Open打开报表进行查看使用Saiku插件创建多维度分析Saiku是很强大的多维度报表分析工具。作为Pentaho的分析插件,可以完全替代Pentaho自带的JPivot插件。目前Saiku也分社区版和企业版本。当然Saiku也可以独立于Pentaho平台,单独部署使用,作为一个轻量级的OLAP分析引擎,可以方便的扩展、嵌入和配置。Saiku通过RESTAPI连接OLAP系统,利用其友好的界面为用户提供直观的分析数据的方式,它基于JQuery做的前端界面。Saike插件安装在Pentaho平台上安装Saiku插件很简单,可以在Pentaho平台的Marketplace中找到并进行安装,下面简单介绍一下使用Marketplace安装第三方插件:1)进入Pentaho,在File菜单下选择Marketplace2)进入Marketplace,搜索Saiku插件3)点击SaikuAnalysis,选择社区版本进行安装4)安装过程中可以在Java控制台看到,Saiku插件下载的路径5)安装成功后可以在biserver-ce\pentaho-solutions\system目录下看到Saiku程序6)重启Pentaho后,可以在CreateNew菜单下选到SaikuAnalysisSaikuAnalysis实例本实例将使用Saiku插件创建一个简单的分析报表,对销售数据按照年度、季度和月度进行分析,使用之前SchemaWorkbench创建的SaleAnalysisCube1)进入Saiku插件主页,由于是社区版本,只能使用CreateaNewquery功能2)进入创建SaikuAnalysis编辑界面3)在选择多维度数据这里选择SaleAnalysis,并通过拖拽的方式指定指标和行字段4)通过表格方式查看SaikuAnalysis,也是Saiku默认的方式5)点击右上角柱状图标志,进入到图标查看方式6)保存到文件下Public下,取名SaikuAnalysisDemo,在这里便可以对Saiku分析做权限等控制7)点击Openinanewwindow在新窗口查看SaikuAnalysis知识拓展:Saiku插件中有很多其他功能,这里简单列举几个>>条件过滤:可以根据条件过滤数据进行展示>>数据导出:Excel、CSV、PDF等格式的数据导出功能>>MDX编辑窗口:可通过MDX多维度表达式进行数据处理,适合高级用户>>维度字段筛选器,用户可以根据需要在维度字段对分析数据进行筛选Pentaho改造Pentaho平台是由于自身标准功能的一些局限性,在实际应用中不是那么友好或符合实际应用要求,因此基于Pentaho的二次开发也是很常见的事情,本章节主要从切换数据库、语言汉化及简单页面修改进行讲解,介绍一些简单的二次开发的流程。数据库迁移由于Pentaho平台自带的数据库为HSQLDB,在管理和使用过程中显得不那么方便和强大,因此切换数据库是Pentaho二次开发很基础的工作,本小节将介绍把HSQLDB切换成MySQL数据库的操作方法。1)准备MySQL数据库,这里就不在单独介绍MySQL数据库的版本要求必须是5.0及以上,本地安装的MySQL版本为5.12)把系统目录下的SQL脚本导入到MySQL数据库中这里可以使用MySQL的管理工具进行导入,或者是拷贝SQL脚本中的代码,直接在MySQL管理工具的执行窗口进行执行,类似于PLSQLDeveloper中SQL窗口方式知识拓展:打开数据库SQL脚本我们会发现,默认的字符集为CHARACTERSETlatin1为了以后处理中文方便,这里把/biserver-ce/data/mysql5中3个SQL脚本,把建库脚本的编码格式由latin1改为utf83)脚本导入或执行完后,可以在MySQL中看到创建的数据库实例 现在准备工作已经做好,下面开始进行配置数据迁移到MySQL的具体操作4)修改/biserver-ce/pentaho-solutions/system/applicationCperties文件#把文件中的参数修改为如下选项datasource.driver.classname=com.mysql.jdbc.Driverdatasource.url=jdbc:mysql://localhost:3306/hibernatedatasource.username=rootdatasource.password=rootdatasource.validation.query=SELECT15)修改/biserver-ce/pentaho-solutions/system/applicationCperties文件#把文件中的参数修改为如下jdbc.driver=com.mysql.jdbc.Driverjdbc.url=jdbc:mysql://localhost:3306/hibernatejdbc.username=hibuserjdbc.password=passwordhibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect6)修改/biserver-ce/pentaho-solutions/system/hibernate/hibernate-settings.xml文件#修改config-file标签<config-file>system/hibernate/mysql5.hibernate.cfg.xml</config-file>7)修改/biserver-ce/pentaho-solutions/system/quartz/perties文件#修改如下参数org.quartz.jobStore.driverDelegateClass=org.quartz.impl.jdbcjobstore.StdJDBCDelegate8)修改/biserver-ce/tomcat/webapps/pentaho/META-INF/context.xml文件修改driverClassName,url,validationQuery标签<Resourcename="jdbc/Hibernate"auth="Container"type="javax.sql.DataSource"factory="mons.dbcp.BasicDataSourceFactory"maxActive="20"maxIdle="5"maxWait="10000"username="hibuser"password="password"driverClassName="com.mysql.jdbc.Driver"url="jdbc:mysql://localhost:3306/hibernate"validationQuery="select1"/><Resourcename="jdbc/Quartz"auth="Container"type="javax.sql.DataSource"factory="mons.dbcp.BasicDataSourceFactory"maxActive="20"maxIdle="5"maxWait="10000"username="pentaho_user"password="password"driverClassName="com.mysql.jdbc.Driver"url="jdbc:mysql://localhost:3306/quartz"validationQuery="select1"/>9)删除/biserver-ce/tomcat/conf/Catalina/localhost/pentaho.xml文件,该文件在启动tomcat时会自动创建10)修改/biserver-ce/tomcat/webapps/pentaho/WEB-INF/web.xml文件,在启动的时候不在启动停用默认的hsqldb#注释掉以下内容<!--context-param><param-name>hsqldb-databases</param-name><param-value>sampledata@../../data/hsqldb/sampledata,hibernate@../../data/hsqldb/hibernate,quartz@../../data/hsqldb/quartz</param-value></context-param--> <!--listener><listener-class>org.pentaho.platform.web.http.context.HsqldbStartupListener</listener-class></listener-->11)创建Sample数据,在pentaho5.4版本中并没有Sample数据,需要自行在网上下载sampledatamysql.sql脚本,并导入到MySQL数据库中12)修改/biserver-ce/pentaho-solutions/system/simple-jndi/perties文件#注意对比文件内容,用下面代码进行替换SampleData/type=javax.sql.DataSourceSampleData/driver=com.mysql.jdbc.DriverSampleData/url=jdbc:mysql://localhost:3306/sampledataSampleData/user=pentaho_userSampleData/password=passwordHibernate/type=javax.sql.DataSourceHibernate/driver=com.mysql.jdbc.DriverHibernate/url=jdbc:mysql://localhost:3306/hibernateHibernate/user=hibuserHibernate/password=passwordQuartz/type=javax.sql.DataSourceQuartz/driver=com.mysql.jdbc.DriverQuartz/url=jdbc:mysql://localhost:3306/quartzQuartz/user=pentaho_userQuartz/password=passwordShark/type=javax.sql.DataSourceShark/driver=com.mysql.jdbc.DriverShark/url=jdbc:mysql://localhost:3306/sharkShark/user=saShark/password=SampleDataAdmin/type=javax.sql.DataSourceSampleDataAdmin/driver=com.mysql.jdbc.DriverSampleDataAdmin/url=jdbc:mysql://localhost:3306/sampledataSampleDataAdmin/user=pentaho_adminSampleDataAdmin/password=password13)启动BIServer,看看是否能够正常启动,如能正常启动则表示数据库切换成功14)登录系统,修改SampleData数据源的连接库,由于Pentaho自带的Sample数据库是HSQLDB,这里我们已经进行了替换,因此需要到数据源管理界面中进行数据库切换修改15)到此替换Pentaho默认数据库HSQLDB为MySQL的工作就完成了,如果启动发现问题,请根据步骤逐步进行检查多语言处理Pentaho社区版目前自带的语言包支持多种语言,默认为英语,官方目前不支持中文,因此对Pentaho进行汉化也是非常有必要的事情。Pentaho的多语言主要有两种:界面多语言、报表多语言等。本小节将介绍怎样在Pentaho平台界面添加中文。Pentaho界面语言信息主要分成三类:提示信息、界面显示信息和标题信息1)Pentaho界面多语言路径biserver-ce\tomcat\webapps\pentaho\mantle\messages多语言文件以properties文件的格式存放,主要有filechooser文件选择框多语言文件、MantleLogin登录界面多语言文件、mantle主体界面多语言文件、Widgets插件界面多语言文件及supported_languages文件。2)在文件mantleMessages_supported_perties中添加一行zh=中文,并以UTF-8的编码进行保存3)复制mantleMperties文件保存为mantleMessages_perties4)编辑mantleMessages_perties编辑文件并内容进行翻译,并以UTF-8的编码进行保存5)在Pentaho主菜单View->Languages->中文6)Pentaho完整界面刷新后,翻译后的中文生效知识拓展:在地址栏里系统带上了locale=zh的参数,因为系统会自动根据浏览器语言进行语言筛选,没有找到对应的多语言文件,则默认为英语。可以看出此时主菜单也变成了翻译后的中文,由于界面个性化的方式都大同小异,这里就不在赘述。在biserver-ce\tomcat\webapps\pentaho路径下,用文本编辑器打开Pentaho系统的入口页面index.jsp可以看出在登录Pentaho系统的时候,系统会自动去加载\mantle\messages目录下的多语言文件,并
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新型小区施工方案(3篇)
- 科技体验活动策划方案(3篇)
- 海印年会活动策划方案(3篇)
- 河道环保施工方案(3篇)
- 花园装修施工方案(3篇)
- 过期口红活动方案策划(3篇)
- 2025年智能交通系统设计与运营手册
- 技能岗位培训方案
- 2025年中职(市场调研)问卷设计阶段测试卷
- 高二生物(稳态专题)2025-2026年下学期试题及答案
- 2025年全国注册监理工程师继续教育题库附答案
- 波形护栏工程施工组织设计方案
- 自建房消防安全及案例培训课件
- 2025年广东省第一次普通高中学业水平合格性考试(春季高考)思想政治试题(含答案详解)
- 2025云南楚雄州永仁县人民法院招聘聘用制司法辅警1人参考笔试试题及答案解析
- 2024年和田地区遴选公务员笔试真题汇编附答案解析
- 股份挂靠协议书范本
- 动力电池热管理系统设计指南-2025
- 小儿蜂窝组织炎基础护理要点
- 无人机培训课件
- 2025年内蒙古能源集团招聘(计算机类)复习题及答案
评论
0/150
提交评论