Resolve other special relationships
You might encounter other special relationships that can
hamper a smooth-running database. The following describes these relationships:
- Complex relationship
- A complex relationship is an association among three or more entities. All the entities must be present for the relationship to exist. To reduce this complexity, reclassify all complex relationships as an entity, related through binary relationships to each of the original entities.
- Recursive relationship
- A recursive relationship is an association between occurrences of the same entity type. These types of relationships do not occur often. Examples of recursive relationships are bills-of-materials (parts are composed of subparts) and organizational structures (employee manages other employees). You might not resolve recursive relationships. For an extended example of a recursive relationship, see the HCL OneDB™ Guide to SQL: Tutorial.
- Redundant relationship
- A redundant relationship exists when two or more relationships represent the same concept. Redundant relationships add complexity to the data model and lead a developer to place attributes in the model incorrectly. Redundant relationships might appear as duplicated entries in your E-R diagram. For example, you might have two entities that contain the same attributes. To resolve a redundant relationship, review your data model. Do you have more than one entity that contains the same attributes? You might be required to add an entity to the model to resolve the redundancy. Your HCL OneDB Performance Guide contains information about additional topics that are related to redundancy in a data model.