在没有 saiku-server/mondrian 的情况下使用 Saiku-ui?

Posted

技术标签:

【中文标题】在没有 saiku-server/mondrian 的情况下使用 Saiku-ui?【英文标题】:Using Saiku-ui without saiku-server/mondrian? 【发布时间】:2018-09-30 23:10:51 【问题描述】:

是否可以将 saiku-ui 组件与 mondrian 不同的 jolap 提供程序一起使用,或者与 saiku-server 组件使用不同的服务器后端?

我一直在寻找,但我没有找到关于这些部分如何组合在一起以及它们用于通信的接口的架构描述。谁能指点我了解 saiku-ui 想要与之交谈的内容以及 saiku-server 提供的内容?

我感兴趣的原因是我有一组分布在数百个 csv 文件中的数据,我想使用数据透视和图表工具来查询这些数据。看起来将它与 saiku 一起使用的标准方法是将 ETL 进程加载到 RDBMS 中。但是,这不是一个简单的过程,因为文件和内容以及文件相互关联的方式各不相同,因此 ETL 必须对数据源进行大量检查才能弄清楚。

鉴于此,在我看来,如何使用 saiku 有三种选择:

1) 编写复杂的 ETL 加载到 rdbms,然后使用标准的 jdbc 驱动程序将数据提供给 modrian。 ETL 的一个附带功能是分析输入并编写描述多维数据集的 mondrian 模式文件。

2) 编写一个 jdbc 驱动程序来本地访问数据。该驱动程序将解析 sql 并提供对基础表的访问。本质上,这将是写在 csv 文件之上的自定义 r/o dbms。 mondrian 将使用 jdbc 连接来访问数据。此自定义 dbms 的一个附带功能是生成 mondrian 模式文件。

3) 编写一个工具,为原生数据提供 jolap 接口(接受发现和 mdx 查询)。这将完全绕过 mondrian 并与 ui 交互。

我在这里可能有点天真,但我认为这三个选项中的每一个都是可行的。选项 #1 是我最不喜欢的,因为 rdbms 中的数据可能与 cvs 文件不同步。选项#3 是最首选的,因为数据很简单,所以不需要太多聚合,我怀疑 mdx 会比 sql 更容易解析。

那么,如果我可以生成自己的 jolap 数据源,是否可以将 saiku-ui 工具与它挂钩?我在哪里可以找到接口配置详细信息?

【问题讨论】:

【参考方案1】:

许多年前,@ronaldbouman 创建了 xmondrian - 一套带有 olap 服务器的工具,以及用于 xmla 浏览和可视化的 web ui 工具。但是那个项目没有更新,也没有源代码。

我刚刚将 olap 服务器和库更新到最新版本。 你可以在这里得到它并构建:。 https://github.com/Muritiku/xmondrian-build。

您可以使用 web 包作为示例。 mondrian 服务器与 saiku-ui 一起使用。

【讨论】:

【参考方案2】:

恕我直言,

我不会像你那样自信,因为 Julian Hyde 花了十多年的时间来构建 Mondrian (MDX->SQL) 和 Calcite (SQL),实现了你的最后两个提议。

您可以简单地考虑使用 Calcite,甚至更好的 Dremio。 Dremio 有 JDBC 接口,可以用 SQL 查询 CSV 文件的目录。我在 Dremio 上成功测试了 Saiku(使用基于两个独立 RDBMS 的模式)。请注意在 Mondrian v4 架构中相应地设置表的架构。

最好的问候, 法布里斯·埃坦肖

Dremio

【讨论】:

以上是关于在没有 saiku-server/mondrian 的情况下使用 Saiku-ui?的主要内容,如果未能解决你的问题,请参考以下文章

有没有啥方法可以在没有 Json 的 NSData 的情况下单独发布参数

Vue Prop 没有初始化器,也没有在构造函数中明确赋值

在 Facebook 上分享有时效果很好,有时效果不佳(没有标题、没有描述、没有缩略图)

在没有隐藏溢出的情况下,transitionend 事件在 FireFox 中没有持续触发

有没有办法在没有活动的情况下使用 Viewpager 实现 TabLayout?

有没有办法在没有大括号的 tsx typescript 代码中进行评论?