SQL Performance Tips in Execution Plans of Oracle 23c
Oracle 23c is like Christmas for me. There are many surprises to be found. This weekend I discovered another nice little enhancement. In the last days, I developed and tested some demo scripts that I plan to show at my next conference sessions at APEX…
Star Schema Design in Oracle: Partitioning
Partitioning is one of the most powerful features for data warehouses in Oracle databases. In this blog post, I explain how it can be used for the physical design of star schemas. What is the recommended partitioning strategy for a star schema, and what are…
Star Schema Design in Oracle: Fundamentals
What are the design rules for good performance in a star schema in an Oracle database? This blog post series introduces some recommendations for the physical database design. This first post is about constraints and indexes. For the last few years, I was supporting one…
Book Review: “Faster: How to Optimize a System” by Cary Millsap
There are many books on performance optimization, but this one differs in a few ways. It is more of an entertaining collection of short stories, but with many educational messages. My travel plans for the Kscope22 conference in June this year were suboptimal: My return…
Housekeeping in Oracle: How to Get Rid of Old Data
Have you ever tried to delete a few million rows from a table with several hundred milllions of rows with a DELETE statement? If yes, then you know that this is a very bad idea. With Oracle Partitioning you can do this more elegant and…
NVMes write back vs. write through performance
Recently I was running some benchmarks to double-check that the performance of AMD EPYCs servers delivered by Company A, match the performance of those delivered by Company B. I was using our benchmark automation tool (about which I may write a bit more in the…
Performance Tips: PL/SQL Functions in SQL Queries
PL/SQL functions in SQL statements may cause major performance problems. If it is not possible to avoid these calls, there are several solutions to improve the performance. But not for all situations. In my last blog post, I wrote about the impact of function calls in…
Performance Tips: Function Calls in WHERE Conditions
A typical reason of many performance issues with SQL are function calls in the WHERE condition. They make it difficult for the query optimizer to determine the cardinality. Fortunately, there are several ways to solve this problem. Function calls – or any kind of SQL expressions…
Performance Comparison: Snowflake vs Oracle Autonomous Data Warehouse
Which data warehouse cloud platform is faster: Oracle Autonomous Data Warehouse or Snowflake Cloud Data Warehouse? The short answer: it depends. For a more detailed answer, read this blog post. Skiing is not recommended at the moment. Because of the current pandemic situation, it’s better…
Behind the Scenes: Preparing a Live Demo
One of the extensions in Oracle 20c is the possiblity to use the In-Memory Database option for Partitioned External Tables and Hybrid Partitioned Tables. In my opinion, this opens up many possibilities to perform efficient ad-hoc queries on Data Lakes. That’s why I prepared a…