页面树结构

版本比较

标识

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

1 概述

在数据处理与分析场景中,当数据量庞大时,查询效率成为关键问题。

当用户在数据源库中设置了分区,也想在Smartbi 查询报表时,能直接命中分区,使查询语句能快速定位到所需数据,从而大幅提升查询性能。
所以推出了新功能,该功能允许用户在数据连接和数据模型中配置分区字段相关信息,确保查询时能精准命中分区,减少数据库压力,提升系统整体运行效率。



信息
title前提条件

1、使用该功能前,需确保开启 SQL  SQL 简化功能默认开启。需要在系统选项/高级设置: 将COMMONS_SQL_OPEN_SIMPLIFY_SQL 设置为 true。
2、同时,多维引擎也需开启 SQL 简化开关,即在配置项设置: mondrian.simplifySql 设置为 true。

只有完成这些配置,分区命中才能正常运行。

3、当在数据模型勾选了”禁用此分区设置“,这个分区设置不会生效。

4、查看命中分区时,如果在系统监控查看的源库执行语句,可直接拷贝到数据库中“explain+执行SQL语句”查看是否命中; 如果走的是SQL引擎V2.0,需要在系统监控拷贝执行SQL语句非duckDB生成的语句,如果有多条SQL语句,需要逐条确认; 如果走的是多维引擎,需要在系统监控切换到"SmartbiOLAP监控器"查看“SQL监控”页面上对应“MDX查询ID”的SQL语句,如果有多条,需要逐条确认。


2 适合场景

  • 事实表数据量大(如订单表、交易表),且已按日期(如年月日、年月)分区。
  • 许多业务场景中,常以时间维度进行数据过滤查询,如查询特定月份或年份的数据。当事实表以日期相关字段(如 “年月”“年月日” 等)作为分区字段时,通过设置分区,关联的日期维表字段作为过滤条件(如年、年月、年季、年月日等),能命中分区,加快查询速度。

3 场景限制

  • 分区字段仅支持整型、字符串、日期类型。其他数据类型的字段无法设为分区字段。
  • 在数据模型中目前只支持直连模式,,目前只支持直连模式,通过分区字段进行加速;抽取模式还不支持。在数据模型中只支持在“数据源表”设置分区字段,其他类型的查询不支持设置分区。
  • 在数据模型中只支持在“数据源表”设置分区字段,其他类型的查询不支持设置分区。
  • 不支持“年周”的作为过滤条件来命中分区。
  • 设置好的分区字段及其关联维表,暂不支持命中包含快速计算(如同期值、前期值、环比、同比等)的查询场景。即使配置了分区,涉及此类计算的报表仍可能无法利用分区优化。
  • 过滤操作符限制:详细可查看4章节。

...