dm7调整配置参数及配置并行执行

       DM7调整配置参数 :

       SF_GET_PARA_VALUE (scope int, paraname varchar(256));

       配置参数的值类型为数值类型时使用该函数来获取当前值。SCOPE 参数为 1 表示获取 INI 文件中配置参数的值,为 2 表示获取内存中配置参数的值。

        SF_GET_PARA_DOUBLE_VALUE(scope int, paraname varchar(8187))
        配置参数的值类型为浮点型时使用该函数来获取当前值。 SCOPE 参数为 1 表示获取 INI 文件中配置参数的值,为 2 表示获取内存中配置参数的值。
         
        SF_GET_PARA_STRING_VALUE (scope int, paraname varchar(8187))
        配置参数的值为字符串类型时用该系统函数来获取当前值。 SCOPE 参数为 1 表示获取 INI 文件中配置参数的值,为 2 表示获取内存中配置参数的值。
        
        SP_SET_PARA_VALUE (scope int, paraname varchar(256), value int64)
        该过程用于修改整型静态配置参数和动态配置参数。 SCOPE 参数为 1 表示在内存和 INI 文件中都修改参数值,此时只能修改动态的配置参数。参数为 2 表示只在 INI 文件中修改 配置参数,此时可用来修改静态配置参数和动态配置参数。当 SCOPE 等于 1 ,试图修改静 态配置参数时服务器会返回错误信息。只有具有 DBA 角色的用户才有权限调用 SP_SET。
       
        DM7并行执行配置:
        倘若没有并行查询技术,一个串行执行的查询语句只能利用 CPU 或者磁盘设备中的一 个,而不能利用整个计算机的处理能力。并行查询技术的出现,使得单个 SQL 语句能利用 多个 CPU 和磁盘设备的处理能力。其优势在于可以通过多个线程来处理查询任务,从而提 高查询的效率。 达梦数据库为具有多个 CPU 的数据库服务器提供并行查询的功能,以优化查询任务的
性能。数据库服务器只有具有多个 CPU ,才能使用并行执行查询操作,来提高查询任务的速 度。
        达梦数据库通过三个步骤来完成并行查询:首先,确定并行任务数;其次,确定并行工 作线程数;最后,执行查询。并行查询相关参数见下表:

        

         确定并行任务个数:

         当开启自动并行(PARALLEL_POLICY=1)时,参数 MAX_PARALLEL_DEGREE 生效,控制并行查询最多使用的线程数。MAX_PARALLEL_DEGREE 缺省值为 1,表示不并行。此时若指定参数对应的 HINT “PARALLEL”,则使用 HINT 值;
   当开启手动并行(PARALLEL_POLICY=2)时,参数 MAX_PARALLEL_DEGREE 失效,用户需要在语句中使用此参数对应的 HINT “PARALLEL”指定语句的并行度,否则不并行。

         INI 参数 MAX_PARALLEL_DEGREE 设置最大并行任务个数。取值范围:1~128。缺省值 1,表示无并行任务,此参数仅在 PARALLEL_POLICY 值为 1 时才有效。

         select para_name,para_value from v$dm_ini where para_name='PARALLEL_POLICY';

         SP_set_para_VALUE(2,'PARALLEL_POLICY',1)   --静态参数需要重启数据库才能生效
         select para_name,para_value from v$dm_ini where para_name='MAX_PARALLEL_DEGREE';

         SP_SET_PARA_VALUE (1,'MAX_PARALLEL_DEGREE',3); --动态参数可直接生效

         不用加HINT就可以并行查询

         若果PARALLEL_POLICY=2,则需要配置PARALLEL_THRD_NUM 参数,默认为10(该参数才生效),查询还需要加HINT如下图所示:

         

     查看执行计划,可以看到并行运行。

     注意:只有 PARALLEL_POLICY 2 时,才需要 PARALLEL_THRD_NUM 参数(如上所示)。当 PARALLEL_POLICY 0 1 时,则不需要并行工作线程数 PARALLEL_THRD_NUM。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值