Oracle存储过程是否比Oracle中的PL / SQL慢?

时间:2012-01-19 11:54:06

标签: oracle plsql java-stored-procedures

这是一个直截了当的问题:您是否知道Java存储过程是否比Oracle数据库中的PL / SQL慢?

我们已经将存储过程从PL / SQL迁移到Java,只是为了对其进行基准测试,并且它占用了PL / SQL的大约两倍的时间。这也是你的经历吗?

感谢。

2 个答案:

答案 0 :(得分:6)

无论何时在语言之间切换,都会产生开销,称为上下文切换。

http://asktom.oracle.com/pls/apex/f?p=100:11:0::::P11_QUESTION_ID:60122715103602

在SQL和PL / SQL之间移动甚至是一个开销,它们是非常紧密集成的。因此,在Java和PL / SQL之间移动的效率始终低于纯PL / SQL。

Java Stored Procedure Vs PL/SQL Stored Procedure

对于上下文切换发生后的性能,您的基准测试将为您提供最佳答案,但FWIW,因为PL / SQL如此紧密地集成在Oracle数据库中,它应该比存储的Java代码执行得更好,如果你是获取数据或与数据库交互,如果您纯粹操纵已经获取的数据,那将取决于您对数据的操作,基准测试将告诉您答案。

答案 1 :(得分:1)

是。 Java一直是最胖,最慢的孩子。

没有理由从你的pl / sql切换到java的99%。

我将java用于我需要的几个实例。