10. 05. 2020.

Customer experience on Oracle Db – One metric to rule them all

Over the years I’ve found that almost every enterprise monitoring software I’ve been working with so far (and there are a few dozen of them), put extensive load on targets under the monitoring. While one monitoring tool brings extensive hard parsing on its targets, another one calculates free space for each tablespace in a very […]

18. 03. 2020.

String aggregation – part II

Last time I’ve suggested two ways of how to perform string concatenation. Unfortunately, both approaches have serious drawbacks that you might experience. In this post I’ll explain one approach which is not Oracle version dependent, which corrects both shortcomings of previously described methods: size of concatenated string speed of data processing Part I you can […]

21. 02. 2020.

External C procedures – how to setup and performance boost you can expect

In this post I’ll explain what you need to do to setup external C procedure call with Oracle 18c. I’ll also show for a CPU intensive task, what performance boost you might expect. For those of you who remember how difficult it was to configure LISTENER and TNSNAMES to work with C external procedures, will […]

13. 01. 2020.

Descending Index type – performance and limitations

The main topic of this article is the DESC index type, which is often mixed-up with the Btree index type because of the great similarity they share when looking at the index creation syntax. “Raison d’etre” for having DESC index type is to avoid expensive sorting when you are sure you’ll always query and sort […]

07. 01. 2020.

Oracle database links – performance impact

In this post I’m going to explain the most important drawbacks when using db links technology for purposes for which it is not design for. To be more precise, the case in which db links are used to massively exchange data between many separate databases will be explained. In the previous post you can find […]

02. 01. 2020.

Oracle database links – locking strategy

In this post mechanism of Oracle database link technology along with locking strategy used by Oracle database will be described. Today in almost all production environments based on Oracle databases where I’ve been called to help with optimization & tuning, it is a quite common to have at least one or more db links to […]

16. 12. 2019.

Oracle RAC in the AWS Cloud – performance testing part III

This is the last part of the series called “Oracle RAC in the AWS Cloud”. In my previous article I’ve promised to put a Oracle RAC cluster under the crazy load. It was time to fulfill my promise. My previous articles you can find on the following two links: https://www.performatune.com/en/oracle-rac-in-the-aws-cloud-performance-testing-part-i/ & https://www.performatune.com/en/oracle-rac-in-the-aws-cloud-performance-testing-part-ii/ Let’s go straight […]

09. 12. 2019.

Oracle RAC in the AWS Cloud – performance testing part II

In the 2nd part of the Oracle RAC in the AWS Cloud series I’ll present test results of Oracle 2 nodes RAC databases running on AWS public cloud based on Flashgrid’s Skycluster deployment. You can take a look at my previous article that are related to how to deploy & setup environment for Oracle RAC […]

03. 12. 2019.

Oracle RAC in the AWS Cloud – performance testing part I

Last time, all components (network, storage, Grid infrastructure…) are prepared for Oracle database RAC installation with a minimal time and effort thanks to Flashgrid’s wizard which, behind the scene, is using Cloud Formation template to setup everything, including installation of all necessary patches available at the time of installation.   You can find more on […]

05. 09. 2019.

Reducing CPU consumption and Oracle licenses by fixing context switching in Oracle Db

Context switching is one of the most overlooked topics when tuning the Oracle database, as you can’t simply see it directly (e.g. “context switching” wait event doesn’t exist). Instead you should use indirect approach (through the increased CPU consumption), as it’s recorded as a CPU wait event. Context switching what it is and what impact […]