PostgreSQL 10.0 preview 功能增强 - 动态视图pg_stat_activity新增数据库管理进程信息

本文涉及的产品
云原生数据库 PolarDB MySQL 版,Serverless 5000PCU 100GB
云原生数据库 PolarDB 分布式版,标准版 2核8GB
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

标签

PostgreSQL , 10.0 , pg_stat_activity , 管理进程 , 后台进程 , 工作进程 , 并行计算进程


背景

PostgreSQL为进程模型,启动时、启动后会fork一些管理进程,以及用户连接时会产生用户的服侍进程。

例如

1. postmaster,负责监听

2. startup进程,负责recovery

3. logger, 负责写日志

4. shared buffer writer,负责通过LRU算法刷脏页,持久化数据文件

5. wal buffer writer,负责将WAL写入WAL日志文件

6. checkpointer,负责检查点任务

7. stats process,负责收集统计信息,更新计数器计数(query 消耗资源统计、表插入记录数、更新记录数、删除记录数、deadtuple 等等)。

8. autovacuum launcher,负责监控表的年龄,垃圾比例,触动阈值时唤醒vacuum worker进行垃圾回收,更新表的统计信息(用于执行计划成本计算的统计信息,pg_stats)。

9. autovacuum worker,自动垃圾回收的工作进程。

10. 并行计算worker process,当执行并行计算任务时的工作进程。

11. wal sender,作为上游节点时,流复制消息发送进程。

12. wal receiver,作为下游节点是,流复制消息接收进程。

13. 其他worker process,其他插件开发的工作进程。

14. user backend process,用户进程。

以前的版本,数据库的管理进程都不会被展示出来,10.0扩展了pg_stat_activity视图的功能,增加了一个进程类型字段,所有进程的信息都会被展示。

方便管理员观察数据库的运行状态。

+    <row>  
+     <entry><structfield>backend_type</structfield></entry>  
+     <entry><type>text</type></entry>  
+     <entry>Type of current backend. Possible types are   
+      <literal>autovacuum launcher</>, <literal>autovacuum worker</>,  
+      <literal>background worker</>, <literal>background writer</>,  
+      <literal>client backend</>, <literal>checkpointer</>,  
+      <literal>startup</>, <literal>walreceiver</>,  
+      <literal>walsender</> and <literal>walwriter</>.  
+     </entry>  
+    </row>  

patch信息如下

Show more processes in pg_stat_activity.  
  
Previously, auxiliary processes and background workers not connected  
to a database (such as the logical replication launcher) weren't  
shown.  Include them, so that we can see the associated wait state  
information.  Add a new column to identify the processes type, so that  
people can filter them out easily using SQL if they wish.  
  
Before this patch was written, there was discussion about whether we  
should expose this information in a separate view, so as to avoid  
contaminating pg_stat_activity with things people might not want to  
see.  But putting everything in pg_stat_activity was a more popular  
choice, so that's what the patch does.  
  
Kuntal Ghosh, reviewed by Amit Langote and Michael Paquier.  Some  
revisions and bug fixes by me.  
  
Discussion: http://postgr.es/m/CA+TgmoYES5nhkEGw9nZXU8_FhA8XEm8NTm3-SO+3ML1B81Hkww@mail.gmail.com         

这个patch的讨论,详见邮件组,本文末尾URL。

PostgreSQL社区的作风非常严谨,一个patch可能在邮件组中讨论几个月甚至几年,根据大家的意见反复的修正,patch合并到master已经非常成熟,所以PostgreSQL的稳定性也是远近闻名的。

参考

https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=fc70a4b0df38bda6a13941f1581f25fbb643c7f3

相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
25天前
|
关系型数据库 Serverless 分布式数据库
【公测】PolarDB PostgreSQL版Serverless功能免费使用​!
【公测】PolarDB PostgreSQL版Serverless功能免费使用​,公测于2024年3月28日开始,持续三个月,公测期间可以免费使用!
|
29天前
|
关系型数据库 分布式数据库 数据库
成都晨云信息技术完成阿里云PolarDB数据库产品生态集成认证
近日,成都晨云信息技术有限责任公司(以下简称晨云信息)与阿里云PolarDB PostgreSQL版数据库产品展开产品集成认证。测试结果表明,晨云信息旗下晨云-站群管理系统(V1.0)与阿里云以下产品:开源云原生数据库PolarDB PostgreSQL版(V11),完全满足产品兼容认证要求,兼容性良好,系统运行稳定。
|
1月前
|
关系型数据库 分布式数据库 数据库
PolarDB常见问题之数据库不能自己减少节点如何解决
PolarDB是阿里云推出的下一代关系型数据库,具有高性能、高可用性和弹性伸缩能力,适用于大规模数据处理场景。本汇总囊括了PolarDB使用中用户可能遭遇的一系列常见问题及解答,旨在为数据库管理员和开发者提供全面的问题指导,确保数据库平稳运行和优化使用体验。
|
1月前
|
缓存 关系型数据库 分布式数据库
PolarDB常见问题之数据库cpu突然飙高如何解决
PolarDB是阿里云推出的下一代关系型数据库,具有高性能、高可用性和弹性伸缩能力,适用于大规模数据处理场景。本汇总囊括了PolarDB使用中用户可能遭遇的一系列常见问题及解答,旨在为数据库管理员和开发者提供全面的问题指导,确保数据库平稳运行和优化使用体验。
|
1月前
|
存储 监控 Linux
【Shell 命令集合 系统管理 】⭐⭐⭐Linux 查看当前正在运行的进程信息 ps命令 使用指南
【Shell 命令集合 系统管理 】⭐⭐⭐Linux 查看当前正在运行的进程信息 ps命令 使用指南
42 0
|
1月前
|
存储 安全 算法
【软件设计师备考 专题 】数据库的控制功能(并发控制、恢复、安全性、完整性)
【软件设计师备考 专题 】数据库的控制功能(并发控制、恢复、安全性、完整性)
57 0
|
1月前
|
关系型数据库 Serverless 分布式数据库
PolarDB PostgreSQL版Serverless功能上线公测啦,公测期间免费使用!
Serverless数据库能够使得数据库集群资源随客户业务负载动态弹性扩缩,将客户从复杂的业务资源评估和运维工作中解放出来。PolarDB PostgreSQL版 Serverless提供了CPU、内存、存储、网络资源的实时弹性能力,构建计算与存储分离架构下的 PolarDB PostgreSQL版产品新形态。
|
4天前
|
关系型数据库 OLAP 分布式数据库
「杭州*康恩贝」4月26日PolarDB开源数据库沙龙,开启报名!
4月26日周五,PolarDB开源社区联合康恩贝将共同举办开源数据库技术沙龙,本次沙龙我们邀请了众多数据库领域的专家,期待大家的参与!
「杭州*康恩贝」4月26日PolarDB开源数据库沙龙,开启报名!
|
14天前
|
运维 关系型数据库 分布式数据库
「合肥 * 讯飞」4 月 19 日 PolarDB 开源数据库沙龙,报名中!
4月19日周五,PolarDB开源社区联合科大讯飞共同举办开源数据库技术沙龙,本次沙龙我们邀请了众多数据库领域的专家,期待大家的参与!
「合肥 * 讯飞」4 月 19 日 PolarDB 开源数据库沙龙,报名中!
|
17天前
|
存储 关系型数据库 MySQL
【mybatis-plus】Springboot+AOP+自定义注解实现多数据源操作(数据源信息存在数据库)
【mybatis-plus】Springboot+AOP+自定义注解实现多数据源操作(数据源信息存在数据库)

相关产品

  • 云原生数据库 PolarDB