Network Data Model
The Network Data Model is a database model where data is represented as a collection of
records connected by relationships. Unlike the hierarchical data model, which enforces a
strict tree-like structure, the network data model uses a graph-like structure that allows
many-to-many relationships among data entities.
Key Concepts
1. Records:
• A record represents an entity, similar to a row in a table.
• Each record has fields, which are the attributes of the entity.
2. Sets:
• A set is a relationship between two record types: one acts as the owner, and
the other acts as the member.
• This is analogous to a parent-child relationship but allows multiple ownerships.
3. Links:
• Links represent the connections between records in the model.
• Each record can have multiple links to other records, enabling complex
relationships.
4. Schema:
• The schema defines the structure of the network, including record types, fields,
and relationships.
Features of the Network Data Model
1. Flexible Relationships:
• Supports many-to-many relationships directly without requiring additional
structures like join tables.
2. Graph-Like Structure:
• Data is organized as a graph of nodes (records) and edges (links or
relationships).
3. Owner-Member Relationships:
• Relationships are defined by sets, where the owner is the parent, and the
members are the children.
4. Efficient Data Access:
• Relationships are predefined, so navigation through the network is fast.
5. Data Integrity:
• The model enforces integrity by maintaining predefined links between records.
Example of the Network Data Model
Scenario:
A university database with:
• Entities: Student, Course, Professor.
Representation:
1. Records:
• Student (fields: Student_ID, Name, Major).
• Course (fields: Course_ID, Course_Name).
• Professor (fields: Professor_ID, Name).
2. Relationships (Sets):
• Enrolled (Owner: Course, Member: Student).
• Teaches (Owner: Professor, Member: Course).
Structure:
Course <--- Enrolled ---> Student
Professor <--- Teaches ---> Course
Example Links:
• A Student can enroll in multiple Courses.
• A Course can have multiple Students enrolled.
• A Professor can teach multiple Courses.
Advantages of Network Data Model
1. Many-to-Many Relationships:
• Direct support for many-to-many relationships without additional structures.
2. Data Integrity:
• Relationships are explicitly defined and enforced, reducing redundancy.
3. Efficiency:
• Fast access to data due to predefined links.
4. Flexibility:
• More flexible than the hierarchical model for representing complex
relationships.
Disadvantages of Network Data Model
1. Complexity:
• The structure can become difficult to design and maintain as the database
grows.
2. Rigid Schema:
• Changes in relationships or schema require significant effort.
3. Navigation Dependency:
• Users need to know the data structure and navigate relationships explicitly,
which can be cumbersome.
4. Limited Standardization:
• Unlike relational models, there is no universal query language for network
databases.
Applications of the Network Data Model
1. Banking Systems:
• Handling complex relationships between accounts, transactions, and customers.
2. Telecommunications:
• Managing network routing and resource allocation.
3. Manufacturing Systems:
• Representing product structures and supply chain relationships.
4. Geographic Information Systems (GIS):
• Modeling spatial relationships between geographical entities.
5. Airline Reservation Systems:
• Tracking relationships between flights, passengers, and bookings.