About

Martin Klier

usn-it.de

DOAG Konferenz 2021 Slides for Download

Thank you all for attending, commenting and discussing my presentations at DOAG Konferenz 2021. I am happy about the good feedback, and the attendance in the rooms. Meeting some of you in DOAG’s GatherTown was a good thing, to mimic the real conference center in Nuremberg. But still a mimic! I’m looking forward to DOAG […]

read more

Very cool interview with Maria Colgan

Community work can be so much fun. When working for the German Oracle User Group, DOAG, one of my favourite jobs is interviewing interesting people for doag.tv. In fall 2019, we recorded a fun interview with Maria Colgan, Master Product Manager for the Oracle Database. I had the chance to prepare the story: Based on […]

read more

Oracle Automatic Big Table Caching – an improvement, not a fix

Too much TABLE ACCESS FULL in your Oracle Database? Thus, SQL elapsed time too slow for the demand? Plenty of Buffer Cache to create a temporary fix? maybe you want to consider Automatic Big Table Caching. Usually, Oracle only does Full Table Caching for small tables. Big ones will only use the Buffer Cache for the current chunk […]

read more

Oracle dbms_workload_repository awr_global_report_text fails with ORA-06553 PLS-307

My last post was about generating AWR reports from SQL – not a very complicated case. “But” – little word, big meaning. And suddenly we get a strange error message. In my example, I was especially interested in a Real Application Cluster’s “global” report. The subprogram call for that purpose is dbms_workload_repository.awr_global_report_text(), accepting the DBID, begin […]

read more

How to create an Oracle AWR report with SQL and PL/SQL

AWR is a great tool (but needs diagnostics pack). It can create very useful reports for performace analysis over a given period. Most people will pull the AWR Report  from the OS level, with ‘@?/rdbms/admin/awrrpt.sql” (or one of the other scripts there). But sometime it’s not possible to access a database server’s OS level, or […]

read more

DOAG BI Conference: Oracle Core (for Beginners): In-Memory Column Store

On Thursday, April 23rd I’m speaking at DOAG BI 2015, the leading Oracle Business Intelligence Conference in Germany. (#DOAGBI15) My contribution is: “Oracle Core für Einsteiger: In-Memory Columns Store”. The lecture will show, how the Oracle Database In-Memory option works “under the hood”, and how it is used to the best effect. Please find the presentation […]

read more

Speaker at DOAG 2015 Datenbank – “Oracle Core für Einsteiger: InMemory Column Store”

The DOAG 2015 Database conference is on the horizon: June 16, 2015 in Düsseldorf, Germany. I’m proud to announce my participation as a speaker, as I was honoured with in the years before. This year, my part will be a new “Beginners” talk in German: “Oracle Core für Einsteiger: InMemory Column Store”   Abstract: ==================== Der Vortrag richtet […]

read more

Oracle: Did my SQL get worse over time? (AWR query)

Sometimes, we get statements to look at, and are told “it’s getting worse and worse”. Since DBAs are well advised not to take anything for granted and only to believe what they see with own eyes, here comes a SQL on AWR to see Buffer Gets per Minute, over time. select s.BEGIN_INTERVAL_TIME, round(t.BUFFER_GETS_DELTA/ 0.0001+ (extract […]

read more

DOAG 2014 Presentation and Whitepaper online: Database I/O

Hi, my #DOAG2014 presentation and whitepaper are online now! “Oracle Core für Einsteiger: Datenbank I/O” Presentation: http://www.performing-databases.com/uploads/media/OracleCoreDatabaseIO-Klier-2014.pdf Whitepaper: http://www.performing-databases.com/uploads/media/Klier-Database-IO.pdf Thank you all for attending! Regards Martin Klier […]

read more

Performance is rarely an accident (Deutsch)

Some time ago, I saw a great presentation of Cary Millsap: „Thinking clearly about performance”. It was obviously relevant for our internal developers, so he unhesistantly granted me permission to reproduce some of his ideas for us. Cary, thank you very much! Here you can see, what I made out of the topic, mostly for […]

read more

Oracle 12c InMemory – don’t stop thinking about performance

Oracle has released its new database version 12.1.0.2 that includes the famous in-memory column store. InMemory option  promises a big advantage for OLAP-like work loads by keeping table contents in a columnar in-memory structure. InMemory is not new, they did that for decades, but the interesting part is “columnar”. There’s much writing about that on […]

read more

Oracle 12.1.0.2 with In Memory Option available for Linux

As of today, the Oracle Database 12.1.0.2 with InMemory Columnar Store is available at https://edelivery.oracle.com. According to the price list of July 10th, it will be sold as an option for Enterprise Edition (Exadata NOT mandatory), for US$ 23,000 per CPU (calculation like EE). Hope it will do well, beta demos were extremely impressive. Yours […]

read more

Effecting Oracle Miracles With Standard Edition And Statspack (=without AWR)

For the most time, I have to work with Oracle Standard Edition database systems without any chance to use AWR, ASH or Diagnostics Pack in general. But performance problems have to be analysed in budget environments as well, and many people are complaining about Oracle’s policy in this area. But in my experience, it’s also […]

read more

Oracle 11.2: Cursor Mutex S wait event and too many (2^30) child cursors

Once again, there was a lesson to be learned about the Oracle RDBMS. The occaison was a direct upgrade from Enterprise Edition 10gR2 to EE 11gR2, the application was kept untouched for good reason. Problem After running the new version for two hours, everything became incredibly slow, and the CPU load on the DB server […]

read more

Oracle: How to create a good execution plan

Sometimes you simple need to know whether a statement is fast or not, or why it is slow. (Sadly, it seems like virtually nobody wants to know why a statement is fast, but that’s another story…) Do not use EXPLAIN PLAN in such cases, it does not (can not) deal bind variables right. I’ve got  […]

read more

Oracle Explain Plans or Execution Plans: Guess or Reality?

Oracle finally desupported the rule-based optimizer with version 10g. Since 9i, users are good adviced to make themself familiar with the cost-based-optimizer (CBO). In order to understand what happens with your statement after parsing with CBO involved, and to be able to tune your queries, displaying, understanding and optimizing explain- or execution plans is essential. […]

read more

Creating Oracle AWR reports quicksheet

For comparing, classifying, benchmarking and forecasting databases, Oracle’s Automatic Workload Repository (AWR) is neat. (But remember! You will need a diagnostics pack license for that as described here and here – if you need a free technology for performance monitoring, consider using Craig Shallahamer’s OSM toolkit.) This post simply describes the package calls to create […]

read more