数仓性能调优:如何进行函数下推

打印 上一主题 下一主题

主题 1002|帖子 1002|积分 3008

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
摘要:本文主要描述下函数在满足特征的前提下可以把函数属性定义为下推属性。
本文分享自华为云社区《GaussDB(DWS)性能调优:函数下推》,作者:譡里个檔 。
DWS作为MPP架构的数仓产品,其性能优势主要在分布式计算上。默认情况下,DWS为了保证结果的正确性,自定义函数默认属性是不下推的,这会导致计算不下推,从而导致比较验证的性能问题。本文主要描述下函数在满足特征的前提下可以把函数属性定义为下推属性。
在展开介绍之前,我们先介绍一下DWS里面函数的几个属性
易变属性

下推属性

查询自定义的不下推函数
  1. SELECT
  2. oid::regproc AS proname,
  3.     (pg_get_functiondef(oid)).definition
  4. FROM pg_proc
  5. WHERE proshippable = false AND oid > 16384;
复制代码
总结

函数下推要首先满足以下

  • 函数的易变属性为IMMUTABLE和STABLE
  • 函数的下推属性设置为SHIPPALE
可以在函数定义的时候指定SHIPPALE属性,可以通过ALTER语句修改函数的下推属性
 
点击关注,第一时间了解华为云新鲜技术~

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

南七星之家

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表