Tuesday, June 28, 2011

Databases

One thing I've learned over the years is many people have a fear of databases. Even computer experts and developers seem to have a fear of databases. It's even to the point that if you are someone with database experience you can command extra pay because you have "skills" others lack. But there's nothing scary about databases - in fact you use them all the time without realizing it.

When you think of a database you probably think of things like SQL and Oracle. These are databases in the truest form, but there are so many other forms of databases out there. First, what is a database? The dictionary definition of a database is "a structured set of data held in a computer, especially one that is accessible in various ways." I don't know how helpful that is. Let's look at a database in terms of properties.

  1. Structured data that is related in some way

  2. Stored in digital format on a computer

  3. Easily to search and retrieve data


I would argue that anything that meets the above criteria is a database. In #1, "related" means the data relates to itself (yes, I know I defined a word using another form of it). For example, a list of fruits, meats, and nuts is related in that they are all food. However, a list of street addresses and dinosaur names is most likely not related. Anyway, let's look at some "unexpected" databases.

The NTFS file system (indeed probably most file systems) is a database. The data is the actual files, folders containing the files, and info about the files such as dates and times. This data is structured and is related. It is stored in digital format on a computer. And it's easily accessible. By the criteria above a file system is a database. Another database is the Windows registry. Again, related data stored in a structured format on a computer for easy access.

Most people don't think of the file system or the registry as a database, but they are. In fact, if you look at the code for either of these areas the code looks surprisingly like the code from a "true" database. Given these are databases, as a user are you "afraid" to look at your files or browse the registry? Probably not. So maybe programs like SQL and Oracle will seem a little less daunting in the future.

No comments:

Post a Comment