Pentaho报表彻底研究
以下内容基于对Pentaho最新的社区版本7.1的安装和配置经验:
Pentaho是基于Java平台的商业智套件,之所以说它是套件是因为它包括一个Web Server平台和几个工具软件:报表、分析、图表、数据集成、数据挖掘等。Pentaho中报表系统由三部分组成:报表解释器(内核)、报表设计器(Pentaho Report Designer)、报表发布平台(Pentaho BI Server)。报表解释器即Pentaho报表相关的Java Api,其中报表相关Api又分为:Designer、Engine、Libraries三部分。报表设计器可以配置数据源、完成数据查询的生成、报表排版、报表预览、导出或发布报表模板。在报表发布平台上用户可以看到之前发布过来的报表模板(我理解发布平台上的数据源配置应该和报表设计器上一致才行)。用户可以导出自己想要的格式(目前支持Html、Pdf、Excel、Excel2007、CSV、RTF、Text),其中报表设计器和报表发布平台都支持导出数据,换句话说可以单独使用报表设计器也可以结合发布平台使用。因为它们都支持配置数据源、按报表格式查看、导出数据,唯一的区别就是发布平台没有编辑报表模板的功能。
Pentaho报表相关Api地址:
http://javadoc.pentaho.com/reporting710/
Pentaho Report Designer下载地址:
https://sourceforge.net/projects/pentaho/files/Report%20Designer/
Pentaho BI Server下载地址:
https://sourceforge.net/projects/pentaho/files/Business%20Intelligence%20Server/
Java环境配置
Pentaho基于Java环境,所以需要先配置Java环境下,网上有相应的教程,这里就略过了。
MySQL数据库安装
因为Pentaho BI Server示例中的数据库是HSQLDB,一般的生成环境中都是Mysql数据库。所以需要先安装MySql数据库。后面BI Server的数据连接配置会改成MySQL的。
集成到Java程序中
官网示例:https://help.pentaho.com/Documentation/7.1/0R0/140
Pentaho Report Designer
下载prd-ce-7.1.0.0-12.zip解压后进入report-designer文件夹,运行report-designer.bat即可启动(linux环境运行report-designer.sh)。启动后可以配置数据源、设置SQL查询、设计报表模板、导出报表、导出报表模板、发布报表模板到Pentaho BI Server。(注意:如果要迁移数据库的话需要安装相应的驱动)
官方使用教程:https://help.pentaho.com/Documentation/7.1/0L0/130
Pentaho BI Server
下载pentaho-server-ce-7.1.0.0-12.zip解压后进入pentaho-server文件夹,运行start-pentaho.bat即可启动(linux环境下运行start-pentaho.sh)。服务器成功启动后,浏览器中输入http://locahost:8080/就看到Pentaho BI
Server的登录界面了,点击下面的Login as an Evaluator选择Administrator登录进入Server。Server里面可以配置用户、计划任务、邮件服务器、插件库、文件管理、查看报表示例等。
配置BI Server迁移MySql数据库文档:https://help.pentaho.com/Documentation/7.1/Installation/Archive/030_Use_mysql_as_repository_database
配置过程踩过的坑:
1)Mysql中需要新增hibuser、jcr_user、pentaho_user等用户,执行示例中的SQL提权后还是导致报错的话,可以手动提权一下。
2)BI Server的插件库中有个中文插件,不过版本比较旧。有兴趣的可以参考下面资料做下汉化。
3)配置过程中如果报错,可以尝试运行下pentaho-server文件夹下面的start-pentaho-debug.bat(linux下运行start-pentaho-debug.sh)
4)如果BI Server配置的MySQL是本地的话localhost即可,如果是远程机器的话,需要设置成Ip地址的形式,注意在MySQL中开启权限。
5)因为7.1版本里没有sampledata_mysql.sql所以可以去之前的版本里面找找,手动导入到Mysql配置下示例数据
6)安装一些插件的话可能会导致一些报错或诡异的问题,所以对待插件要慎重
7)Report Designer和BI Server如果要做数据库迁移的话,都需要添加MySQL驱动,可以网上下载下
8)如果遇到如下报错:[org.pentaho.platform.dataaccess.datasource.wizard.service.impl.ConnectionServiceImpl]
ConnectionServiceImpl.ERROR_0002 - Unable to get the list of connections:
DatasourceMgmtService.ERROR_0004 - Error occurred during retrieving the
datasource可以先关闭BI Server然后删除或改名如下文件夹/pentaho-solutions/system/jackrabbit/repository然后重启BI Server
视频教程:https://www.youtube.com/watch?v=nYI7A9giFzE
参考资料:
Pentaho介绍:https://baike.baidu.com/item/Pentaho/3674418?fr=aladdin
项目中集成报表:http://blog.csdn.net/gancheng/article/details/3858922
http://hudeyong926.iteye.com/blog/1583838
http://wiki.pentaho.com/pages/viewpage.action?pageId=9800175
Pentaho社区:http://community.pentaho.com/
Pentaho官网:http://www.pentaho.com/product/product-overview
Sourceforge介绍:https://baike.baidu.com/item/sourceforge/6562141?fr=aladdin
BIServer下载地址:https://sourceforge.net/projects/pentaho/files/Business%20Intelligence%20Server/
Pentaho Report Designer教程:http://blog.csdn.net/zhaizhisheng/article/details/45190663
下载Jre:https://www.java.com/en/download/windows-64bit.jsp
Jre的安装及配置:http://blog.csdn.net/tiantang_1986/article/details/53894947
下载Jdk:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
PRD教程:http://www.doc88.com/p-1857576569700.html
Pentaho论坛:http://www.itisbi.com/forum.php?mod=forumdisplay&fid=15
Pentaho国外论坛:http://forums.pentaho.com/index.php
BIserver使用教程:http://www.cnblogs.com/driftingshine/p/6114065.html
Pentaho汉化:http://www.itisbi.com/forum.php?mod=viewthread&tid=281&extra=page=2
MySql安装包:https://dev.mysql.com/downloads/file/?id=471661
Pentaho配置Mysql:http://blog.sina.com.cn/s/blog_7253d6540102w79v.html
http://www.cnblogs.com/chinas/p/6544981.html
http://blog.csdn.net/kissmelove01/article/details/49362003
Pentaho插件配置:http://www.cnblogs.com/driftingshine/p/6114065.html
Pentaho Java文档:http://javadoc.pentaho.com/bi-platform710/pentaho-platform-api-7.1.0.0-12-javadoc/index.html
Pentaho报表集成到Java:https://help.pentaho.com/Documentation/7.1/0R0/140
MySQL迁移问题解决资料:http://www.cnblogs.com/littlehb/archive/2013/05/06/3062402.html
http://biwithui.blogspot.com/2014/04/error0002-unable-to-get-list-of.html