Laz*_*zer 2 oracle oracle-11g-r2
在 Oracle 11g 中,有没有办法通过设置标志等来告诉数据库尽可能使用并行执行,而不是对每个 SQL 语句使用 PARALLEL 提示?
简单的回答:是的。不幸的是,它并不是那么简单,如果您想启用并行性,那么您显然很关心性能,而且它是非常可调的。
开始alter system set paralllel_automatic_tuning=true scope=spfile;
然后重新启动。这将使 Oracle 做它认为最好的事情。还有许多其他参数需要设置(例如parallel_execution_message_size),您需要进行试验以找到最佳参数。小心这一点;当您开始使用并行查询时,很容易在基准测试中不知所措,然后在“现实世界”中发现一些查询在飞,但系统的整体吞吐量实际上会降低,因为某些会话 CPU 不足或系统被迫进入交换。文档警告:
当并发用户有太多查询服务器进程时,可能会发生内存争用(分页)、I/O 争用或过多的上下文切换。与不使用并行执行相比,这种争用可以将系统吞吐量降低到更低的水平。
所以我强烈建议设置一些限制,例如对资源消费者群体。
同样对于任何表格,您可以ALTER TABLE table_name PARALLEL (DEGREE x);
在 x 是数字的情况下进行操作,4 或 8 可能是开始的好地方。
归档时间: |
|
查看次数: |
6604 次 |
最近记录: |