基
据我所知,到目前为止,我必须使用OLAP服务器作为MDX查询和SQL数据库之间的连接器,以提供XMLA作为数据源。因此我想使用Mondrian OLAP服务器。
问题:
现在我需要启动Mondrian OLAP服务器,将其连接到PostgreSQL数据库并提供OLAP架构。
我无法找到任何一步一步的指南或任何有用的蒙德里安文件。这对我来说都是一片大云。
答案 0 :(得分:5)
经过许多小时,我找到了这个帖子:Github - Mondrian issue 202
Mondrian开发人员在这个帖子中明确指出,几乎整个文档已经过时,并且与实际的Mondrian 4 OLAP服务器没有多少关系。
他们说Mondrian 4不再使用可部署的WAR文件,并且架构有很大的变化。
为了让Mondrian运行,我下载了这个启动mondrian服务器的maven项目:mondrian-xmla-spike
我用所描述的德比Foodmart数据库运行了一切。
您可以将项目作为maven项目导入到您选择的IDE中(我做了什么)或运行mvn via。控制台。
在maven项目中,您必须检查硬编码路径的所有文件(不是很多)并将其更改为您的环境。
如果您已完成此操作,并将项目作为应用程序启动,则应通过以下方式访问Mondrian服务器。地址http://localhost:8888/xmla
您可以连接任何可以使用XMLA数据源并支持Mondrian OLAP服务器的组件!最后一部分非常重要。 Mondrian并不完全符合MDX标准。 Penthao一边做的不好决定!大多数OLAP组件或BI工具仅支持MS SQL Server作为XMLA数据源。
要将现有的maven项目连接到PostgreSQL数据库,我必须执行一些步骤:
4.3.1.5-191
)。您可以从此处选择一个:Penthao Mondrian Versions 下载正确的JDBC驱动程序(对我来说是JDBC42):PostgreSQL JDBC Driver并将JDBC驱动程序(.jar)添加到项目库中
或者从这里添加正确的JDBC驱动程序(我使用9.4.1209
):PostgreSQL JDBC Driver JDBC 4.1到你的maven pom(xmla-spike.xml)。
将datasource.xml中的<DataSourceInfo>
更改为:
Provider=mondrian;Jdbc=jdbc:postgresql://localhost:5432/default?user=postgre;JdbcDrivers=org.postgresql.Driver;Catalog=/WEB-INF/Schema.xml;
jdbc:postgresql://localhost:5432/default?user=postgre
jdbc:postgresql://host:port/database
创建Schema.xml
文件并编写一个简单的架构,如下所示:How to Design a Mondrian 4 Schema
您可以在此处查看带有元模型4的Foodmart示例架构:Foodmart.xml metamodelVersion="4.0"
<Catalog name="*">
必须加上Schema.xml
这对我有用。我希望我可以帮助其他人。如果我忘了一些步骤,请评论,我将添加缺少的步骤。