Previous Topic: Non-SQL Tuning OptionsNext Topic: Direct Location Mode


Multimember Relationships

What is a multimember relationship?

A multimember relationship is a single relationship maintained for more than one child entity type.

A multimember relationship.

Multimember relationships eliminate the overhead of carrying pointers (db-keys) in the parent entity for additional relationships.

However, to retrieve specific entity occurrences in multimember relationships, the database often must access occurrences of unwanted entity types.

Guidelines

Generally, multimember relationships should be used only when:

Considerations

A comparison of multiple relationships and multimember relationships

The following table presents a comparison of multiple relationships and multimember relationships

Efficiency Considerations

Potential Impact

I/O

No difference.

CPU time

Multimember relationships may require more CPU time to process related entities than multiple relationships.

Space management

Multimember relationships eliminate the overhead of carrying pointers in the parent entity for extra relationships.

Contention

In some situations, multimember relationships may cause more entity contention than multiple relationships. If an entity that participates in a multimember relationship is updated often, locking of a modified occurrence of this entity by one transaction may prevent other transactions from accessing occurrences of other entities in the relationship. Therefore you may want to create a separate relationship for a frequently updated entity.