postgresql进程结构
2010-06-02 15:33
134 查看
PostgreSQL与Oracle类似,是多进程结构的数据库,各种不同类型的进程相互协作,完成客户端的操作请求,同时保证数据的完整性与一致性。
PostgreSQL数据库中主要有两类进程,第一类是backend进程,第二类是数据库后台进程。Backend进程负责接收和执行客户端发出的命令请求(SQL命令、函数调用等操作)。客户端每发出一个连接请求,数据库都会创建一个新的backend进程来为客户端服务。该backend进程会一直存在,直到客户端主动关闭数据库连接或者遇到异常而结束运行。
数据库后台进程进行各项辅助工作。主要有下面几种后台进程:
(1)postmaster 进程
负责在启动数据库的时候创建共享内存并初始化各种内部数据结构,如锁表,数据库缓冲区等,该进程在数据库中只有一个。在数据库启动以后负责监听用户请求,创建Backend进程来为用户服务。
(2)vacumm控制进程和vacuum工作进程
这两类进程与PostgreSQL的并发控制机制有关。vacuum工作进程负责清除数据库中无用的历史数据(已经被删除或更新的记录), 同时更新查询优化器的统计信息,确保产生可以接受的查询计划。vacumm控制进程负责监控数据库的运行状态,动态地创建 vacuum工作进程来执行相应的任务。
(3)后台写数据库进程
负责将数据缓冲区中已被更新的数据写入数据库物理数据文件中。
(4)归档进程
负责将系统产生的事务日志文件复制到其他外部存储介质中。
(5)写事务日志进程
负责将系统产生的事务日志写到事务日志文件中。
(6)统计数据收集进程
负责收集数据库运行中的统计信息,如一个表上面进行了多少次插入与更新操作。
PostgreSQL数据库中主要有两类进程,第一类是backend进程,第二类是数据库后台进程。Backend进程负责接收和执行客户端发出的命令请求(SQL命令、函数调用等操作)。客户端每发出一个连接请求,数据库都会创建一个新的backend进程来为客户端服务。该backend进程会一直存在,直到客户端主动关闭数据库连接或者遇到异常而结束运行。
数据库后台进程进行各项辅助工作。主要有下面几种后台进程:
(1)postmaster 进程
负责在启动数据库的时候创建共享内存并初始化各种内部数据结构,如锁表,数据库缓冲区等,该进程在数据库中只有一个。在数据库启动以后负责监听用户请求,创建Backend进程来为用户服务。
(2)vacumm控制进程和vacuum工作进程
这两类进程与PostgreSQL的并发控制机制有关。vacuum工作进程负责清除数据库中无用的历史数据(已经被删除或更新的记录), 同时更新查询优化器的统计信息,确保产生可以接受的查询计划。vacumm控制进程负责监控数据库的运行状态,动态地创建 vacuum工作进程来执行相应的任务。
(3)后台写数据库进程
负责将数据缓冲区中已被更新的数据写入数据库物理数据文件中。
(4)归档进程
负责将系统产生的事务日志文件复制到其他外部存储介质中。
(5)写事务日志进程
负责将系统产生的事务日志写到事务日志文件中。
(6)统计数据收集进程
负责收集数据库运行中的统计信息,如一个表上面进行了多少次插入与更新操作。
相关文章推荐
- PostgreSQL启动过程中的那些事七:初始化共享内存和信号二十:shmem中初始化堆同步扫描、pg子进程相关结构
- PostgreSQL的进程结构
- PostgreSQL数据库系统的进程结构
- PostgreSQL学习第十一篇 进程及内存结构
- 对PostgreSQL中后台进程的内存结构建立的初步跟踪
- Oracle内存和进程结构详解
- PostgreSQL(四)存储结构
- PostgreSQL导出表结构|表数据
- DBA_Oracle基本体系内存和进程结构(概念)
- windows进程中的内存结构
- [转]Oracle DB进程体系结构
- POSTGRESQL 查看用户使用情况以及杀掉相应的进程
- postgresql data下的目录结构
- PostgreSQL源码解读 基础结构 node
- Oracle 进程结构
- windows进程中的内存结构
- 关于PostgreSQL数据库中客户端连接产生的backend进程的解释
- PostgreSQL启动过程中的那些事十九:walwriter进程一
- [转载]windows进程中的内存结构
- windows进程中的内存结构http://blog.chinaunix.net/u2/66119/showart_548336.html