postgresql分区表相关问题处理

1.使用pg_cron按日创建分区表,会出现所在数据库对应用户权限不足的问题。

原因是pg_cron运行在postgres数据库中,是用superuser进行执行的,对应的分区表的owner为postgres,所以需要单独授权对表的所有操作权限。不知道直接改变owner能不能实现,需要测试验证一下。

2.对应分区表查询时只根据id不加分区键造成的cpu高占用问题。

在频繁进行插入更新时,会造成大量cpu的占用,但看io并不高。

优化前16核cpu占用率基本在75%以上,io 2M/S左右,可能更低。

优化后效果,16核cpu占用率在0.9%左右,io基本在10M/s .

实际经验告诉我们要用好分区表,必须查询的时候要带上分区键。

我现在综合想了一下,为啥分区表没有用上分区键导致cpu高,而io不高的原因。 1. pg16分区表充分利用了并行扫描机制,所以各个cpu很高;2.数据库有缓存以及操作系统有足够的缓存,所以大部分数据可以从内存或者操作系统的缓存里面去取,最终到达磁盘的io并不高。

相关推荐
V+zmm101341 小时前
基于微信小程序的社区门诊管理系统php+论文源码调试讲解
数据库·微信小程序·小程序·毕业设计·php
燕双嘤2 小时前
Require:利用MySQL binlog实现闪回操作
数据库·mysql
这猪好帅3 小时前
【Redis】初识Redis
数据库·redis·缓存
网络安全-老纪4 小时前
网络安全的几种攻击方法
网络·数据库·web安全
蒜蓉大猩猩4 小时前
Node.js --- 详解MongoDB与Mongoose
数据库·后端·mongodb·node.js
张声录15 小时前
【ETCD】【源码阅读】深入探索 ETCD 源码:了解 `Range` 操作的底层实现
java·数据库·etcd
weixin_438197385 小时前
mysql存储过程创建与删除(参数输入输出)
数据库·sql·mysql
V+zmm101345 小时前
基于微信小程序的汽车销售系统的设计与实现springboot+论文源码调试讲解
java·数据库·spring boot·微信小程序·小程序·毕业设计
cg50176 小时前
Mysql 和 navicat 的使用
数据库·mysql