Design Tips for Query Rewrite
Although Query Rewrite on Materialized Views is a powerful feature which is available in Oracle databases for a long time, it is rarely used. Many developers and database administrators don’t know about it or do not use it because they think it is too complex….
About Data Warehouse Design Patterns and Lazy Programmers
I’m a lazy programmer! That was one important detail I learned from Roelant Vos in his training last week. But there were many other interesting topics. A personal summary of a 3-days class about Data Warehouse Design Patterns. Last week I had the opportunity to attend…
Data Vault Queries and Join Elimination
If you work with Data Vault for a data warehouse running in an Oracle database, I strongly recommend to use Oracle 12.2 or higher. Why that? Since Oracle 12c Release 2, join elimination works for more than one join column. This is essential for queries…
Conference Review 2019 (Part 3)
In the last four weeks, I had the chance to speak at three different conferences. This was the finish of an intensive conference year for me with many impressions, learning, knowledge sharing, new and old contacts and of course a lot of fun. I am…
Partition Pruning and NLS Settings
NLS (National Language Support) parameters are very useful for multilingual applications in an Oracle database. But it is important to understand their impact on query performance. I was aware that NLS is important for indexes, but never thought about its impact on partitioning. In a…
Conference Review 2019 (Part 2)
September was my second round of conferences this year. A presented my session “Avoid Horror Queries: Keep Your SQL Simple and Fast” on three different conferences, two of them organized by Trivadis. POUG 2019 Conference, Wroclaw/Poland For the second time, I joined the POUG conference in Poland….
How to Save 7 Keystrokes with dbms_xplan
An almost unknown simplification in the usage of dbms_xplan is possible since Oracle 12.2. Sometimes, there are small details that makes our job (a little bit) easier. In one of his presentations at the Kscope19 conference, Kim Berg Hansen mentioned an interesting detail about the syntax…
Conference Review 2019 (Part 1)
In the last two months, I had the pleasure to speak at four different conferences. Each of them was unique in its own way, and all of them were definitely worth to attend. Of course, it is not possible to write down all impressions in…
Oracle 19c: Auto-List Partitioning HIGH_VALUE Bugs fixed
New features are one reason to upgrade to a new Oracle release, bug fixes of known bugs are another one. With Oracle 19c, at least two bugs related to Automatic List Partitioning were fixed. I did some tests with Auto-List Partitioning on an Oracle 19.3…
Bitmap-based COUNT(DISTINCT) Functions in Oracle 19c
Oracle 19c provides a set of new SQL functions for bitmap operations. They allow fast computation of COUNT(DISTINCT) expressions. What is the purpose of these functions? The Oracle documentation is very sparse, but at least it tells us that the main focus are Materialized Views on…