KingbaseES后台进程介绍
关键字:
数据库实例、后台进程、人大金仓、KingbaseES
一、摘要
本文对KingbaseES后台进程进行了介绍。
数据库实例
数据库实例是指在数据库管理系统中运行的一个独立的数据库环境。它是由数据库软件在内存中加载并执行的,用于数据库的请求和操作。KingbaseES数据库实例如下图所示,可以看到其中包含了多个数据库进程、共享内存以及数据库实例。
KingbaseES后台进程
KingbaseES实例采用多进程架构,因此一个实例中会包含多个进程。这些进程按照功能的不同可以分为后台进程和服务进程两类。本文重点KingbaseES中的后台进行。
通过“ps ux”命令可以查看到KingbaseES包含下列进程。
KingbaseES主进程(kingbase):主进程负责统一管理各服务进程和其他后台进程。该进程负责启动服务进程和其他后台进程,并且在子进程退出的时候做清理工作。该进程负责分发来自操作系统的信号到各子进程。系统退出时,主进程负责发送信号通知各子进程退出,然后再停止自己。
后台写进程(kingbase: background writer):在这个进程中,共享缓冲池上的脏页会逐渐定期地写入持久存储(例如HDD、SSD)。
检查点进程(kingbase: checkpointer):用来执行检查点过程。
自动vacuum进程(kingbase: autovacuum launcher):会定期地在服务器上执行清理和回收工作。
WAL日志写进程(kingbase: walwriter):这个进程周期性地将WAL缓冲区上的WAL数据写入和刷新到持久存储。
统计进程(kingbase: stats collector):在此进程中,会收集sys_stat_activity和sys_stat_database等统计信息。
归档进程(kingbase: archiver):归档进程负责将日志文件归档到指定的位置。
日志收集进程(kingbase: logger):日志收集进程负责将数据库运行中的输出信息写入日志文件。