2008年(239)
分类:
2008-06-18 00:20:16
数据库系统有自己的进程管理和调度,应当具备以下的功能模块:监听进程、代理进程、异步预取进程、页清除进程、日志写进程、检查点进程、优化器进程、死锁检测进程等。对INFORMIX、SYBASE系统来说,这些功能模块是通过线程来实现的。
监听进程接收客户端应用程序的连接请求,并选择进行服务的代理进程。应根据需要服务的客户端应用程序数目,决定系统需要启动的监听进程数目。
代理进程作为客户端应用程序在数据库系统中的代理人,接收、处理用户请求,并将结果返回客户端。一般情况下代理进程和客户端应用程序一一对应。
异步预取进程负责将代理进程随后要处理的数据事先读入内存,避免出现代理进程的数据等待。它对数据的读取是渐进的,如果系统中频繁出现大数据量操作,可以考虑增加异步预取进程的数目,提高内存中未使用数据页的上限值。
页清除进程负责将内存缓冲区中已经被更新的脏数据页写入磁盘,使已发生的更新做永久性的保存。页清除进程对磁盘的写速度应能够保证:代理进程在申请可用内存时,总能找到足够的空闲空间。
日志写进程负责将内存缓冲区中的事务日志信息写入磁盘,数据库采用的日志写方式要根据应用系统的具体需要进行确定。
检查点进程执行时,暂停所有事务处理,将内存中所有已更新数据及日志信息写入磁盘,在日志文件中记录检查点信息。数据库管理员根据需要,设定检查点操作的执行间隔。
优化器进程负责SQL语句的语法分析和优化,生成SQL语句费用最低的执行计划。应当定期维护数据库对象上的统计信息。
死锁检测进程定期执行,负责监测、处理数据库系统中出现的死锁。如果出现死锁,就采取措施解除死锁。对于死锁很少出现、甚至不会发生的应用系统,可以增大死锁检测的时间间隔。
常见的数据库系统:DB2、ORACLE、INFORMIX、SYBASE,其功能模块的使用和管理不尽相同。基于对系统各功能模块作用及处理过程的了解,数据库管理员通过调整相关配置参数,来控制系统的运行。