Weighing Performance versus Maintainability
Performance and
redundancy∞ versus maintenance cost and normal forms:
The relational calculus helps you eliminate
redundancy∞ using
normal forms∞ and factorization. Relational
database applications on the other hand show best performance with a minimal number of accesses to the database. The expensive factor is seek time for a certain record and not
bandwidth for reading the data from a disk once they are located on the disk.
Hence these applications perform best if they are able to retrieve all data needed for a use-case with a single access to the database or if they hit a cluster of data.
- Accesses to the database can be reduced by eliminating factorization and ignoring normal forms which has negative consequences on the maintainability of the application.
- Clustering can be influenced by database administration.
Maintainability of a
data model and performance are two conflicting goals.
Therefore: The harder you optimize your data model for performance, the higher your maintenance cost in case of changes to the application. Redundancy and all kinds of anomalies, normally prevented by the use of normal forms, have to be taken care of by maintenance.
There are no comments on this page. [Add comment]