oracle中并行提示的sql并行度

myzjeezk  于 2021-07-29  发布在  Java
关注(0)|答案(1)|浏览(366)

oracle中决定并行提示dop的因素有哪些。
如。

SELECT /*+ PARALLEL(employees 3) */ e.last_name, d.department_name
FROM   employees e, departments d
WHERE  e.department_id=d.department_id;

如何确定3是正确的dop?

gywdnpxw

gywdnpxw1#

我维护的大多数系统既不是otlp,也不是datawarehouse,而是介于两者之间的东西。因此,有时有必要使用并行性,但您不希望将所有资源(所有cpu核心)用于单个报表。理论上,您可以通过配置文件来限制dop,但在oracle中,资源限制是一个有问题的组件。而且oracle中的自适应dop默认是由空闲cpu资源的数量决定的,所以这样的查询通常有大量的并行工作线程,这会完全杀死磁盘io。
oracle会话工作进程是单线程的,它们都不会使用超过一个cpu核心。所以dop应该始终对应于cpu核的数量以及它是否是cpu绑定的。

相关问题