Many people are first exposed to databases by playing with Access, which comes included in many versions of Microsoft Office. Access is a powerful product aimed primarily at developers, and many novices come away from dabbling with it determined to stick to more user-friendly packages such as Excel.
That attitude might be OK for individual users, but most small businesses will eventually find themselves contemplating database software as their needs grow and their companies expand. But before you can even go about installing a database, you need to grapple with such confusing concepts as database servers, relational and object databases, and the thorny question of why apparently similar products range in price from free to hundreds of thousands of dollars.
This Buying Guide will help you through the database minefield. While picking a database server will never be as quick a decision as, say, buying a printer, it can be a highly valuable purchase if you go about it the right way.
What is a database? (Back to contents)
A database is simply an organised set of information. Strictly speaking, there's no need for it to even be in computerised form - address books are often used as a simple example of a database, since they contain large volumes of information organised into categories (name, address, and phone number). Despite this, most people now take the term 'database' to refer to information stored electronically.
Note also that the general definition of a database given here could encompass many common PC applications, such as electronic mail (which can be organised by recipient or sender) or information in a spreadsheet (which tends to be structured mathematically). In practice, the term 'database' is most commonly used to refer to highly structured information (examples might include order forms or medical information). Most business databases will contain a carefully planned set of information that can be analysed to indicate overall trends, as well as providing a historical record of past transactions and activities.
A basic database system simply allows you to enter and search for information (a process often known as querying). Most modern databases also support the development of specific applications that run on top of the database, which enable you to access the features you need without having to worry about all the complexities of the system. For instance, within one company general staff might have access to an order entry system, while financial staff have access to automatic reporting systems that provide sales summaries and other information. Both use a database server to store information, but the means of entering this, and the ability to change it after entry, will vary between the different applications.
The types of databases available
As database software has evolved, a number of different approaches to storing and linking information have emerged. Some of the more common include:
Relational databases. A relational database creates formal definitions of all the included items in a database, setting them out in tables, and defines the relationship between them. For instance, a typical business database would include tables for defining both customers and orders. Using ids or keys, the two tables can be related together. Such databases are called 'relational' because they explicitly define these connections (an order form can look up customer details from the customer table rather than having to store the information twice). Most relational databases now make use of SQL to handle queries (discussed in more detail below). Currently these are the most common form of database.
Object databases. Object databases store data in discreet, self-contained units - objects. These objects have specific data, attributes and behaviours associated with them. An extremely simple example might be a product database with a shirt object, which has attributes such as size, colour, and price. In practical use, the main difference between object and relational databases is the way in which data is accessed. Programmers use object-oriented programming languages to access the data objects from the object database by calling methods in their code. This takes much of the information that would have resided in the application code and transfers that information to the object database. Thus the application code is simplified. However, at the same time the fact that the database and application are tightly entwined can make accessing the data outside of the application more complex.
Object-relational databases. Object-relational databases attempt to combine object and relational approaches. This allows the benefits of using objects where necessary to be tied to the strengths of relational databases.
Hierarchical databases. While relational databases arrange data in tabular format, hierarchical databases arrange them in a tree format, with a parent node leading to further child nodes (which in turn may have further nodes of their own). The model is very similar to the way in which a program such as Windows Explorer displays the contents of a hard drive (double-clicking on a parent directory leads down the tree to further information, and so on down the directory tree). This allows for multiple types of subsidiary data, but makes it difficult to identify complex multiple relationships between individual data items (just as there is no obvious link between two subdirectories on a hard drive).
Until recently, hierarchical databases have been more common in computer science fields than in real-world applications. However, hierarchical methods have become more popular with the emergence of XML (Extensible Markup Language), which uses a hierarchical structure, as a common data exchange format.
http://qualityitconcepts1.blogspot.com/2010/07/different-kinds-of-databases.html
07/03/10
No comments:
Post a Comment