oracle 提示中的默认并行度

Default degree of parallelism in oracle hints

我使用了默认的并行度来获得性能调整,我也得到了最好的结果。但我怀疑当其他一些工作同时访问相同的 table 时它会产生影响。

示例代码如下。

select /*+ FULL(customer) PARALLEL(customer, default) */ customer_name  from customer;

可用服务器数量为 8 台。这种默认的并行度是如何工作的?如果其他作业 运行 同时查询同一个 table 会影响吗?在将此查询移至生产环境之前,我想知道这是否会产生影响?谢谢!

来自documentation

平行(默认):

The optimizer calculates a degree of parallelism equal to the number of CPUs available on all participating instances times the value of the PARALLEL_THREADS_PER_CPU initialization parameter.

maximum degree of parallelism受限于系统中CPU的数量。用于计算限制的公式为:

PARALLEL_THREADS_PER_CPU * CPU_COUNT * the number of instances available

默认情况下,集群上所有打开的实例,但可以使用 PARALLEL_INSTANCE_GROUP 或服务规范进行约束。这是默认值。