Performance is always at the top of the list of reasons why customers buy Progress DataDirect products. Even though all of our products are designed to deliver maximum performance out-of-the-box, there are cases where there may be a need to tune a product to get even better performance.
While many customers are aware that our drivers and providers come with a large number of tuning options, most are unaware of how to tune these options, or how these options can provide a benefit. Today I will cover the basics of performance tuning and explain some of the tuning options available in our Connect for ADO.NET provider for Oracle.
Performance Tuning Options
Our Oracle .NET provider offers a lot of options and properties that can be tuned for performance. The key to using them is to understand the benefits and tradeoffs of each. Details are available online under the Performance Considerations section of our User’s Guide.
Performance Tuning Wizard
The easiest way to tune any of our .NET providers is to use our Performance Tuning Wizard. It is accessible as a component in Visual Studio, so once you’re done tuning, you can simply drop the modified connection string right into your project code and go! One thing to keep in mind as you go through the Wizard: answering the questions accurately is essential. If you are unsure of how to answer a particular question, be sure to check the link above that describes each of the tuning options.
Session Data Unit
Modifying the “Session Data Unit” (SDU) option in the Oracle provider increases performance by transmitting the data to the database server in packets that are equal size to the maximum SDU size on the database server. Be sure to set the SDU value to the maximum SDU size on your Oracle server. If you don’t know the maximum SDU size on the Oracle server, check with your Oracle DBA.
Batch Update Behavior
The “Batch Update Behavior” option allows batch operations to use array binding which can significantly increase performance. Rather than simply being a feature that is enabled, different scenarios require a different setting of this option. The Performance Considerations section of the User’s Guide explains these scenarios and the correct setting for them in more detail.
If what you’re looking for is a general set of best practices or guidelines for ensuring that your Oracle .NET application performs at its best, then you will also want to check out the Performance Tips document at our developer center.
Performance Benchmark Results
If you’re just looking for some benchmark results that illustrate why our Oracle .NET provider is the best performing ADO.NET provider of its kind, we have that too! Our website has example results showing throughput, CPU efficiency, and memory usage results along with details on how we run our performance tests. In addition, we have details on why the 100% managed code architecture of our Oracle .NET provider contributes to why it is faster.