0

Pentaho 版本:双服务器 CE 6.1

我是 pentaho 宇宙的新手,我发现自己陷入了寻找文档以创建 cde 仪表板的困境。为了清楚起见,我不知道创建 cde 仪表板的好方法是什么,但我尝试了很多基于随处可见的教程的东西

到目前为止我做了什么

从这个数据模型

我已经使用“sql over sqljdbc”数据源创建了一个动态图表。这是我的查询(以及图片后面的结果)

    SELECT (select survey_type from survey where id = pr.form_type) as "form type",
    pr.date as "Date",
    count(pr.id) as "Form number" 
    FROM result pr
    inner join district pd on pr.district_id=pd.id
    inner join departement pdep on pd.departement_id=pdep.id
    inner join region pre on pdep.region_id=pre.id
    WHERE pre.region_text = ${region}
    GROUP by date,form_type
    ORDER by date;

查询生成的仪表板 - 按日期、类型和区域的表单编号(动态设置)

我想要达到的目标

  1. 我想做这种图表:community.pentaho.com/ctools/ccc/#type=bar&anchor=small-multiple-bars 或 community.pentaho.com/ctools/ccc/#type=bar&anchor=stacked-bar(对不起我没有足够的声誉来发布超过 2 个链接)使用“sql over jdbc”数据源

  2. 谁能给我一个 sql 请求的例子来实现这一点?(最好在这篇文章中放弃 sql 请求并进行一些修改。我试过这个,但它没有按预期工作:

    SELECT (select survey_type from survey where id = pr.form_type) as "form type",
        pr.date as "Date",
        pre.region_text as region,
        count(pr.id) as "Form number" 
        FROM result pr
        inner join district pd on pr.district_id=pd.id
        inner join departement pdep on pd.departement_id=pdep.id
        inner join region pre on pdep.region_id=pre.id
        GROUP by date,form_type,pre.id
        ORDER by date;
    

    )

  3. 我在哪里可以把这个例子后面给出的代码放在我自己的 pentaho 实例中预可视化它?我需要知道如何重现它

我想知道的

在 pentaho 上做 cde 图表的好方法:

  • 查询需要如何格式化?(如何在仪表板上组织字段,字段的最大数量......)
  • mdx 查询和 sql 查询和用途有什么区别?
  • 在这两种类型(mdx 和 sql)之间做图表的最佳方法是什么?
  • 如果我想使用 mdx 查询,如何在 mondrian cube 中转换我的关系数据库(或者我应该做的是使用kettle 重新设计数据仓库中的数据库?)

谢谢您的回答。

4

2 回答 2

0

首先你应该意识到你在这里问了很多。话虽如此,当我第一次开始使用 Pentaho 时,你已经完成了我所做的大部分实验。很多。

关于您的问题,我有一些链接可以帮助您(如果您还没有检查过)

第一个链接是一个非常好的博客,我在其中找到了几个关于仪表板的答案。第二个链接更像是一个整体教程。

没有通用的“最佳方法”(当然除了应用通用的最佳实践)来创建仪表板。我建议您继续尝试(一路了解所有属性和设置)并找出最适合您的方法。

关于您关于 MDX 和 Mondrian 的问题,我在这些领域没有太多经验,但据我了解,MDX 查询基于您在 Pentaho 的 Mondrian Schema Workbench 中准备的 Mondrian 多维数据集。

我相信这应该回答(至少一些)你的问题。尝试许多不同的事情和实验会让你走得更远,因为你会一次赶上很多小事情。

于 2016-07-25T13:09:17.423 回答
0

我将对此进行详细说明。正如厄运所说,您在这里提出了很多问题,但我很高兴您正在尝试创建一些出色的仪表板。

  • 为了格式化图表并调整它们,我记得我必须学习一些 JavaScript/JQuery。

  • SQL 和 MDX 的区别。它们是完全不同的,即使有时语法看起来很相似。您使用 SQL 查询关系数据库,而 MDX 用于查询多维数据集。如果您没有多维数据集,您当然需要使用 SQL。如果没有,您应该请立方体开发人员向您介绍这个世界。基本上,多维数据集擅长聚合数据并允许轻松交互和执行临时分析,旨在让业务分析师更好地探索数据。我是 MDX 粉丝,但我建议您探索多维立方体的新替代方案,例如表格模型或其他内存技术。

  • 制作图表的最佳方式与 MDX 或 SQL 无关。这取决于您的数据存储在哪里。最重要的是背后要有一个好的数据模型。
  • 同样,根据您的架构,您的数据集市中应该有一个多维模型,如果可能的话,没有雪花。这使您可以构建简单的 SQL 查询和直接的多维数据集设计。设计立方体需要一些额外的技能。我会尝试拥有一个干净的数据模型,然后开始评估是否需要一个多维数据集。

我希望我能给你一些启发,回答你提出的广泛问题并不容易。重要的是定义项目的范围。

亲切的问候,

于 2016-08-16T14:42:35.930 回答