看了很久的资料,最终迫于项目人力不足,目前只有我一个人在半开发阶段,还是不得不“拜倒在”OpenI的石榴裙下,一直在网上查相关的入门资料,结果最多也就是给介绍下怎么运行官方的Demo,可要真正理解还是需要自己new一个出来跑跑才行,直接把官方的war丢在tomcat下面运行始终觉得没什么看点。
openI官方没有发布很多的资料,唯一可以了解下怎么部署和一些基本配置的就是Wiki上面少的可怜的英文资料(http://wiki.openi.org/),官方现在也渐渐在Pentaho靠拢,说明Pentaho的确很强大。
好吧,现在开始自己用数据搞点简单的报表出来。在这之前最好能了解下Mondrian和JPivot,并且运行下官方的Demo作为热身。先把官网的Demo下来吧,哪里下,怎么解压导入到Myeclipse就不细说了,网上有相关的资料。要运行OpenI需要Mondrian提供数据源,所以千万不要丢掉了Mondrian.war这个东西。
1. OpenI是基于Mondrian和JPivot的,可以说很大部分的工作都是他们俩做的,所以先配置下DataSource信息吧,把Mondrian解压后找到WEB-INF文件夹下面的datasource.xml,然后按照Demo中的FoodMart的格式配置我们自己的DataSource信息(可以参考下http://wiki.openi.org/installation/setup-xmla-interface-for-olap-servers)。 如果我们的数据库中有中文,就要设置字符集,否则看到的就是问号,问号,还是问号,可恶的字符集!字符集需要在两个地方进行修改,一个是Mondrian的WEB-INF下面的Web.xml下面找到
<servlet-name>MondrianXmlaServlet</servlet-name> <servlet-class>mondrian.xmla.impl.DefaultXmlaServlet</servlet-class>
修改为
<servlet> <servlet-name>MondrianXmlaServlet</servlet-name> <servlet-class>mondrian.xmla.impl.DefaultXmlaServlet</servlet-class> <init-param> <param-name>CharacterEncoding</param-name><param-value>UTF-8</param-value> </init-param> </servlet>
另外一个地方就是我们的jdbc了,具体可以见附件xml的<DataSourceInfo>标签下面的内容,一个是sqlserver的字符集设置,另外一个是Oracle的字符集设置,mysql的字符集和sqlserver的修改方法一样。
2. 将我们的Schema文件放到Mondrian文件下的WEB-INF\queries中,我们的Cube,维度,度量全部在这里面。如果不想自己写的同学可以直接使用网上的一些Mondrian入门提供的Schema文件。
3. 搞定Datasource后就可以new一个Peoject出来,启动OpenI,进入主界面后找到Preferences->Create New Project,注意XMLA URL 这一栏,可以填写我们datasource.xml中相应datasource指定的uirl,我用的是http://localhost:8080/mondrian/xmla,如果你想使用Xmla方式连接数据库的话,譬如sqlserver自己有自己的OLAP分析引擎,这样可以直接填写你配置好的Xmla url地址(可以参考http://blog.csdn.net/zlp321002/article/details/5326151),这种情况不做赘述。还有记得给自己的Peoject找个好看点的logo。。。
4. 如果上一步在你点击get Catalog按钮没有红字提示,说明基本没什么大问题了,至于Catalog可以不选。这一部我们要在OpenI中增加一些Data Source,找到Preferences->Data Sources,找到右边的add new 然后选择XMLA,进入到OLAP Database界面,在XMLA URL那一栏输入datasource.xml中指定的URL值(http://localhost:8080/mondrian/xmla),点击get Datasources,然后可以在下面的下拉框中看到我们配置的datasource,选中一个后,选中我们的Catalog后就可以在下面看到我们可爱的Cubes了,点击save后就可以看到我们新增的Data Source了。
5.这一步就可以做出一些简单的报表了,找到Reports->Create New目录,选中我们刚才的那个data source,然后选择一个Cube(如果没有找到,可能就是上一步有问题了,检查下有什么问题),然后点击OK,就可以看到报表了,和JPivot做出来的效果差不多,其实就是JPivot做出来的。。。。
到现在一个还过得去的Project出来了,给自己鼓励一下,以后的项目还有很多工作,也还有很多弯路要走,仅仅乱码就看了一天多时间,做了很多无用功,希望自己能从这个项目学到很多新的东西,锻炼下接触到掌握一门新技术的能力,搞技术的就要耐得住寂寞才行。
附件中包含三个文件:一个Mondrian的简单介绍,一个Schema文件,一个datasource配置文件。如果各位看官觉得中间有什么问题,欢迎多多指正。
相关推荐
1.1.1.1. OPENI基本介绍 标准J2EE WEB应用软件架构 支持以下三种数据源创建报表 多维数据库(OLAP Servers) 关系型数据库(RDBMS Servers,如:MSSQL,MYSQL,ORACLE等) 数据挖掘服务器(|...
openi-admin-dashboard提供了一个简单的仪表板ui,可以与OPENi项目中的不同端点进行交互。 仪表板本身就是一个使用express,bootstrap,jade和jquery的node.js应用程序。 入门 安装Node.js / NPM 必须安装Node.js和...
OpenI2.0是一个基于Java的业务智能化平台,提供了数据集成、数据分析和报表生成等功能。下面是OpenI2.0源代码在MyEclipse中的部署说明: 1. 创建Web项目:在MyEclipse中创建一个新的Web项目,项目名称可以自定义,...
Openi 提供了一个全面的解决方案,涵盖了报表、在线分析处理(OLAP)、数据仓库和数据挖掘等多个关键模块。 1. **商业智能概述** - BI 是 Business Intelligence 的简称,主要用于将企业数据转化为洞察力,支持从...
- **创建一个空工程(Creating an empty project that uses OpenNI)**: 描述了如何在一个新的开发环境中设置OpenNI,并创建第一个简单的工程。 - **基本功能(Basic Functions)**: - **初始化(Initialize)**: 在使用...
总结来说,将OpenI1.3与Eclipse整合调试是一个涉及源码导入、项目配置、运行调试等多个环节的过程,通过这个过程,开发者可以在熟悉的Eclipse环境中充分利用OpenI1.3的功能,实现高效开发。对于初学者,这可能需要...
用于Pentaho CE的OpenI插件提供了一个简单干净的用户界面,以可视化OLAP多维数据集中的数据。 它支持直接Mondrian和基于xmla的连接,例如Microsoft SQL Server Analysis Services(SSAS),并提供附加功能,例如...
开源BI平台Openi是当前大数据分析领域中一个重要的工具,其致力于为企业提供高效、灵活的数据可视化和商业智能解决方案。Openi的数据仓库系统是其核心组件之一,它在数据处理、分析和决策支持方面发挥着关键作用。在...
安装模块: npm install git+ssh://git@gitlab.openi-ict.eu:cloudlet_api.git 您将需要通过 macports 或 aptitude 安装以下内容。 sudo port install JsCoverage sudo port install phantomjs 或者 sudo apt-get...
此主题聚焦于一个名为"OPENi"的项目,该项目使用JavaScript进行验收测试。我们来详细探讨一下JavaScript验收测试的相关知识。 首先,验收测试通常在系统测试之后,即在软件开发的后期阶段进行,目的是验证软件是否...
### 开源BI平台Openi的数据仓库系统开发 #### 一、商业智能(BI)概述 ...通过这样的设计与开发,旨在为企业提供一个高效、灵活的数据分析平台,帮助企业更好地利用数据资源,提升决策效率和竞争力。
新一代人工智能开源开放平台的构建是中国乃至全球人工智能领域发展的一个重要趋势。该平台的构建围绕重大产业方向,以汇聚创新资源、促进众创共享,形成产业生态为目标。北京大学教授、北京智源人工智能研究院院长...
- **OLAP Server**:Mondrian是一个开源的在线分析处理(OLAP)服务器,它允许用户快速查询和分析多维数据集。 - **ETL工具**:Enhydra Octopus和JasperETL用于数据提取、转换和加载(ETL)过程,将数据从不同...
"openi_aggregator"是一个基于JavaScript的项目,其主要功能可能是数据聚合或信息整合。在JavaScript环境下,这样的工具常用于处理大量数据,将其整合到一个统一的格式或接口中,以便于数据分析、展示或者进一步的...
- openI的网站设计相对简单,但它提供了一个“盲人摸象”的图像,可能暗示商业智能领域的复杂性和多维度。 2. **JasperSoft** - 官方站点:[www.jaspersoft.com](http://www.jaspersoft.com) - 开源站点:...