17. 03. 2020.

String aggregation – part I

Very often you’ll find delimited text to be more suitable format option instead of splitting text in many rows. Typical use cases for having delimited text includes preparation of data for further analysis, reporting, importing data into the spreadsheet etc. To demonstrate the concept, I’ll use my demo table TEST with 10 million rows. And […]

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.josip-pojatina.com/en/oracle-rac-in-the-aws-cloud-performance-testing-part-i/ & https://www.josip-pojatina.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 […]

21. 10. 2019.

Performing stress test against Oracle database that is running in a Cloud

Today majority of enterprises are moving or at least considering moving some load into the Cloud. What you need to be aware in such case, system requirements for a Cloud load are quite different when comparing with on-premises, mainly due to many new moving parts that are not present within classical environment such as sharing […]

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 […]