<< Click to Display Table of Contents >> 检测性能复制链接 |
1.概述
1.1 应用场景
用户使用SQL数据集、组合数据集、自服务数据集或数据模型时,系统会对数据集性能进行实时检测,并对影响性能的地方做出橙色标识,告知用户哪些列没有下推到数据库执行。
1.2 功能简介
检测数据集性能是否包含内存计算。
2.功能说明
2.1 不能下推到数据库执行检测
当数据处理过程中可能存在部分的数据处理或表的关联形式无法通过数据库直接执行,此时产品则通过内存计算进行处理,但由于内存计算的性能与效率并不如数据库中处理好,以及占用过多的内存计算可能会影响产品的正常使用,因此在数据集中会进行实时检测,并对影响性能的地方做出橙色标识,告知用户哪些列没有下推到数据库执行,如下图所示。
过滤处的过滤条件如果没有下推到数据库执行,过滤处也会做出橙色标识 , 如下图所示。
用户也可以通过点击菜单栏的“检测性能”,查看所有性能问题。
如果没有橙色标识的影响数据集性能的列,则会弹框提示数据集性能良好。
•处理建议
一般情况下没有下推数据库执行是因为其数据库不支持对应的函数或功能,想要对其进行优化需要查看哪些数据库支持对应的函数计算,并切换数据库,或者您可以将计算结果进行数据抽取。也可能存在计算列或过滤引用了一个不能下推数据库的计算列,可以跟进实际的应用场景看看是否有方法依赖与别的列进行创建,进而绕行实现下推。
2.2自服务数据集检测
检测不下推的内容,同时V11新增检测如下内容:
•自服务数据集中的节点大于15(受flow.query.nodes.limit属性控制,默认值为15)个,包括依赖的数据集的节点数,提示如下图所示:
•逆透视节点下发SQL脚本中Union个数大于10(受flow.query.unpivot.union属性控制,默认值为10)个,包括检测依赖的数据集上的逆透视节点,提示如下图所示:
•使用透视节点新增超过100(受flow.query.pivot.add.cols属性控制,默认值为100)列,包括检测依赖的数据集上的透视节点,提示如下图所示:
•嵌套层数超过2(受 flow.query.nested.layers 属性控制,默认值为2)层,提示如下图所示:
3.数据集保存时是否进行性能检测和自服务数据集节点的有用性检测
数据集保存时是否进行性能检测和自服务数据集节点的有用性检测可以通过【系统设置>系统参数配置>基本参数配置】中dataset.save.check设置。
默认值为true表示保存时当性能检测或有用性检测不通过时弹出检测结果的提示框,设置成false表示保存时不弹此框。