页面树结构

版本比较

标识

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

1 概述

SQL引擎V2.0是使用 DuckDB 作为 数据模型 SQL 查询的执行引擎。

...

信息
title使用前提

如何开启SQL引擎V2.0?

需要先在运维设置/系统限项/高级设置 中开启数据模型引擎V2.0:OLAP_QUERY_NEW_ENGINE_BUILD_MDX=true;

再开启SQL引擎V2.0:

USE_NEW_ENGINE_NEW_SQL=true。


2 SQL引擎V2.0 VS V1.0的差异

序号

内容

V1.0

V2.0

1

快速计算支持走SQL引擎


不支持

功能增强,在V2.0上,支持快速计算走SQL引擎。


2

查询度量并且把汇总依据切换成“唯一计数”并显示“合计”,如下图报表:


支持

不支持,会自动切换走olap引擎,后续会优化。

原因: 当度量的汇总依据是唯一计数且溴铵是了合计/小计,无法走SQL引擎,因为discount不能直接sum,sum出来的数据是错误的。

3

当过滤条件是度量并且显示了合计的情况,如下图:

不支持,会走OLAP引擎


不支持,会走OLAP引擎

原因: 生成的执行SQL语句,度量在外层,度量对合计不生效。


年周层次,涉及到时间的计算不支持走SQL引擎,如下图:

不支持

不支持

注意:年周+排名、占比是支持走SQL引擎的。

4计算度量如果表达式仅涉及加(+)、减(-)、乘(*)、除(/),或者仅使用case when/IIF函数,也支持走SQL引擎仅有clickhouse、mysql支持,其他库仍然不支持功能增强,全部库支持。
5

中文排序结果可能不同,如下图:

V1.0显示效果:

V2.0显示效果:

排序不一致:主要是由于数据库本身的字符集或者中文编码而造成的排序结果不一样,有的中文排序结果是一样的,暂时没有得到什么规律。

6

空值(Null)的排序:

由数据库决定在SQL引擎V2.0时,升序时空值在第一行,降序在最后一行。
7

当数据模型是多事实并且是抽取模式(抽取到SmartbiMpp产品默认使用高速缓存库CH)中,如果度量的值没有时(full join 出现来的空),在报表层显示效果不一致。

SQL引擎V1.0显示”0“,如下图:

SQL引擎V2.0显示“空”,数据是什么就显示什么:


3 SQL引擎V2.0 VS V1.0的性能对比

正在完善中。