Oracle User Group Scotland 08/10/2008

It was a real early start for this one, as I flew up from London on the day of the conference. I was a little bit nervous about being late as I was landing in Glasgow at 09:50 and my presentation was meant to start at 11:30.

I’ve flown from T5 before, but I had not quite realised just how close it is to the actual runway at heathrow, it’s practically on it. When going through security I was really reminded how it is a little bit of theatre, I’m like the next guy in that I don’t fancy being blown up on an aircraft, but how does having one security isle demand people take their shoes off, while on another they don’t bother help secure the aircraft? Lets hope the terrorist chooses the more “secure” isle!

Keynote – Steve Gould

Just made it in time for the Oracle “we’ve made lots of acquisitions talk”. Can believe Steve was reading out the statistics, this is poor presenting – he did appologise for it, but c’mon surely a huge part of your job is to communicate – you should know these numbers!

This talk was in the same room as the DBA stream, and there were 3 other streams during the day. Judging by the number of people flooding out the room to go to other streams, there were not all that many dbas in attendance at the conference.

Understanding Advanced Queueing – Julian Dyke

It is his 4th year in a row presenting at OUG Scotland

Introduced in 8.0

50% of julians customers either use Streams (which uses Advanced Queueing – AQ), AQ, or should do.

AQ allows processes to send messages from one session to another. Sessions may exist in different databases.

AQ allows messages to be enqueued and dequeued from queues that are managed by the database. Every queue must be associated with a queue table. By default messages are dequeued in the order they are enqueued. Messages can be persistent or buffered. Persistent are stored in queue table, while buffered are stored in SGA – though these can be spilled to queue tables – lost upon instance stopping. Non persistent queues are deprecated from 10.2 onwards.

Queue tables can be created for one or multiple consumers.

When you create a queue it is not just 1 table that is created, but multiple tables & indexes, including LOBS.

a lot of data is stored when a row is written into a queue.

The queue table must exist before the queue is created.

Julian shows some 10053 traces about what sql is run when messages are enqueued and dequeued.

mentions that the select for update statement has the option to skip locked rows.

when using multiple consumer queues, there are a lot of objects being created – hence a lot of overhead.

Julian showed some PL/SQL code for enqueuing and dequeuing with multiple subscribers.

Julian was keen to talk about array payloads and was saying these could be far more efficient, the payload queue can be a VARRAY of object types – julian gave some pl/sql code examples of this as well. Julian said that this can be a way of reducing the overhead of propagating over the network to a remote database.

buffered messages are buffered in the streams pool and will not be written to the database immediately. Buffered messages are much faster than perssistent queues though they do not guarantee reliability. they don’t support arrays.

An Introduction to ASM & ZFS – Me

Well, I had been assuming that I had an hour to present and it was only the night before I realised it was just 45 minutes. I did take a number of slides out but I really, really ran out of time and had to just skip through a few ZFS slides. Apart from that, it went fairly well, no falling of the stage, but it was in quite a big room with a lot of empty seats so I personally felt my performance fell a little flat.

There were only a couple of people in the audience actually using ASM.

Is Oracle smarter than your DBA? – Niall Litchfield

I had never seen Niall present before, but he is definitely an accomplished speaker – even if he had some technical difficulties.

He showed a video where adults answer high school exam questions – badly, and then showed some GCSE exam questions to prove that people forget things they once knew.

Argument that increased automatic management by the oracle server is a good thing in that it leaves more time for dbas to do more interesting things.

Arguing that the visual richness of EM/Grid Control is better than custom written scripts. I think there is also the point that why write something when Oracle have already written it for you?

lots of the mundane stuff is being automated – so the dba does not need to think about it.

Niall thinks it can free up the skilled dba rather than meaning companies can use unskilled dbas.

I quite liked Niall’s sparse slides just a few words in the middle of the slide rather than long list of bullets.

Are Your Backups (RE)COVERED – Piet De Visser

Examples of usages of backups, including tape transfers, archiving, testing and development.

Piet seems to be in favour of chucking out the tape robots and going to backup to disk.

history of backups, including cold backups. rman is recommended.

No backups, people claim you can do the following instead:



stretched clusters

These techniques may give you recoverability but don’t give you archiving.

You do backups so you can restore.

Not many people using dataguard.

Making Life Easier with Grid Control – James Anthony

Less technical version of the presentation giving an overview

A significant portion of the audience are using grid control.

configuration management:

organisations trying to reduce total cost of ownership wanting employees to do more with less. Gives an automated inventory control system that is updated automatically. Provides inventory management for multiple RDBMS’s i.e. DB2, SYBASE SQL SERVER as well as Oracle. Guides what patches are applied where.

Hardly any one has applied Critical Patch Updates.

Mentions reporting by exception – no point in knowing about stuff that is chugging along just fine, need to know where there is actually an issue, particularly if you have a large db real estate.

Configuration management is about improving technical peoples productivity by automating repetitive tasks and keeps up-to-date information on your infrastructure in the one place. I can see this is useful for a large db constellation.


Only 1 guy in the audience would trust the automated tool to deploy patches to their system.

Provides best practices for deployment and does it for you. Can use to clone ORACLE_HOMES.

Data Masking

Majority of audience are cloning live systems for dev/test. Far, far less are taking steps to obfuscate this production data.

It’s a one way process that anonymizes the data, this can be done on a column-by-column basis. Referential integrity will automatically be taken care off. Define the mask once and then run multiple times and over multiple systems.

You don’t need to mask ALL data – just the data that is sensitive.

Afterwards there was a free drinks reception during which I had a great time propping up the bar with Julian Dyke, Piet De Visser, Lisa Dobson, & Thomas Presslie. Highly enjoyable 🙂


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s