本文通过优化数据集缓存、优化大规模数据库的内置缓存和开启全表扫描,为您介绍如何全面提升数据集的性能。

前提条件

您已创建一个数据集。请参见创建数据集

背景信息

数据集缓存机制可以加速报表访问,降低数据库的压力。例如,某个数据集开启缓存后,只要报表被访问过,则在预设的缓存时间内,其他人再访问报表时,系统无需查询即可直接显示报表数据。

数据集缓存机制

开启缓存后,缓存时间设置为30分钟、1小时或24小时(仅专业版群空间下支持缓存时间设置为24小时。)。
  • 超过预设的缓存时间后,缓存失效,此时在报表页面触发查询才会有新的缓存,相同SQL查询语句从缓存中取数。
  • 缓存以数据集为粒度,清理缓存时会清理该数据集关联的所有图表缓存数据。超过预设的缓存时间后,此数据集的所有图表缓存都会被清除。
  1. 登录Quick BI控制台
  2. 单击工作空间 > 数据集
  3. 数据集管理页面,找到目标数据集并单击操作列的更多图标,选择缓存配置
    您也可以右键单击目标数据集并选择缓存配置缓存配置
  4. 缓存配置页面设置缓存时间后,单击确定
    默认选中开启缓存并设置缓存时间。
    支持设置的缓存时间为30分钟、1小时和24小时。
    说明 仅专业版群空间下支持缓存时间设置为24小时。

优化大规模数据库的性能

针对MaxCompute(ODPS)、Hive等查询有延迟的数据库,Quick BI默认内置查询结果缓存,可以达到性能优化的效果。

全表扫描机制

针对MaxCompute(ODPS)分区表创建的数据集,如果不开启全表扫描开关,则无法查询数据。

  1. 登录Quick BI控制台
  2. 单击工作空间 > 数据集
  3. 数据集管理页面,找到的目标数据集并单击操作列的更多图标,选择属性
    您也可以右键单击目标数据集并选择属性属性
  4. 属性页面,选中是否全表扫描选项开启全表扫描。
    全表扫描
  5. 单击保存
  6. 可选:如果开启全表扫描机制性能较慢,可以采用数据集过滤SQL过滤的方案,具体操作如下:
    • 数据集过滤
      1. 数据集管理页面,找到目标数据集并单击操作列的edit图标。
      2. 在数据集编辑页面,单击顶部菜单栏的设置过滤条件
      3. 数据集过滤条件设置页面,增加分区字段的过滤条件。过滤1
    • SQL过滤

      在Where条件中增加过滤条件,完成过滤。请参见通过即席分析SQL创建