|Lesson 2||Database design strategy|
|Objective||Describe the Overall Strategy of Database Design|
Database Design Strategy
In designing a relational database, there are a number of objectives to keep in mind. Some the database designer controls and some depend, to varying degrees, on other factors in the database environment.
Three important database-design objectives that the designer controls include:
- Ensuring that information is delivered in a consistent manner
- Eliminating data redundancy (duplicate data)
- Preserving existing data when deleting unwanted data
As you move through this course, it will now become clear how good database design can impact overall robustness.
- speed and
of a relational database.
Other important design objectives are either influenced or controlled by the RDBMS, the network operating system (NOS) and network configuration, or the computer hardware. These objectives include:
- Maximizing the speed of database operations
- Enforcing data integrity
- Achieving database security
Problems with data integrity occur when a value in one table that is supposed to relate to a value in another cannot, because the second value either has been deleted or was never entered. Maximizing the speed of database operations, for example, certainly depends on database design. But speed also depends on the RDBMS, the network configuration, and the computer hardware. While data integrity is imposed early in database design, enforcing data integrity relies on the capabilities of the RDBMS. On the whole, database security is controlled by both the RDBMS and network security. From this point on in the course, the term databases refers to relational databases, unless otherwise indicated.
There are two ways to approach database design.
- One is to focus on the subject matter with which the database is concerned;
- the other is to focus on the application in which the database will be created and viewed.
The next lesson takes a look at the first of these approaches: the subject approach.
A term used to describe the quality (in terms of accuracy, consistency, and validity) of data in a database, in the sense that values required to enforce data relationships actually exist.