页面树结构

版本比较

标识

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

1 概述

Smartbi 数据模型引擎V2.0的正式上线,这是一次在稳定性、性能以及可扩展性方面的全面革新,旨在为您的业务分析与决策支持提供更为强大、可靠的驱动力。V2.0底层依然是基于mondrain,下一步将会重写mondrain,变成自己的0正式上线,它在稳定性、性能以及可扩展性上有全面革新,旨在为业务分析与决策支持提供更为强大、可靠的驱动力。

2 功能介绍

...

V2.0包含 0依然包含 SQL引擎和多维引擎:

  • SQL引擎:详情可查看SQL引擎介绍
  • 多维引擎:是基于V1.0重构而来的,代码逻辑基本一致,V2.0比V1.0 更稳定、查数更快、扩展性更强。

如何开启新引擎?

2.1  数据模型引擎V2.0 增强了哪些功能?

1、数据模型抽取方面

选项V2.0 V1.0
抽取整体逻辑

抽取成小宽表。

信息

什么是小宽表? 以模型上所有单个表/查询为中心构建的宽表。构建宽表的逻辑,以基数进行判断:

  1. 如果该表与连接表的基数是“多对一”或“一对一”的一方,并且它是“多”的一方,构建宽表时会加上连接的表;如果该表是“一”的一方,那么构建宽表时不会加上连接的表。
  2. 如果该表与连接表的基数是“一对一”,该表是“一”的一方,连接的表也是“一”的一方,构建宽表时会加上连接的表。


抽取成一个大宽表。


抽取行权限
  • 如果数据模型中添加的是“数据源表”,抽取时,不会继承它在源表上设置的行权限,行权限只在查询时生效。
  • 其他的查询:如SQL查询、即席查询、存储过程查询等都还是以抽取人在源表设置的行权限为主。
全部查询以为以抽取人在源表上设置的行权限为主。
抽取计算字段
  • 时间层次、分组字段、计算列都抽取了小宽表中。
  • 不抽取的情况:
    • 计算列含有参数、用户属性。
    • 在报表层创建的计算列。
时间层次、分组字段、计算列全部不抽取到大宽表中。



查询逻辑

SQL引擎、多维引擎:走同一套逻辑。

如果在报表层勾选了属于不同小宽表的字段,需要时时判断字段属于哪几个小宽表,如果命中多个小宽表,小宽表之间是join 关系。


SQL引擎、多维引擎做不同的逻辑。

SQL引擎:根据在报表层勾选字段判断命中几张表,如果是只勾选一张表的字段,即直接查询对应的表/查询;如果勾选了属于不同表/查询的字段,会时时判断,如果命中多个表,就查询大宽表。

多维引擎:只会查大宽表。

查询性能对比


2、计算列基于引擎2.0封装了50+统一函数。


选项V2.0V1.0
产品封装的统一函数


4、业务库适全面配新引擎

5、





2.1 V2.0 与V1.0 的差异

数据模型引擎V2.0是基于V1.0重构而来的,但是也是有一些差异:

1、"事实表 关联 维表left join后事实表有补空数据" 情况

...