本文描述了Informix Extended Parallel Server 版本8.3中的新特性,这些特性让您定制每个用户会话的环境以获得更佳性能并更有效地使用数据库服务器资源。您可以通过使用下面列出的这些新特性来帮助用户和控制资源。
要指定初始会话环境,创建在每个会话打开数据库时运行的sysdbopen()过程,并合并SQL和SPL语句以定制由每个会话提交的查询行为。除了使用适当的SPL语句之外,您还可以在用户每次打开数据库时为他们指定下列新的SET ENVIRONMENT特性。
COMPUTE_QUOTA参数有助于那些运行多个小型或中型特殊查询的用户。
IMPLICIT_PDQ参数根据每个查询和每个查询操作符的需求分配内存。
TMPSPACE_LIMIT参数防止任何查询独占 TEMP 空间。
以后要调整会话环境,使用新的onmode命令。
要更详细地管理和分析查询,使用Informix I-Spy 版本2.0。
将这些特性与您数据库设计和数据库服务器管理方面的标准好实践结合起来,将使管理日益变化的工作负载变得更容易。
数据仓库和数据集市的变化用法
以前,设计和调整数据仓库数据库是用来运行大型、易于理解的查询,但数据仓库用法正在迅速变化。现在,用户以多种方法、使用许多不同的工具(包括用于统计报表的SAS、用于预言式数据挖掘的Brio和Cognos和用于多种类型的数据分析的第三方OLAP工具)来访问大型数据库。
当用户运行允许他们编写特殊查询的应用程序时,您就不能再假设自己能够调整在您的数据仓库数据库上运行的查询了。特殊查询的范围从简单的指定会计年度统计分析到旨在预测客户行为或检测欺诈行为的复杂算法。并且这些查询可能同时和您为数据库设计的大型查询一起运行。随着商业智能定义的扩展,将需要数据仓库的所有这些用法。
在这种环境中DBA和DBSA的主要问题是确保运行各种查询的用户能有效地使用数据库服务器资源。当为大型DSS查询调整环境变量和配置参数的单个集合后,数据库服务器不能有效地运行多种其它类型的查询。这个问题引起了其它问题:
某些查询可能得到了比其需要更多并行处理能力,并因此妨碍了其它查询的执行。
其它查询可能得到比其需要更多(或者可能更糟 — 更少)内存。
如果查询得到的内存比它们需要的少,它们就溢出至 TEMP 空间,这会降低性能。而且,溢出查询可能使用过多的 TEMP 空间,以至其它溢出查询无法得到 TEMP 空间来完成其执行并因此异常终止。
Informix Extended Parallel Server 版本8.31 引入了几个新特性,它们允许您调整每个会话的环境以便适当地管理其需求。新特性允许您管理特定会话或所有会话的内存使用、CPU VP使用和TEMP空间使用。
此外,您可以使用 I-Spy(一种在将查询发送到数据库服务器之前截取它们的守护程序)更精确地分析数据库服务器使用以及管理用户和查询。I-Spy 收集关于查询的信息,并通过强制执行您指定的规则控制查询的行为。