页面树结构

版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。

...

总结:关联的日期维表所创建的时间维度下面的所有时间层次作为过滤条件,都能命中分区。


3.

...

3  分区字段为日期:在事实表上设置了分区字段,使用分区字段自己生成的时间维度作为过滤条件

以mysql数据库表创建分区为例进行说明

1、连接到mysql数据库中创建表:orders连接到mysql数据库中创建表:orders_partition,同时给设置好分区,如下图:

Image Modified

创建表时,以”OrderDate“进行分区,当“OrderDate”<2020-02-01 00:00:00时,需要命中“p202001”;当“OrderDate”<2020-03-01 00:00:00时 需要命中”p202002“;当“年月日”符合其他条件,那就命中”p_future“。

orders_partition的数据效果如下:

Image Added

1、把orders_partition表通过 数据库管理,把表加载到数据源下,并设置分区字段:

分区字段:可以选择日期、字符串、整型字段,这里选择在数据库中设置的分区字段“OrderDate”:

Image Added

点击【确定】保存设置的分区信息,下次打开会显示上一次设置的信息。

2、去创建数据模型,并基于orders_partition的“orderDate”字段创建时间维度, 并同步“分区信息”到数据模型中:

Image Added

时间维度:必须选择基于“分区字段”、或者关联的日期维表所创建的时间维度。否则查询时可能出错,或者查询数据不正确。

3、保存数据模型,去创建透视分析:

Image Added

4、去到系统监控/SQL/MDX监控中查看并复制运行的取数SQL语句:

Image Added

7、去到mysql数据库中,使用explain +上一步复制的SQL的语句,执行,查看命中了哪个分区:

看下图可以看到是命中了"p202002"区。

Image Added


3.4  分区字段为日期:在事实表上设置了分区字段,使用关联的维表的时间维度作为过滤条件

以3.3创建的数据模型为例说明。

1、在模型中增加”日期表“作为orders_partition的维表,如下图:

Image Added

2、分区设置指定时间维度为”日期表“生成的时间维:

Image Added

3、保存模型并创建透视分析:

Image Added

4、去到系统监控/SQL/MDX监控中查看并复制运行的取数SQL语句;去到mysql数据库中,使用explain +上一步复制的SQL的语句,执行,查看命中了哪个分区:

看下图可以看到是命中了"p_future"区。

Image Added

5、报表层再查询快速计算:

Image Added

6、通过在数据库执行取数逻辑,可以看到也能命中分区:

Image Added