Chinaunix首页 | 论坛 | 博客
  • 博客访问: 426035
  • 博文数量: 239
  • 博客积分: 8010
  • 博客等级: 中将
  • 技术积分: 2431
  • 用 户 组: 普通用户
  • 注册时间: 2008-06-02 21:12
文章分类
文章存档

2008年(239)

我的朋友

分类: DB2/Informix

2008-06-18 00:38:15

系统

INFORMIX数据库系统使用单实例多数据库模式,采用多进程、多线程系统结构。由于进程相对于数据库系统就好比CPU相对于计算机一样,因此在INFORMIX系统中,进程被称为虚拟处理器(virtual processorVP)。之所以称为虚拟处理器,表明它并不是物理上的处理器。整个系统的体系结构见图1-5

一个INFORMIX系统实例需要启动的进程包括:CPUAIOLIOPIOADMSCO等,需要为实例分配的内存空间包括:常驻部分(缓冲池、锁表、逻辑日志缓冲区、物理日志缓冲区)、虚拟部分(字典高速缓冲、线程会话信息、SQL语句缓冲区)、虚拟扩展部分、通讯部分、VP专用部分。数据库的存储结构包括:配置文件、大块、归档日志文件等,这些存储空间在实例创建时建立,可以在运行过程中给数据库增加大块。

INFORMIX系统的一个实例中,存在多个数据库,分为系统数据库和用户数据库。系统数据库在实例初始化时自动创建,存放实例级别上的监控信息、数据字典信息,用户能够访问而不能修改这些数据。一个实例需要创建的系统数据库有:sysmastersysutils。用户数据库由用户根据需要创建,存放用户数据以及和该数据库有关的数据字典信息。

INFORMIX系统实例的数据库和数据库之间,关系比较紧密,这主要体现在:

1)共用实例进程、线程模块。实例的进程和线程可以访问和处理所有数据库中的数据,用户对数据库的访问就通过这些进程和线程完成。实例的进程和线程在实例运行时被启动。

2)共用系统内存空间。用户要处理数据库中的数据,首先要将它们读入内存,存放在为实例分配的系统内存空间中。实例的系统内存空间为所有数据库所使用,在实例运行时被分配。

3)共用存储空间。实例中用来存放数据的表空间,可以为所有数据库使用。一个数据库可以跨越多个表空间,而一个表空间也可以存放多个数据库的数据。

4)共用数据库日志文件。在实例中被处理事务所产生的所有日志信息,存放在共同的日志文件中,这些事务所处理数据可以来自任何数据库。

 

 

在启动实例时,系统根据配置信息,启动实例需要的各种进程(如:CPUAIO等),分配共享内存空间(如:常驻部分、虚拟部分等),并同时打开所有数据库。另外,实例的表空间,建立在大块(chunk)上,大块可以是操作系统文件、裸设备。

阅读(1076) | 评论(0) | 转发(0) |
0

上一篇:1.4.4 SYBASE系统

下一篇:1.4.2 ORACLE系统

给主人留下些什么吧!~~