History of Databases
A Brief History of Databases
A database management system (DBMS) is the software that interacts with end users, applications, and the database itself to capture and analyse the data. The DBMS software additionally encompasses the core facilities provided to administer the database.
The sum total of the database, the DBMS and the associated applications can be referred to as a database system. Often the term "database" is also used loosely to refer to any of the DBMS, the database system or an application associated with the database.
The definition goes on to say that databases are usually associated with software that allows the data to be updated and queried. Real-life examples of database software include Microsoft’s Access, Oracle’s 10g, IBM’s DB2, MySQL AB’s MySQL, and Microsoft’s SQL Server 2000. Often these programs are referred to as databases, but strictly speaking, they are database management systems (DBMS). A database is the sets (collections of related data) grouped into one entity. You could, for example, create an Access database, call it MyDatabase, include various data collections inside that one database, and manage the whole thing with the MS Access software
Most database management systems these days are relational, termed relational database management system (RDBMS). These systems make storing data and returning results easier and more efficient.
Why and When to Use a Database
When there are a huge number of alternative ways to store data, why should you trouble yourself creating a database? What advantages does a database hold? The main advantage is fast and efficient data retrieval. A database helps you to organize your data in a logical manner. Database management systems are fine-tuned to rapidly retrieve the data you want in the way you want it. Databases also enable you to break data into specific parts. Retrieving data from a database is called querying. You’ll often see the term SQL query, which briefly means any SQL code that extracts data from the database.
Relational databases have the further advantage of allowing you to specify how different data relates to each other, as you saw in the car sales database example. If you store sales details and salesperson data in related databases, the question “How many cars has salesperson X sold in January?” becomes very easy to answer. If you just shoved all the information into a large text file, you’d find it one enormous task to question, or query, the data and find out specific answers.
Databases also allow you to set up rules that ensure that data remains consistent when you add, update, or delete data. Imagine that your imaginary car sales company has two salespeople named Julie Smith. You can set up a database to ensure that each salesperson has a unique ID, called a unique identifier (so that the Julies don’t get mixed up); otherwise, telling who sold which cars would prove impossible. Other data storage systems, such as text files or spreadsheets, don’t have these sorts of checks and quite happily allow you to store erroneous data. In later chapters you learn how to set up other rules to limit the risk of data becoming corrupted. For example, you might specify that an employee’s social security number must be unique in the database. Or if a car is sold and it’s listed as being sold by the employee with an ID of 123, you might add a check to see that full details of employee 123 are held in one of the database tables.
A properly set-up database minimizes data redundancy. Again using the car sales example, you can store all the details of a salesperson just once in the database and then use a unique ID to identify each salesperson. When you have other data that relates to a particular salesperson (for example, which cars they’ve sold), you can use the unique ID to search for the data. The unique ID is often a number that takes up less storage space than the person’s full name. Databases store raw data — just the facts, so to speak, and no intelligence. A car sales database might contain the make, model, and price of each car, but you wouldn’t normally store the average number of cars sold in a month, because you can calculate that from the car sales information, the raw data.
The Internet has seen a big rise in databases used to share information; most online shops of a reasonable size use databases. When you visit online stores of any significant size, a database usually provides all the information on the goods being sold. Rather than every page being created by hand, large merchants use a template for book or CD details, and SQL retrieves the book information from the database. Imagine how much work it’d be if Amazon created every single page by hand! 10 Chapter 1 Databases are great at dealing with large amounts of data that need to be searched, sorted, or regularly updated. As you find out in the next few chapters, databases combined with SQL allow you to get the answers you want in the order you want.
No comments