
Home
About Apple Career Experiences General Graphics Hardware History Humor Interface Networking OS Opinion Politics Programming Quotes Reviews Security Software Sound Thought Web

Cheap International Airfare Online
Wachovia online banking
Get Free Coupons Online
Finding the perfect discount hot tub
Payday Loans
Stock Trading Online
Stuffed Animals
Smart Investing Online
|
 |
Databases 102 More Database
By: David K. Every
|
Kind: Created: Size: |
Article 2002-08-26 07:42:54 4 KB |
|
|
 |
Database is just a place that is used to so store and organize data (information). In computers these are programs that go by the catchy acronym; DBMS (Database Management Systems). The data is arranged in tables with columns of attributes and rows of information. Sometimes there are multiple database tables that relate (point) to each others information. These go by the even catchier acronym of RDMBS (Relational Database Management Systems).
Now data by itself has some value; but the important part of that information is getting out what you need, when you need it.
Imagine your address book or the phone book as a database. By itself it has some value, you can look up names, as long as you know how to spell the name (as it is in alphabetical order). That natural order of the table (data) is known as the index; it is indexed by name (alphabetically).
What if you want to look up someone by address or phone number? Normally you need another book that has things "sorted" by address, or you have to just manually look through every entry until you find an address that matches; not a pleasant thought as this takes a lot of time. Now in databases, you can tell the computer to "resort" or "re-index" the database; but this can take lots of time or memory, especially if you want to keep both versions of the data around, since many still want to find by name.
Database designers had that complex problem; how do you make queries (ask complex questions) of your database that your database programmers hadn't even thought of, and get the answers you want back? In the end, they had to create a whole language for databases so that you could make those queries. That language is called SQL (Structured Query Language).
What SQL does is allow programmers to ask a database a complex question like; find me everyone that lives at an address that contains the number, street, and city that I request. Or in more geeky terms, you can make queries across multiple columns (attributes), and get some useful rows (results) back. This allows you to mine the database (extract the information you want).
SQL quickly took on more responsibilities, and actually became a language to not only help do queries (searches), but to also add, edit, or create database. SQL is now the defacto language for most database. And of course, there are many flavors and interpretations (dialects) of that language, just to keep things complex and confusing.
Databases often break down data into many tables; and these tables relate to each other. So I can have one table of my products (inventory), another that is the raw materials (or sub parts) that go to make a part, another table that is my customers, and yet another that is my sales.
When a customer buys an end product, I probably need to update many tables; I need to add the customer (if not in there), add a sale item, and reduce the inventory by that one part. That simple action (buying something) triggers many smaller actions; that we may want to group into something we call a "transaction". Or a transaction is just an event that triggers (and is made up of) many smaller actions.
If the customer changes their mind part way through the sale (or the database update), we want to be able to back-out of the whole transaction; because we don't want one table to reflect that there was a sale, but the inventory table to not be updated, or vise versa; the whole transaction needs to work together.
Another potential gain of the database is reporting. A report is often just a bunch of complex queries, with some math, and outputting that in some format that makes sense. So I could do something like look through all my inventory, and see what I have fewer than some number of, to know to start making or ordering more of those widgets before I run out. Or another possibility is to look at all the things sold, calculate how much raw materials was required to make those items, and then order more when we run low. Reports are really what we want to get most of time; what can be very complex queries and calculations, put in a standardized and simple and digestible format.
So while the concepts of Database are simple, there are a lot of them. And the data is changing constantly. So quickly, things can grow in complexity to the point where you need a special person just to manage the arrangement, maintenance and mining (reporting) on that data. This specialist is known as a DBA (Database Administrator). And now you know who to bug if you have any more questions about your databases.

Format for Printing Mail
|
|
 |
 |