4.1 The History of Data Modeling

 < Day Day Up > 



A database is a term used to describe an ordered set of information stored on a computer. This ordered set of data or data set is often structured using a data modeling solution in such a way as to make the retrieval of that data more efficient. Depending on the type of applications using the database, the database structure can be modified to allow for efficient changes to that data as well. It is appropriate to discover how different data modeling techniques have developed over the past 50 years to accommodate efficiency, in terms of both data retrieval and data changes.

click to expand
Figure 4.1: The History and Evolution of Data Modeling

Databases started out stored quite simply in a file system and have evolved through hierarchical, network, relational, object, and object-relational data models, as shown in Figure 4.1.

4.1.1 The Different Types of Data Models

  • A database stored as a file system structure simply utilizes the structure of an operating system file system.

  • A hierarchical data model as shown in Figure 4.2 is a treelike structure where child tables can only have a single parent. In a hierarchical data model child tables are completely dependent on the existence of parent tables, supporting one-to-many but not many-to-many relationships.

    click to expand
    Figure 4.2: A Hierarchical Model for Company Employees

  • In a network data model as shown in Figure 4.3, a refinement of the hierarchical model, many-to-many relationships are catered for by allowing a child table to have more than one parent, effectively creating a networked structure of tables.

    click to expand
    Figure 4.3: A Network Model for Company Employees

  • A relational data model as shown in Figure 4.4 allows links between any two tables in the data model, regardless of position in any hierarchy, plus access to any table without having to access parent tables. A relational database is essentially a two-dimensional structure of loosely linked tables containing rows, helping to remove duplication and allowing for easy access to groups of data. A relational data model is intended for data throughput and thus is most efficient for retrieving sets of data.

    click to expand
    Figure 4.4: A Relational Model for Company Employees

  • An object data model applies an object collection and unique pointer structure giving a somewhat three-dimensional or spherical structure to data. Object databases are best used for high-speed access to very small and precise amounts of data within a larger dataset. Unlike a relational database an object database is not efficient for reporting. Figure 3.2 in the previous chapter shows a good demonstration of a comparison between a relational and an object model. This diagram is repeated in this chapter in Figure 4.5 for convenience.

    click to expand
    Figure 4.5: The Object versus the Relational Model

  • An object-relational database is a relational database with some object database aspects added, with varying degrees of success.



 < Day Day Up > 



Oracle High Performance Tuning for 9i and 10g
Oracle High Performance Tuning for 9i and 10g
ISBN: 1555583059
EAN: 2147483647
Year: 2003
Pages: 164

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net