如果被赋予PARALLEL_INSTANCE_GROUP的值是不存在的服务或组名,那么操作将会串行执行。没有并行被使用。
8、PARALLEL_IO_CAP_ENABLED
参数类型 Boolean
默认值 false
可修改性 ALTER SESSION, ALTER SYSTEM
值范围 true | false
是否基础 No
Oracle RAC 多个实例能有不同的值
注意: PARALLEL_IO_CAP_ENABLED参数被废弃了。保留它的目的仅仅是为了向后兼容。PARALLEL_DEGREE_LIMIT参数设置为IO时,可以替代该参数。
PARALLEL_IO_CAP_ENABLED确定Oracle是否覆盖默认并行度一直到IO系统支持的值。该新值基于资源管理器的IO校验包的结果计算得出。如果PARALLEL_IO_CAP_ENABLED被设置为true并且 数据库的IO能力已经被校验过,当IO能力不能支撑可用的CPU数时,则 Oracle将减少默认并行度。为了校验IO能力,用DBMS_RESOURCE_MANAGER.CALIBRATE_IO过程来测量 系统的IO容量。Oracle计算并行度,以便不超过系统的IO容量。
9、PARALLEL_MAX_SERVERS
参数类型 Integer
默认值 PARALLEL_THREADS_PER_CPU * CPU_COUNT * concurrent_parallel_users * 5
可行改性 ALTER SYSTEM
值范围 0 to 3600
Oracle RAC 多个实例可以有不同值
注意:该参数适用于单实例和RAC模式的并行执行。
PARALLEL_MAX_SERVERS确定一个实例并行执行进程和并行恢复进程的最大数。当需求增加时,Oracle数据库从实例启动时的进程数增加到该参数值。公式中,实例上赋予正在使用的concurrent_parallel_users的值和内存管理设置相关。如果自动内存管理被关闭(手工模式),那么concurrent_parallel_users为1。如果PGA自动内存管理被开启,那么concurrent_parallel_users的值为2.如果除了PGA自动内存管理,全局内存管理或SGA内存目标也被使用,那么,concurrent_parallel_users为4。
如果你把该参数设置的太低,那么,有些查询也许在查询期间没有可用的并行执行进程可用。如果你把该参数设置太高,那么,内存资源在峰值期间也许会短缺,这也会降低性能。
10、PARALLEL_MIN_PERCENT
参数类型 Integer
默认值 0
可修改性 ALTER SESSION
值范围 0 to 100
Oracle RAC 多个实例能有不同的值
PARALLEL_MIN_PERCENT使得你确定并行执行需要并行执行进程数的最小百分比。设置该参数确保除非有足够的资源可用,否则,不会执行并行操作。默认值0意味着没进程的最小百分比被设置。
考虑以下设置:
PARALLEL_MIN_PERCENT = 50
PARALLEL_MIN_SERVERS = 5
PARALLEL_MAX_SERVERS = 10
如果十个并行执行进程中的8个处于繁忙状态,仅两个进程可用。如果接着你提交一个并行度8的查询,那么,最小50%不能被满足。
你能和PARALLEL_ADAPTIVE_MULTI_USER参数一起使用该参数。在多用户环境,一个单独的用户或应用能设置PARALLEL_MIN_PERCENT为一个有足够的系统资源和可接受的并行度被返回时使用的最小值。
11、PARALLEL_MIN_SERVERS
参数类型 Integer
默认值 0
可修改性 ALTER SYSTEM
值范围 0 to value of PARALLEL_MAX_SERVERS
Oracle RAC 多个实例可以有不同的值
注意:该参数使用单实例和RAC环境的并行执行。
PARALLEL_MIN_SERVERS确定实例上并行执行进程的最小数。该值是实例启动时Oracle创建的并行执行进程的数目。
12、PARALLEL_MIN_TIME_THRESHOLD
参数类型 String
语法 PARALLEL_MIN_TIME_THRESHOLD = { AUTO | integer }
默认值 AUTO
可修改性 ALTER SESSION, ALTER SYSTEM
是否基础 No
PARALLEL_MIN_TIME_THRESHOLD确定一个语句被考虑采用自动并行度前一个语句将用的最小执行时间。默认地,它被设置为10s。只有PARALLEL_DEGREE_POLICY被设置为AUTO或LIMITED时,自动并行度才被开启。
13、PARALLEL_SERVERS_TARGET
参数类型 Integer
默认值 PARALLEL_THREADS_PER_CPU * CPU_COUNT * concurrent_parallel_users * 2
可修改性 ALTER SYSTEM
值范围 0 to PARALLEL_MAX_SERVERS
是否基础 No
PARALLEL_SERVERS_TARGET确定语句排队被采用前运行一个语句允许的并行服务器进程数。当参数PARALLEL_DEGREE_POLICY被设置为AUTO,且必需的并行服务器进程不可用时,Oracle将排队要求并行执行的SQL语句。一旦系统上活的并行服务器进程数等于PARALLEL_SERVERS_TARGETS,语句排队将开始。默认地,PARALLEL_SERVERS_TARGETS被设置低于系统上允许的并行服务进程最大数(PARALLEL_MAX_SERVERS),以确保每个并行语句将获得需要的并行服务资源,同时,也避免因为过多的并行服务器进程数而导致系统过载。
一个实例上运行的默认并行度的并发并行用户和内存管理设置相关。如果自动内存管理被关闭(手工模式),那么,并发并行用户数为1.如果PGA自动内存管理被开启,并发并行用户为2。如果除了PGA内存自动管理,还有全局内存管理和SGA内存目标被使用,那么,并发并行用户数为4。
注意即使语句排队被激活,所有串行语句(非并行的)将立即执行。
14、PARALLEL_THREADS_PER_CPU
参数类型 Integer
默认值 Operating system-dependent, usually 2
可修改性 ALTER SYSTEM
值范围 Any nonzero number
注意:这个参数适用于单实例和RAC环境的并行执行。
PARALLEL_THREADS_PER_CPU确定实例的默认并行度和并行自适应及负载均衡算法。参数描述并行执行期间每个CPU能处理的并行执行进程或线程数。
默认值和平台有关,且在大多数情况下是足够的。当一个具有代表性的并行查询执行,且机器出现过载现象时,那么,你应该减少该参数的值。如果系统是IO限制的,你应该增加该参数。