Informix 11.5新特性介绍:第1部分 - 面向对象网,数据库,基础,原理,学习,对象 - 面向对象技术开发

面向对象技术开发

会员投稿 投稿指南 站长资讯通告:
您的位置: 首页 > 数据库 > 其它数据库 > 正文

Informix 11.5新特性介绍:第1部分

来源: www.bianceng.cn 阅读:

Informix数据库目前最新的版本是11.5,从Informix 9、Informix 10到Informix 11.5,在数据库性能、数据库管理及应用开发等方面都有了很大的提高,而且推出了很多非常有用的新特性。通过对这些特性的使用,可以大大提高数据库性能、增强数据库可管理性及应用开发的灵活性。我们这里,给大家介绍其中的一些特性,希望对大家能有所帮助。

数据库管理方面的一些实用特性

使用可配置的页面大小

我们知道,在Informix 中,数据存储的最基本的单位是页,在Informix 10 版本之前,数据页面的大小是固定的,不能被改变,通常,在sun、HP 等平台上,数据页的大小为2K,AIX 及 windows 平台,数据页的大小为4K 。从Informix 10 版本开始,我们可以配置Informix数据库页面的大小,数据库页面的大小可以是2K-16K 。通过提供可配置的页面大小功能,可以给我们带来很多好处:

空间使用的效率会更高

从Informix 10开始,一个页面可以达到16K的连续空间,可以更有效的使用数据空间。比如说,我们表中一行的数据大小为1200字节,那么,当使用2K 大小页面时,只能存放 1 行数据,3 行数据需要 6K 大小空间;如果采用4K 大小页面,那么 3 行数据可以放在一个 4K 页面上,空间会节省 %33 。那么,当对 30 行数据而言,如果采用2K 大小页面时,需要占用60k 大小空间,如果采用4K 大小页面时,只需要占用40k 大小空间,如果采用6k 大小页面时,则仅需要占用36k 大小空间 , 可以节省 40%的空间。

支持更大的索引键值,最大可以达到3K 。

这样,我们可以在一个索引页面上放置更多的索引键,支持更大的键值,而不需要增加索引树的层次。采用可配置页面大小功能,可以显著提高具有大量重复索引键值情况下的处理性能。

存取效率的提高

通过采用可配置页面大小功能,可以降低数据页和索引页的IO 操作次数,提高存取效率。通过配置页面大小,很长的记录行可以只存放在单个页面上,降低了读取每条记录的页面数目;在以前的版本中,超长的记录需要 remainders pages,采用大的页面足够用来存放整条记录,略去了访问 remainders pages的时间;大的索引页面可以存放更多的索引项,从而降低了索引的层数,减少了在索引树上遍历的开销;在决策支持应用的环境中,使用大的页面可以降低全表扫描的页面的数目,提高运行效率。

我们可以在数据库空间(dbspace)级别以及缓冲池(buffer pool)级别来定义数据页面的大小,其范围可以是2K-16K,而且定义的数据页面大小必须是系统缺省页面大小的倍数。可配置的页面大小功能需要系统开启大块(large chunk)功能。

在创建dbspace 时,这个特性允许指定标准或临时 dbspace的页大小。如果要使用比默认页大小所允许的键长更长的键,可能需要指定非默认的页大小。根 dbspace 使用默认的页大小。如果希望指定页大小,指定的值必须是默认页大小的整数倍,而且不能超过16 KB 。

使用onspaces命令创建dbspace的基本语法如下:

onspaces – c – d dbs – k pgsize – p path -o offset -s size ;

其中,pgsize 用来指定 dbspace的页面大小 (in K):

页面大小的范围从2K到16K 。

页面大小必须是缺省页面大小 (2k or 4K)的倍数。

Dbspace 创建之后,页面大小不能修改。

如果相对应的页面大小的缓冲池不存在,online 将通过配置参数 BUFFERS_DEF 自动创建一个。

rootdbs 必须使用系统默认的页面大小。

动态创建的日志文件必须在使用系统默认的页面大小的数据库空间上分配。

在创建缓冲池时,我们可以使用新的BUFFERPOOL配置参数或者 onparams 工具为dbspace 中所有非默认页大小对应的页定义缓冲池。在使用BUFFERPOOL配置参数或者 onparams 工具定义缓冲池时,需要指定缓冲池的信息,包括大小、缓冲池中的LRUS 个数、缓冲池中的缓冲区个数、lru_min_dirty和lru_max_dirty的值。BUFFERS、LRUS、LRU_MAX_DIRTY和LRU_MIN_DIRTY配置参数都不再使用。在Version 10.0 中,以前在BUFFERS、LRUS、LRU_MAX_DIRTY和LRU_MIN_DIRTY配置参数中指定的那些信息,现在要使用BUFFERPOOL配置参数或者 onparams 工具指定。使用BUFFERPOOL配置参数或onparams 工具输入的信息代替了以前用过时的参数指定的信息。

通过onparams 指定缓冲池的基本语法如下:

onparams – b – g pgsize – n buffs – r lrus – x max – m min ;

Tags:
相关文章列表: