是否可以执行并行嵌套事务?

时间:2011-12-02 11:51:18

标签: oracle plsql

我有一个场景,我需要并行调用一组不同的oracle过程。此过程必须共享具有未提交事务的相同初始上下文。我不能在这些并行进程之间存在读取不一致的危险下提交父事务。 是否可以在PL / SQL中使用?

3 个答案:

答案 0 :(得分:1)

我想到了一件事:mapreduce with table functions http://blogs.oracle.com/datawarehousing/entry/mapreduce_oracle_tablefunction

我已经在几种情况下使用它来同时运行,但我不确定它是否适用于您的问题。

答案 1 :(得分:0)

您可以使用DBMS_XA包完成此操作,该包允许您“使用PL / SQL在SQL * Plus会话或进程之间切换或共享事务”。

Oracle-Base有一个很好的例子来说明如何使用该软件包。

(但如果您的目标是使用并行性来提高性能,则应使用正常的语句级并行执行。)

答案 2 :(得分:-1)

据我所知:不。

DBMS_JOBDBMS_SCHEDULER可用于并行运行Oracle过程,但它们在自己的会话中运行它们。