更新时间:2024-11-12 GMT+08:00
分享

多租数据库

enable_mtd

参数说明:用于控制是否开启内核多租功能。

参数类型:布尔型。

参数单位:

取值范围:

  • on:打开内核多租功能。
  • off:关闭内核多租功能。

默认值:off

设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。

设置建议:在实例安装时会决定多租是否打开,不建议自行修改该参数取值。

设置不当的风险与影响:修改该参数取值可能导致实例无法启动。

backend_resource_attr

参数说明:用于控制后台线程CPU功能的详细属性,修改后台线程cgroup的share和quota的值,该参数仅在enable_mtd打开后生效,仅sysadmin用户可以访问。

参数类型:字符串

参数单位:

取值范围:该参数分为四个部分,'backend_total_share, backend_total_quota, backend_share,vacuum_share',这四个部分的具体含义如下:

  • backend_total_share:后台线程占整个实例的百分比。

    取值范围:1~99。默认值40,代表后台线程总占比是40%。

    后台线程占比大小推荐根据硬件配置设置。后台线程比例和租户比例之和保持100%。

    根据计算公式 backend_total_share = 100*x/(x+ceil(集群的CPU核数*1.1)),得出的x*1024就是配置到Backend控制组的share值。

    举例:backend_total_share=40,cpu核数16U,通过上述公式计算得出share值是12288。

  • backend_total_quota:后台线程总体可以使用的CPU个数。

    取值范围:0~数据库实例CPU核数。其中0表示后台线程没有CPU上限控制;如果参数值大于0,表示后台线程可以使用的CPU核数不能超过这个值。

  • backend_share:后台线程中除了vacuum线程之外线程的权重。举例:backend_share=80,在DefaultBackend控制组里面share生效值就是80*1024。

    取值范围:1~99。

  • vacuum_share:vacuum的线程权重。举例:vacuum_share=20,在Vacuum控制组里面share生效值就是20*1024。

    取值范围:1~99。

默认值:"40, 0, 80, 20"

设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。

设置建议:(196核CPU/1536G内存,128核CPU/1024G内存,104核CPU/1024G内存,96核CPU/1024G内存,96核CPU/768G内存,80核CPU/640G内存,64核CPU/512G内存,60核CPU/480G内存,32核CPU/256G内存)"40.round(核数*0.05).80.20";(16核CPU/128G内存)"40.1.80.20"。

设置不当的风险与影响:设置share或者quota过低,会减少后台线程的cpu使用的时间片,导致后台线程业务处理不及时造成租户的公共业务等待。设置过高的话,租户的可以用CPU资源会减少。

pdb_transaction_read_only

参数说明:设置当前PDB事务是否为只读事务。

参数类型:布尔型。

参数单位:

取值范围:

  • on:表示当前PDB事务为只读状态。
  • off:表示当前PDB事务为非只读状态。

默认值:off

设置方式:该参数属于PDB_SIGHUP类型参数,请参考16.2-表 GUC参数分类中对应设置方法进行设置。

设置建议:推荐使用默认值。

设置不当的风险与影响:该参数设为on后,无法执行dml操作和写事务。

相关文档