3

基础:

  • 具有正常和报告数据的 PostgreSQL 数据库
  • 从这里下载蒙德里安 zip
  • 我有一个客户端数据透视网格组件(DevExtreme Web

据我目前了解,我必须使用 OLAP 服务器作为 MDX 查询和 SQL 数据库之间的连接器来提供 XMLA 作为数据源。因此我想使用蒙德里安 OLAP 服务器。

问题:

现在我需要启动 Mondrian OLAP 服务器,将其连接到 PostgreSQL 数据库并提供 OLAP 模式。

  1. 如何启动 Mondrian OLAP 服务器?
  2. 如何将其连接到 PostgreSQL 数据库?
  3. 如何向 mondrian 服务器提供模式?
  4. 最后,如何连接到 mondrian 服务器?

我找不到任何分步指南或任何有用的 mondrian 文档。对我来说,这一切都是一片乌云。

4

1 回答 1

5

问题

经过很多很多小时后,我发现了这个帖子:Github - Mondrian issue 202

Mondrian 开发人员在此线程中明确指出,几乎整个文档都已过时,并且与实际的 Mondrian 4 OLAP 服务器没有太多关系。

他们说 Mondrian 4 不再附带可部署的 WAR 文件,并且架构发生了很大变化。


启动 Mondrian OLAP 服务器

为了让 Mondrian 运行,我下载了这个启动 mondrian 服务器的 maven 项目:mondrian-xmla-spike

我使用描述的 derby Foodmart 数据库运行所有内容。

您可以在您选择的 IDE(我所做的)中将项目作为 maven 项目导入,也可以通过运行 mvn。安慰。


使用 Mondrian 作为 XMLA 提供者

在 maven 项目中,您必须检查所有文件(不是很多)的硬编码路径并将它们更改为您的环境。

如果您已完成此操作,并将项目作为应用程序启动,则应该可以通过以下方式访问 Mondrian 服务器。地址上的码头服务器http://localhost:8888/xmla

您可以连接任何可以使用 XMLA 数据源并支持 Mondrian OLAP 服务器的组件!最后一部分非常重要。Mondrian 并不完全符合 MDX 标准。Penthao方面的错误决定!大多数 OLAP 组件或 BI 工具仅支持将 MS SQL Server 作为 XMLA 数据源。


将蒙德里安连接到 PostgreSQL 数据库

要将现有的 Maven 项目连接到 PostgreSQL 数据库,我必须执行一些步骤:

  1. 将 pom (xmla-spike.xml) 文件中的 Mondrian 版本更新为 4.x 版本(我使用过4.3.1.5-191)。您可以从这里选择一个:Penthao Mondrian 版本
  2. 下载正确的 JDBC 驱动程序(对我来说是 JDBC42):PostgreSQL JDBC Driver并将 JDBC 驱动程序 (.jar) 添加到您的项目库中

    或者9.4.1209从这里添加正确的 JDBC 驱动程序(我使用过):PostgreSQL JDBC Driver JDBC 4.1 to your maven pom (xmla-spike.xml)。

  3. <DataSourceInfo>将 datasource.xml 中的更改为:

    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
  4. 创建Schema.xml文件并编写一个简单的模式,如下所述:How to Design a Mondrian 4 Schema

    您可以在此处查看带有元模型 4 的 Foodmart 示例架构:Foodmart.xml metamodelVersion="4.0"

  5. <Catalog name="*">必须匹配的架构名称Schema.xml


这对我有用。我希望我能帮助别人。如果我忘记了一些步骤,请发表评论,我将添加缺少的步骤。

于 2016-07-19T11:44:58.310 回答