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 […]
Tag: performance
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 […]
Oracle: How to identify SQL doing TABLE ACCESS FULL on a given partition
In my last post, I described a quick show case for Oracle 12c Automatic Big Table Caching. But ABTC is just a crock, nevertheless a useful one. The biggest help from Automatic Big Table Caching for “sustainable” database performance management is the temperature of segments, heated up by TABLE ACCESS FULL. In my case, after enabling ABTC […]
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 […]
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 […]
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 […]
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 […]
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 […]
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 […]
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 […]
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 […]
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 […]
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 […]
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 […]
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 […]
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 […]
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. […]
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 […]