Published in IT World
Tales of 'in' and 'on' in database management
By Sean Mc Grath
The term 'database' has more facets to it than the gaudiest of fake diamonds. Somehow, somewhere along the line, swathes of otherwise sane individuals have learned to read way too much goodness into terms like 'in the database' and 'on the database'.
Now please do not get me wrong, I am not anti-database. Databases are excellent, indispensable tools for a whole range of applications. When I have lots and lots of tabular, mission critical content, there is only one place I want to have that content -- in a database.
However, most of my working life is spent in the company of large amounts of documents rather than large amounts of tabular data. In the document world, the terms 'in the database' and 'on the database' have some highly slippery connotations.
Time for a short psychological test. On a scale of 1 to 10, how comfortable would you feel as a management person if you were told that your mission critical content is stored 'on/in the database'? How confortable would you feel as a management person if you were told that your mission critical content is stored 'on/in the filesystem'?
Does the filesystem case make you feel less comfortable than the database case? Most people I bump into fall into the former category. This is no great surprise perhaps. Databases are, after all, marketed as data management devices. Filesystems on the other hand, are, well, just filesystems. Databases smell of safety, security, and clued-in management. Databases sashay through project progress reports, leaving behind the cotten-fresh odor of the cared for, the well fed and the manicured. Filesytems, on the other hand, reek of ad-hockery. They give off a pungent odor of free-wheeling, slightly vitamin deficient hope-for-the-best-ism. They evoke incredulous questioning of the form 'What do you mean the mission critical data is on the filesystem?'. Besides, cold hard cash tends to be expended of databases. Surely the way to use that money best is to store mission critical content in the database?
Now comes the irony in all of this. It is a well known fact of the current universe that documents do not fit into classical database tables without a fight. There are numerous well-known document management systems that deal with this by - wait for it - storing the documents themselves on the filesystem. In these systems, the database is used, not to store the mission critical content, but to store metadata about the mission critical content.
Now, in that scenario, is it true to say that the mission critical content is 'in' the database, 'on' the database or 'on' the filesystem? Not so easy to answer that question now, is it?
Still feeling comfortable?