Tag - OpenSource

Mondrian schema OpenBI OpenSource    2017-07-19 23:12:45    819
1、首先根据文档介绍,大致了解聚合表的概念:http://blog.linezing.com/?p=1448
2、根据聚合表名称规则建立聚合表(前提是已经有了可以使用的schema的cube,然后添加聚合表)
我的做法是先在schema中定义好聚合表的相关值,如:
<cube name="cube_agent_state" caption="test" encoding="UTF-8">
  <Table name="fact_agent_status_fact">
   <AggName name="agg_c_fact_agent_status_fact" >
       <AggFactCount column="fact_count"/>
       <AggForeignKey factColumn="time_id" aggColumn="time_id" />
       <AggForeignKey factColumn="agent_no" aggColumn="agent_no" />
       <AggForeignKey factColumn="agent_status" aggColumn="agent_status" />
       <AggForeignKey factColumn="reason_code" aggColumn="reason_code" />
       <AggMeasure name="[Measures].[times]" column="times"/>
       <AggMeasure name="[Measures].[length]" column="length"/>
   </AggName>
  </Table>
  <Dimension name="times" foreignKey="time_id" caption="时间">
   <Hierarchy hasAll="true" primaryKey="time_id" > 
    <Table name="dim_date" />
    <Level name="year" column="y_id" uniqueMembers="false" type="String" levelType="TimeYears" c
Mondrian OpenBI OpenSource    2017-07-19 23:06:12    809

找到Mondrian的配置文件mondrian.properties,修改如下几个配置项为如下值即可开启聚合表功能:

 

mondrian.rolap.aggregates.ChooseByVolume=true
mondrian.rolap.aggregates.Read=true
mondrian.rolap.aggregates.Use=true
mondrian.rolap.aggregates.rule.tag=default
mondrian.rolap.aggregates.rules=/DefaultRules.xml
 
 

 

by 刘迎光@萤火虫工作室
OpenBI交流群:495266201
MicroService 微服务交流群:217722918
mail: liuyg#liuyingguang.cn
博主首页(防止爬虫):http://blog.liuyingguang.cn
OpenBI问答社区:http://openbi.liuyingguang.cn/

saiku3 OpenBI OpenSource    2017-07-19 23:02:24    800

 

1、首先下载Saiku3.1的源码:https://github.com/OSBI/saiku/tree/release-3.1
2、以maven项目方式导入到eclipse中(此步骤可以不做)
3、修改下载的根目录中的pom文件,找到build节点-->pluginManagement节点-->plugins中添加如下代码
<plugin>
     <groupId>org.apache.maven.plugins</groupId>
     <artifactId>maven-surefire-plugin</artifactId>
     <configuration>
      <skip>true</skip>
     </configuration>
</plugin>
这段代码主要是修改构建过程中跳过junit测试,此项可以不改,使用命令行模式:
mvn clean install -DskipTest
但是到这里大部分人还是会执行失败,接着修改
4、处理失败的情况
由于saiku-ui构建的时候会执行一个文件“minify.patch”,在saiku-ui的pom文件中找到这行代码,注释掉,然后,然后还是先别急着构建的,还是有问题的,继续修改
之前我构建的时候,顺手把plugin给删了,所以没构建,今天构建plugin的时候,发现无论如何有几个文件报错

于是我放弃了,毕竟我现在还用不到这个plugin
在saiku目录下的pom文件中,将<module>saiku-bi-platform-plugin-p5</module>一行注释掉,构建就可以了

5、项目构建
如果你导入到eclipse中了,那么saiku项目右键-->Run As -->Maven install即可
如果没有导入到eclipse中,那么使用脚本构建
mvn clean install -DskipTest
build成功后,会在saiku-server的target目录中出现如下一些文件


重点在选中文件,打开

文件都在,然后解压,启动即可

转载请注明出处,也不枉我辛苦一番,谢谢
 
 

 

by 刘迎光@萤火虫工作室
OpenBI交流群:495266201
MicroService 微服务交流群:217722918
mail: liuyg#liuyingguang.cn
博主首页(防止爬虫):http://blog.liuying

Saiku3 OpenBI OpenSource    2017-07-19 22:33:25    771
下载项目:https://github.com/OSBI/saiku/tree/saiku-3.6
,导入到eclipse,maven install会失败(saiku-service),原因是在构建saiku-service的时候,自动没有跳过测试,会出现很多错误,在saiku-service项目pom文件中,在plugins节点下添加:
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-surefire-plugin</artifactId>
          <configuration>
            <skip>true</skip>
          </configuration>
        </plugin>

再次构建saiku-service,构建成功

然后再次构建saiku-3.6,失败,saiku-ui构建失败,进入saiku-ui项目中的pom文件,注释掉一句代码:
<patch patchfile="minify.patch" failonerror="true" originalfile="target/saiku-ui/index.html" />

再次单独构建saiku-ui,构建成功

再次构建saiku-3.6,构建失败

由于构建saiku-plugin失败,简单处理方式就是进入saiku-2.6项目的pom文件中,将
<module>saiku-bi-platform-plugin-p5</module>

再次构建saiku-3.6,构建成功

构建虽说成过了,但是运行的时候发现缺少js文件,这是个很大的问题,导致整合项目无法运行




 

by 刘迎光@萤火虫工作室 
OpenBI交流群:495266201 
MicroService 微服务交流群:217722918 
mail: liuyg#liuyingguang.cn 
博主首页(==防止爬虫==):http://blog.liuyingguang.cn

saiku2 java OpenSource    2017-07-19 22:24:35    757
以下步骤基于我的nexus足够多的资源,我稍后会将我部署的proxy的nexus库分享出来

1、下载源码:
    saiku2.6的源码:https://github.com/OSBI/saiku/tree/v2.6
    saiku-query的源码:https://github.com/OSBI/saiku-query
    saiku-ui的源码:https://github.com/OSBI/saiku-ui/tree/v2.6

2、将项目都导入到eclipse中
    修改saiku-core的pom.xml,将<repositories>节点的整块儿代码都注释掉,因为通过我实际编译的过程中发现很多jar包在一些nexus仓库上就是坏掉的,所以不要整体使用外部的nexus库
    然后将<repositories>节点的所有代码迁移到saiku-service中
3、构建saiku-query:
    在这里,我们需要将saiku-query项目deploy到我们自己的nexus库中,详细方式参考文章:
    http://note.youdao.com/share/?id=583871b294cbab9d015b037a2ec69fef&type=note
    
4、构建saiku-core(20160701修改),理论上,这里应该deploy到nexus中,但是eclipse本地构建,不需要deploy到eclipse也可以
    修改saiku-core和saiku-olap-util下的pom文件中仓库地址(repositories节点下)为:
    
<repository>
            <id>mine</id>
            <name>public Releases</name>
            <layout>default</layout>
        </repository>
        <repository>
            <id>mine-meteorite-bi-release</id>
            <name>publ
2/2