ITPub博客

首页 > 数据库 > 国内数据库 > GBase8s PDQ功能简介

GBase8s PDQ功能简介

原创 国内数据库 作者:DMD_202007 时间:2021-04-21 09:29:07 0 删除 编辑


1. PDQ 可以提供如下动作并行操作:
        扫描(parallel scans);
        关联(parallel joins);
        排序(parallel Sorts);
        分组(parallel  group);
        聚集(parallel aggregates)。
        
2. 涉及参数如下:
MAX_PDQPRIORITY:
DS_MAX_QUERIES:并行PDQ查询的数量;
DS_TOTAL_MEMORY: DSS查询支持的最大内存;
DS_MAX_SCANS:最大扫描线程数,默认1024*1024 ; ;
DS_NONPDQ_QUERY_MEM:  最大=DS_TOTAL_MEMORY*25%

3. 动态修改方法:
onmode -D   修改MAX_PDQPRIORITY
onmode -M   修改DS_TOTAL_MEMORY  
onmode -S   修改DS_MAX_SCANS
onmode -Q   修改DS_MAX_QUERIES  

4. 如下操作可以使用PDQ:
1
) select 、update、delete、update 
2
) create index
3
) update statistics
4
) hold cursors
5
) User-Defined Routines, User-Defined Aggregates

以下查询不能使用到PDQ:
1
) 查询使用cursor stability 隔离级;
2
) 查询包含for update或with hold的字句;
3
) 查询包含子查询;
4
) 查询语句包含SPL函数;
5
) 对于delete操作,当删除的表中包含一个引用约束时;  
6
) DDL 语句

5. 要使用PDQ,需要考虑如下因素:
1
) 使用set pdqpriority n;
2
) 使用分片表;
3
) 操作系统有多CPU,VPCLASS中cpu vp大于1;

PDQ 以Quantum 为单位分配内存
1Quantum = DS_TOTAL_MEMORY/DS_MAX_QUERIES    
某个PDQ会话的内存分配的范围在1Quantum和DS_TOTAL_MEMORY*MAX_PDQPRIORITY*PDQPRIORITY之间.

6. 如下环境变量需要注意:
PSORT_NPROCS:用来设置排序和聚集线程的数量;
DBUPSPACE=8192:50:3   {磁盘空间}:{内存大小} :{directive}:
磁盘空间用于设置update statistics medium|high时候的排序空间的大小;
内存大小用于设置在没有开启PDQ的情况下的排序内存的大小(4-50MB);
directive用于为update statistics设置如下directive:
=1:不使用任何索引排序 ,打印update statistics完整的执行计划 ,
=2:不使用任何索引排序,不打印执行计划
=3:选择可用的索引进行排序,打印完整的执行计划

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

官网:


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69980677/viewspace-2769014/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2020-07-31

  • 博文量
    36
  • 访问量
    31942