DB2的底层组件

常见组件:

 

SQLA          应用程序服务

SQLAC        C程序接口

SQLB          缓冲池组件(BPS组件)

SQLC          通信管理(CCI组件)

SQLD          数据管理服务组件(DMS组件)

SQLE          为实例和数据库分配内存,拦截和处理信号,并处理发送到DB2的异常(BSU组件)

SQLF           配置接口,更改数据库配置参数时需要通过这个组件

SQLI           索引管理器组件(IXM组件)

SQLJC         Java驱动组件(CCI组件)

SQLKD        缓冲池分布式服务

SQLKF         FCM快速通信管理器组件

SQLKQ        缓冲池队列服务

SQLKT         表队列服务

SQLN          SQL编译器组件

SQLO          操作系统服务(OSS组件)

SQLP          数据保护组件(DPS组件)

SQLR          关系数据服务组件(RDS组件)

SQLS          排序列表服务组件

SQLU          数据库实用工具,使用BACKUP,RESTORE和LOAD等工具时通过该组件

SQLX          索引操作

SQMO         内存优化组件

 

OSS组件的作用是与操作系统打交道:

1.内存管理:内存集(Memory Set),内存池(Memory Pool),内存块(Memory Block)

2.I/O管理

3.DB2进程和线程的创建和管理

4.Semaphore信号量系统的处理

5.安全认证

6.错误日志输出

 

SQMO组件的作用:

1.实现在线更改配置参数

2.动态内存平衡优化管理

 

BSU组件的作用:

1.为实例和数据库分配内存

2.拦截和处理信号

3.启动进程、线程和EDU

 

CCI组件的作用:

处理通信协议,客户端通过API连接数据库时要通过该组件。后台主要通过DRDA实现,通过DB2RA通信接口实现通信

 

RDS组件的作用

1.通常被CCI客户端通过函数唤醒

2.优化和处理SQL语句

3.构造查询访问计划:生成查询计划传给DMS执行

 

DMS组件的作用:

1.执行由RDS组件传来的查询访问计划,把结果集返还给RDS组件

2.用SQLI组件处理索引扫描

3.用SLS组件(SQLS)处理排序

 

IXM组件的作用

1.管理所有索引

2.多维集群索引维护

3.在线索引的重组和重建

 

BPS组件的作用

1.在内存中缓存数据

2.调用操作系统的IO进程,存取和访问磁盘中的数据

3.格式化表空间的页面数据

 

DPS组件的作用

1.日志

2.锁

3.transaction管理

 

 

一个查询的处理流程是:CCI组件---->RDS组件---->DMS组件---->BPS组件

                                                                        (IXM组件)

                                                                        (SLS组件)

                                                                        (        DPS组件          )

                            (OSS组件、SQMO组件、BSU组件为以上组件提供服务和支持)

 

在db2diag.log中,经常会出现以sql开头的Function Name。用db2diag工具查看db2diag.log时,可以用-gi “funcname=sql........”选项进行过滤查看。利用这个Function Name,可以判断相关的日志来自DB2的哪个组件,该组件发生了些什么事情。

 

db2diag.log也会出现“errno:#### ####”,通过查看操作系统的errno.h文件,可了解相关的错误内容。

 

sqlcode或返回码在db2diag.log中以负数形式出现,执行db2 ? sql####可了解引起错误的原因

 

db2diag.log中的ZRC码可通过db2diag -rc ########查看错误解释

 

可借助db2trc追踪特定组件

 

 

 

 

 

 

此文大部分内容来自牛新庄的<深入解析DB2>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值