|
This section contains the following topics: |
The objective of a physical model is to provide a database administrator with sufficient information to create an efficient physical database. The physical model also provides a context for the definition and recording (in the data dictionary) of the data elements that form the database, and assists the application team in choosing a physical structure for the programs that will access the data. To ensure that all information system needs are met, physical models are often developed jointly by a team representing the data administration, database administration, and application development areas.
When it is appropriate for the development effort, the model can also provide the basis for comparing the physical database design against the original business information requirements to:
Support is provided for both roles of a physical model:
For example, in a logical/physical model, you can create a physical model from an ERD, key-based, or fully attributed model simply by changing the view of the model from Logical Model to Physical Model. Each option in the logical model has a corresponding option in the physical model. Therefore, each entity becomes a relational table, attributes become columns, and keys become indices.
Once the physical model is created, you can generate all model objects in the correct syntax for the selected target server directly to the catalog of the target server, or indirectly as a schema DDL script file.
The following table summarizes the relationship between objects in a logical and a physical model:
|
Logical Model |
Physical Model |
|---|---|
|
Entity |
Table |
|
Dependent entity |
Foreign Key is part of the child table's Primary Key |
|
Independent entity |
Parent table or, if it is a child table, Foreign Key is NOT part of the child table's Primary Key |
|
Attribute |
Column |
|
Logical datatype (text, number, datetime, blob) |
Physical datatype (valid example varies depending on the target server selected) |
|
Domain (logical) |
Domain (physical) |
|
Primary key |
Primary key, Primary Key Index |
|
Foreign key |
Foreign key, Foreign Key Index |
|
Alternate key (AK) |
Alternate Key Index-a unique, non-primary index |
|
Inversion entry (IE) |
Inversion entry Index-a non-unique index created to search table information by a non-unique value, such as customer last name. |
|
Key group |
Index |
|
Business rule |
Trigger or stored procedure |
|
Validation rule |
Constraint |
|
Relationship |
Relationship implemented using Foreign Keys |
|
Identifying relationship |
Foreign Key is part of the child table's Primary Key (above the line) |
|
Non-identifying relationship |
Foreign Key is NOT part of the child table's Primary Key (below the line) |
|
Subtype relationship |
Denormalized tables |
|
Many-to-many relationship |
Associative table |
|
Referential Integrity relationship (Cascade, Restrict, Set Null, Set Default) |
INSERT, UPDATE, and DELETE Triggers |
|
Cardinality relationship |
INSERT, UPDATE, and DELETE Triggers |
|
N/A |
View or view relationship |
|
N/A |
Prescript or postscript |
Referential integrity is a part of the logical model, since the decision about how to maintain a relationship is a business decision. Referential integrity is also a physical model component, since triggers or declarative statements appear in the schema. Referential integrity is supported as a part of both the logical and physical models.
You can also denormalize the structure of the logical model, or allow data redundancy in a table to improve query performance so that you can build a related physical model that is designed effectively for the target RDBMS. Features supporting denormalization include:
| Copyright © 2009 CA. All rights reserved. | Email CA about this topic |