用户4700054
深入浅出PostgreSQL 架构
关注作者
前往小程序,Get
更优
阅读体验!
立即前往
腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
返回腾讯云官网
用户4700054
首页
学习
活动
专区
工具
TVP
最新优惠活动
返回腾讯云官网
社区首页
>
专栏
>
深入浅出PostgreSQL 架构
深入浅出PostgreSQL 架构
用户4700054
关注
发布于 2022-08-17 11:42:36
1.1K
0
发布于 2022-08-17 11:42:36
举报
文章被收录于专栏:
存储内核技术交流
PostgreSQL架构
PostgreSQL物理架构是由shared memory(共享内存)、background process(后台进程)和data files(数据文件)组成
shared memory(共享内存)是为了database和transaction log提供cache.最核心的是shared buffer和wal buffers
shard buffer 是减少磁盘IO而设计的。shard buffer能否加速让大量数据访问、减少大量用户统一时间访问的资源征用
wal buffer是临时存储数据库的变化,wal buffer的日志数据定期会flush到wal file
PostgreSQL 进程模型
PostgreSQL进程类型
Postmaster Daemon 进程(postmaster process)
PostgreSQL Background进程(background process)
PostgreSQL Backend进程(backend process)
Postmaster Daemon 进程
Postmaster进程是PostgreSQL启动的第一个进程,它的主要工作是负责执行数据库的recovery、初始化shared memory和启动运行PostgreSQL的后台进程。
PostgreSQL Background进程
logger :该进程负责把错误日志写入到logfile
checkpointer :检查点进程负责检查点发生时候,负责dirty buffer写入文件
background writer :写进程负责周期性的dirty buffer写入到文件
walwriter :该进程负责把wal buffer数据写入到wal 文件
autovacuum launcher :该进程负责清理工作,核心是做三方面的事情
清理表中的已经删除记录
更新表的统计信息以供优化器使用
autovacuum launcher使用stats collector后台进程收集统计信息来确定autovacuum候选列表。
archiver : 当日志归档时候,该进程负责把WAL 文件拷贝到指定的目录
stats collector :statistics collector 负责对数据库,表,函数的调用次数进行统计,通过socket与执行查询的进程进行通信,当执行语句的进程,在执行一条语句时,会在执行前,把上条语句的统计信息通过socket发送给 statistics collector 进程,这样做是因为上个事务已经 commit 或 rollback 了,统计的是事务已完成的数量
PostgreSQL Backend进程
应用通过 TCP 和PostgreSQL建立连接,当客户端连接断开时,服务端的连接消失。允许多个客户端同时连接,连接数由 max_connections 参数控制,默认是 100,如果客户端频繁的和服务端建立连接然后断开。
该进程负责接受来自应用的请求,同时把请求的响应给客户端
本文参与
腾讯云自媒体同步曝光计划
,分享自微信公众号。
原始发表:2021-08-05,如有侵权请联系
cloudcommunity@tencent.com
删除
postgresql
数据库
sql
socket编程
本文分享自
存储内核技术交流
微信公众号,
前往查看
如有侵权,请联系
cloudcommunity@tencent.com
删除。
本文参与
腾讯云自媒体同步曝光计划
,欢迎热爱写作的你一起参与!
postgresql
数据库
sql
socket编程
评论
登录
后参与评论
0 条评论
热度
最新
推荐阅读
LV.
文章
0
获赞
0
目录
PostgreSQL架构
PostgreSQL 进程模型
PostgreSQL进程类型
Postmaster Daemon 进程
PostgreSQL Background进程
PostgreSQL Backend进程
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
产品介绍
领券
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档
0
0
0
推荐