Karl Arao's Blog

Just another weblog about Oracle,Linux,Troubleshooting,Performance,etc..etc..

Posts Tagged ‘Training’

Wheeew, I am now a RedHat Certified Engineer!

Posted by karlarao on December 21, 2010

A couple of weeks ago, RedHat announced the general availability of RHEL6… also effective on this release is the change on their certification offering. RHCT will now be replaced by RHCSA (Red Hat Certified System Administrator), and if you would like to be RHCE on RHEL6 regardless of your certification on RHEL5 you still have to go through the RHCSA exam.. and then once you pass.. you are then allowed to take RHCE exam for RHEL6. More details here: RHCSA, RHCE

Since my self study modules/materials are on RHEL5, and it would take a while for the RHEL6 exam to come out and of course to review on that version.. and it’s really one of my personal goals to be RHCE asap! why not just take the RHEL5 RHCE? so I inquired, the exam center said the last RHCE exam for RHEL5 would be this December. So immediately I reserved and paid for my slot (yeah my own money!).

I had 1 month to prepare to read all the books, references, take notes, do experimentations, and simulate some critical exam scenarios. The catch is I have to do all of these on top of work time.. so I’ve got other stuffs to do like being engaged on pre-sales activities, creating work plans, doing some storage migration, doing performance tuning reports, attending a Golden Gate training, to name a few.. plus I got sick for 1 week, then here goes the Christmas parties which is too bad that I have to avoid all the fun and alcohol because of the much needed brain cellzzz.. Then even on the night before the exam I was cramming too much to make the email services work on my test environment. So yeah the preparation was a wild ride and I had lots of sleepless nights making sure that I’ll be able to do/simulate what I learn in theory.

Last December 18 I took the RHCE (it’s a hands-on performance based/situational exam).. I was really confident on the exam proper up to the finishing touches on my exam machine. When I came out of the exam center I really felt relieved because all the sacrifices are over!

After waiting for 3 days for the results.. I’m happy to be tweeting this

Wheeew whatta relief, I am now a RedHat Certified Engineer! the exam was challenging, all the sleepless nights paid off http://goo.gl/Qpd7Z

What’s even more surprising for me is when I was browsing on Red Hat Certified Engineer – Philippines Facebook page, I noticed that the last recorded RHCE passer (announcement) was last March 20, 2010.. cool :) hmm but I still have to verify this..

Thanks for all the congratulations, and to my loved ones, family, friends who supported and helped me :) I love you all!

Posted in Linux | Tagged: , | 5 Comments »

Advanced Oracle Troubleshooting by Tanel Poder in Singapore

Posted by karlarao on April 20, 2009

When I first saw that Tanel will conduct his seminar in Singapore, I told myself that I would even spend my own money just to be on that training! I’ve already read performance books like Optimizing Oracle Performance, Oracle 8i Internal Services, Forecasting Oracle Performance… And after that I still want more, and I still have questions that need to be answered. Well, if you’re on a tight budget you just opt to download some more docs/books to do multiple reads coupled with research/test cases and also reading through others blog…
But thanks to my boss for the funding, I was there! :-)

The seminar has 8 chapters,

1) End to end lifecycle of a database request (33 slides)
2) Oracle, OS, and hardware interaction (39 slides)
3) Oracle kernel core services (39 slides)
4) OWI and kernel instrumentation framework (34 slides)
5) Lifecycle of a cursor (27 slides)
6) SQL execution row source operators and data flow (34 slides)
7) Logical and Physical IO internals (37 slides)
8 ) Lifecycle of a transaction (32 slides)

On the first day we were able to tackle the three chapters…

The 1st was about how to “Systematically Troubleshoot” performance problems. That Oracle is just a program and every execution that is happening is not magic, using the right tool for the right problem you’ll be able to pinpoint the root cause. Also he emphasized on how important it is to make the user’s session a starting point on diagnosis and he demo’d on how to make use of v$system_wait, snapper, ASH, v$sesstat, and of course if the built-in instrumentation is not enough… the process stack sampling is very useful that will tell you what kernel function where most of the time is spent…he also taught us how to read the stack tree using that magic Metalink note (175982.1) ;)

2nd, dives into the OS troubleshooting, how you’ll systematically approach memory and CPU starvation on both Oracle and OS drilling down to the processes using Oracle (heapdump) and OS tools (ps, pstack, strace, procmon.exe for Windows – yeah you could also do process stack samples, pmap, top, vmstat)

3rd, was more of the internals where he discussed the core services of Oracle Kernel starting with the KGH module, the shared pool, and some more heaps, heap dumps and state objects, some X$ tables, and of course the most important part of the chapter… the Latching. He demo’d on how to systematically troubleshoot latching problems using latchprof, latchprofx, and snapper.

Then… At the end of the day, I was able to discuss with Tanel the concept of “performance visualization” see links below. I mean, yeah you can do reactive tuning and be very good at internals… but it doesn’t stop there… you have to be proactive, and visualizing/trending your performance numbers will help you on that. I’ve read his paper with Neil Gunther about how Multidimensional Visualization helps on analysing Oracle session level performance data that sometimes the usual x-y charts could mislead. He showed me some cool 3d performance monitoring tools running on JVM which is still on the works, but it’s really cool ;)

And we also discussed about “capacity planning” because Neil Gunther is the author of the “Super Serial Scalability model” which he worked with (on the Visualization CMG paper) and Craig Shallahamer discussed it on the Chapter 10 (Scalability) of his book which is very interesting. Well, Tanel will still have to find out how efficient or realistic the “forecasting models” will be when applied with Oracle performance data. Well me too! But it still trickles down to response time and visualization ;)

The second day

We started with the Oracle Wait Interface, he answered my question on how would you know if it’s a syscall? Usercall? Or kernel function call?… he just used pstack, pmap, and the magic Metalink note. Cool ;) Then he explained why the v$session is the most important view in 10g above. He showed us how to pinpoint if it’s a pl/sql that is executing or just plain SQL; yeah he has scripts for that! … the “sample” script is very useful for finding out which SQLs are problematic. He ended the chapter with identifying the session whether it is client-server or N-tiered application and demo’d on how to make use of dbms_session and dbms_monitor and how to trace these sessions.

5th discussed about lifecycle of cursors. Tanel discussed the internals of Library Cache and how applications live and die by how you do cursor management ;) He also got good scripts here!

6th for me is the most interesting, this is where you start to glue together the info about the Oracle and OS interaction from day1 that Oracle is just a big complex C program… he started the chapter by clearly explaining how to properly get and read the explain plan (root -> branch -> leaves and row source -> filters -> access path) and associating each line with the Oracle kernel functions which you could get by doing a process stack and feeding the output to his “os_explain” tool…cool ;) Then he ended the chapter with SQL plan profiling using some of his formatted explain plan scripts…

Unfortunately we ran out of time… we still have two chapters left! Tanel have to catch a flight to Sydney at 8pm. But he told us he will be blogging more about the later chapters, and at least we have his module… So the last demo was his “perfsheet” ;) a very good visualization tool. Nice job with the pivot tables and 3d charts!

All in all, the popular geek from Estonia showed me how Oracle really works! (well, you owe us two chapters :p)

BTW, Porus Homi Havewala (http://enterprise-manager.blogspot.com) was also on the class…

Below are some of the seminar pictures:
Tanel Poder AOT

Tanel Poder AOT

Tanel Poder AOT

Tanel Poder AOT

Below are some links about Visualization:

Neil Gunther & Tanel Poder – Multidimensional Visualization of Oracle Performance using Barry007

http://arxiv.org/pdf/0809.2532

Tanel Poder’s Visualization Tool

http://blog.tanelpoder.com/2008/12/28/performance-visualization-made-easy-perfsheet-20-beta/

http://blog.tanelpoder.com/2009/02/14/performance-visualization-capacity-planning-and-hotsos-symposium/

Neil Gunther – A.A. Michelson Award Acceptance Speech

http://www.perfdynamics.com/Test/aamspeech.pdf

Neil Gunther’s Blog

http://perfdynamics.blogspot.com/2008/12/gunther-receives-aa-michelson-award.html

Posted in Performance | Tagged: , | 2 Comments »

 
Follow

Get every new post delivered to your Inbox.

Join 27 other followers