SlideShare una empresa de Scribd logo
SISTEMAS DE GESTIÓN DE BASE DE DATOS
SGBD / DBMS
SISTEMAS DE ARCHIVOS
Un sistema de archivos es un conjunto de programas que prestan servicio a los
usuarios finales, donde cada programa define y maneja sus propios datos.
Los sistemas de archivos surgen de la necesidad de reemplazar el manejo de los
archivos manuales para obtener acceso a los datos con mayor rapidez. Estos
sistemas de archivos presentaban un modelo descentralizado para el manejo de
sus datos, lo que representaba que cada núcleo de la organización donde se
manejaba el sistema de archivos almacenaba y gestionaba sus propios datos.
Los sistemas de archivos presentan algunos inconvenientes que se atribuyen a
que la definición de los datos se encuentra codificada dentro de los programas de
aplicación, y no siendo almacenada de forma independiente a las aplicaciones.
Además no hay control sobre el acceso y manipulación de los datos diferente al
que proporciona la aplicación diseñada para el sistema de archivos.
Debido a los inconvenientes que presentaban los sistemas de archivos surgieron
las Bases de Datos y los Sistemas de Gestión de Base de Datos.
BASE DE DATOS
Una base de datos es un conjunto de datos almacenados entre los que existen
relaciones lógicas y ha sido diseñada para satisfacer los requerimientos de
información de una organización, almacenando en ella su descripción.
En las bases de datos se almacenan grandes cantidades de datos, que son
definidos una sola vez y que pueden ser accesados por varios usuarios a la vez,
teniendo todos los datos integrados y creando una dependencia de datos a la
organización y no a los departamentos o núcleos de la misma, eliminando la
redundancia de datos y estableciendo una mínima duplicidad de los datos.
Cada dato de la base de datos almacena una descripción de los mismos que es
denominada metadatos, la cual se almacena en el diccionario de datos o catálogo
y es lo que permite que exista una independencia de los datos lógico-física.
Los sistemas de información separan la definición de la estructura de datos de los
programas de aplicación y almacenan esta definición en la base de datos, lo que
permite que al añadir o modificar estructura de datos, los programas de aplicación
no se ven afectados, ya que no dependen directamente de ello.
SISTEMA DE GESTIÓN DE BASE DE DATOS (SGBD)
DATA BASE MANAGMENT SYSTEM (DBMS)
Los sistemas de Gestión de Bases de Datos, son aplicaciones que permiten a los
usuarios definir, crear y mantener la base de datos y proporciona un acceso
controlado a la misma.
Los SGBD es la aplicación que interactúa con los usuarios de los programas de
aplicación y la base de datos.
Algunos de los SGBD más conocidos son: SQL, DB2, SLQ/DS, ORACLE,
INGRES, INFORMIX, SYBASE, PARADOX, DBASE, ACCESS, FOXPRO, R,
RM/T y RM/V2.
OBJETIVOS DE UN SGBD
o Definir la Base de Datos mediante el Lenguaje de Definición de Datos, el
cual permite especificar la estructura, tipo de datos y las restricciones sobre
los datos, almacenándolo todo en la base de datos.
o Separar la descripción y manipulación de la data, permitiendo un mayor
entendimiento de los objetos, además de flexibilidad de consulta y
actualización de los datos.
o Permitir la inserción, eliminación, actualización, consulta de los datos
mediante el Lenguaje de Manejo de Datos, lo que permite resolver el
problema que presentan los sistemas de archivos, donde hay que trabajar
con un conjunto fijo de consultas o la necesidad de tener muchos
programas de aplicaciones. Existen dos tipos de programas de Manejo de
Datos, los cuales se diferencian por la forma en que acceden a los datos.
• Lenguajes procedurales: manipulan la base de datos registro a registro y
se deben especificar las operaciones a realizar para obtener los datos
resultado.
• Lenguajes no procedurales: manipulan la base de datos en conjuntos de
registros y se especifican qué datos deben obtenerse como resultado sin
plantear las forma de hacerlo. El lenguaje no procedural más utilizado es
SQL (Structure Query Languaje) que se ha convertido en un estándar y el
lenguaje por defecto de los SGBD relacionales.
o Proporcionar acceso controlado a la base de datos.
• Seguridad: los usuarios no autorizados no pueden acceder a la base de
datos.
• Integridad: mantiene la integridad y consistencia de la base de datos.
• Control de Recurrencia: permite el acceso compartido a la base de datos.
• Control de Recuperación: restablece la base de datos después de
producirse un fallo de software o hardware.
• Diccionario de datos o Catálogo: contiene la descripción de los datos de la
base de datos y es accesible por el usuario.
o Gestionar la estructura física de los datos y su almacenamiento,
proporcionando eficiencia en las operaciones de la base de datos y el
acceso al medio de almacenamiento.
o Proporcionar un mecanismo de vistas, que permita a cada usuario tener su
propia vista o visión de la base de datos. El lenguaje de definición nos
permite definir las vistas como subconjuntos de la base de datos,
permitiendo:
• Proporcionar un nivel de seguridad excluyendo datos para que no sean
vistos por determinados usuarios.
• Permiten que los usuarios vean los datos en el formato deseado.
• Una vista representa una imagen consistente y permanente de la base de
datos, aún cuando a la base de datos se le hagan cambios en sus
estructura.
o Eliminar la redundancia de datos, establecer una mínima duplicidad en los
datos y minimizar el espacio en disco utilizado.
o Proveer interfaces procedimentales y no procedimentales, permitiendo la
manipulación por usuarios interactivos y programadores.
o Independizar la estructura de la organización lógica de los datos
(Independencia física).
o Independizar la descripción lógica de la Base de datos y las descripciones
particulares de los diferentes puntos de vistas de los usuarios.
o Permitir una fácil administración de los datos.
ACTORES EN EL ENTORNO DE UNA BASE DE DATOS
• Administrador de la base de datos: se encarga del diseño físico de la base de
datos y de su implementación, realiza el control de la seguridad y de la
concurrencia, mantiene el sistema para que siempre se encuentre operativo y se
encarga de que los usuarios y las aplicaciones obtengan buenas prestaciones. El
administrador debe conocer muy bien el SGBD que se esté utilizando, así como el
equipo informático sobre el que esté funcionando.
• Diseñadores de la base de datos: realizan el diseño lógico de la base de datos,
debiendo identificar los datos, las relaciones entre datos y las restricciones sobre
los datos y sus relaciones. El diseñador de la base de datos debe tener un
profundo conocimiento de los datos de la empresa y también debe conocer sus
reglas de negocio. Las reglas de negocio describen las características principales
de los datos tal y como las ve la empresa.
El diseñador de la base de datos debe implicar en el desarrollo del modelo de
datos a todos los usuarios de la base de datos, tan pronto como sea posible. El
diseño lógico de la base de datos es independiente del SGBD concreto que se
vaya a utilizar, es independiente de los programas de aplicación, de los lenguajes
de programación y de cualquier otra consideración física.
• Programadores de aplicaciones: se encargan de implementar los programas de
aplicación que servirán a los usuarios finales. Estos programas de aplicación son
los que permiten consultar datos, insertarlos, actualizarlos y eliminarlos. Estos
programas se escriben mediante lenguajes de tercera generación o de cuarta
generación.
• Usuarios finales: consultan, actualizan y generan reportes de la base de datos. A
los usuarios finales también se les llama clientes de la base de datos.
VENTAJAS DE LOS SGBD
INTEGRACIÓN DE LOS DATOS
• Control sobre la redundancia de datos: Los sistemas de archivos almacenan
varias copias de los mismos datos en archivos distintos. Esto hace que se
desperdicie espacio de almacenamiento, además de provocar la falta de
consistencia de datos. En los sistemas de bases de datos todos estos archivos
están integrados, por lo que no se almacenan varias copias de los mismos datos.
Sin embargo, en una base de datos no se puede eliminar la redundancia
completamente, ya que en ocasiones es necesaria para modelar las relaciones
entre los datos, o bien es necesaria para mejorar las prestaciones.
• Consistencia de datos: Eliminando o controlando las redundancias de datos se
reduce en gran medida el riesgo de que haya inconsistencias. Si un dato está
almacenado una sola vez, cualquier actualización se debe realizar sólo una vez, y
está disponible para todos los usuarios inmediatamente. Si un dato está duplicado
y el sistema conoce esta redundancia, el propio sistema puede encargarse de
garantizar que todas las copias se mantienen consistentes. Desgraciadamente, no
todos los SGBD de hoy en día se encargan de mantener automáticamente la
consistencia.
• Más información sobre la misma cantidad de datos: Al estar todos los datos
integrados, se puede extraer información adicional sobre los mismos.
• Compartición de datos: En los sistemas de archivos, los archivos pertenecen a
las personas o a los departamentos que los utilizan. Pero en los sistemas de
bases de datos, la base de datos pertenece a la empresa y puede ser compartida
por todos los usuarios que estén autorizados. Además, las nuevas aplicaciones
que se vayan creando pueden utilizar los datos de la base de datos existente.
• Mantenimiento de estándares: Gracias a la integración es más fácil respetar los
estándares necesarios, tanto los establecidos a nivel de la empresa como los
nacionales e internacionales. Estos estándares pueden establecerse sobre el
formato de los datos para facilitar su intercambio, pueden ser estándares de
documentación, procedimientos de actualización y también reglas de acceso.
EXISTENCIA DE LOS SGBD
• Mejora en la integridad de datos: La integridad de la base de datos se refiere a la
Validez y la consistencia de los datos almacenados. Normalmente, la integridad se
expresa mediante restricciones o reglas que no se pueden violar. Estas
restricciones se pueden aplicar tanto a los datos, como a sus relaciones, y es el
SGBD quien se debe encargar de mantenerlas.
• Mejora en la seguridad: Los SGBD permiten mantener la seguridad mediante el
establecimiento de claves para identificar al personal autorizado a utilizar la base
de datos. Las autorizaciones se pueden realizar a nivel de operaciones, de modo
que un usuario puede estar autorizado a consultar ciertos datos pero no a
actualizarlos, por ejemplo.
• Mejora en la accesibilidad a los datos: Muchos SGBD proporcionan lenguajes de
consultas o generadores de informes que permiten al usuario hacer cualquier tipo
de consulta sobre los datos, sin que sea necesario que un programador escriba
una aplicación que realice tal tarea.
• Mejora en la productividad: A nivel básico, el SGBD proporciona todas las rutinas
de manejo de archivos típicas de los programas de aplicación. El hecho de
disponer de estas funciones permite al programador centrarse mejor en la función
específica requerida por los usuarios, sin tener que preocuparse de los detalles de
implementación de bajo nivel.
• Mejora en el mantenimiento gracias a la independencia de datos: Los SGBD
separan las descripciones de los datos de las aplicaciones. Esto es lo que se
conoce como independencia de datos, gracias a la cual se simplifica el
mantenimiento de las aplicaciones que acceden a la base de datos.
• Aumento de la concurrencia: La mayoría de los SGBD gestionan el acceso
concurrente a la base de datos y garantizan que no ocurran problemas en el
acceso de múltiples usuarios.
• Mejora en los servicios de copias de seguridad y de recuperación ante fallos: Los
SGBD actuales funcionan de modo que se minimiza la cantidad de trabajo perdido
cuando se produce un fallo.
INCONVENIENTES DE LOS SGBD
• Complejidad: Los SGBD son conjuntos de programas muy complejos con una
gran funcionalidad. Es preciso comprender muy bien esta funcionalidad para poder
sacar un buen partido de ellos.
• Tamaño: Los SGBD son programas complejos y muy extensos que requieren
una gran cantidad de espacio en disco y de memoria para trabajar de forma
eficiente.
• Coste económico del SGBD: El coste de un SGBD varía dependiendo del
entorno y de la funcionalidad que ofrece. Además, hay que pagar una cuota anual
de mantenimiento que suele ser un porcentaje del precio del SGBD.
• Costo del equipamiento adicional: Tanto el SGBD, como la propia base de datos,
pueden hacer que sea necesario adquirir más espacio de almacenamiento.
Además, para alcanzar las prestaciones deseadas, es posible que sea necesario
adquirir una máquina con más prestaciones o una máquina que se dedique
solamente al SGBD.
• Costo de la conversión: En algunas ocasiones, el costo del SGBD y el costo del
equipo informático que sea necesario adquirir para su buen funcionamiento, es
insignificante comparado al coste de convertir la aplicación actual en un sistema
de bases de datos. Este coste incluye el coste de enseñar a la plantilla a utilizar
estos sistemas y, probablemente, el costo del personal especializado para ayudar
a realizar la conversión y poner en marcha el sistema.
• Prestaciones: Los SGBD están escritos para ser más generales y ser útiles en
muchas aplicaciones, lo que puede hacer que algunas de ellas no sean tan
rápidas como en los sistemas de archivos.
• Vulnerable a los fallos: El hecho de que todo esté centralizado en el SGBD hace
que el sistema sea más vulnerable ante los fallos que puedan producirse.
ARQUITECTURA DE TRES NIVELES
Hay tres características importantes inherentes para el enfoque de las bases de
datos; estas son :
a) separación entre los programas y los datos (independencia entre los programas
y datos ); b) el manejo de múltiples vistas de usuario y c) el empleo de un catálogo
para almacenar la descripción (esquema) de la base de datos.
La arquitectura de tres niveles es un método de gran aceptación para explicar el
funcionamiento de los sistemas de bases de datos fue formalizado en 1975 y
mejorado en 1978 es también conocido como arquitectura ANSI/SPARC asi
llamada por la Standards “Planning and Requirements Committee of the American
National Standards Institute” en español el Comite de Standarización de
Requerimientos y Planificación del Instituto Nacional de Standarización
Americano.
Los tres niveles de la arquitectura son: Interno, Conceptual y Externo.
1. El nivel interno: tiene un esquema interno, el cual describe la estructura de
almacenamiento físico de la Base de Datos. El esquema interno utiliza un modelo
físico de data y describe los detalles completos de almacenamiento de data y el
acceso a los caminos de la BD.
2. El nivel conceptual: tiene un esquema conceptual el cual describe la estructura
de todas las Bases de Datos para una comunidad de usuarios. El esquema
conceptual es una descripción global de la BD que oculta los detalles de las
estructuras de almacenamiento físico y se concentra en describir las entidades, los
tipos de data, las relaciones y constantes.
3. El nivel externo: o nivel de vista incluye un número de esquemas externos o
vistas de usuario. Cada esquema externo describe la vista de la BD de un grupo o
de los usuarios de la BD. Cada vista típicamente describe la parte de la BD en la
cual un grupo de usuarios en particular esta interesado y oculta el resto de la BD
para otros grupos de usuario.
En su mayoría, los DBMS no se distinguen del todo en tres niveles, pero en
algunos de ellos se cuenta, en cierta medida, con la arquitectura de tres
esquemas. Algunos DBMS incluyen ciertos detalles del nivel físico en el esquema
conceptual. En la mayoría de los DBMS que manejan vistas de usuarios, los
esquemas externos se especifican en el mismo modelo de datos que describe la
información a nivel conceptual.
Es importante resaltar que los únicos datos reales existen en el nivel físico todos
los demás niveles superiores solo contienen descripciones de los datos. En una
arquitectura de tres esquemas cada grupo de usuarios hace referencia
exclusivamente a su propio esquema externo, por tanto el DBMS debe de
transformar una solicitud expresada en un esquema externo a el esquema
conceptual, luego la solicitud ahora en esquema conceptual es llevada al esquema
interno, es después procesada sobre la base de datos, por ejemplo si fuese un
pedido de datos, será necesario modificar el formato de la información antes de
ser enviada al usuario externo. El proceso de transformaciones de solicitudes es
denominado correspondencia o transformación (maping). Esta es una de las
razones que hacen lentas a las bases de datos de hecho en bases de datos
pequeñas no vale la pena crear esquemas externos ya que mas afectan la
velocidad de lo que mejoran la vista externa.
MÓDULOS DE LOS DBMS
Los DBMS son software tremendamente complicados; a continuación se muestran
los componentes de software que constituyen un DBMS y los tipo de software del
sistema que interactúan con los DBMS.
• Es una representación de como funciona en general una bases de datos no
representa la estructura real de algún sistema de bases de datos.
• La BD y los catálogos del DBMS usualmente son almacenados en discos.
• El acceso a disco es controlado principalmente por el sistema operativo el
cual controla las I/O a los discos.
• Un módulo de administración de datos almacenados de alto nivel ( stored
data manager) del DBMS controla el acceso a la información del DBMS
almacenada en disco, sí este es parte de la BD o del catálogo.
• El compilador DDL (DDL compiler) procesa las definiciones de esquema
especificadas en el DDL y almacena la descripción de los esquemas en el
catálogo del DBMS; Este contiene información como los nombres de los
archivos y de los elementos de información, los detalles de almacenamiento
de cada archivo, la información de correspondencia entre los esquemas y
las restricciones. Los módulos que requieran esta información deberán
accesar el catálogo.
• El procesador en tiempo real (runtime processor) de la BD maneja el
acceso a la BD en tiempo real, este recibe las operaciones de obtención y
actualización y las lleva a la BD para su ejecución, el acceso se tiene
mediante el gestor de datos almacenados.
• El procesador de consultas (query prossesor) maneja las consultas de alto
nivel que son ingresadas interactivamente, donde el usuario espera los
resultados de la búsqueda en el momento. Analiza la sintaxis y el contenido
de la consulta, luego genera llamadas al procesador de tiempo real (
runtime processor) para ejecutar el requerimiento.
• El precompilador (precompiler) extrae los comandos del DML de un
programa de aplicación escrito en un lenguaje de programación host.
• Estos comandos son enviados al compilador DML para su compilación en
código objeto para el acceso de la BD. El resto del programa es enviado al
compilador del lenguaje host. Ambos códigos y objetos son enlazados en
un único código ejecutable.
Esta figura se utiliza para mostrar las partes mas representativas de los DBMS en
cuanto a módulos se refiere. Los DBMS interactúan con los sistemas operativos
cuando se accede a memoria (que es donde esta la base de dato y el catálogo). Si
muchos usuarios comparten el mismo sistema de cómputo, el OS programará las
solicitudes de acceso a disco del DBMS junto con otros procesos. El DBMS
también puede interactuar con los compiladores de los lenguajes de programación
host, y puede ofrecer interfaces amigables para ayudar al usuario cuando
especifiquen sus solicitudes.
DISEÑO DE UNA BASE DE DATOS
El diseño de una base de datos es un proceso complejo que abarca decisiones en
distintos niveles. La complejidad se controla mejor si se descompone el problema
en subproblemas y se resuelve cada uno de éstos de manera
independientemente, utilizando técnicas específicas. Así, el diseño de una base de
datos se descompone en diseño conceptual, diseño lógico y diseño físico.
DISEÑO CONCEPTUAL
El diseño conceptual se refiere a la etapa donde se debe construir un esquema de
la información a partir de los requerimientos y resultados de usuario,
independientemente de cualquier consideración física, como aspectos de
implementación, DBMS a utilizar, hardware disponible, entre otras. Al construir el
esquema, los diseñadores descubren la semántica de los datos, encontrando
entidades, atributos y relaciones. El objetivo es comprender:
• La perspectiva que cada usuario tiene de los datos.
• La naturaleza de los datos, independientemente de su representación física.
• El uso de los datos a través de las áreas de aplicación.
El esquema conceptual se puede utilizar para que el diseñador transmita lo que ha
entendido sobre los requerimientos de usuario, de manera particular, la
información que maneja y los resultados sobre la manipulación de ésta de una
empresa. Para ello, ambas partes deben estar familiarizadas con la notación
utilizada en el esquema. La notación más popular es el modelo entidad-relación.
El esquema conceptual es una fuente de información para el diseño lógico de la
base de datos.
DISEÑO LÓGICO
El diseño lógico es el proceso de construir un esquema de la información,
basándose en un modelo de base de datos específico independiente del DBMS y
de cualquier otra consideración física. En otras palabras, se transforma el
esquema conceptual en un esquema lógico que utilizará las estructuras de datos
del modelo de base de datos en el que se basa el DBMS a utilizar, como puede
ser el modelo relacional, el modelo de red, el modelo jerárquico o el modelo
orientado a objetos. Conforme se va desarrollando el esquema lógico, éste se va
probando y validando con los requisitos de usuario.
La normalización es una técnica que se utiliza para comprobar la validez de los
esquemas lógicos basados en el modelo relacional, ya que asegura que las
relaciones (tablas) obtenidas no tienen datos redundantes.
Tanto el diseño conceptual como el diseño lógico son procesos iterativos, tienen
un punto de inicio y se van refinando continuamente. Ambos se deben ver como
un proceso de aprendizaje, donde el diseñador va comprendiendo el
funcionamiento de una empresa y el significado de los datos que maneja. Estos
diseños son etapas clave para conseguir un sistema que funcione correctamente,
en caso contrario, será difícil o imposible definir todas las vistas de usuario
(esquemas externos) y mantener la integridad de la base de datos.
También puede ser difícil definir la implementación física o el mantener unas
prestaciones aceptables del sistema. Además, hay que tener en cuenta que la
capacidad de ajustarse a futuros cambios es un factor que identifica a los buenos
diseños de bases de datos. Por todo esto, es fundamental dedicar el tiempo y las
energías necesarias para producir el mejor esquema que sea posible.
El esquema lógico es una fuente de información para el diseño físico. Además,
juega un papel importante durante la etapa de mantenimiento del sistema, ya que
permite que los futuros cambios que se realicen sobre los programas de aplicación
o sobre los datos, se representen correctamente en la base de datos.
DISEÑO FÍSICO
El diseño físico es el proceso de producir la descripción de la implementación de la
base de datos en memoria secundaria, donde las estructuras de almacenamiento
y los métodos de acceso garanticen un acceso eficiente a los datos.
En esta etapa se debe haber decidido cuál es el DBMS a utilizar, ya que el
esquema físico se adapta a él. Entre el diseño físico y el diseño lógico hay una
realimentación ya que algunas de las decisiones que se tomen durante el diseño
físico para mejorar las prestaciones pueden afectar a la estructura del esquema
lógico.
En general, el propósito del diseño físico es describir cómo se va a implementar
físicamente el esquema lógico obtenido en la fase anterior. Por ejemplo, en el
modelo relacional, esto consiste en:
• Obtener un conjunto de relaciones (tablas) y las restricciones que se deben
cumplir sobre ellas.
• Determinar las estructuras de almacenamiento y los métodos de acceso que se
van a utilizar para conseguir unas prestaciones óptimas.
• Diseñar el modelo de seguridad del sistema.

Más contenido relacionado

La actualidad más candente

Actividad base de datos 1
Actividad base de datos 1Actividad base de datos 1
Actividad base de datos 1
Santiago Felipe Perez
 
Monografía tipos-de-bdd-y-sgbd-10%
Monografía tipos-de-bdd-y-sgbd-10%Monografía tipos-de-bdd-y-sgbd-10%
Monografía tipos-de-bdd-y-sgbd-10%
Jose Martinez
 
Gestores de base de datos
Gestores de base de datosGestores de base de datos
Gestores de base de datos
Edwin Johan Alvarez
 
Qué son las bases de datos
Qué son las bases de datosQué son las bases de datos
Qué son las bases de datos
Raul Hernandez
 
Sistema de Gestión de Base de Datos
Sistema de Gestión de Base de DatosSistema de Gestión de Base de Datos
Sistema de Gestión de Base de Datos
Miguel Leonardo Sánchez Fajardo
 
Base de datos
Base de datosBase de datos
Base de datos
Arturo Aguilar
 
Bases de datos
Bases de datosBases de datos
Bases de datos
Jeiison Kzztiillo
 
Base de datos
Base de datos Base de datos
Base de datos
lourdess2014
 
Presentacion de fundamentos de bd
Presentacion de fundamentos de bdPresentacion de fundamentos de bd
Presentacion de fundamentos de bd
Mora Marquez Luis Omar
 
Base de datos
Base de datosBase de datos
Base de datos
andres espitia
 
Base de datos-word
Base de datos-wordBase de datos-word
Base de datos-word
Taqui Wajuyat Flor
 
Base de datos
Base de datosBase de datos
Base de datos
Natalia Blanco
 
Introduccion a los SGBD
Introduccion a los SGBDIntroduccion a los SGBD
Introduccion a los SGBD
ANYER
 
Presentacion Bases de datos
Presentacion Bases de datosPresentacion Bases de datos
Presentacion Bases de datos
Misael Valderrama
 
tarea base de datos
tarea base de datostarea base de datos
tarea base de datos
AREQUIPE!
 
ALEJANDRA GUERRERO Y YULEIDY HERNANDEZ
ALEJANDRA GUERRERO Y YULEIDY HERNANDEZALEJANDRA GUERRERO Y YULEIDY HERNANDEZ
ALEJANDRA GUERRERO Y YULEIDY HERNANDEZ
AREQUIPE!
 
Karen Angarita Y Maria Paula Niño!
Karen Angarita Y Maria Paula Niño!Karen Angarita Y Maria Paula Niño!
Karen Angarita Y Maria Paula Niño!
AREQUIPE!
 
Doc111
Doc111Doc111
Doc111
AREQUIPE!
 

La actualidad más candente (18)

Actividad base de datos 1
Actividad base de datos 1Actividad base de datos 1
Actividad base de datos 1
 
Monografía tipos-de-bdd-y-sgbd-10%
Monografía tipos-de-bdd-y-sgbd-10%Monografía tipos-de-bdd-y-sgbd-10%
Monografía tipos-de-bdd-y-sgbd-10%
 
Gestores de base de datos
Gestores de base de datosGestores de base de datos
Gestores de base de datos
 
Qué son las bases de datos
Qué son las bases de datosQué son las bases de datos
Qué son las bases de datos
 
Sistema de Gestión de Base de Datos
Sistema de Gestión de Base de DatosSistema de Gestión de Base de Datos
Sistema de Gestión de Base de Datos
 
Base de datos
Base de datosBase de datos
Base de datos
 
Bases de datos
Bases de datosBases de datos
Bases de datos
 
Base de datos
Base de datos Base de datos
Base de datos
 
Presentacion de fundamentos de bd
Presentacion de fundamentos de bdPresentacion de fundamentos de bd
Presentacion de fundamentos de bd
 
Base de datos
Base de datosBase de datos
Base de datos
 
Base de datos-word
Base de datos-wordBase de datos-word
Base de datos-word
 
Base de datos
Base de datosBase de datos
Base de datos
 
Introduccion a los SGBD
Introduccion a los SGBDIntroduccion a los SGBD
Introduccion a los SGBD
 
Presentacion Bases de datos
Presentacion Bases de datosPresentacion Bases de datos
Presentacion Bases de datos
 
tarea base de datos
tarea base de datostarea base de datos
tarea base de datos
 
ALEJANDRA GUERRERO Y YULEIDY HERNANDEZ
ALEJANDRA GUERRERO Y YULEIDY HERNANDEZALEJANDRA GUERRERO Y YULEIDY HERNANDEZ
ALEJANDRA GUERRERO Y YULEIDY HERNANDEZ
 
Karen Angarita Y Maria Paula Niño!
Karen Angarita Y Maria Paula Niño!Karen Angarita Y Maria Paula Niño!
Karen Angarita Y Maria Paula Niño!
 
Doc111
Doc111Doc111
Doc111
 

Similar a Sgbs

Base de datos
Base de datosBase de datos
Base de datos
Arturo Aguilar
 
Bases de datos
Bases de datosBases de datos
Bases de datos
kevin5216
 
BASES DE DATOS.pptx
BASES DE DATOS.pptxBASES DE DATOS.pptx
BASES DE DATOS.pptx
Ezequiel Segura Muñoz
 
Bases de datos_clase_1
Bases de datos_clase_1Bases de datos_clase_1
Bases de datos_clase_1
fabioalopezs
 
Base de datos
Base de datosBase de datos
Base de datos
rayfelinojosa
 
Qué son las bases de datos
Qué son las bases de datosQué son las bases de datos
Qué son las bases de datos
gerardd98
 
Expo base de datos
Expo base de datosExpo base de datos
Expo base de datos
Alfredo Joya
 
Base de datos_jehisglay_oliveros
Base de datos_jehisglay_oliverosBase de datos_jehisglay_oliveros
Base de datos_jehisglay_oliveros
JehisglayOliveros
 
Sistemas manejadores de base de datos
Sistemas manejadores de base de datosSistemas manejadores de base de datos
Sistemas manejadores de base de datos
Luis Vázquez
 
adm. base de datos intro.pdf
adm. base de datos intro.pdfadm. base de datos intro.pdf
adm. base de datos intro.pdf
IbettJaquelineYataco1
 
Bases de datos
Bases de datosBases de datos
Bases de datos
Orlando Robledo
 
Doris aguagallo bdii_tarea1 (2)
Doris  aguagallo bdii_tarea1 (2)Doris  aguagallo bdii_tarea1 (2)
Doris aguagallo bdii_tarea1 (2)
Doris Aguagallo
 
Guia 3 base de datos
Guia 3 base de datosGuia 3 base de datos
Guia 3 base de datos
katherine rincon
 
Informática i1 base de datos
Informática i1 base de datosInformática i1 base de datos
Informática i1 base de datos
Maria dolores García Ponce
 
Bases de datos
Bases de datosBases de datos
Base de datos en la web
Base de datos en la webBase de datos en la web
Base de datos en la web
gladys balza
 
Yulieth Ardila
Yulieth ArdilaYulieth Ardila
Yulieth Ardila
AREQUIPE!
 
Presentacion 1
Presentacion 1Presentacion 1
Presentacion 1
Orianny Pereira
 
Laura Garcia y Camila Hernandez
Laura Garcia y Camila HernandezLaura Garcia y Camila Hernandez
Laura Garcia y Camila Hernandez
AREQUIPE!
 
Bd
BdBd

Similar a Sgbs (20)

Base de datos
Base de datosBase de datos
Base de datos
 
Bases de datos
Bases de datosBases de datos
Bases de datos
 
BASES DE DATOS.pptx
BASES DE DATOS.pptxBASES DE DATOS.pptx
BASES DE DATOS.pptx
 
Bases de datos_clase_1
Bases de datos_clase_1Bases de datos_clase_1
Bases de datos_clase_1
 
Base de datos
Base de datosBase de datos
Base de datos
 
Qué son las bases de datos
Qué son las bases de datosQué son las bases de datos
Qué son las bases de datos
 
Expo base de datos
Expo base de datosExpo base de datos
Expo base de datos
 
Base de datos_jehisglay_oliveros
Base de datos_jehisglay_oliverosBase de datos_jehisglay_oliveros
Base de datos_jehisglay_oliveros
 
Sistemas manejadores de base de datos
Sistemas manejadores de base de datosSistemas manejadores de base de datos
Sistemas manejadores de base de datos
 
adm. base de datos intro.pdf
adm. base de datos intro.pdfadm. base de datos intro.pdf
adm. base de datos intro.pdf
 
Bases de datos
Bases de datosBases de datos
Bases de datos
 
Doris aguagallo bdii_tarea1 (2)
Doris  aguagallo bdii_tarea1 (2)Doris  aguagallo bdii_tarea1 (2)
Doris aguagallo bdii_tarea1 (2)
 
Guia 3 base de datos
Guia 3 base de datosGuia 3 base de datos
Guia 3 base de datos
 
Informática i1 base de datos
Informática i1 base de datosInformática i1 base de datos
Informática i1 base de datos
 
Bases de datos
Bases de datosBases de datos
Bases de datos
 
Base de datos en la web
Base de datos en la webBase de datos en la web
Base de datos en la web
 
Yulieth Ardila
Yulieth ArdilaYulieth Ardila
Yulieth Ardila
 
Presentacion 1
Presentacion 1Presentacion 1
Presentacion 1
 
Laura Garcia y Camila Hernandez
Laura Garcia y Camila HernandezLaura Garcia y Camila Hernandez
Laura Garcia y Camila Hernandez
 
Bd
BdBd
Bd
 

Sgbs

  • 1. SISTEMAS DE GESTIÓN DE BASE DE DATOS SGBD / DBMS SISTEMAS DE ARCHIVOS Un sistema de archivos es un conjunto de programas que prestan servicio a los usuarios finales, donde cada programa define y maneja sus propios datos. Los sistemas de archivos surgen de la necesidad de reemplazar el manejo de los archivos manuales para obtener acceso a los datos con mayor rapidez. Estos sistemas de archivos presentaban un modelo descentralizado para el manejo de sus datos, lo que representaba que cada núcleo de la organización donde se manejaba el sistema de archivos almacenaba y gestionaba sus propios datos. Los sistemas de archivos presentan algunos inconvenientes que se atribuyen a que la definición de los datos se encuentra codificada dentro de los programas de aplicación, y no siendo almacenada de forma independiente a las aplicaciones. Además no hay control sobre el acceso y manipulación de los datos diferente al que proporciona la aplicación diseñada para el sistema de archivos. Debido a los inconvenientes que presentaban los sistemas de archivos surgieron las Bases de Datos y los Sistemas de Gestión de Base de Datos. BASE DE DATOS Una base de datos es un conjunto de datos almacenados entre los que existen relaciones lógicas y ha sido diseñada para satisfacer los requerimientos de información de una organización, almacenando en ella su descripción. En las bases de datos se almacenan grandes cantidades de datos, que son definidos una sola vez y que pueden ser accesados por varios usuarios a la vez, teniendo todos los datos integrados y creando una dependencia de datos a la organización y no a los departamentos o núcleos de la misma, eliminando la redundancia de datos y estableciendo una mínima duplicidad de los datos. Cada dato de la base de datos almacena una descripción de los mismos que es denominada metadatos, la cual se almacena en el diccionario de datos o catálogo y es lo que permite que exista una independencia de los datos lógico-física. Los sistemas de información separan la definición de la estructura de datos de los programas de aplicación y almacenan esta definición en la base de datos, lo que permite que al añadir o modificar estructura de datos, los programas de aplicación no se ven afectados, ya que no dependen directamente de ello. SISTEMA DE GESTIÓN DE BASE DE DATOS (SGBD) DATA BASE MANAGMENT SYSTEM (DBMS) Los sistemas de Gestión de Bases de Datos, son aplicaciones que permiten a los usuarios definir, crear y mantener la base de datos y proporciona un acceso controlado a la misma. Los SGBD es la aplicación que interactúa con los usuarios de los programas de aplicación y la base de datos.
  • 2. Algunos de los SGBD más conocidos son: SQL, DB2, SLQ/DS, ORACLE, INGRES, INFORMIX, SYBASE, PARADOX, DBASE, ACCESS, FOXPRO, R, RM/T y RM/V2. OBJETIVOS DE UN SGBD o Definir la Base de Datos mediante el Lenguaje de Definición de Datos, el cual permite especificar la estructura, tipo de datos y las restricciones sobre los datos, almacenándolo todo en la base de datos. o Separar la descripción y manipulación de la data, permitiendo un mayor entendimiento de los objetos, además de flexibilidad de consulta y actualización de los datos. o Permitir la inserción, eliminación, actualización, consulta de los datos mediante el Lenguaje de Manejo de Datos, lo que permite resolver el problema que presentan los sistemas de archivos, donde hay que trabajar con un conjunto fijo de consultas o la necesidad de tener muchos programas de aplicaciones. Existen dos tipos de programas de Manejo de Datos, los cuales se diferencian por la forma en que acceden a los datos. • Lenguajes procedurales: manipulan la base de datos registro a registro y se deben especificar las operaciones a realizar para obtener los datos resultado. • Lenguajes no procedurales: manipulan la base de datos en conjuntos de registros y se especifican qué datos deben obtenerse como resultado sin plantear las forma de hacerlo. El lenguaje no procedural más utilizado es SQL (Structure Query Languaje) que se ha convertido en un estándar y el lenguaje por defecto de los SGBD relacionales. o Proporcionar acceso controlado a la base de datos. • Seguridad: los usuarios no autorizados no pueden acceder a la base de datos. • Integridad: mantiene la integridad y consistencia de la base de datos. • Control de Recurrencia: permite el acceso compartido a la base de datos. • Control de Recuperación: restablece la base de datos después de producirse un fallo de software o hardware. • Diccionario de datos o Catálogo: contiene la descripción de los datos de la base de datos y es accesible por el usuario. o Gestionar la estructura física de los datos y su almacenamiento, proporcionando eficiencia en las operaciones de la base de datos y el acceso al medio de almacenamiento. o Proporcionar un mecanismo de vistas, que permita a cada usuario tener su propia vista o visión de la base de datos. El lenguaje de definición nos permite definir las vistas como subconjuntos de la base de datos, permitiendo: • Proporcionar un nivel de seguridad excluyendo datos para que no sean vistos por determinados usuarios. • Permiten que los usuarios vean los datos en el formato deseado.
  • 3. • Una vista representa una imagen consistente y permanente de la base de datos, aún cuando a la base de datos se le hagan cambios en sus estructura. o Eliminar la redundancia de datos, establecer una mínima duplicidad en los datos y minimizar el espacio en disco utilizado. o Proveer interfaces procedimentales y no procedimentales, permitiendo la manipulación por usuarios interactivos y programadores. o Independizar la estructura de la organización lógica de los datos (Independencia física). o Independizar la descripción lógica de la Base de datos y las descripciones particulares de los diferentes puntos de vistas de los usuarios. o Permitir una fácil administración de los datos. ACTORES EN EL ENTORNO DE UNA BASE DE DATOS • Administrador de la base de datos: se encarga del diseño físico de la base de datos y de su implementación, realiza el control de la seguridad y de la concurrencia, mantiene el sistema para que siempre se encuentre operativo y se encarga de que los usuarios y las aplicaciones obtengan buenas prestaciones. El administrador debe conocer muy bien el SGBD que se esté utilizando, así como el equipo informático sobre el que esté funcionando. • Diseñadores de la base de datos: realizan el diseño lógico de la base de datos, debiendo identificar los datos, las relaciones entre datos y las restricciones sobre los datos y sus relaciones. El diseñador de la base de datos debe tener un profundo conocimiento de los datos de la empresa y también debe conocer sus reglas de negocio. Las reglas de negocio describen las características principales de los datos tal y como las ve la empresa. El diseñador de la base de datos debe implicar en el desarrollo del modelo de datos a todos los usuarios de la base de datos, tan pronto como sea posible. El diseño lógico de la base de datos es independiente del SGBD concreto que se vaya a utilizar, es independiente de los programas de aplicación, de los lenguajes de programación y de cualquier otra consideración física. • Programadores de aplicaciones: se encargan de implementar los programas de aplicación que servirán a los usuarios finales. Estos programas de aplicación son los que permiten consultar datos, insertarlos, actualizarlos y eliminarlos. Estos programas se escriben mediante lenguajes de tercera generación o de cuarta generación. • Usuarios finales: consultan, actualizan y generan reportes de la base de datos. A los usuarios finales también se les llama clientes de la base de datos. VENTAJAS DE LOS SGBD INTEGRACIÓN DE LOS DATOS • Control sobre la redundancia de datos: Los sistemas de archivos almacenan varias copias de los mismos datos en archivos distintos. Esto hace que se
  • 4. desperdicie espacio de almacenamiento, además de provocar la falta de consistencia de datos. En los sistemas de bases de datos todos estos archivos están integrados, por lo que no se almacenan varias copias de los mismos datos. Sin embargo, en una base de datos no se puede eliminar la redundancia completamente, ya que en ocasiones es necesaria para modelar las relaciones entre los datos, o bien es necesaria para mejorar las prestaciones. • Consistencia de datos: Eliminando o controlando las redundancias de datos se reduce en gran medida el riesgo de que haya inconsistencias. Si un dato está almacenado una sola vez, cualquier actualización se debe realizar sólo una vez, y está disponible para todos los usuarios inmediatamente. Si un dato está duplicado y el sistema conoce esta redundancia, el propio sistema puede encargarse de garantizar que todas las copias se mantienen consistentes. Desgraciadamente, no todos los SGBD de hoy en día se encargan de mantener automáticamente la consistencia. • Más información sobre la misma cantidad de datos: Al estar todos los datos integrados, se puede extraer información adicional sobre los mismos. • Compartición de datos: En los sistemas de archivos, los archivos pertenecen a las personas o a los departamentos que los utilizan. Pero en los sistemas de bases de datos, la base de datos pertenece a la empresa y puede ser compartida por todos los usuarios que estén autorizados. Además, las nuevas aplicaciones que se vayan creando pueden utilizar los datos de la base de datos existente. • Mantenimiento de estándares: Gracias a la integración es más fácil respetar los estándares necesarios, tanto los establecidos a nivel de la empresa como los nacionales e internacionales. Estos estándares pueden establecerse sobre el formato de los datos para facilitar su intercambio, pueden ser estándares de documentación, procedimientos de actualización y también reglas de acceso. EXISTENCIA DE LOS SGBD • Mejora en la integridad de datos: La integridad de la base de datos se refiere a la Validez y la consistencia de los datos almacenados. Normalmente, la integridad se expresa mediante restricciones o reglas que no se pueden violar. Estas restricciones se pueden aplicar tanto a los datos, como a sus relaciones, y es el SGBD quien se debe encargar de mantenerlas. • Mejora en la seguridad: Los SGBD permiten mantener la seguridad mediante el establecimiento de claves para identificar al personal autorizado a utilizar la base de datos. Las autorizaciones se pueden realizar a nivel de operaciones, de modo que un usuario puede estar autorizado a consultar ciertos datos pero no a actualizarlos, por ejemplo. • Mejora en la accesibilidad a los datos: Muchos SGBD proporcionan lenguajes de
  • 5. consultas o generadores de informes que permiten al usuario hacer cualquier tipo de consulta sobre los datos, sin que sea necesario que un programador escriba una aplicación que realice tal tarea. • Mejora en la productividad: A nivel básico, el SGBD proporciona todas las rutinas de manejo de archivos típicas de los programas de aplicación. El hecho de disponer de estas funciones permite al programador centrarse mejor en la función específica requerida por los usuarios, sin tener que preocuparse de los detalles de implementación de bajo nivel. • Mejora en el mantenimiento gracias a la independencia de datos: Los SGBD separan las descripciones de los datos de las aplicaciones. Esto es lo que se conoce como independencia de datos, gracias a la cual se simplifica el mantenimiento de las aplicaciones que acceden a la base de datos. • Aumento de la concurrencia: La mayoría de los SGBD gestionan el acceso concurrente a la base de datos y garantizan que no ocurran problemas en el acceso de múltiples usuarios. • Mejora en los servicios de copias de seguridad y de recuperación ante fallos: Los SGBD actuales funcionan de modo que se minimiza la cantidad de trabajo perdido cuando se produce un fallo. INCONVENIENTES DE LOS SGBD • Complejidad: Los SGBD son conjuntos de programas muy complejos con una gran funcionalidad. Es preciso comprender muy bien esta funcionalidad para poder sacar un buen partido de ellos. • Tamaño: Los SGBD son programas complejos y muy extensos que requieren una gran cantidad de espacio en disco y de memoria para trabajar de forma eficiente. • Coste económico del SGBD: El coste de un SGBD varía dependiendo del entorno y de la funcionalidad que ofrece. Además, hay que pagar una cuota anual de mantenimiento que suele ser un porcentaje del precio del SGBD. • Costo del equipamiento adicional: Tanto el SGBD, como la propia base de datos, pueden hacer que sea necesario adquirir más espacio de almacenamiento. Además, para alcanzar las prestaciones deseadas, es posible que sea necesario adquirir una máquina con más prestaciones o una máquina que se dedique solamente al SGBD. • Costo de la conversión: En algunas ocasiones, el costo del SGBD y el costo del equipo informático que sea necesario adquirir para su buen funcionamiento, es insignificante comparado al coste de convertir la aplicación actual en un sistema de bases de datos. Este coste incluye el coste de enseñar a la plantilla a utilizar estos sistemas y, probablemente, el costo del personal especializado para ayudar a realizar la conversión y poner en marcha el sistema.
  • 6. • Prestaciones: Los SGBD están escritos para ser más generales y ser útiles en muchas aplicaciones, lo que puede hacer que algunas de ellas no sean tan rápidas como en los sistemas de archivos. • Vulnerable a los fallos: El hecho de que todo esté centralizado en el SGBD hace que el sistema sea más vulnerable ante los fallos que puedan producirse. ARQUITECTURA DE TRES NIVELES Hay tres características importantes inherentes para el enfoque de las bases de datos; estas son : a) separación entre los programas y los datos (independencia entre los programas y datos ); b) el manejo de múltiples vistas de usuario y c) el empleo de un catálogo para almacenar la descripción (esquema) de la base de datos. La arquitectura de tres niveles es un método de gran aceptación para explicar el funcionamiento de los sistemas de bases de datos fue formalizado en 1975 y mejorado en 1978 es también conocido como arquitectura ANSI/SPARC asi llamada por la Standards “Planning and Requirements Committee of the American National Standards Institute” en español el Comite de Standarización de Requerimientos y Planificación del Instituto Nacional de Standarización Americano. Los tres niveles de la arquitectura son: Interno, Conceptual y Externo. 1. El nivel interno: tiene un esquema interno, el cual describe la estructura de almacenamiento físico de la Base de Datos. El esquema interno utiliza un modelo físico de data y describe los detalles completos de almacenamiento de data y el acceso a los caminos de la BD. 2. El nivel conceptual: tiene un esquema conceptual el cual describe la estructura de todas las Bases de Datos para una comunidad de usuarios. El esquema conceptual es una descripción global de la BD que oculta los detalles de las estructuras de almacenamiento físico y se concentra en describir las entidades, los tipos de data, las relaciones y constantes. 3. El nivel externo: o nivel de vista incluye un número de esquemas externos o vistas de usuario. Cada esquema externo describe la vista de la BD de un grupo o de los usuarios de la BD. Cada vista típicamente describe la parte de la BD en la cual un grupo de usuarios en particular esta interesado y oculta el resto de la BD para otros grupos de usuario.
  • 7. En su mayoría, los DBMS no se distinguen del todo en tres niveles, pero en algunos de ellos se cuenta, en cierta medida, con la arquitectura de tres esquemas. Algunos DBMS incluyen ciertos detalles del nivel físico en el esquema conceptual. En la mayoría de los DBMS que manejan vistas de usuarios, los esquemas externos se especifican en el mismo modelo de datos que describe la información a nivel conceptual. Es importante resaltar que los únicos datos reales existen en el nivel físico todos los demás niveles superiores solo contienen descripciones de los datos. En una arquitectura de tres esquemas cada grupo de usuarios hace referencia exclusivamente a su propio esquema externo, por tanto el DBMS debe de transformar una solicitud expresada en un esquema externo a el esquema conceptual, luego la solicitud ahora en esquema conceptual es llevada al esquema interno, es después procesada sobre la base de datos, por ejemplo si fuese un pedido de datos, será necesario modificar el formato de la información antes de ser enviada al usuario externo. El proceso de transformaciones de solicitudes es denominado correspondencia o transformación (maping). Esta es una de las razones que hacen lentas a las bases de datos de hecho en bases de datos
  • 8. pequeñas no vale la pena crear esquemas externos ya que mas afectan la velocidad de lo que mejoran la vista externa. MÓDULOS DE LOS DBMS Los DBMS son software tremendamente complicados; a continuación se muestran los componentes de software que constituyen un DBMS y los tipo de software del sistema que interactúan con los DBMS. • Es una representación de como funciona en general una bases de datos no representa la estructura real de algún sistema de bases de datos. • La BD y los catálogos del DBMS usualmente son almacenados en discos. • El acceso a disco es controlado principalmente por el sistema operativo el cual controla las I/O a los discos. • Un módulo de administración de datos almacenados de alto nivel ( stored data manager) del DBMS controla el acceso a la información del DBMS almacenada en disco, sí este es parte de la BD o del catálogo. • El compilador DDL (DDL compiler) procesa las definiciones de esquema especificadas en el DDL y almacena la descripción de los esquemas en el catálogo del DBMS; Este contiene información como los nombres de los archivos y de los elementos de información, los detalles de almacenamiento de cada archivo, la información de correspondencia entre los esquemas y las restricciones. Los módulos que requieran esta información deberán accesar el catálogo. • El procesador en tiempo real (runtime processor) de la BD maneja el acceso a la BD en tiempo real, este recibe las operaciones de obtención y actualización y las lleva a la BD para su ejecución, el acceso se tiene mediante el gestor de datos almacenados. • El procesador de consultas (query prossesor) maneja las consultas de alto nivel que son ingresadas interactivamente, donde el usuario espera los resultados de la búsqueda en el momento. Analiza la sintaxis y el contenido de la consulta, luego genera llamadas al procesador de tiempo real ( runtime processor) para ejecutar el requerimiento. • El precompilador (precompiler) extrae los comandos del DML de un programa de aplicación escrito en un lenguaje de programación host. • Estos comandos son enviados al compilador DML para su compilación en código objeto para el acceso de la BD. El resto del programa es enviado al compilador del lenguaje host. Ambos códigos y objetos son enlazados en un único código ejecutable.
  • 9. Esta figura se utiliza para mostrar las partes mas representativas de los DBMS en cuanto a módulos se refiere. Los DBMS interactúan con los sistemas operativos cuando se accede a memoria (que es donde esta la base de dato y el catálogo). Si muchos usuarios comparten el mismo sistema de cómputo, el OS programará las solicitudes de acceso a disco del DBMS junto con otros procesos. El DBMS también puede interactuar con los compiladores de los lenguajes de programación host, y puede ofrecer interfaces amigables para ayudar al usuario cuando especifiquen sus solicitudes. DISEÑO DE UNA BASE DE DATOS El diseño de una base de datos es un proceso complejo que abarca decisiones en distintos niveles. La complejidad se controla mejor si se descompone el problema en subproblemas y se resuelve cada uno de éstos de manera independientemente, utilizando técnicas específicas. Así, el diseño de una base de datos se descompone en diseño conceptual, diseño lógico y diseño físico.
  • 10. DISEÑO CONCEPTUAL El diseño conceptual se refiere a la etapa donde se debe construir un esquema de la información a partir de los requerimientos y resultados de usuario, independientemente de cualquier consideración física, como aspectos de implementación, DBMS a utilizar, hardware disponible, entre otras. Al construir el esquema, los diseñadores descubren la semántica de los datos, encontrando entidades, atributos y relaciones. El objetivo es comprender: • La perspectiva que cada usuario tiene de los datos. • La naturaleza de los datos, independientemente de su representación física. • El uso de los datos a través de las áreas de aplicación. El esquema conceptual se puede utilizar para que el diseñador transmita lo que ha entendido sobre los requerimientos de usuario, de manera particular, la información que maneja y los resultados sobre la manipulación de ésta de una empresa. Para ello, ambas partes deben estar familiarizadas con la notación utilizada en el esquema. La notación más popular es el modelo entidad-relación. El esquema conceptual es una fuente de información para el diseño lógico de la base de datos. DISEÑO LÓGICO El diseño lógico es el proceso de construir un esquema de la información, basándose en un modelo de base de datos específico independiente del DBMS y de cualquier otra consideración física. En otras palabras, se transforma el esquema conceptual en un esquema lógico que utilizará las estructuras de datos del modelo de base de datos en el que se basa el DBMS a utilizar, como puede ser el modelo relacional, el modelo de red, el modelo jerárquico o el modelo orientado a objetos. Conforme se va desarrollando el esquema lógico, éste se va probando y validando con los requisitos de usuario.
  • 11. La normalización es una técnica que se utiliza para comprobar la validez de los esquemas lógicos basados en el modelo relacional, ya que asegura que las relaciones (tablas) obtenidas no tienen datos redundantes. Tanto el diseño conceptual como el diseño lógico son procesos iterativos, tienen un punto de inicio y se van refinando continuamente. Ambos se deben ver como un proceso de aprendizaje, donde el diseñador va comprendiendo el funcionamiento de una empresa y el significado de los datos que maneja. Estos diseños son etapas clave para conseguir un sistema que funcione correctamente, en caso contrario, será difícil o imposible definir todas las vistas de usuario (esquemas externos) y mantener la integridad de la base de datos. También puede ser difícil definir la implementación física o el mantener unas prestaciones aceptables del sistema. Además, hay que tener en cuenta que la capacidad de ajustarse a futuros cambios es un factor que identifica a los buenos diseños de bases de datos. Por todo esto, es fundamental dedicar el tiempo y las energías necesarias para producir el mejor esquema que sea posible. El esquema lógico es una fuente de información para el diseño físico. Además, juega un papel importante durante la etapa de mantenimiento del sistema, ya que permite que los futuros cambios que se realicen sobre los programas de aplicación o sobre los datos, se representen correctamente en la base de datos. DISEÑO FÍSICO El diseño físico es el proceso de producir la descripción de la implementación de la base de datos en memoria secundaria, donde las estructuras de almacenamiento y los métodos de acceso garanticen un acceso eficiente a los datos. En esta etapa se debe haber decidido cuál es el DBMS a utilizar, ya que el esquema físico se adapta a él. Entre el diseño físico y el diseño lógico hay una realimentación ya que algunas de las decisiones que se tomen durante el diseño físico para mejorar las prestaciones pueden afectar a la estructura del esquema lógico. En general, el propósito del diseño físico es describir cómo se va a implementar físicamente el esquema lógico obtenido en la fase anterior. Por ejemplo, en el modelo relacional, esto consiste en: • Obtener un conjunto de relaciones (tablas) y las restricciones que se deben cumplir sobre ellas. • Determinar las estructuras de almacenamiento y los métodos de acceso que se van a utilizar para conseguir unas prestaciones óptimas. • Diseñar el modelo de seguridad del sistema.