Diseño de una base de datos

15
Diseño de una Base de Datos INTEGRANTES: Céspedes Martínez Maite Centurión Llenque Frank

Transcript of Diseño de una base de datos

Page 1: Diseño de una base de datos

Diseño de una Base de Datos

INTEGRANTES:Céspedes Martínez Maite

Centurión Llenque Frank

Page 2: Diseño de una base de datos

NORMALIZACIÓN:El diseño lógico de la base de datos, que incluye las tablas y sus relaciones, es la clave de una base de datos relacional optimizada. La normalización de un diseño lógico de la base de datos implica la utilización de métodos formales para separar los datos en varias tablas relacionadas. Una característica de una base de datos normalizada es la existencia de varias tablas pequeñas con menos columnas. En las bases de datos no normalizadas, existen menos tablas más amplias con más columnas.

Page 3: Diseño de una base de datos

La normalización ofrece diversas ventajas, entre las que se incluyen:

•Mayor rapidez en la ordenación y en la creación de índices.•Un número mayor de índices clúster. Para obtener más información.•Índices más estrechos y compactos.•Menor número de índices por tabla. De esta forma, se mejora el rendimiento de las instrucciones INSERT, UPDATE y DELETE.•Menor número de valores NULL y menos oportunidades para generar incoherencias. De esta forma, aumenta el rendimiento.

Page 4: Diseño de una base de datos

En la teoría del diseño de bases de datos relacionales, las reglas de normalización identifican ciertos atributos que deben estar presentes o ausentes en una base de datos bien diseñada. Una discusión completa de las reglas de normalización queda fuera del ámbito de este tema. No obstante, hay algunas reglas que pueden ayudarle a mejorar el diseño de la base de datos:Una tabla debe tener un identificador:

La regla fundamental de la teoría del diseño de bases de datos es que cada tabla tenga un identificador único 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. Las columnas que funcionan como identificador único de fila para una tabla constituyen la clave principal de la tabla.

Por ejemplo, ID_cliente es la clave principal de la tabla.

Page 5: Diseño de una base de datos

Una tabla solo debe almacenar datos para un único tipo de entidad:

Si intenta almacenar demasiada información en una tabla, la confiabilidad y la eficacia en la administración 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 ningún valor. En algunos casos, puede resultar útil permitir valores NULL, pero conviene utilizarlos con moderación. Esto se debe a que precisan un control especial que aumenta la complejidad de las operaciones de datos. Si tiene una tabla con varias columnas que aceptan valores NULL y varias filas tienen valores NULL en las columnas, conviene que considere la posibilidad de colocar esas columnas en otra tabla vinculada con la tabla principal. Si almacena los datos en dos tablas distintas, el diseño de la tabla principal puede ser simple, pero seguirá controlando la necesidad ocasional de almacenar este tipo de información.En una tabla deben evitarse las columnas que acepten valores nulos:

La tabla para un elemento de la base de datos no debe contener una lista de valores para una información específica.

Page 6: Diseño de una base de datos

INTEGRIDAD: 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 ningún otro empleado tenga el mismo valor de identificador. Si tiene una columna employee_rating para la que se prevean valores entre 1 y 5, la base de datos no debe aceptar valores fuera de ese intervalo.

La integridad de datos pertenece a las siguientes categorías:•Integridad de entidad•Integridad de dominio•Integridad referencial•Integridad definida por el usuario

Si en la tabla hay una columna dept_id en la que se almacena el número de departamento del empleado, la base de datos sólo debe permitir valores que correspondan a los números de departamento de la empresa. Dos pasos importantes en el diseño de las tablas son la identificación de valores válidos para una columna y la determinación de cómo forzar la integridad de los datos en la columna.

Page 7: Diseño de una base de datos

INTEGRIDAD DE IDENTIDAD: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. 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. INTEGRIDAD REFERENCIAL:La integridad referencial protege las relaciones definidas entre las tablas cuando se crean o se eliminan filas. INTEGRIDAD DEFINIDA POR EL USUARIO:La integridad definida por el usuario permite definir reglas de empresa específicas que no pertenecen a ninguna otra categoría de integridad. Todas las categorías 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.

Page 8: Diseño de una base de datos

SEGURIDAD DE LOS DATOS: Una de las funciones de una base de datos consiste en proteger los datos; para ello, se impide que determinados usuarios vean o modifiquen datos importantes y se evita que los usuarios en general cometan errores graves. El sistema de seguridad de Microsoft Access controla que usuarios pueden trabajar con que

tipo de datos y que usuarios pueden realizar determinadas actividades en la base de datos.La seguridad en las base de datos es un mecanismo fundamental ya que todo de sistema informatizado esta expuesto a cualquier tipo de amenazas de daño, enormes y desastrosas como pequeñas y leves pero que de una manera u otra causan perdida de confidencialidad.

Page 9: Diseño de una base de datos

RENDIMIENTO DE BASE DE DATOS: Cuando diseñe una base de datos, debe asegurarse de que realiza todas las operaciones importantes de forma rápida y correcta. Algunos problemas de rendimiento se pueden resolver una vez que la base de datos se encuentra en producción. Sin embargo, otros pueden ser el resultado de un diseño inadecuado y se pueden solucionar mediante el cambio de la estructura y el diseño de la base de datos.Cuando diseña e implementa una base de datos, debe identificar las tablas de gran tamaño y los procesos más complejos que realizará la base de datos. También debe prestar una atención especial al rendimiento cuando diseña estas tablas. Además, debe considerar los efectos que puede tener en el rendimiento el aumento del número de usuarios con acceso a la base de datos.Los siguientes cambios de diseño, entre otros, pueden mejorar el rendimiento:

•Si una tabla que contiene cientos de miles de filas debe resumirse en un informe diario, puede agregar a la tabla una o varias columnas que contengan datos previamente agregados para utilizarlos sólo en dicho informe.•Las bases de datos pueden normalizarse en exceso. Esto significa que la base de datos se define con un gran número de tablas pequeñas interrelacionadas. Cuando la base de datos procesa los datos de estas tablas, debe realizar muchas más operaciones para combinar los datos relacionados. Este procesamiento adicional puede repercutir negativamente en el rendimiento de la base de datos. En esos casos, una reducción de la normalización de la base de datos para simplificar procesos complejos puede mejorar el rendimiento.

Page 10: Diseño de una base de datos

MANTENIMIENTO: Después de crear una base de datos, y cuando se hayan agregado y estén operativos todos los objetos y datos, será necesario realizar determinadas operaciones de mantenimiento. Por ejemplo es necesario realizar copias de seguridad de la base de datos periódicamente. Es posible que también necesite crear algunos índices adicionales para mejorar el rendimiento. A continuación se ofrecen algunas indicaciones para el mantenimiento:

Diseñar la base de datos para que sea lo mas pequeña posible y excluya la información redundante.

Diseñar particiones de tablas en vez de tablas únicas, si la tabla debe contener un gran numero de filas.

Page 11: Diseño de una base de datos

ESTIMAR EL TAMAÑO DE UNA BASE DE DATOS: Cuando diseña una base de datos, puede que necesite realizar una estimación del tamaño que tendrá la base de datos cuando esté llena. Esta estimación puede ayudarle a determinar la configuración de hardware que necesitará para realizar lo siguiente:•Conseguir el rendimiento que necesitan las

aplicaciones. Para obtener más. información, vea Consideraciones acerca del hardware en rendimiento de base de datos.•Asegurar la cantidad física adecuada de espacio en disco necesario para almacenar los datos y los índices.Asimismo, la estimación del tamaño de la base de datos puede ayudarle a determinar si el diseño de su base de datos necesita reajustes. Por ejemplo, puede determinar que el tamaño estimado de la base de datos es demasiado grande para una implementación en su organización, y que se necesita un mayor grado de normalización.Por el contrario, el tamaño estimado puede inferior al esperado, con lo que podrá reducir la normalización de la base de datos para mejorar el rendimiento de las consultas.Para realizar una estimación del tamaño de una base de datos, efectúe una estimación del tamaño de cada tabla por separado y sume los valores obtenidos. El tamaño de una tabla depende de si tiene índices y, si los tiene, del tipo de índices.

Page 12: Diseño de una base de datos

RESUMEN:

SUMMARY:

Una base de datos correctamente diseñada permite obtener acceso a información exacta y actualizada. Puesto que un diseño correcto es esencial para lograr los objetivos fijados para la base de datos, parece lógico emplear el tiempo que sea necesario en aprender los principios de un buen diseño ya que, en ese caso, es mucho más probable que la base de datos termine adaptándose a sus necesidades y pueda modificarse fácilmente.

A properly designed database allows access to accurate and current information. Since a correct design is essential to achieve the objectives set for the database , it seems logical to use the time necessary to learn the principles of good design because, in that case , it is much more likely to database finished adapting to your needs and can be easily modified .

Page 13: Diseño de una base de datos

RECOMENDACIONES:

Es conveniente plasmar en papel el propósito de la base de datos: cómo piensa utilizarla y quién va a utilizarla. Para una pequeña base de datos de un negocio particular, por ejemplo, podría escribir algo tan simple como "La base de datos de clientes contiene una lista de información de los clientes para el envío masivo de correo y la generación de informes".

Si la base de datos es más compleja o la utilizan muchas personas, como ocurre normalmente en un entorno corporativo, la finalidad podría definirse fácilmente en uno o varios párrafos y debería incluir cuándo y cómo va a utilizar cada persona la base de datos. La idea es desarrollar una declaración de intenciones bien definida que sirva de referencia durante todo el proceso de diseño. Esta declaración de intenciones le permitirá centrarse en los objetivos a la hora de tomar decisiones.

Page 14: Diseño de una base de datos

APRECIACIÓN DEL EQUIPO:

A menudo pensamos en todo lo que quisiéramos que estuviera almacenado en una base de datos y diseñamos la base de datos para guardar dichos datos. Debemos de ser realistas acerca de nuestras necesidades y decidir qué información es realmente necesaria.Frecuentemente podemos generar algunos datos sobre la marcha sin tener que almacenarlos en una tabla de una base de datos. En estos casos también tiene sentido hacer esto desde el punto de vista del desarrollo de la aplicación.CONCLUSIÓN:

La finalidad de este trabajo, es dar una inducción en el tema de Diseño de Bases de Datos, a personas ajenas al tema. De manera que por ello los temas se presentan de una manera sencilla y sin tanta terminología. Siempre que una persona escucha hablar de bases de datos y de toda la terminología que las acompaña piensa que es un tema excesivamente complicado, y no es así, todo tiene un porque y lógica, es cosa de familiarizarse un poco con ellas (bases de datos).Cuando se ven en realidad todas las ventajas que tienen, es mas sencillo el proceso de aprendizaje, ya que siente que el aprender a manejarlas se vera recompensado.Además de los sencillas que son, es muy fácil acceder a información, manuales y cursos relacionados a ellas, todo esta a la mano, con la facilidad de poner este tema en un buscador de la red y aparecerán infinidad de temas, unos mas complejos que otros, pero siempre uno que se adecue a las capacidades de aprendizaje de cada persona.

Page 15: Diseño de una base de datos

https://technet.microsoft.com/es-es/library/ms191178(v=sql.105).aspx

https://technet.microsoft.com/es-es/library/ms184276(v=sql.105).aspx

https://technet.microsoft.com/es-es/library/ms190619(v=sql.105).aspx

https://technet.microsoft.com/es-es/library/ms187445(v=sql.105).aspx

LINKOGRAFÍA: