Over the years, a number of
database models have been implemented to store and manage data. Several of the more
common models include the following:
Hierarchical This model has
a parent–child structure that is similar to an inverted tree, which is what forms
the hierarchy. Data is organized in nodes, the logical equivalent of
tables in a relational
database. A parent node can have many child nodes, but a child node can have
only one parent node. Although the model has been highly implemented, it is
often considered unsuitable for
many applications because of its inflexible structure and lack of support for
complex relationships. Still, some implementations such as IMS from
IBM have introduced features
that work around these limitations.
Network This model addresses
some of the limitations of the hierarchical model. Data is organized in record
types, the logical equivalent of tables in a relational database. Like
the hierarchical model, the
network model uses an inverted tree structure, but record types are organized
into a set structure that relates pairs of record types into owners and members.
Any one record type can participate in any set with other record types in the database,
which supports more complex queries and relationships than are possible in the hierarchical
model. Still, the network model has its limitations, the most serious of which is
complexity. In accessing the database, users must be very familiar with the
structure and keep careful track of where they are and how they got there. It’s
also difficult to change the structure without affecting applications that
interact with the database.
Relational This model
addresses many of the limitations of both the hierarchical and network models.
In a hierarchical or network database, the application relies on a defined
implementation of that
database, which is then hard-coded into the application. If you add a new
attribute (data item) to the database, you must modify the application, even if
it doesn’t use the attribute. However, a relational database is independent of
the application; you can make nondestructive modifications to the structure
without impacting the application. In addition, the structure of the relational
database is based on the relation, or table, along with the ability to define complex
relationships between these relations. Each relation can be accessed directly,
without the cumbersome limitations of a hierarchical or owner/member model that
requires navigation of a complex data structure.
No comments:
Post a Comment