pentaho学习笔记要点.docx
- 文档编号:9133023
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:44
- 大小:1.32MB
pentaho学习笔记要点.docx
《pentaho学习笔记要点.docx》由会员分享,可在线阅读,更多相关《pentaho学习笔记要点.docx(44页珍藏版)》请在冰豆网上搜索。
pentaho学习笔记要点
一、Pentaho整体架构
二、Clienttools
1.ReportDesigner
报表创建工具。
如果想创建复杂数据驱动的报表,这是合适工具。
2.DesignStudio
这是基于eclipse的工具,你可以使用它来创建手工编辑的报表或分析视图xaction文件,一般用来对在reportdesigner中无法增加修改的报表进行修改。
3.AggregationDesigner
帮助改善Mondriancube性能的图形化工具。
4.MetadataEditor
用来添加定制的元数据层到已经存在的数据源。
一般不需要,但是它对应业务用户在创建报表时解析数据库比较容易。
5.PentahoDataIntegration
这是kettleetl工具。
6.SchemaWorkbench
帮助你创建rolap的图形化工具。
这是为分析准备数据的必须步骤。
三、PentahoBIsuitcommunityediton安装
硬件要求:
RAM:
Atleast2GB
Harddrivespace:
Atleast1GB
Processor:
Dual-coreAMD64orEM64T
软件要求:
需要JRE1.5版本,1.4版本已经不再支持。
修改默认的端口8080,打开\biserver-ce\tomcat\conf目录下的server.xml文件,修改 同时在这部分可以调整ApacheTomcat参数。 在修改了该端口号后,必须同时修改\tomcat\webapps\pentaho\WEB-INF目录下的web.xml文件中的 //localhost: 8080/pentaho中的端口号。 否则administration-console中不能连接到biserver。 四、配置数据库连接 如果要是pentahobiserver能连接到关系数据库,需要将相应数据库driver的jar包拷贝到server/biserver-ce/tomcat/common/lib目录。 为了能在administrationconsole中创建数据库连接并测试,需要将相应的数据库driver的jar包拷贝到server/administrationconsole/jdbc目录。 下面是具体关系数据库连接设置说明。 1、连接oracle数据库。 需要将oracle的driver类class12.jar包拷贝到/Pentaho/server/enterprise-console-server/jdbc/或/biserver-ee/server/enterprise-console-server/jdbc/ /Pentaho/server/bi-server/tomcat/common/lib/或/biserver-ee/server/bi-server/tomcat/common/lib/目录。 执行\Pentaho\Server\administration-console目录下的start-pac.bat启动adminconsole或biserver。 在Adminstratorconsole中配置数据库连接: 在iE中输入http: //localhost: 8099/后进入管理界面,点左边的administrator,在右边窗口中点databaseconnection进入下面的界面。 在name中输入要创建的数据库连接的名称,在driverclass中选择要使用的driver类,username中输入访问数据库的用户、password中输入相应的密码,在url中输入访问数据库的连接信息: jdbc: oracle: thin: @xzq: 1521: oradata。 在@之前的是固定信息,@之后分别是服务器名称或IP: 端口号: 数据库服务名。 2、连接MSSqlserver数据库 在iE中输入http: //localhost: 8099/后进入管理界面,点左边的administrator,在右边窗口中点databaseconnection进入下面的界面。 在name中输入要创建的数据库连接的名称,在driverclass中选择要使用的driver类,username中输入访问数据库的用户、password中输入相应的密码,在url中输入访问数据库的连接信息: jdbc: Microsoft: sqlserver: //localhost: 41433;DatabaseName=GOSLDW。 //前的字符是固定的,//后是数据库服务器名或ip地址: 端口号;DatabaseName=数据库名。 五、ReportDesigner创建报表 5.1.创建步骤 第一步: 定义数据源,创建dataset 第二步: 定义reportlayout,reportlayout有一组band构成,包括reportheader、reportfooter、groupheader、groupfooter以及detail构成。 第三步: 部署报表到BI server. 5.2.创建reporttitle 在左边的工具栏上拖一个label报表元素到reportheaderband中,双击label报表元素输入你想要的reporttitle,如图5-2。 你可以在右边的属性窗口中对该title进行属性定义,包括字体大小、颜色、样式等。 图5-2创建reporttitle 5.3.创建columnheader 在reporttitle下加几个label报表元素,构成你需要的columnheader,如图5.3所示。 图5-3创建columnheader 5.4.创建reportdetail 报表的Detail本身将产生报表的明细记录,这些记录有dataset提供,因此需要将dataset中的字段拖入reportdetailband即可,如图5-4。 图5-4产生reportdetail 5.5.创建reportsummary 在reportfooterband加上汇总元素的描述标签和相应的汇总计算字段,如图5-5所示。 这里的关键是需要生产汇总计算字段,图中生成了两个librarycount和totallibrarysize,要产生这两个汇总字段,需要在右边data页的function中增加function字段,分别利用了count(running)和summary(running)函数 5.6.画布大小设置 点击菜单file->pagesetup,出现图5.6所示的界面,在该界面中可以设置画布的大小 图5.6 5.7.创建图表 所有图表都有一个showlabel属性,默认是hidelabel,在这种情况下,图表上不会显示相应的值,图表上能显示的值一般有三种情况,分别是0、1、2(对piechart有3),分别表示系列的描述、category描述、项值,如果需要组合显示,可以采用{0},{2}这样的格式来表示。 5.7.1.Barchart Barchart对比较不同类别数据的大小是有用的。 在左边的工具按钮中拖入chart图标到reportheader,如图5.7.1 图5.7.1 双击该图出现图5.7.2所示的属性窗口 图5.7.2barchart属性设置 在左边窗口中设置相关的显示属性,在右边窗口中指定显示的数据字段。 这样就完成了图形报表的创建。 技巧: Pentaho中的数据集是同报表绑定的,如果想在同一报表中显示多张chart报表,需要利用subreport,在不同的subreport中分别创建报表完成。 5.7.2.区域图(Areachart) 区域图用于比较两个或多个数据集间的差异是有用的。 5.7.3.线性图(linechart) 线性图对分析发展趋势是有用的。 注意,堆积和堆积百分比(stackandstackpercent)不能用于linechart。 5.7.4.饼图(piechart) 饼图一般用来分析不同category占总值的占比分析。 饼图有一个labelformat属性,该属性值有以下几种: {0}: seriesname, {1}: : seriesrawvalue {2}: percentagevalue {3}: totalrawvalue 5.7.5.环形图(ringchart) 环形图类似于饼图,除了它呈现为环形,而饼图是实体填充外,没有什么差异。 5.7.6.多饼图(mutipiechart) 根据category呈现一组饼图,每一个category对应一个饼图。 5.7.7.瀑布图(warterfallchart) 瀑布图呈现了唯一一个跨category的stackedbarchart。 这种图形对于一个category同另一个category进行比较时是有用的。 通常最后一个category等于所有别的category的总和。 5.7.8.条形和线形组合图(barlinechart) 在比较category值的同时查看趋势。 这是一个需要两个category数据集的图形,第一个产生barchart,第二个产生linechart。 5.7.9.冒泡图(bubblechart) 冒泡图允许你查看三维数据,前两维是传统的X/Y维,也就是域和范围(domainandrange)。 第三维代表单个气泡的大小。 六、将pentaho的资料库迁移到oracle数据库 默认情况下是使用HSQLDB数据库作为pentaho的资料库。 迁移步骤: 1、将oracleJDBC驱动class12.jar拷贝到..\tomcat\webapps\pentaho\WEB-INF\lib或..\tomcat\common\lib目录,供pentahoBI服务器访问oracle数据库使用。 另外也需要将oracleJDBC驱动拷贝到administration-console\jdbc目录,否则用户不能正常使用pentaho管理控制台。 2、初始化Oracle10g数据库。 依次执行下面的sql包,在执行sql包前先创建两个用户,quartz/password,用于存储quartz相关信息,另一个用户hibuser/password用户存储pentahobi服务本身资料库。 Sql包说明: ●Create_repository_Ora.sql,用于创建pentaho_tablespace表空间、新增hibuser/password用户,以及datasource表。 ●Create_sample_datasource_Ora.sql,往datasource表中增加外部业务资料库连接信息。 ●Create_quartz_ora.sql,创建pentaho_user/password用户,quartz数据库、quartz表等。 3、修改contex.xml中配置数据库连接的信息。 这个文件位于\biserver-ce\tomcat\webapps\pentaho\META-INF位置。 修改该文件中的数据库连接相关信息。 4、打开biserver-ce\pentaho-solutions\system\hibernate中的hibernate-settings.xml配置文件,并启用oracle10g.hibernate.cfg.xml配置文件,配置示例如下。 5、调整oracle10g.hibernate.cfg.xml文件,主要是连接数据库的相关信息。 6、修改applicationContext-spring-security-hibernate.properties配置文件,它位于biserver-ce\pentaho-solutions\system。 下面是配置示例。 Jdbc.driver=oracle.jdbc.driver.OracleDriver Jdbc.url=jdbc: oracle: thin@localhost: 1521: ORCL Jdbc.username=hibuser Jdbc.password=password Hibernate.dialect=org.hibernate.dialect.Oracle10Dialect 7、修改quartz.properties,位于biserver-ce\pentaho-solutions\system\quartz目录。 当使用oracle存储quartz的各种信息时,需要启动如下实现类,即默认的org.quartz.impl.jdbcjobstore.StdJDBCDelegate被替换成OracleDelegate。 Org.quartz.impl.jobstore.driverDelegateClass=org.quartz.impl.jdbcstore.oracle.OracleDelegate 8、可选地,用户需要修改start_hypersonic.bat中的相关信息。 七、设置publication口令 Pentaho设置工具用来定义BI内容,如report、olapcube和metadata。 在这些工具中创建的内容文件要部署到BIserver上,可以通过手工拷贝这些内容文件到pentaho相应的solution文件夹下来完成部署,但典型的方式还是通过publication来完成部署。 为了能完成publication,需要设置相应的口令,默认情况下是没有设置口令的。 为了设置这个口令,需要在pentaho-solution/system目录下的publisher_config.xml文件中添加 这个例子中将password设置为”password”。 八、PentahoDataintegration PentahoDI包含的主要工具和实用程序: Spoon–图形化的DIIDE,用于创建Transformation和job Kitchen–运行job的命令行工具 Pan–运行transformation的命令行工具 Carte–在远程主机上运行transformation和job的轻量级服务器。 默认的登录用户是cluster/cluster.可以使用Encr–carte Carte将登录用户信息存储在/data-integration/pwd目录下的kettle.pwd文件中。 Encr—这个用来加密口令,用法为Encr–kettle 下图是关于pentahoDI各个工具和组件工作情况说明。 Dataintegrationengine负责解释和执行数据集成job和transformation。 Dataintegrationengine在物理上是以java库的形式存在,前端可以通过调用公共的api来执行job和transformation。 Dataintegrationengine也包括pentahoBIserver,将job和transformation作为actionsequence的一部分来执行。 Repository。 Job和transformation可以存储在数据库知识库中,前端工具可以通过连接知识库来装载job和tranformation定义。 8.1自动连接知识库 在user的home目录下的.kettle目录中打开kettle.properties文件,然后添加: KETTLE_REPOSITORY=KETTLE_MD–repositoryname KETTLE_USER=admin--credentialusername KETTLE_PASSWORD=admin--userpassword 这样每次启动spoon时,可以自动登录默认的repository。 8.2使用集群 要使用集群,首先要定义相关的子服务器(slaveserver),然后定义clusterschema,最后将定义好的clusterschema分配给相应的Transformationstep。 8.3创建数据库连接 在spoonIDE中在Transformation树结构中右键单击“数据库连接”->新建连接或新建数据库连接向导或按快捷键F3进入“创建数据连接”窗口。 目前支持几乎所有的数据库连接。 数据库连接选项: 1)Connectionname: 定义转换或者任务访问的连接的唯一名称,可以自行设置; 2)Connectiontype: 连接的数据类型; 3)Methodofaccess: 可以是Native(JDBC),ODBC,或者OCI,一般选择JDBC; 4)Serverhostname: 指定数据库部署的主机或者服务器的名称,也可以指定IP地 址; 5)Databasename: 指定连接的数据库的名称,如果是ODBC方式就指定DSN名称; 6)Portnumber: 设定数据库监听的TCP/IP端口号 7)Username/password: 指定连接数据库的用户名和密码; 数据库用法: 8.4TransformationStep 8.4.1.TextFileinput 这个step用来读取各种不同类型的text-file类型文件,常见的是由excel生成的cvs文件和固定宽度的flatfile。 该组件提供了指定文件列表或文件目录列表的能力,支持正则表达式,还可以接收前面步骤生成的文件。 8.4.2.表输入(tableinput) 该组件用来从数据库获取信息。 主要的属性有数据库连接、sql等。 在sql中可以使用变量,如果使用了变量,则必须勾选上“替换sql语句中的变量”选项,否则变量不能传入,sql语句将报错。 “允许延迟转换”选项可以避免不必要的数据类型转换,改善数据处理性能。 8.4.3.获取系统信息(getsysteminfo) 该组件用来获取kettle环境中可用的信息。 8.4.4.行发生器(generaterows) 产生多行,具体产生多少行可以通过设置limit(限制)来做设定。 可以通过field(字段)列表来指定字段名称及类型。 8.4.5.输入(De-serializefromfile,原名cube输入) 从二进制的kettlecube文件中读取记录行数据。 8.4.6.XBase输入 使用这一步可以读取大多数被称为XBasefamily派生的DBF文件。 8.4.7.Excel输入 该组件可以从一个或多个excel文件中读取数据,可以使用正则表达式来指定文件。 8.4.8.插入或更新(insert/update) 这个组件首先使用一个或多个对照key来查询表中的一行,如果找到,则更新,如果没有找到则插入。 选项 1、步骤名称: 步骤的名称,在单个转换中必须唯一。 2、连接: 目标表所在的数据库连接名称。 3、Targetschema: 要写入数据的表的Schema名称。 允许表名中包含“.”是很重要的。 4、目标表: 想插入或者更新的表的名称。 5、Commitsize: 提交之前要改变(插入/更新)的行数。 6、不执行任何更新: 如果被选择,数据库的值永远不会被更新。 仅仅可以插入。 7、用来查询的关键字: 可以指定字段值或者比较符。 可以用以下比较符: =, <>,<,<=,>,LIKE,BETWEEN,ISNULL,ISNOTNULL。 8、更新字段: 指定你想要插入/更新的字段 8.4.9.更新(Update) 这个步骤类似于插入/更新步骤,除了对数据表不作插入操作之外。 它仅仅执行更新操作。 8.4.10.删除(Delete) 这个步骤类似于上一步,除了不更新操作。 所有的行均被删除。 8.4.11.XML输出(XMLoutput) 这个步骤允许你从源中写入行到一个或者多个XML文件。 选项 8.4.12.数据库查询(Databaselookup) 这个步骤类型允许你在数据库表中查找值。 选项 步骤名称: 在单一转换中步骤名称必须唯一。 数据库连接: 想要写入数据的连接。 查询表: 想要查询的表名。 使用缓存: 数据库查询是否使用缓存。 这意味着在某种查询值的条件下,每次数据 库都能返回同样的结果。 8.4.13.流查询(Streamlookup) 这个步骤类型允许你从其它步骤中查询信息。 首先,“源步骤(lookupstep)”的数据被读到内存中, 然后被用来从主要的流中查询数据。 选项 步骤名称: 在单个转换中步骤名必须唯一。 源步骤: 数据来源的步骤名称 查询值所需要的关键字: 允许你来指定用来查询值的字段名称。 值总是用“等于” 比较符来搜索。 接收的字段: 你可以指定用来接收字段的名称,或者在值没有找到的情况下的缺省 值,或者你不喜欢旧的字段名称的情况下的新字段名称 PreserveMemory: 排序的时候对数据行进行编码以保护内存 Keyandvalueareexactlyoneintegerfield: 排序的时候对数据行进行编码 以保护内存 Usesortedlist: 是否用一个排序列表来存储值,它提供更好的内存使用。 这个步骤的使用类似于数据库查询步骤,区别在于数据库查询使用的是数据库表,而流查询是从文本文件等数据流中查询。 8.4.14.调用数据库存储过程(CallDBProcedure) 这个步骤允许你运行一个数据库存储过程,获取返回结果。 8.4.15.字段选择(selectvalue) 该组件对于选择、重命名或修改字段的长度和精度方面很有用。 这几方面被放在了不同的category中,在组件上分别放在不同的tab中。 8.4.16.过滤记录(Filterrows) 这个步骤允许你根据条件和比较符来过滤记录。 一旦这个步骤连接到先前的步骤中,你可以简单的单击“ 区域来构建条件。 选项 步骤名称: 步骤的名称,在单一转换中必须唯一。 技术资料,【Kette3.0用户手册】 发送“true”数据给步骤: 指定条件返回true的数据将发送到此步骤。 发送“false”数据给步骤: 指定条件返回false的数据将发送到此步骤。 8.4.17.空操作(什么也不做)(dummy(donothing)) 该组件什么也不做,只是用来做一些测试时的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- pentaho 学习 笔记 要点