永洪社区

标题: 数据源自定义sql里面放参数作用 [打印本页]

作者: yhdata_ISrmYmdV    时间: 2022-4-20 18:06
标题: 数据源自定义sql里面放参数作用
请问,在数据源自定义sql里面直接写 ( select * from tab where <参数>参数=?{参数}</参数> )   与  组件加筛选有什么 区别,哪个性能更好

作者: yanieye    时间: 2022-4-20 18:06
1. 如果都是简单的SQL数据集并且能够下推到数据库执行,就没有太大差别。
2. 如果是复杂的嵌套的SQL数据集或者自服务数据集,那么在SQL中写可以保证过滤条件的执行顺序,而组件加筛选只能在最外层过滤。
3. 组件加筛选如果不能下推到数据库执行,那么肯定是在自定义SQL中写的方式效率更好。
可以根据实际情况确定使用方式。
作者: 美滋滋    时间: 2022-4-21 08:57
我觉得直接在SQL中应用参数的话,会节省内存的使用。因为你搜索出来的数据都是加载到BI服务器端的内存中的。因为在SQL中加了过滤条件,可以有效的减少数据抽取量,从而减少BI服务器端的内存使用,进而提高效率。
不过在SQL中使用过滤参数的话,数据集无法加载到本地数据集市。所以如果数据的抽取如果不是很需要实时性的话,可以考虑加载到本地数据集市的方式,从而大幅提升效率。
作者: yhdata_ISrmYmdV    时间: 2022-4-21 09:07
多谢




欢迎光临 永洪社区 (http://club.yonghongtech.com/) Powered by Discuz! X3.4