Diseño de bases de datos
Al diseñar una base de datos, está modelando un sistema empresarial real que contiene un conjunto de entidades y sus características, o atributos, y las reglas o relaciones entre dichas entidades.
- Libros: títulos, ISBN, fecha de publicación, ubicación, editorial, ....
- Autores: nombre, dirección, números de teléfono y fax, dirección de correo electrónico, ....
- Editores: nombre, dirección, números de teléfono y fax, dirección de correo electrónico, ....
- Editores: nombre, dirección, números de teléfono y fax, dirección de correo electrónico, ....
La base de datos no sólo debe representar estos tipos de entidades y sus atributos, sino también una forma de relacionar estas entidades entre sí. Por ejemplo, es necesario representar la relación entre los libros y sus autores, la relación entre libros/autores y editores, y la relación entre libros/autores y editores.
- Relaciones de uno con uno
- En este tipo de relación, cada instancia de una entidad se relaciona sólo con una instancia de otra entidad. Actualmente, no existen relaciones de uno a uno en el escenario descrito anteriormente.
- Relaciones de uno con varios
- En este tipo de relación, cada instancia de una entidad se relaciona con una o más instancias de otra entidad. Por ejemplo, un autor podría haber escrito varios libros, pero ciertos libros sólo tienen un autor. Este es el tipo más común de relación modelada en bases de datos relacionales.
- Relaciones de varios con varios
- En este tipo de relación, muchas instancias de una entidad determinada se relacionan con una o más instancias de otra entidad. Por ejemplo, los coautores podrían escribir una serie de libros.
Puesto que las bases de datos constan de tablas, debe construir un conjunto de tablas que contenga mejor estos datos, con cada celda de la tabla que contenga una sola vista. Hay muchas formas posibles de realizar esta tarea. Como diseñador de base de datos, su trabajo consiste en idear el mejor conjunto de tablas posible.
Por ejemplo, puede crear una única tabla, con muchas filas y columnas, para contener toda la información. Sin embargo, utilizando este método, se repetiría alguna información. En segundo lugar, la entrada de datos y el mantenimiento de datos serían lentos y propensos a errores. A diferencia de este diseño de tabla única, una base de datos relacional le permite tener varias tablas simples, reduciendo la redundancia y evitando las dificultades que plantea una tabla grande e inmanejable. En una base de datos relacional, las tablas deben contener información sobre un único tipo de entidad.
- Utilice los niveles de aislamiento para determinar cómo se bloquean o se aíslan los datos de otros procesos mientras se accede a los datos.
- Proteja los datos y defina las relaciones entre los datos definiendo restricciones para imponer reglas de negocio.
- Cree desencadenantes que puedan realizar una validación de datos compleja entre tablas.
- Implemente una estrategia de recuperación para proteger los datos de forma que puedan restaurarse a un estado coherente.
El diseño de base de datos es una tarea más compleja de lo que se indica aquí, y hay muchos elementos que debe tener en cuenta, como requisitos de espacio, claves, índices, restricciones, seguridad y autorización, etc. Puede encontrar parte de esta información en la documentación de Db2® , Db2 prácticas recomendadas, y en los muchos libros de distribución de Db2 que están disponibles sobre este tema.