管理XPS数据库服务器上的混合查询工作负载

本文描述了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 收集关于查询的信息,并通过强制执行您指定的规则控制查询的行为。

时间: 2024-11-01 17:57:50

管理XPS数据库服务器上的混合查询工作负载的相关文章

oracle-数据库开发,怎么从数据库服务器上看到前台程序执行过哪些SQL

问题描述 数据库开发,怎么从数据库服务器上看到前台程序执行过哪些SQL 具体的应用情景是这样的,我编写了一个简单的Delphi的程序,操作Oracle数据库,我想看到后台的数据库执行了哪些SQL,怎么在oracle上查看到. 主要是因为我在程序中使用绑定变量的方法拼接的SQL,所以没有办法在程序中通过调试看到最后拼成的SQL是什么样的,但是它执行出错,所以我想在后台看到最终执行的SQL是什么样的,这样才能发现问题. 解决方案 select * from v$sql select * from d

管理ubuntu server服务器上的阵列的例子

一台DELL R710服务器,ubuntu server系统,基于自身6块硬盘,做了一个RAID5,但最近有一块硬盘坏掉了,让服务商换了一块上来.今天想远程看看这块硬盘是否起作用了,没有找到合适的方法,于是一通搜索开始学习. 1. 确认服务器上的阵列卡 lspci -v | grep LSI   如果能看到对应的输出,说明采用的是主板上的LSI RAID卡,需要megacli命令来控制. 2. 安装megacli命令 从LSI官网找到对应的下载链接,在本机下载后,再scp到服务器上(不能直接在服

sqlserver 多表查询不同数据库服务器上的表

第一种方法: 复制代码代码如下: /* 创建链接服务器 */  exec sp_addlinkedserver 'srv_lnk','','sqloledb','条码数据库IP地址'  exec sp_addlinkedsrvlogin 'srv_lnk','false',null,'用户名','密码'  go  /* 查询示例 */  SELECT A.ListCode  FROM srv_lnk.条码数据库名.dbo.ME_ListCode A, IM_BarLend B  WHERE A.

sqlserver 多表查询不同数据库服务器上的表_MsSql

第一种方法: 复制代码 代码如下: /* 创建链接服务器 */ exec sp_addlinkedserver 'srv_lnk','','sqloledb','条码数据库IP地址' exec sp_addlinkedsrvlogin 'srv_lnk','false',null,'用户名','密码' go /* 查询示例 */ SELECT A.ListCode FROM srv_lnk.条码数据库名.dbo.ME_ListCode A, IM_BarLend B WHERE A.ListCo

如何使用一个Enterprise Manager管理多台服务器上的Application Instance?

application|enterprise|服务器 只是假象,还没有测试. 还要看看文档先.

sql 语句 取数据库服务器上所有数据库的名字

--取得所有数据库名 包括系统数据库 --SELECT name FROM master.dbo.sysdatabases --取得所有非系统数据库名 --select [name] from master.dbo.sysdatabases where DBId>6 Order By [Name] --取所有信息,包括数据库文件地址 --select * from master.dbo.sysdatabases where DBId>6 Order By [Name]

sql 语句 取数据库服务器上所有数据库的名字_MsSql

--取得所有数据库名 包括系统数据库 --SELECT name FROM master.dbo.sysdatabases --取得所有非系统数据库名 --select [name] from master.dbo.sysdatabases where DBId>6 Order By [Name] --取所有信息,包括数据库文件地址 --select * from master.dbo.sysdatabases where DBId>6 Order By [Name]

如何在不增加投入的情况下让你的数据库快上200倍

几乎每个人都在以这样或那样的方式抱怨数据库的性能问题,数据库管理员和程序员时常要面临服务器资源不够用或数据库查询一直执行不完的情况.这些情况对我们来说太正常不过了. 解决办法多种多样,最典型的一种就是把枪口指向查询语句,并谴责程序员没能写出高效的查询.他们本可以使用恰当的索引和物化视图,或者写出更好的查询.你需要增加更多的节点来缓解这些压力.在某些情况下,你的服务器因执行太多低效的查询而过载,你会考虑为不同的查询设置不同的优先级,这样那些紧急的查询(比如CEO要求的查询)可以得到优先处理.如果你

数据库服务器的安全

数据库服务器实际上是每一个电子交易.金融和企业资源规划(ERP)系统的基础,它还经常包括来自商业伙伴和客户的敏感信息.尽管这些系统的数据完整性和安全性是相当重要的,但对数据库采取的安全检查措施的级别还比不上操作系统和网络的安全检查措施的级别.许多因素都可能破坏数据的完整性并导致非法访问,这些因素包括复杂程度.密码安全性较差.误配置.未被察觉的系统后门以及自适应数据库安全方法的强制性常规使用等.数据库安全问题为什么非常重要?保护系统敏感信息和数字资产不受非法访问.任何公司的主要电子数字资产都存贮在