yhdata_ISrmYmdV玄铁三
2022-4-20 18:06:37 发布在问答
【数据处理】 数据源自定义sql里面放参数作用
请问,在数据源自定义sql里面直接写 ( select * from tab where <参数>参数=?{参数}</参数> )   与  组件加筛选有什么 区别,哪个性能更好

最佳答案

社区管理员
yanieye

2022-04-20 18:06:38

1. 如果都是简单的SQL数据集并且能够下推到数据库执行,就没有太大差别。 2. 如果是复杂的嵌套的SQL数据集或者自服务数据集,那么在SQL中写可以保证过滤条件的执行顺序,而组件加筛选只能在最外层过滤。 3. 组件加筛选如果不能下推到数据库执行,那么肯定是在自定义SQL中写的方式效率更好。 可以根据实际情况确定使用方式。 ...
查看完整内容
1319
3
精彩评论3
yanieye
发表于 2022-4-20 18:06:38 显示全部楼层
1. 如果都是简单的SQL数据集并且能够下推到数据库执行,就没有太大差别。
2. 如果是复杂的嵌套的SQL数据集或者自服务数据集,那么在SQL中写可以保证过滤条件的执行顺序,而组件加筛选只能在最外层过滤。
3. 组件加筛选如果不能下推到数据库执行,那么肯定是在自定义SQL中写的方式效率更好。
可以根据实际情况确定使用方式。
回复

使用道具 2#

美滋滋白银三
发表于 2022-4-21 08:57:55 显示全部楼层
我觉得直接在SQL中应用参数的话,会节省内存的使用。因为你搜索出来的数据都是加载到BI服务器端的内存中的。因为在SQL中加了过滤条件,可以有效的减少数据抽取量,从而减少BI服务器端的内存使用,进而提高效率。
不过在SQL中使用过滤参数的话,数据集无法加载到本地数据集市。所以如果数据的抽取如果不是很需要实时性的话,可以考虑加载到本地数据集市的方式,从而大幅提升效率。
回复

使用道具 3#

yhdata_ISrmYmdV玄铁三
发表于 2022-4-21 09:07:13 显示全部楼层
多谢
回复

使用道具 4#

高级模式
您需要登录后才可以回帖 登录 | 免费注册

  • 官方微信

    欢迎关注永洪服务号!收费为0,价值无限

    扫码关注
  • 新浪微博

    让每位用户轻松挖掘数据价值!

    访问新浪微博
  • 智能客服
1500W

用户等你来哦

Copyright   ©2012-2025  北京永洪商智科技有限公司  (京ICP备12050607) 京公网安备110110802011451号 |《永洪社区协议》
返回顶部