Archive for May 2011
Well, not mine, but a recent post on the oracle-l mailing list which I thought was worth linking to and repeating. Firstly, because it’s interesting, and secondly, because it shows some good problem solving skills by both the poster and the wider Oracle community.
The poster in question was experiencing a problem whereby his alert log was not updating…
We have an alert.log that was last updated by the database on May 6th. Strangely enough, the log.xml in the alert directory of the diag destination is being updated normally, it is just the plain text alert.log in the trace directory that is not updated. We have bounced the database, changed the diag_destination parameter and I have even grepped all the file descriptors in /proc/*/fd for traces of a possibly opened alert.log - nothing, the alert.log is still not being updated. I tried dbms_system.ksdwrt to force a write to the alert.log - again, the log.xml is updated, the plain text is not.
I’m doing a fair bit of SAN-based work at the moment, migrating a bunch of Oracle databases from EMC to HP (posts to follow regarding Orion testing and other related topics). One thing that annoys me is the way SAN Manufacturers have changed the meaning of technical terms over time to suit themselves. Firstly, they changed the meaning of RAID from “Redundant Array of Inexpensive Disk” to “Redundant Array of Independent Disk”. Apparently it’s hard to put a $1,000,000 price tag on “inexpensive” disk.
Also, the industry changed what a Megabyte is. This really annoys me as it can lead to unexpected shortfalls in the LUN allocations if your traditional Oracle Megabyte is different to the SAN Admin’s Megabyte.
In our industry, the terms “kilo”, “mega”, “giga“, “tera”, “peta”, and “exa” are commonly used prefixes for computing performance and capacity. SAN manufacturers use the terms defined in “powers of ten” measurement units:
- A kilobyte (KB) is equal to 1,000 (103) bytes.
- A megabyte (MB) is equal to 1,000,000 (106) bytes.
- A gigabyte (GB) is equal to 1,000,000,000 (109) bytes.
- A terabyte (TB) is equal to 1,000,000,000,000 (1012) bytes.
- A petabyte (PB) is equal to 1,000,000,000,000,000 (1015) bytes
- An exabyte (EB) is equal to 1,000,000,000,000,000,000 (1018) bytes
Most operating systems components and (importantly for us) Oracle use “powers of two” measurement units rather than “power of ten” units. They are defined as:
- A kibibyte (KiB) is equal to 1,024 (210) bytes.
- A mebibyte (MiB) is equal to 1,048,576 (220) bytes.
- A gibibyte (GiB) is equal to 1,073,741,824 (230) bytes.
- A tebibyte (TiB) is equal to 1,099,511,627,776 (240) bytes.
- A pebibyte (PiB) is equal to 1,125,899,906,842,624 (250) bytes.
- An exbibyte (EiB) is equal to 1,152,921,504,606,846,976 (260) bytes.
That means that 1 terabyte is about 9% smaller than a tebibyte. Thanks, SAN manufacturers, for making our lives just a tiny bit more difficult than it needed to be so you can market drives as being seemingly larger than they really are (in my head anyway.)
Well, a while ago I was doing some interviews for a client for a Production support DBA. This was for a short term contract to look after a few systems while the incumbent was off doing more interesting project work. The thing I discovered was the absolutely dire level of knowledge displayed by the interviewees about Oracle. Things that I regard as fundamental to the understanding of how Oracle works were simply unanswered.
Q: What’s the difference between and instance and a database?
Q: What does “nested loop” mean in an execution plan?
Q: Name the memory areas within an Oracle instance.
Several candidates answered these either very badly, or not at all. Not at all? Any you say you’ve been working with Oracle since Oracle 7 and you can’t answer these questions? You have been working with Oracle for 10 years and you can’t name the PGA? or ANY components within the SGA?
If you are reading this blog, I suspect that you know the answers to the above questions. You’re the sort of person who spends a little of their own time doing research. I don’t think the questions are demanding (or are they? please tell me they are not.) Who actually hires these people? Are these chancers and charletans deceiving everyone, or just deceiving themselves.
And they were all OCP certified. How? And how little does that certification mean in reality. A tick on a CV / resume to get it past the box tickers in HR and agents.
You know, I’m not angry, I’m just disappointed in the lack of professional standards that you sometimes come across in our industry.
(Note: this post has been delayed to protect the guilty)