Skip to Main Content

ODP.NET

Announcement

For appeals, questions and feedback, please email oracle-forums_moderators_us@oracle.com

Performance Comparison of DataTable and DataReader between ODP and DevArt

Sebastian FreyDec 7 2023

Hello,

I am currently analysing the performance of OPD.NET in comparison to DevArt.

In my comparison I use the OracleDataAdapter to fill a DataTable.
In the different test scenarios you can see that the performance of ODP is getting worse for tables with many columns.

The same can also be observed with the OracleDataReader.
Is there a reason why the performance decreases so much?

Oracle database 19c.

ODP Oracle.ManagedDataAccess.Core 23.3.0-dev.

.NET 6.0

var builder = new OracleConnectionStringBuilder();

// DataSource
// UserId
// Password
builder.MinPoolSize = 0;
builder.MaxPoolSize = 100;
builder.Pooling = true;
builder.StatementCacheSize = 50;

return new OracleConnection(builder.ConnectionString);
var conn = GetConnection();

conn.Open();

var comm = new OracleCommand(sql, conn);

var dt = new DataTable();
var adapter = new OracleDataAdapter(comm);

adapter.Fill(dt);

conn.Close();

return dt?.Rows?.Count ?? 0;

I execute the method 10 times in a loop. The routine is also executed with various SQL statements, see colors in the result.

The columns of the table consist of DateTime, Number and Varchar2 no clob or similar.

The values in the green line show a large difference. The same can be observed with the OracleDataReader.

Can you confirm this on your site?

I can also send you my sample project.

Thanks

Sebastian

Comments
Post Details
Added on Dec 7 2023
15 comments
186 views