我对saiku报道不太熟悉。当我运行saiku报告foodmart db的这个显示立方体时。但我想使用postgresql中的数据库。为此我创建了一个连接文件。将driver.jar文件添加到web-inf / lib文件夹中。但我无法在立方体中看到数据库。
我们只能使用foodmart数据库?我们不能使用其他数据库?
答案 0 :(得分:2)
示例数据
在PostgreSQL中创建示例数据:
create table olap_data(id serial, measure int, dim varchar);
insert into olap_data (measure, dim) select * from generate_series(1,10) cross join (values ('a'), ('b'),('c')) a;
select * from olap_data;
连接文件
添加连接文件(名称无关紧要,我正在使用dummy_test
)。
目的地:/saiku-server/tomcat/webapps/saiku/WEB-INF/classes/saiku-datasources/dummy_test
内容:
type=OLAP
name=Financial
driver=mondrian.olap4j.MondrianOlap4jDriver
location=jdbc:mondrian:Jdbc=jdbc:postgresql://localhost:5432/tgr; \
Catalog=/home/Applications/Saiku/saiku-server/tomcat/webapps/saiku/WEB-INF/classes/foodmart/dummy_cube.xml;JdbcDrivers=org.postgresql.Driver;
username=YourUsername
password=YourPassword
不要忘记设置正确的连接字符串,用户名和密码。
添加OLAP架构定义
目标:/home/Applications/Saiku/saiku-server/tomcat/webapps/saiku/WEB-INF/classes/foodmart/dummy_cube.xml
(必须匹配数据源定义文件中定义的路径)。
内容:
<Schema name="New Schema1">
<Cube name="Sample Cube" visible="true" cache="true" enabled="true">
<Table name="olap_data" schema="public">
</Table>
<Dimension type="StandardDimension" visible="true" foreignKey="id" name="Sample Dimension">
<Hierarchy name="Sample Hiearchy" visible="true" hasAll="true">
<Table name="olap_data" schema="public">
</Table>
<Level name="Sample Level" visible="true" column="dim" uniqueMembers="false">
</Level>
</Hierarchy>
</Dimension>
<Measure name="Measure" column="measure" aggregator="sum" visible="true">
</Measure>
</Cube>
</Schema>
让它发挥作用
重启Saiku
从浏览器中清除缓存
现在您应该在Saiku
中看到示例多维数据集