Sei sulla pagina 1di 9

INSTITUTO TECNOLOGICO SUPERIOR DE LA REGION DE LOS LLANOS

Manual de Diseo de Base


de Datos
Mara del Consuelo Caldern Flores

Miguel Alejandro Marn Morales

Roberto Alvarado Leyva


Juan Carlos Alemn Morales
Jennifer Quiones Prez

2015

MANUAL DE DISEO DE BASES DE DATOS.


1.- Disear y crear bases de datos
Un sistema de base de datos cliente/servidor consta de dos componentes:

Programas que proporcionan una interfaz para usuarios que utilizan clientes para tener
acceso a los datos.
La estructura de base de datos que administra y almacena los datos en el servidor.

Las bases de datos de SQL Server estn formadas por un conjunto de tablas. Estas tablas contienen
datos y otros objetos, como vistas, ndices, procedimientos almacenados, funciones definidas por el
usuario y desencadenadores, que se definen para permitir realizar actividades con los datos. Los
datos almacenados en una base de datos suelen estar relacionados con un determinado tema o
proceso, como la informacin de inventario del almacn de una fbrica.

2.- Disear bases de datos


El diseo de una base de datos requiere un conocimiento profundo de las funciones empresariales
que se desean modelar, as como de las caractersticas y conceptos de base de datos que desea
utilizar para representar esas funciones empresariales. Asegrese de disear con precisin la base de
datos que utilizar para modelar el negocio porque el cambio del diseo de la base de datos una vez
implementada puede requerir mucho tiempo. Por otra parte, una base de datos bien diseada ofrece
un mejor rendimiento.

3.- Desarrollar un plan de base de datos


El primer paso al crear una base de datos consiste en elaborar un plan que sirva de gua para la
implementacin de la base de datos y, al mismo tiempo, como especificacin funcional despus de
su implementacin. La complejidad y los detalles de diseo de una base de datos dependen de la
complejidad y el tamao de la aplicacin de bases de datos, as como de los usuarios.
Al disear la base de datos, independientemente de su tamao y complejidad, lleve a cabo los
siguientes pasos bsicos:

Recopile la informacin.
Identifique los objetos.
Cree modelos de los objetos.
Identifique los tipos de informacin para cada objeto.
Identifique las relaciones entre los objetos.

4.- Recopilar la informacin


Antes de crear una base de datos, debe conocer con detalle el cometido previsto de la base de datos.
Si la base de datos va a reemplazar a un sistema de informacin manual o en papel, dicho sistema le
proporcionar la mayor parte de la informacin que necesita. Debera consultar a todas las personas
involucradas en el sistema para determinar lo que hacen y qu necesitan de la base de datos.
Tambin es importante identificar qu es lo que desean que haga el nuevo sistema, as como los
problemas, las limitaciones y los cuellos de botella del sistema existente. Recopile copias de todos

aquellos documentos que formen parte del sistema existente, porque le servirn para disear la base
de datos y las interfaces.

5.- Identificar los objetos


Durante el proceso de recopilacin de informacin, deber identificar los objetos o las entidades
ms importantes que vayan a ser administrados por la base de datos. El objeto puede ser tangible
(una persona o un producto, por ejemplo) o bien intangible (como una transaccin empresarial, un
departamento de una compaa o un perodo de liquidacin de nminas). Normalmente hay unos
cuantos objetos principales; una vez identificados, se evidencian los elementos relacionados. Cada
elemento diferenciado de la base de datos debe tener su tabla correspondiente.

6.- Crear un modelo de los objetos


Cuando se identifican los objetos del sistema, debera registrarlos de una manera que represente
visualmente el sistema. Puede utilizar su modelo de base de datos como referencia durante la
implementacin de la misma.
Con este propsito, los programadores de bases de datos utilizan herramientas que varan en
complejidad tcnica: desde papel y bolgrafo hasta procesadores de texto y hojas de clculo e,
incluso, programas de software creados especficamente para la elaboracin de modelos de datos
destinados al diseo de bases de datos. Sea cual sea la herramienta que decida utilizar, es importante
que la mantenga actualizada.

7.- Identificar los tipos de informacin para cada objeto


Una vez identificados los objetos principales de la base de datos como candidatos para las tablas, el
siguiente paso es identificar los tipos de informacin que deben almacenarse para cada objeto. Estos
tipos son las columnas de la tabla del objeto. Las columnas de una tabla de base de datos contienen
algunos tipos de informacin comunes:

Columnas

de

datos

sin

procesar

Estas columnas almacenan informacin tangible, como por ejemplo nombres, determinada
por un origen externo a la base de datos.

Columnas

de

categoras

Estas columnas clasifican o agrupan los datos y almacenan una seleccin limitada de datos,
tales como verdadero o falso; casado o soltero; presidente, director o responsable de equipo;
etc.

Columnas

de

identificadores

Estas columnas proporcionan un mecanismo para identificar cada elemento almacenado en


la tabla. Estas columnas suelen incluir un Id. o un nmero en el nombre. Algunas veces el
objeto tiene una forma tangible de Id. utilizada en la tabla (por ejemplo, un nmero de la
seguridad social), aunque en la mayora de los casos se puede definir la tabla para poder
crear un Id. confiable y artificial para la fila.

Columnas

relacionales

diferenciales

Estas columnas establecen un vnculo entre la informacin de una tabla y la informacin


relacionada que se encuentra en otra tabla. Por ejemplo, una tabla que realiza el
seguimiento de transacciones comerciales puede tener un vnculo con una tabla clientes, de
modo que pueda asociarse toda la informacin del cliente a la transaccin comercial.

8.- Identificar la relacin entre objetos


Uno de los puntos fuertes de una base de datos relacional es la posibilidad de relacionar o asociar
informacin acerca de varios elementos de la base de datos. Pueden almacenarse por separado tipos
aislados de informacin, pero el motor de base de datos puede combinar los datos cuando sea
necesario. Para identificar la relacin entre los objetos durante el proceso de diseo se necesita
llevar a cabo un examen de las tablas con el fin de determinar sus relaciones lgicas y agregar
columnas relacionales que establezcan un vnculo entre las tablas.

9.- Normalizacin
El diseo lgico de la base de datos, que incluye las tablas y sus relaciones, es la clave de una base
de datos relacional optimizada. Un buen diseo lgico de la base de datos puede ser la base de un
rendimiento ptimo de la aplicacin y de la base de datos. Un diseo lgico deficiente puede
comprometer el rendimiento de todo el sistema.
La normalizacin de un diseo lgico de la base de datos implica la utilizacin de mtodos formales
para separar los datos en varias tablas relacionadas. Una caracterstica de una base de datos
normalizada es la existencia de varias tablas pequeas con menos columnas. En las bases de datos
no normalizadas, existen menos tablas ms amplias con ms columnas.

La normalizacin ofrece diversas ventajas, entre las que se incluyen:

Mayor rapidez en la ordenacin y en la creacin de ndices.


Un nmero mayor de ndices agrupados.
ndices ms estrechos y compactos.
Menor nmero de ndices por tabla. De esta forma, se mejora el rendimiento de las
instrucciones INSERT, UPDATE y DELETE.
Menor nmero de valores NULL y menos oportunidades para generar incoherencias. De
esta forma, aumenta el rendimiento.

10.- Conseguir una base de datos bien diseada


En la teora del diseo de bases de datos relacionales, las reglas de normalizacin identifican ciertos
atributos que deben estar presentes o ausentes en una base de datos bien diseada. Una discusin
completa de las reglas de normalizacin queda fuera del mbito de este tema. No obstante, hay
algunas reglas que pueden ayudarle a mejorar el diseo de la base de datos:

Una tabla debe tener un identificador.


La regla fundamental de la teora del diseo de bases de datos es que cada tabla tenga
unos identificadores nicos de fila, una columna o conjunto de columnas utilizados para
diferenciar un registro de cualquier otro registro de la tabla. Cada tabla debe tener una
columna de Id. y el valor de cada Id. no debe ser compartido por dos registros
Una tabla slo debe almacenar datos para un nico tipo de entidad.
Si intenta almacenar demasiada informacin en una tabla, la confiabilidad y la eficacia en la
administracin de los datos de la tabla pueden verse afectadas.
En una tabla deben evitarse las columnas que acepten valores nulos.
Las tablas pueden tener columnas definidas para permitir valores NULL. Un valor NULL
indica que no hay ningn valor. En algunos casos, puede resultar til permitir valores NULL,
pero conviene utilizarlos con moderacin. Esto se debe a que precisan un control especial
que aumenta la complejidad de las operaciones de datos

11.- Integridad de los datos


La exigencia de integridad de los datos garantiza la calidad de los datos de la base de datos. Por
ejemplo, si se especifica para un empleado el valor de identificador de 123, la base de datos no
debe permitir que ningn otro empleado tenga el mismo valor de identificador.
Dos pasos importantes en el diseo de las tablas son la identificacin de valores vlidos para una
columna y la determinacin de cmo forzar la integridad de los datos en la columna. La integridad
de datos pertenece a una de las siguientes categoras:

Integridad de entidad
Integridad de dominio
Integridad referencial
Integridad definida por el usuario

12.- Integridad de entidad


La integridad de entidad define una fila como entidad nica para una tabla determinada. La
integridad de entidad exige la integridad de las columnas de los identificadores o la clave principal
de una tabla, mediante ndices y restricciones UNIQUE, o restricciones PRIMARY KEY.

13.- Integridad de dominio


La integridad de dominio viene dada por la validez de las entradas para una columna determinada.
Puede exigir la integridad de dominio para restringir el tipo mediante tipos de datos, el formato
mediante reglas y restricciones CHECK, o el intervalo de valores posibles mediante restricciones
FOREIGN KEY, restricciones CHECK, definiciones DEFAULT, definiciones NOT NULL y reglas.

14.- Integridad referencial


La integridad referencial protege las relaciones definidas entre las tablas cuando se crean o se
eliminan filas. En SQL Server la integridad referencial se basa en las relaciones entre claves externas

y claves principales o entre claves externas y claves exclusivas, mediante restricciones FOREIGN KEY
y CHECK. La integridad referencial garantiza que los valores de clave sean coherentes en las
distintas tablas. Para conseguir esa coherencia, es preciso que no haya referencias a valores
inexistentes y que, si cambia el valor de una clave, todas las referencias a ella se cambien en
consecuencia en toda la base de datos.
Cuando se exige la integridad referencial, SQL Server impide a los usuarios:

Agregar o cambiar filas en una tabla relacionada si no hay ninguna fila asociada en la tabla
principal.
Cambiar valores en una tabla principal que crea filas hurfanas en una tabla relacionada.
Eliminar filas de una tabla principal cuando hay filas relacionadas coincidentes.

15.- Integridad definida por el usuario


La integridad definida por el usuario permite definir reglas de empresa especficas que no
pertenecen a ninguna otra categora de integridad. Todas las categoras de integridad admiten la
integridad definida por el usuario. Esto incluye todas las restricciones de nivel de columna y nivel de
tabla en CREATE TABLE, procedimientos almacenados y desencadenadores.

16.- Estimar el tamao de una base de datos


Cuando disea una base de datos, puede que necesite realizar una estimacin del tamao que
tendr la base de datos cuando est llena. Esta estimacin puede ayudarle a determinar la
configuracin de hardware que necesitar para realizar lo siguiente:

Conseguir el rendimiento que necesitan las aplicaciones.


Asegurar la cantidad fsica adecuada de espacio en disco necesario para almacenar los
datos y los ndices.

17.- Disear archivos y grupos de archivos


Se pueden agregar grupos de archivos y archivos de datos a una base de datos para mejorar su
rendimiento y las estrategias de copia de seguridad y restauracin.

18.- Usar archivos y grupos de archivos


SQL Server 2005 asigna una base de datos a un conjunto de archivos del sistema operativo. Los
datos y la informacin del registro nunca se mezclan en el mismo archivo, y cada archivo slo es
utilizado por una base de datos. Los grupos de archivos son colecciones de archivos con nombre
que se utilizan para facilitar la colocacin de datos y tareas administrativas como las operaciones de
copia de seguridad y restauracin.

19.- Estrategia para el relleno de archivos y grupos de archivos


Los grupos de archivos utilizan una estrategia de relleno proporcional entre todos los archivos de
cada grupo de archivos. A medida que se escriben datos en el grupo de archivos, SQL Server
Database Engine (Motor de base de datos de SQL Server) escribe una cantidad proporcional al
espacio libre del archivo en cada archivo del grupo, en lugar de escribir todos los datos en el primer
archivo hasta que est completo. A continuacin, escribe en el siguiente archivo. Por ejemplo, si el
archivo f1 tiene 100 MB de espacio libre y el archivo f2 tiene 200 MB de espacio libre, por cada

cantidad de datos que se asigne al archivo f1, se asignar el doble al archivo f2 y as sucesivamente.
De ese modo, los dos archivos se llenarn aproximadamente al mismo tiempo y se conseguir crear
una banda simple.

20.- Mejorar el rendimiento de la base de datos


El uso de archivos y grupos de archivos permite mejorar el rendimiento de la base de datos al
permitir crear la base de datos en varios discos, varios controladores de disco o sistemas RAID
(matriz redundante de discos independientes). Por ejemplo, si su equipo tiene cuatro discos, puede
crear una base de datos que contenga tres archivos de datos y un archivo de registro, y mantener
un archivo en cada disco. Cuando se produce un acceso a los datos, hay cuatro cabezales de lectura
y escritura que pueden tener acceso en paralelo a los datos a la vez, con lo que se aceleran las
operaciones de la base de datos.

21.- Implementar estrategias de copia de seguridad y restauracin


En SQL Server 2005, las bases de datos formadas por varios grupos de archivos se pueden restaurar
por partes mediante un proceso denominado restauracin por etapas. La restauracin por etapas
funciona con todos los modelos de recuperacin, aunque su flexibilidad es mayor para los modelos
de recuperacin completa o por medio de registros de operaciones masivas que para el modelo
simple. El escenario de una restauracin por etapas incluye las tres fases de un proceso de
restauracin: copiar datos, rehacer o poner al da y deshacer o revertir..

22.- Reglas para el diseo de archivos y grupos de archivos


Las siguientes reglas afectan a los archivos y grupos de archivos:

Un archivo o un grupo de archivos no puede ser utilizado por ms de una base de datos.
Por ejemplo, los archivos sales.mdf y sales.ndf, que contienen datos y objetos de la base
de datos sales, no pueden ser utilizados por otra base de datos.
Un archivo puede pertenecer nicamente a un grupo de archivos.
Los archivos del registro de transacciones nunca pueden formar parte de un grupo de
archivos.

22.1.- Recomendaciones
stas son algunas recomendaciones generales referentes a los archivos y a los grupos de archivos:

La mayor parte de las bases de datos funcionarn correctamente con un solo archivo de
datos y un solo archivo de registro de transacciones.
Si utiliza varios archivos, cree un segundo grupo de archivos para el archivo adicional y
convirtalo en el grupo de archivos predeterminado. De ese modo, el archivo principal slo
contendr objetos y tablas del sistema.
Para maximizar el rendimiento, cree archivos o grupos de archivos en tantos discos fsicos
disponibles como sea posible y distribuya en grupos de archivos distintos los objetos que
compitan de forma intensa por el espacio.
Utilice grupos de archivos para permitir la colocacin de los objetos en determinados
discos fsicos.
Disponga en grupos de archivos distintos las diferentes tablas que se utilicen en las mismas
consultas de combinacin. De ese modo, el rendimiento mejorar debido a la bsqueda de
datos combinados que realizan las operaciones de E/S en paralelo en los discos.

22.- Usar archivos y grupos de archivos para administrar el crecimiento


de las bases de datos
Cuando se crea una base de datos, se debe especificar un tamao inicial de los datos y los archivos
de registro o aceptar el tamao predeterminado. A medida que se agregan datos a la base de
datos, los archivos se van llenando. Sin embargo, debe tener presente si la base de datos va a
crecer, y cmo, por encima del espacio inicial asignado, al agregar ms datos a la base de datos de
los que caben en los archivos.
De forma predeterminada, los archivos de datos crecen tanto como sea necesario hasta que no
quede espacio en disco. Por lo tanto, si no desea que los archivos de la base de datos crezcan ms
all de los lmites especificados cuando se crearon, deber especificarlo al crear la base de datos
mediante SQL Server Management Studio o la instruccin CREATE DATABASE.

22.1.- Recomendaciones
Cuando cree una base de datos, defina el mayor tamao posible para los archivos de datos, segn
la cantidad de datos mxima prevista para la base datos. Permita que los archivos de datos crezcan
automticamente, pero establezca un lmite de crecimiento especificando un tamao mximo de
crecimiento de los archivos de datos que deje espacio libre en el disco duro. De ese modo, la base
de datos podr crecer si se agregan ms datos de los previstos, pero sin llegar a agotar el espacio
de la unidad de disco. Si se excede el tamao del archivo de datos inicial y el archivo empieza a
crecer automticamente, reevale el tamao mximo de la base de datos previsto. A continuacin,
planee segn sea necesario, agregando ms espacio y creando y agregando ms archivos o grupos
de archivos a la base de datos.

23.- Fragmentacin de archivos


Si se deja que los archivos crezcan automticamente se puede provocar la fragmentacin de esos
archivos si varios de ellos comparten el mismo disco. Por lo tanto, debe crear los archivos o grupos
de archivos en tantos discos fsicos diferentes como pueda. Asimismo, distribuya en grupos de
archivos distintos los objetos que compitan de forma intensa por el espacio.

24.- Grupos de archivos de slo lectura y compresin


Los grupos de archivos se pueden marcar como de slo lectura. Cualquier grupo de archivos
existente, excepto el grupo de archivos principal, puede marcarse como de slo lectura. Un grupo
de archivos marcado como de slo lectura no se puede modificar de ninguna manera. Los grupos
de archivos de slo lectura se pueden comprimir.
Coloque las tablas que no deban modificarse (como las de datos histricos) en uno o varios grupos
de archivos y, a continuacin, mrquelos como de slo lectura. As se evitarn actualizaciones
accidentales.

25.- Usar compresin NTFS con grupos de archivos definidos por el


usuario de slo lectura y bases de datos de slo lectura
SQL Server 2005 es compatible con la compresin NTFS de grupos de archivos definidos por el
usuario de slo lectura y bases de datos de slo lectura. Debe considerar comprimir datos de slo
lectura en las siguientes situaciones:

Si tiene un gran volumen de datos estticos e histricos que deben estar disponibles para
acceso limitado de slo lectura.

Si tiene limitaciones de espacio en el disco.

26.- Consideraciones administrativas

Slo se admite la compresin de Windows NTFS. Para obtener ms informacin, consulte la


documentacin del sistema de archivos NTFS de Windows.
La compresin de datos se admite para los datos de usuario almacenados en los grupos de
archivos definidos por el usuario (.NDF) de slo lectura. Los grupos de archivos principales y
los registros de las transacciones no se pueden comprimir a menos que la base de datos
sea de slo lectura.
Para comprimir archivos del grupo de archivos definido por el usuario, la base de datos
debe estar sin conexin.
Para comprimir un archivo, o comprobar el estado de compresin de un archivo, utilice el
comando COMPACT de Windows o el Explorador de Windows. Para obtener ms
informacin, consulte la documentacin de Windows.
Las
bases
de
datos
del
sistema
SQL
Server,
como master, model, msdb, resource y tempdb no se pueden comprimir.
Las operaciones de copia de seguridad y restauracin de SQL Server admiten grupos de
archivos comprimidos. No se requiere ninguna clase de modificacin en la implementacin
de copias de seguridad y restauracin. La compresin del sistema operativo es transparente
para las operaciones de copia de seguridad y restauracin.

Potrebbero piacerti anche