大多数人如何使用MDX查询?我应该使用MDX结果来驱动Web UI吗?

top*_*wik 5 mdx olap-cube

我正在尝试为即将开展的项目做一些分析.

它与趋势,图表和分析有关; 所以在一段时间内考虑MAX,MIN,AVG,SUM等.

假设我们有一个OLAP多维数据集,可以根据时间维度计算出这些计算结果.

从理论上讲,后端可以查询多维数据集并获得一些对象A的结果,对于某些属性B,在一个月或一年中或者无论情况如何(即过去5年内,您可以操纵)通过使用类似于财务股票图表上使用的滑块窗口来展开或缩小您的视野的渲染日期范围.

我们中的一些人认为我们可以使用MDX查询多维数据集来驱动使用某些HTML 5图表工具的UI.

我是OLAP,MDX,Cubes等的新手,但似乎没有一种干净的方法来检索.NET代码中的MDX查询结果(我们将在MVC网站中使用C#).

到目前为止,我们发现可能效果最好的是ADOMD.

我想知道是否有人可以提出的替代方案.

有人使用OLAP多维数据集和MDX查询来驱动他们的网站吗?

在我看来,如果已经正确设置了多维数据集以回答过去2个月内属性B的对象A之类的问题,那么我们应该能够在多维数据集中查询该数据,并将其显示在我们认为适合某些UI的方式上.我不确定这样做是否干净.

任何建议,见解,想法将不胜感激.

Mag*_*ith 7

5年前...

我参与了一个具有拖放界面(HTML和大量JS)的项目,允许用户完全按照自己的意愿构建自定义多维数据集查询.我们使用ajax调用ASP以使用ADOMD获取多维数据集数据并将其作为HTML表返回.图表是通过自定义JS创建的SVG.(如今使用.NET和JQuery会更容易,但仍然需要做很多工作.)

这听起来很啰嗦,但运作良好且足够可靠,可以卖给英国最大的酒店公司来分析他们的销售数据.

每当我遇到问题,并用Google搜索帮助时,似乎我是唯一一个通过互联网呈现OLAP数据的人(大多数人都在内部网情况下,我们也没有使用网络浏览器来提供).我不知道现在情况是否已经改变,但我确实认为OLAP是一种查看自己数据的方式,而不是管理客户的数据并让他们看到它.

我的建议:

  1. 如果您听到"枢轴表"字样,那么就跑掉吧
  2. 如果客户需要用户级或位置级安全性(角色),请逃避
  3. 确保您非常擅长编写MDX,因为人们会要求您为他们构建复杂的报告(他们并不总是希望使用UI来配置报告)
  4. 多维数据集需要时间来构建,但有时人们希望在刷新时看到实时更改(SQL会这样做,但OLAP需要重新处理时间)
  5. Drillable图表很酷,非常适合查找anomolies


小智 0

如果您使用 C# 并使用自定义 Web 服务编写自己的自定义 UI,您可能想尝试使用 Ranet。这是一个开源项目,但后来被关闭。我不知道这些广告对你是否有意义。Ranet 通过实现 ANTLR 来工作,因此,如果花时间实现这一点有意义(这会很困难),那么您可以尝试尽可能多地利用 ANTLR,它具有 .NET 发行版。或者,您可以使用 XMLA 和 ADOMD.NET,它们将为您提供直观的对象来生成图表,但这是一种低效的协议。如果您使用Java,您可以使用olap4j,它会给您提供很多您需要的东西。您的选择在很大程度上取决于服务器的接口。你用蒙德里安吗?您有 XMLA servlet 吗?定制网络服务?