Welcome to the 89th edition of Log Buffer, the weekly review of database blogs.
Welcome, welcome everyone.
In writing this week’s Log Buffer, I’ve had a chance to sit down and read some excellent posts on all sorts of platforms. The depth and breadth of what’s available to house and retrieve data is astonishing.
Many of you who have read my posts will know that I’m a fan of vegetables. They are something most of us don’t eat enough of. Come on DBAs! I think we need to make a collective effort to get healthy. We need you to keep all these systems alive. I say this because I have a new found appreciation for the work we do day in and day out.
Six months ago my wife and I said hello to our baby girl for the first time. I don’t say this to elicit any type of congratulations, but to illustrate something entirely different. If you have ever been to a hospital for any reason — to celebrate, to hope, or to say goodbye — you know the sheer complexity of the vast numbers of systems that need to interact. Daily, these systems save lives and help bring new ones to this world. I saw first-hand how the work I do on a everyday keeps the wheels turning.
Some of our customers run systems used by hospitals and I saw them in action. In a simple world, treating people can be done without technology, but this is an issue of scale, and our involvement directly affects the sheer masses of people whose lives are better because of our behind-the-scenes support. It’s true here, and it’s true for the most serious, most mission-critical systems, to the least critical and most trivial systems. The work done by DBAs from all platforms should be recognized for what it is.
I’m proud of what I do for a living and happy that I get to work in an industry filled with so many savvy folks. Oracle, Microsoft, MySQL, Postgres, IBM, and countless other organizations, and the people involved in them have together created an industry filled with opportunities and challenges, and above all, they have together elevated our ability to communicate and share. It’s in this spirit that Log Buffer was created, so let us proceed!
Since I’m an Oracle guy, we’ll let Oracle go first this time.
Given the importance of our data and its affect on our lives, I think it’s time for something really useful. Pete Finnigan is offering a free “webinar” on how to secure and audit your DB over at the Oracle Security Blog. On a related note, there’s a cool product called Hedgehog out, that assists with the auditing of data accesses. It’s described over at Slavik’s blog. Slavik points out that most DBAs are reactive rather than proactive (I agree, do you?). Maybe this has to do with reluctance on most customers’ parts to invest in building the monitoring necessary to see what going on in the DB. For example, let’s just monitor space and page out when it fills up. What about trending to predict when it will run out instead?
For more big picture stuff, Steve Sarsfield at Data Governance and Data Quality Insider talks about data and quality. For once, some one is discussing what matters. How many times have you heard, “garbage in, garbage out”? Big migration projects need to take into account data quality.
What’s an Oracle blog without some strong howtos?
Richard Foote’s Oracle Blog debunks the myth of increased performance when building indexes in larger block size tablespaces.
Another source of constant headache is Oracle’s ever-evolving Cost Based Optimizer. Jonathan Lewis at Oracle Scratchpad looks at the CBO and its erratic growing pains from version 9 onwards and why it behaves the way it does.
Alex Fatkulin also looks at the CBO, particularly at strange explain plans and tears apart bind variable peeking. He offers us real options on how to deal with it. He says, “The number of people struggling with unstable query plans due to bind peeking in Oracle 10G is enormous, to say the least. More than that, solutions like disabling bind variable peeking are driving us away from understanding the root cause of the problem and applying the right fix to it”. He’s right.
Finally, Rene Nyffenegger’s collection of things on the web looks at commit_write and ways to dangerously speed up over-committing batch processes.
In the MySQL world, Sheeri Cabral challenges anyone who thinks they know MySQL to a pop-quiz. She asks, “If you have a 12-server MySQL Cluster with: 1 Management Node, 3 SQL Nodes, 2 Data Node Groups, 4 Data Nodes per group, [and] each machine is configured to allocate 1G of memory for its function, how much data (data + indexes) can you store in total in your cluster?”
Answer correctly and prove you got what it takes. Or just read the comments and learn something new, as I did. I readily confess I don’t have what it takes here.
Peter Zaitsev at the MySQL Performance Blog talks about ridiculous error messages generated by the database. (Oracle is guilty of this too!) He also has a cool post about a tool (really a script) that allows you to see which pages (blocks) of a file are cached in OS memory.
Guiseppe Maxia at the Data Charmer talks about using the event scheduler in MySQL 5.1 and talking to the OS at the same time. The Event Scheduler is a major addition to MySQL 5.1, and Giuseppe makes it work with the OS.
Arjen Lentz of Arjen’s Journal talks about MySQL nulls and their impact on query performance.
If you’ve ever wanted to go Scotland, here’s your excuse. SQL Server QA reports on the upcoming SQL Server developer day in Scotland on May 10, 2008. Maybe now I can finally take my wife on her Outlander tour. (If anyone doesn’t know what Outlander is, thank your lucky stars. It’s more insidious than Harry Potter.)
Also on SQL Server 2008, Simon Sabin explains why you might want 30,000 columns on a single table. It’s all about sparse columns.
I’m going to also go out on a limb here and call out Sean McCown’s item on InfoWorld laying out the real difference between SQL Server and Oracle. I don’t know about the basis of his argument. I’ll let the community decide, but I’m going to weigh in and simply say that I don’t see any supportable evidence anywhere in his article, and I can say that both platforms have exceptional support. This article does nothing but fan the flamewars. Not very productive at best, and misleading at worst, Sean. Readers,you decide.
Speaking of comparing platforms, here’s a real useful way to do it. Nikolaj Lindberg of Nikoloogle Lindbloogle gives us a brief overview of some of the big differences he’s encountered between Postgres and Firebird. Firebird?!? Cool.
It looks like there’s some big stuff happening for DB2 as well. The DB2 Express-C Community Team blog reports on the arrival of DB2 Express-C 9.5 beta for 64-bit Solaris… finally. How about learning how to actually use it if you’ve never had the chance? Craig Mullins points us to some free DB2 ebooks.
Lastly, Fernando Nunes on talks of Security Compliance: Role Separation and Audit (part I). Even if you’re not an Informix person, this is a useful read, as it goes over some general concepts that should be applicable everywhere. The need to secure our environments and to enable auditing is starting to get significantly more attention on all platforms. At some point, we’ll start seeing serious costs associated with both activities, and having a formalized approach will definitely help.
One last Postgres note: it’s soon PGCon 2008 time right here in Ottawa, Canada. Robert Treat is looking for presenters and participants for the Lightning Talks segment of the conference. Let’s get out there and show some support!
And that’s all. Those of you not embracing the cold wet winter we’re having in Ottawa, I envy you.
Interested in working with Shakir? Schedule a tech call.