Author Archives

Carl Backstrom

A very quick note - there’s a very long one on Streams coming, with real code and everything, to say that Carl Backstrom’s family have updated his blog with details of how to give in memoriam to this most excellent technologist and evangelist. Go here and donate appropriately please.

Scottish Oracle Conference

I recently spent a rather pleasant day at the scottish conference of the ukoug. This was held at the Radisson SAS Hotel just by the central rail station and split into a number of streams, from management through to dba. The organisation of the event was excellent, particularly given the fact that some of the infrastructure for various exhibitors didn’t actually arrive until about 3 in the morning of the day of the event.

I was there primarily to give one of my newer presentations Is Oracle Smarter than Your DBA?, which isn’t actually intended as a snub to your DBA team, but rather a plea for more traditional dbas to consider smartly using the automation features, and enterprise management offering from Oracle to reduce the amount of time spent in mundane routine checks and actions, so that the expensive and well trained brains of your DBAs can be devoted to high value actvities, for example design advice, rather than easily automated maintenance - for example adding datafiles. I’ll also be giving this presentation, but hopefully in a much more polished manner at the annual conference in Birmingham. The current version is shown below (may take some time to load.)

 

Effective Testing

I’ve been following a number of threads on forums.oracle.com recently - the quality of discussion seems to have improved markedly there since I gave up on it in 2001. Anyway there was a thread about interpreting the AWR report that Oracle provides (at extra cost) and which is very smilar to the Statspack report. The report in question comes from a siebel system and there were some interesting snippets of information from Joe Coffey about the specifics of working with SIEBEL which would likely trap the unwary (like me) when using sqlplus to investigate an application performance problem. The specifics are in this post but are that siebel specifically alters the standard oracle environment on login with 4 ALTER SESSION statements - namely

  • alter session set optimizer_mode = first_rows_10;
  • alter session set hash_join_enabled = false;
  • alter session set "_optimizer_sortmerge_join_enabled" = false;=
  • alter session set "_optimizer_join_sel_sanity_check" = true;

Now first_rows_10 is rather sensible for a reporting application where the end user is going to look at pages of results - I’m rather less convinced about the wisdom of avoiding hash_joins and sortmerge joins altogether, but the base point to remember here - for myself as much as any reader - is that when conducting tests using sqlplus (or toad or any other query environment ) it matters that you ensure that your session mimics effectively the one the users will be using.  

Application Express and E-Business Suite 11i.

I’m just starting an installation of Oracle APEX 3.1.1 into one of our development ebs instances for 2 reasons.

  1. To provide a small applet to a project team
  2. To provide the infrastructure for the dbas to write their own little applets.

I chose this method for the following reasons (unordered)

  • it’s fairly cool
  • we know pl/sql much better than java
  • we don’t much like forms.
  • you can integrate really easily.
  • deployment is pretty simple.

Those of you that have installed apex frequently will know it’s a pretty quick install on decent hardware. So the following came as rather a surprise.

timing for: English Dictionary
Elapsed: 00:03:16.71
– Updating user account expiration. ——-
timing for: Upgrade
Elapsed: 00:00:00.43
…End of install if runtime install
…create null.sql
timing for: Development Installation
Elapsed: 01:03:48.57

That’s right over an hour. The reason for this is that with 3.1.1 APEX calls DBMS_STATS.GATHER_DICTIONARY_STATS(’APEX’); this spend almost 55 minutes performing inappropriate index lookups on the data dictionary for us. This might be solvable, though to be honest it’s probably not worth it, but just a heads-up really, the APEX install may take longer than you think in a large environment and with the latest version of the software.

 

UKOUG

A good day today. I was privileged enough to be at the paper selection day for the UKOUG conference in December 2008. For those who don’t know what happens, and perhaps suspect some sort of elite giving themselves presentation slots, here is roughly how it works. 

Firstly a reasonably large group of reviewers from around the world, though naturally UK biased,  score your abstract on a scale from 1 (very poor) to 6 (excellent). They also have an opportunity to comment. These scores are then collated and a small team review the scores and allocate presentations to available slots. The purpose of the 2nd review is twofold - first it allows the team to review the agenda for balance of both topics and target audience - this year for example you will be especially well-served if you are a relatively new dba - and secondly it allows for the moderation of some of the scores - where for example only a very few people have scored a particular abstract. Finally, because some presenters get consistently high scores (Jonathan Lewis being the obvious prime example)  then there is the opportunity to ensure that other, maybe lesser known, presenters also get a look-in as well.

So what did this mean this year, well we had 212 submissions for the Server Technology arena (apps dba submissions are separate). We needed to fill 64 slots. So that means we needed to eliminate 7 out of 10 submissions. The average score for  this stream was 4.5 (that’s halfway between good and very good.)  and on average over 18 reviewers would have scored your submission. To get into the Top Quartile (more or less to be guaranteed a place) then you needed to score 4.93 (Very Good) on average. To restate - to stand a good chance of getting in, your abstract needed to show a group of nearly 20 Server Technology specialists that it was either very good or excellent. The bar to present at UKOUG is extremely high. Those who will be receiving congratulations communications should feel justly proud. Those who are planning to go, well you should be spoiled for choice. You can register your interest (and maybe win a laptop) here.  

hope for the future

So there I was this morning sitting on the tube (UK underground rail system) when a young student got on an sat down beside me. Obviously being both English and a commuter I couldn’t possibly speak to her!, but I did sneak a look at what she was reading. These turned out to be the notes she had made on her course that she was now going over presumably in preparation for exams. The notes this morning were on normal forms, entity relationship and data modelling. 
 
So there we go, a young female student of IT would be pretty good in itself, the fact that she was studying relational theory was the icing on the cake. There is hope ladies and gentlemen, there is hope.  

The 3 step program

Richard Foote updated his blog today with a description of the 3 step process for troubleshooting technical problems with business systems. Briefly his 3 steps are

  1.  Identify an actual problem that needs addressing, one that’s problematic to the business, not one that only exists in some statistic or in one’s imagination
  2.  Determine what’s actually causing the problem as identified in Step 1.
  3.  Address the specific issue as identified in Step 2.

This started as a comment, but grew a bit. I suspect that most of the time the ‘difficulty’ lies in step 1. Identifying a problem that is causing drag on your employers business. This requires at least: 

  1. understanding the business in the first place.
  2. specifying to a high degree of certainty the issue.
  3. quantifying the impact.

IT staff are notoriously bad at 1) and 3) and business staff are notoriously bad at 2) and 3). For example some colleagues of mine went to a meeting with business users of a core system that has historically suffered significant downtime. We identified and made some infrastructure changes that have reduced the downtime by approximately 40 days a year (that’s right this system was running at circa 80% availability).  The system has been running in it’s new configuration at over 99% availability, and helpdesk calls have all but vanished. The meeting was quite difficult since the business users wanted to complain about the stability of the system. In particular they were upset with the 99% availability statistics because they felt that the stats did not reflect reality, which was that occasionally data was ‘lost’ or application sessions were apparently hung. The fact that other users could continue to work did not mean that the service was available.

This illustrates particularly well my point 2, the technologists involved had understood a problem statement "the system is often unavailable" in terms of the uptime of the application - i.e Can I log on? The business users on the other hand interpreted the exact same statement as meaning "we often encounter unexpected errors when using the application". 

Job Opportunities - Advert

The ICT division at my employer has just announced a number of Job Vacancies including one in my team. You can read about all of the vacancies here. I am particularly looking for people from a SQL Server background (since we are taking on responsibility for that technology) with an exposure to, or looking for exposure to, Oracle technologies. The job ad for for the DBA position reads as follows

Our DBA/Developer team support the technology that underpins some of the council’s key business applications, including housing services, social care and internal finance, HR and procurement, across Oracle and MS SQL platforms. As well as supporting packaged ‘off the shelf’ solutions, you will also be responsible for developing and supporting some of the key integrations that enable us to deliver services that are genuinely joined-up and customer focused.

We are particularly looking to build the SQL Server skill set within this important team. You will need to demonstrate a comprehensive knowledge of SQL Server databases and the tools which are used to develop and support database technologies. You will have experience in using these skills to provide appropriate support, advice and guidance to business users as well as delivering solutions for complex business requirements

The closing date is March 17th.  You can apply online and see the full details here

Oracle Standard Edition

Recently a question came up on Oracle-L, but to tell you the truth it might have been anywhere about how on earth  one justified Oracle’s licensing.  The question was

To get an idea of how much it would cost to license a point of sale database on Oracle and commodity hardware/software, we requested a quote for a 2-node RAC on Dell 2950’s 2 Dual core’s per server.  Quote was $306k.

Well if I were the business I’d choke as well. That’s an indefensible software cost for that sort of install. I costed up a quad-core E5430 version of the above hardware, complete with, RHEL5, 16gb RAM and redundant SAN connections. Total cost of the hardware (but excluding the SAN/NFS storage that you’d use for RAC) just about $20,000. That’s for the two servers. So the questioner was being quoted 15x the cost of the hardware (and 3 years worth or so of DBA time at US rates last time I looked) for the Oracle software. Any time you see the software costing more than dedicated admins and an order of magnitude higher than the hardware/OS then you have to work very hard to justify the cost.

There is an alternative though Oracle Standard Edition will do all of the above for you on that hardware. The Oracle store quote for the dual quad-core machines I listed above was $65k Now that’s a much more defensible - though still high cost. Now it may be that the EE only features (DataGuard, Flashback Table (not query), block level recovery, the pl/sql function result cache in 11 and so on) are worth nearly $250k for the questioners business, but you do have to wonder. Of course on my quad-core based install the EE license fee would be $468,000

OFA - Whats that all about then

Cary Millsap of OFA, Optimising Oracle and OakTable fame has written the first part of one of those series (he’ll finish before me) on how OFA got started. You can find it here. I don’t have much to say on OFA itself - except that for my Apps readers I’m not talking about Oracle Financial Analyser - but this quote did jump out at me.

I don’t know about you, but when I practice some task over and over again, I do tend to get better at it. For a while. Then I start to get bored, and when I get bored, I get sloppy. It’s why I became a programmer in the first place: so I can do something a few times, get pretty good at it, explain to a machine how to do it, and then perform the task perfectly, over and over again for the rest of my life. It’s a good formula.

I can so relate to this. In fact my work laptop now has over 3000 scripts going back to the late 90’s.  All because I didn’t want to do it manually again. And because i’d learned that when a customer says

Can you just update this data for me - it’ll help immensely just this once

You’ll run it at least 3 times.

One of those small private stories that may or may not have a place on Oracle blogs. In my last place of employment we had two Senior level DBAs (I was one and a colleague was, obviously, the other) I wrote scripts for everything , he maintained a whole slew of manual processes - think loading data from spreadsheets. Neither approach was obviously worse than the other in terms of results (well his probably wouldn’t work for manual standby, mine would be a disaster for loading spreadhseet data when the colour of the text has significance) but it did betray a cultural and philosphical difference between us. For the vast majority of the time we worked together neither of us managed each other, now I’ve gone we both manage pretty successful teams. The lesson I’d draw - commonality of approach is as important to team success as the purity or otherwise of the approach.

–disclaimer if you need one - I’m a member of the OakTable