18
DISEÑO BASE DATOS El diseño de una base de datos consiste en definir la estructura de los datos que debe tener la base de datos de un sistema de información determinado. En el caso relacional, esta estructura será un conjunto de esquemas de relación con sus atributos, dominios de atributos, claves primarias, claves foráneas, etc. El diseño de una base de datos no es un proceso sencillo. Habitualmente, la complejidad de la información y la cantidad de requisitos de los sistemas de información hacen que sea complicado. Por este motivo, cuando se diseñan bases de datos es interesante aplicar la vieja estrategia de dividir para vencer. Por lo tanto, conviene descomponer el proceso del diseño en varias etapas; en cada una se obtiene un resultado intermedio que sirve de punto de partida de la etapa siguiente, y en la última etapa se obtiene el resultado deseado. De este modo no hace falta resolver de golpe toda la problemática que plantea el diseño, sino que en cada etapa se afronta un solo tipo de subproblema. Así se divide el problema y, al mismo tiempo, se simplifica el proceso. ETAPAS EN EL DISEÑO DE BASES DE DATOS: 1. Análisis de Requerimientos: El objetivo de esta etapa es identificar y documentar los datos requeridos por la organización para satisfacer necesidades de información presentes y futuras. La entrada principal son los requerimientos que se obtienen a través de entrevistas de usuarios.

Trabajo Modelamiento

Embed Size (px)

DESCRIPTION

modelado de datos

Citation preview

DISEÑO BASE DATOS

El diseño de una base de datos consiste en definir la estructura de los datos que debe tener la base de datos de un sistema de información determinado. En el caso relacional, esta estructura será un conjunto de esquemas de relación con sus atributos, dominios de atributos, claves primarias, claves foráneas, etc.

El diseño de una base de datos no es un proceso sencillo. Habitualmente, la complejidad de la información y la cantidad de requisitos de los sistemas de información hacen que sea complicado. Por este motivo, cuando se diseñan bases de datos es interesante aplicar la vieja estrategia de dividir para vencer.

Por lo tanto, conviene descomponer el proceso del diseño en varias etapas; en cada una se obtiene un resultado intermedio que sirve de punto de partida de la etapa siguiente, y en la última etapa se obtiene el resultado deseado. De este modo no hace falta resolver de golpe toda la problemática que plantea el diseño, sino que en cada etapa se afronta un solo tipo de subproblema. Así se divide el problema y, al mismo tiempo, se simplifica el proceso.

ETAPAS EN EL DISEÑO DE BASES DE DATOS:

1. Análisis de Requerimientos:

El objetivo de esta etapa es identificar y documentar los datos requeridos por la organización para satisfacer necesidades de información presentes y futuras.

La entrada principal son los requerimientos que se obtienen a través de entrevistas de usuarios.

2. Etapa del diseño conceptual:

En esta etapa se obtiene una estructura de la información de la futura BD independiente de la tecnología que hay que emplear. No se tiene en cuenta todavía qué tipo de base de datos se utilizará –relacional, orientada a objetos, jerárquica, etc. En consecuencia, tampoco se tiene en cuenta con qué SGBD ni con qué lenguaje concreto se implementará la base de datos. Así pues, la etapa del diseño conceptual nos permite concentrarnos únicamente en la problemática de la estructuración de la información, sin tener que preocuparnos al mismo tiempo de resolver cuestiones tecnológicas.

El resultado de la etapa del diseño conceptual se expresa mediante algún modelo de datos de alto nivel. Uno de los más empleados es el modelo entidad -relación que se abrevia con la sigla ER

3. Etapa del diseño lógico: En esta etapa se parte del resultado del diseño conceptual, que se transforma de forma que se adapte a la tecnología que se debe emplear. Más concretamente, es preciso que se ajuste al modelo del SGBD con el que se desea implementar la base de datos. Por ejemplo, si se trata de un SGBD relacional, esta etapa obtendrá un conjunto de relaciones con sus atributos, claves primarias y claves foráneas.

Esta etapa parte del hecho de que ya se ha resuelto la problemática de la estructuración de la información en un ámbito conceptual, y permite concentrarnos en las cuestiones tecnológicas relacionadas con el modelo de base de datos.

El diseño lógico de una base de datos relacional se explica en el apartado 3 de esta unidad.

Más adelante explicaremos cómo se hace el diseño lógico de una base de datos relacional, tomando como punto de partida un diseño conceptual expresado con el modelo ER; es decir, veremos cómo se puede transformar un modelo ER en un modelo relacional.

4. Etapa del diseño físico: En esta etapa se transforma la estructura obtenida en la etapa del diseño lógico, con el objetivo de conseguir una mayor eficiencia; además, se completa con aspectos de implementación física que dependerán del SGBD.

Por ejemplo, si se trata de una base de datos relacional, la transformación de la estructura puede consistir en lo siguiente: tener almacenada alguna relación que sea la combinación de varias relaciones que se han obtenido en la etapa del diseño lógico, partir una relación en varias, añadir algún atributo calculable a una relación, etc. Los aspectos de implementación física que hay que completar consisten normalmente en la elección de estructuras físicas de implementación de las relaciones, la selección del tamaño de las memorias

intermedias (buffers) o de las páginas, etc.

En esta etapa con el objetivo de conseguir un buen rendimiento de la base de datos–, se deben tener en cuenta las características de los procesos que consultan y actualizan la base de datos.

ADMINISTRACION DE BASE DATOS

Consiste en el diseño inicial de la base de datos y su puesta en práctica así como controlar, y administrar sus requerimientos, ayudando a evaluar alternativas, incluyendo los DBMS a utilizar y ayudando en el diseño general de la bases de datos. En los casos de grandes aplicaciones de tipo organizacional, se necesita del DBA es un gerente que supervisa el trabajo del personal de diseño de la BD.

Administrador de la Base de Datos.

Es la persona encargada de definir y controlar las bases de datos corporativas, además proporciona asesoría a los desarrolladores, usuarios y ejecutivos que la requieran. Es la persona o equipo de personas profesionales responsables del control y manejo del sistema de base de datos, generalmente tiene(n) experiencia en DBMS, diseño de bases de datos, Sistemas operativos, comunicación de datos, hardware y programación.

Un Administrador de Base de Datos de tiempo completo normalmente tiene aptitudes técnicas para el manejo del sistema en cuestión además, son cualidades deseables nociones de administración, manejo de personal e incluso un cierto grado de diplomacia. La característica más importante que debe poseer es un conocimiento profundo de las políticas y normas de la empresa, así como el criterio de la empresa para aplicarlas en un momento dado.

El Administrador de Bases de Datos es responsable primordialmente de:

Administrar la estructura de la Base de Datos.

Administrar la actividad de los datos.

Administrar el Sistema Manejador de Base de Datos.

Establecer el Diccionario de Datos.

Asegurar la confiabilidad de la Base de Datos.

Confirmar la seguridad de la Base de Datos.

Administrar la estructura de la Base de Datos.

Esta responsabilidad incluye participar en el diseño inicial de la base de datos y su puesta en práctica así como controlar, y administrar sus requerimientos, ayudando a evaluar alternativas, incluyendo los DBMS a utilizar y ayudando en el diseño general de la bases de datos. En los casos de grandes aplicaciones de tipo organizacional, el DBA es un gerente que supervisa el trabajo del personal de diseño de la BD.

Una vez diseñada las bases de datos, es puesta en práctica utilizando productos del DBMS, procediéndose entonces a la creación de los datos (captura inicial). El DBA participa en el desarrollo de procedimientos y controles para asegurar la calidad y la alta integridad de la BD.

Administración de la Actividad de Datos.

El DBA no es usuario del sistema, no administra valores de datos; sino la actividad de datos; protege los datos, no los procesa. Dado que la base de datos es un

recurso compartido, el DBA debe proporcionar estándares, guías de acción, procedimientos de control y la documentación necesaria para garantizar que los usuarios trabajen en forma cooperativa y complementaria al procesar datos en la bases de datos.

Administrar el Sistema Manejador de Base de Datos.

Existe una gran actividad al interior de un DBMS. La concurrencia de múltiples usuarios requiere la estandarización de los procesos de operación; el DBA es responsable de éstas especificaciones y de asegurarse que estas lleguen a quienes concierne. Todo el ámbito de la base de datos se rige por estándares, desde la forma de como se captura la información (tipo de dato, longitud, formato), como es procesada y presentada. El nivel de estandarización alcanza hasta los aspectos más internos de la base de datos; como sé acceso a un archivo, como se determinan los índices primarios y auxiliares, registros, etc.

El DBA debe procurar siempre que los estándares que serán aplicados beneficien también a los usuarios, privilegiando siempre la optimización en la operación del DBMS y el apego de las políticas de la empresa.

Establecer el Diccionario de Datos.

Cuando se definen estándares sobre la estructura de la base de datos, se deben de registrarse en una sección del diccionario de datos a la que todos aquellos usuarios relacionados con ese tipo de proceso pueden acceder. Este metadato debe precisar información que nos indique con claridad el tipo de datos que serán utilizados, sus ámbitos de influencia y sus limitantes de seguridad.

Asegurar la Confiabilidad de la Base de Datos

Se trata de realizar un sistema de bases de datos lo suficientemente robusto para que sea capaz de recuperarse frente a errores o usos inadecuados. Se deben utilizar gestores con las herramientas necesarias para la reparación de los posibles errores que las bases de datos pueden sufrir, por ejemplo tras un corte inesperado de luz.

Confirmar la Seguridad de la Base de Datos.

Coordinar las nuevas propuestas para realizar ajustes en los derechos de acceso a datos compartidos y aplicaciones específicamente propuestas serían analizados en conjunto con los supervisores o directivos de las áreas involucradas para determinar si procede pudieran aparecer problemas cuando dos o más grupos de usuarios quedan autorizados para notificar los mismos datos. Uno de tales conflictos es el de la actualización perdida; este ocurre cuando el trabajo de un usuario queda sobrescrito sobre por el de un segundo usuario.

El DBA queda responsabilizado para identificar la posible ocurrencia de dichos problemas así como de crear normas y procedimientos para su eliminación. Se obtendrán este tipo de garantías cuando el DBMS sea capaz de implementar las restricciones aplicables al acceso concurrente, y este sea utilizado adecuadamente por programadores y usuarios; para borrar lo anterior, se hace indispensable el apego a los estándares el seguimiento de instructivos y manuales y las reglas

establecidas para los diversos procesamientos y procedimientos que se llevan a cabo.

Entre las alternativas mas utilizadas por el DBA para tratar de resolver o minimizar este problema se encuentran las siguientes:

Restringir el acceso a los procedimientos para ciertos usuarios.

Restringir al acceso a los datos para ciertos usuarios procedimientos.

Evitar la coincidencia de horarios para usuarios que comparten.

Objetivos del Administrador de la Base de Datos.

Mantener la Integridad de los Datos. Una base de datos debe protegerse de accidentes tales como los errores en la entrada de los datos o en la programación, del uso mal intencionado de la base de datos y de los fallos del hardware o del software que corrompen los datos. La protección contra accidentes, que ocasiona inexactitudes en los datos, es parte del objetivo de garantizar la integridad de los datos. Estos accidentes incluyen los fallos durante el procesamiento de las transacciones, los errores lógicos que infringen la suposición de que las transacciones preservan las restricciones de consistencia de la base de datos y las anomalías debido al acceso concurrente en la base de datos (acceso concurrente).

Mantener la Seguridad de los Datos. La protección de la base de datos de usos mal intencionados o no autorizados se denomina seguridad de los datos. La seguridad se encarga de limitar a los usuarios a ejecutar únicamente las operaciones permitidas.

Mantener la Disponibilidad de los Datos. La posibilidad de fallos de hardware o de software requiere procedimientos de recuperación de la base de datos. Tiene que proporcionar medios para el restablecimiento de las bases de datos que se hayan corrompido por desperfectos del sistema, a un estado uniforme.

HERRAMIENTAS DE MODELADO Y DISEÑO DE DATOS

ER/STUDIO XE

Con ER/Studio puedes analizar, modelar y diseñar bases de datos y aplicaciones. Proporciona también un repositorio central para trabajar colaborativamente entre diferentes responsables de modelado, analistas de negocio, administradores de bases de datos y arquitectos de datos. Integra herramientas de informes y un portal que permite las búsquedas, además de otras para la administración.

Ventajas ER/Studio XE

ER/Studio permite a los usuarios completar tareas más rápido y ser más productivos con:

una interfaz clara y sencilla para una mejor usabilidad interfaz automática extensible y asistentes para agilizar las tareas de

modelado rutinarias

formateo mejorado con “auto-layout” de diagramas y navegación de diagramas

publicación y comunicación de modelos superior

Reduce los tiempos de implementación y aumenta la productividad .Embarcadero te proporciona con una plataforma de modelado de datos para ayudarte a:

Disminuir los tiempos de implementación e impulsar los proyectos DW con plantillas de modelo de datos pre-fabricados.

Reducir la redundancia en datos con un diccionario de datos empresarial estandarizad

Mejorar el gobierno de datos mediante el trazado visual de las asignaciones de la fuente y destino con documentación detallada y a la vez pudiendo capturar información sobre la desviaciones de los datos, seguridad y cumplimiento de normas

ERWIN DATA MODELER R8

ERwin Data Modeler es una herramienta de modelado de datos líder del sector, que ha sido uno de los referentes en los últimos 20 años. Se distingue por ofrecer características de tipo empresarial a un precio asequible, permitiéndote reducir el tiempo y costes invertidos en gestionar tus entornos complejos de bases de datos.

ERwin hace fácil el diseño de una base de datos. Los diseñadores de bases de datos sólo apuntan y pulsan un botón para crear un gráfico del modelo E-R (Entidad _ relación) de todos sus requerimientos de datos y capturar las reglas de negocio en un modelo lógico, mostrando todas las entidades, atributos, relaciones, y llaves importantes.

Razones para elegir ERwin Data Modeler

Visualización y diagramación avanzada

Personalización, flexibilidad y automatización

Integración y arquitectura abierta

Funcionalidad completa de comparación y combinación

Estándares corporativas y reutilización

Control real del modelo de datos

Generación y publicación flexible de reportes

Colaboración basada en repositorios

Integración de perfiles de datos

Ecosistemas y comunidades de usuarios.

DATABASESPY

DatabaseSpy ofrece un editor gráfico de diseños de BD con el que podrá visualizar y editar la estructura de todas sus BD en una interfaz gráfica. Puede examinar las tablas y relaciones de una BD ya existente para comprenderlas mejor o editar tablas de BD ya existentes para adaptarlas a sus necesidades. También puede agregar tablas enteras desde cero y especificar todos sus atributos de columna y sus relaciones con otras tablas.

Gracias a la vista gráfica del diseñador de bases de datos de BD de DatabaseSpy podrá concentrarse en la estructura subyacente de sus datos y en los cambios necesarios en lugar de perder tiempo escribiendo los comandos SQL necesarios para implementarlos. El diseñador gráfico de bases de datos construye automáticamente las instrucciones SQL que necesite y, cuando termine de editar la BD, puede decidir cuándo se ejecuta el script de cambios de la estructura de la BD.

Características:

Ajuste automático de la sintaxis para los diferentes tipos de BD

Ventana para seleccionar tipos de datos

Edición de tablas de BD ya existentes

Creación de tablas y relaciones nuevas sin necesidad de escribir scripts SQL a mano

Copiar/pegar entre varias ventanas

Conversión de tablas a un tipo de BD nuevo

Guarda los diagramas de BD como archivos .png, .bmp, .gif y .jpg

Impresión de diagramas de relación de tablas de BD

Generación automática de scripts de cambio SQL

Posibilidad de guardar diseños y volver a utilizarlos

ORACLE DATA MODELER

Oracle Data Modeler es una aplicación que puede ejecutarse de manera independiente o incorporarse como un módulo en otras herramientas como por ejemplo la también gratuita Oracle SQL Developer. Al estar desarrollada en Java, corre sobre cualquier plataforma, y a través de drivers JDBC permite trabajar con los principales motores de base de datos del mercado.

Este es una herramienta fácil de instalar y no tiene coste alguno. Sus funcionalidades son tantas que la mejor manera de evaluarlo es descargarlo y evaluarlo uno mismo.

Características:

Los modelos se almacenan en el sistema de ficheros, bajo una estructura de directorios (por lo que son fáciles de transportar, archivar, etc.)

Puede trabajar con cualquier base de datos, no está restringido a Oracle

Permite realizar ingeniería inversa

Dispone de los siguientes niveles de diseño: lógico, relacional y físico, con herramientas de generación automática en ambos sentidos.

Cada modelo puede tener diferentes implementaciones físicas (en diferentes tecnologías)

Permite definir dominios de tipos de datos

Compara diferencias entre modelos

Soporte para código almacenado, vistas materializadas, etc. (no sólo tablas y vistas)

Versionado de objetos

Herramienta de diseño visual y rica en herramientas (colores personalizables, deshacer, búsqueda de objetos, etc.)

EASYCASE,

Herramienta que permite automatizar las fases de análisis y diseño dentro del desarrollo de una aplicación, para poder crear las aplicaciones eficazmente, desde procesamiento de transacciones a la aplicación de bases de datos de cliente/servidor, así como sistemas de tiempo real.

Características

Permite generar esquemas de base de datos e ingeniería reversa

Permite capturar los detalles de diseño de un sistema y comunicar las ideas gráficamente, para que sean fáciles de ver y entender.

Para un diseño legítimo y modelado de datos, procesos y eventos, permite crear y mantener diagramas de flujo de datos, diagramas de entidad-relación, mapas de estructura y más.

Posee herramientas de corrección avanzadas que permiten revisiones generales.

Soporta una gama amplia de metodologías estructuradas, permitiendo escoger los métodos más apropiados para realizar las tareas.

Determina los tipos de esquemas según la metodología del proyecto seleccionada y notifica de errores a medida que el modelo vaya construyéndose.

Posee desde el editor de diagramas flexible y un diccionario de los datos, así como una extensa cantidad de reportes y análisis.

Permite compartir datos y trabajar en un proyecto con otros departamentos. El equipo completo puede acceder a proyectos localizados en el servidor de la red concurrentemente.

Para asegurar la seguridad de los datos, existe el diagrama y diccionario de los datos que bloquean por niveles al registro, al archivo y al proyecto, y niveles de control de acceso.