Hierarchical Databases Management Systems (DBMSs) such as IMS by IBM and Windows Registry by Microsoft are organizing and storing data methods that are around since a long time.
They are organized in a tree-like structure with branches connecting downwards. Data are grouped into higher-level data called ‘parents’ that are connected to one or more lower-level data called ‘children’ that are always connected to only one parent record.
Record searches in hierarchical DBMSs are performed from the top of the tree to the root down from parents to children until the right child record is identified.
The main advantage hierarchical databases is that they allow fast access and be updated very fast because the tree-like structure and the relationships between data records are pre-defined. The main disadvantage of this type of database structure is that each child in the tree has only one parent, and relationships or linkages between children are not permitted, even if they make sense from a logical standpoint. Hierarchical databases are extremely rigid in their design that adding a new field or record requires redefining of the entire database.
Network databases share the hierarchical structure with hierarchical but have also a lot of differences, including:
- Instead of looking like an upside-down tree, a network database looks more like a cobweb or interconnected network of records.
- Children are called members and parents are called owners.
- Each child or member can have more than one parent (or owner).
Like hierarchical databases, network databases are/were mostly used on mainframe computers. Since more connections can be made between different types of data, network databases are considered more flexible.
However, two limitations must be considered when using this kind of database. First, similar to hierarchical databases, network databases must be defined in advance. And second, there is also a limit to the number of connections that can be made between records.
Hierarchical and network databases are designed to handle structured data; data that fits nicely into fields, rows, and columns. They are useful for handling small snippets of information such as names, addresses, zip codes, product numbers, and any kind of statistic or number you can think of.
But for being able to handle many new data types, including graphics, photographs, audio, and video, an object-oriented database can be used to store data from a variety of media sources and represents a significant advance over their other database cousins.