SlideShare una empresa de Scribd logo
SISTEMAS DE BASE
DE DATOS
Un SBD se puede definir como un conjunto
de programas que se encargan de manejar,
coordinar, ordenar, manipular y guardar grandes
volumen de información, y esta formado por:
Los usuarios
Los componentes físicos – Hardware
Los componentes lógicos – Software
MODELOS DE DATOS
Los Modelo de Base de Datos son métodos
conceptual que sirven para describir la
estructura de una Base de Dato, y se los pueden
clasificar dependiendo de los tipos de conceptos
que ofrecen.
Modelos de Datos de Alto NivelModelos de Datos de Alto Nivel
Modelo de Dato de Bajo NivelModelo de Dato de Bajo Nivel
Modelos Conceptúales oModelos Conceptúales o
Modelos Lógicos basados en objetosModelos Lógicos basados en objetos
Modelos FísicosModelos Físicos
Modelos conceptúales o lógicos basados en objetos:
• Se utilizan para describir datos.
• Utilizan conceptos como entidades, atributos y relaciones.
• Una entidad representa un objeto, por ejemplo un empleado.
• Un atributo representa algo de interés de una entidad, por
ejemplo el nombre.
• Una relación describe una interacción entre dos o mas
entidades.
Modelo RelacionalModelo Relacional
Modelos Lógicos oModelos Lógicos o
Modelos Lógicos basados en registrosModelos Lógicos basados en registros
Modelo de RedModelo de Red
Modelo JerárquicoModelo Jerárquico
Modelos Lógicos basados en registros:
 Se utilizan para describir datos, pero a diferencia
de los modelos de datos basados en objetos, estos
sirven para especificar la estructura lógica de la
Base de Dato. Los mas utilizados son:
 Modelo Relacional: Los datos y la relación entre los datos se
representan por medio de una serie de tablas.
 Modelo de red: Los datos se representan por medio de registros,
y las relaciones se representan por medio de ligas.
 Modelo Jerárquico: Es similar al modelo de red, con la
diferencia que los registros están organizados como un árbol
genealógico.
Modelos Físicos de datos:
 Describen como se almacenan los datos en el
ordenador, el formato de los registros, la
estructura de los archivos, y los métodos de
acceso utilizados.
 A la descripción de la base de dato mediante un
modelo de dato se le denomina Esquema de la
Base de Dato.
 A los datos que la base de dato contiene en un
momento determinado se le denomina Estado
de la Base de Dato. Los SGBD se encargan de
garantizar que todos los estados de base de
datos sean estados validos.
ARQUITECTURA DE LOS
SISTEMAS DE BASE DE DATOS
 En 1975 el comité ANSI-APARC (American
National Standard Institute - Standards Planning and
Requirements Committee) propuso una
arquitectura de tres niveles para los sistemas
de base de dato, con el objetivo de separar los
programas de aplicación de la base de dato
física. Los tres niveles son:
1)El Nivel Interno describe la estructura física de la
base de dato mediante un esquema interno.
2)El Nivel Conceptual describe la estructura de todo la
base de dato para una comunidad de usuarios en
especial, mediante un esquema conceptual.
3)El Nivel Externo es el mas cercano a los usuarios
porque les permite ver y percibir lo dato,
describiendo las partes de las base de datos que le
interesa al usuario, y oculta el resto.
La arquitectura de tres niveles es útil para explicar el
concepto de independencia de datos que podemos
definir como la capacidad para modificar el esquema
en un nivel del sistema sin tener que modificar el
esquema del nivel inmediato superior. Se pueden
definir dos tipos de independencia de datos:
 La independencia lógica es la capacidad de modificar
el esquema conceptual sin tener que alterar los
esquemas externos ni los programas de aplicación.
Se puede modificar el esquema conceptual para
ampliar la base de datos o para reducirla. Si, por
ejemplo, se reduce la base de datos eliminando una
entidad, los esquemas externos que no se refieran a
ella no deberán verse afectados.
 La independencia física es la capacidad de modificar
el esquema interno sin tener que alterar el esquema
conceptual (o los externos). Por ejemplo, puede ser
necesario reorganizar ciertos archivos físicos con el
fin de mejorar el rendimiento de las operaciones de
consulta o de actualización de datos. Dado que la
independencia física se refiere sólo a la separación
entre las aplicaciones y las estructuras físicas de
almacenamiento, es más fácil de conseguir que la
independencia lógica.
LENGUAJES DE LOS SISTEMAS DE
GESTIÓN DE BASE DE DATO
 Los SGBD deben ofrecer un lenguaje e interfaces
apropiados para cada tipo de usuario.
Lenguaje de Definición de Dato: El SGBD posee
un compilador de LDD cuya función consiste en
procesar las sentencias del lenguaje para
identificar las descripciones de los distintos
elementos de los esquemas y almacenar la
descripción del esquema en el catálogo o
diccionario de datos.
 Cuando en un SGBD hay una clara separación
entre los niveles conceptual e interno, el LDD sólo
sirve para especificar el esquema conceptual. Para
especificar el esquema interno se utiliza un
Lenguaje de Definición de Almacenamiento (LDA).
Lenguaje de manejo de datos:
 Una vez creados los esquemas de la base de
datos, los usuarios necesitan un lenguaje que les
permita manipular los datos, realizar consultas,
inserciones, eliminaciones y modificaciones. Este
lenguaje es el que se denomina LMD.
 Hay dos tipos de LMD: los Procedurales y los No
Procedurales.
 Con un LMD procedural el usuario especifica qué
datos se necesitan y cómo hay que obtenerlos.
Estos lenguajes acceden a un registro, lo procesan
y basándose en los resultados obtenidos, acceden
a otro registro, que también deben procesar. Las
sentencias de un LMD Procedural deben estar
embebidas en un lenguaje de alto nivel, ya que se
necesitan sus estructuras (bucles, condicionales,
etc.) para obtener y procesar cada registro
individual. A este lenguaje se le denomina Lenguaje
Anfitrión.
 Los LMD No Procedurales permiten especificar
los datos a obtener en una consulta o los datos que
se deben actualizar, mediante una sola y sencilla
sentencia, y se puede utilizar de manera
independiente para especificar operaciones
complejas sobre la base de datos de forma
concisa. El SGBD traduce las sentencias del LMD
en uno o varios procedimientos que manipulan los
conjuntos de registros necesarios. Los lenguajes
no procedurales son más fáciles de aprender y de
usar que los procedurales, y el usuario debe
realizar menos trabajo, siendo el SGBD quien hace
la mayor parte.
 La parte de los LMD no procedurales que realiza la
obtención de datos es lo que se denomina un
Lenguaje de Consultas.
Lenguajes de Cuarta Generación
 Es un lenguaje no procedural
 El usuario define qué se debe hacer, no cómo debe hacerse
y generalmente se apoyan en unas herramientas de mucho
más alto nivel denominadas herramientas de cuarta
generación. El usuario no debe definir los pasos a seguir,
sólo debe definir una serie de parámetros que estas
herramientas utilizarán para generar un programa de
aplicación.
 Lenguajes de presentación, como lenguajes de
consultas y generadores de informes.
 Lenguajes especializados, como hojas de cálculo
y lenguajes de bases de datos.
 Generadores de aplicaciones definen, insertan,
actualizan y obtienen datos de la base de datos.
 Lenguajes de muy alto nivel que se utilizan para
generar el código de la aplicación.
 Un generador de formularios es una herramienta
interactiva que permite crear rápidamente
formularios de pantalla para introducir o visualizar
datos.
 Un generador de informes es una herramienta
para crear informes a partir de los datos
almacenados en la base de datos.
 Un generador de gráficos es una herramienta
para obtener datos de la base de datos y
visualizarlos en un gráfico mostrando tendencias y
relaciones entre datos.
 Un generador de aplicaciones es una
herramienta para crear programas que hagan de
interfase entre el usuario y la base de datos. El uso
de un generador de aplicaciones puede reducir el
tiempo que se necesita para diseñar un programa
de aplicación.
CLASIFICACIÓN DE LOS SISTEMAS DE GESTIÓN
DE BASES DE DATOS
 El criterio que se utiliza con mayor frecuencia para
clasificar los SGBD es: el modelo lógico en que se
basan, como el Modelo Relacional, el de Red y el
Jerárquico.
 La mayoría de los SGBD actuales se basados en el
modelo relacional, y los sistemas más antiguos
estaban basados en el modelo de red o el modelo
jerárquico
 Los modelos de red y los jerárquicos requieren que
el usuario tenga conocimiento de la estructura física
de la base de datos, mientras que el modelo
relacional proporciona una mayor independencia de
datos. Se dice que el modelo relacional es
declarativo (se especifica qué datos se han de
obtener) y los modelos de red y jerárquico son
navegacionales (se especifica cómo se deben
obtener los datos).
 El Modelo Relacional se basa en el concepto
matemático denominado ``relación", que
gráficamente se puede representar y es percibida
por los usuarios como una tabla. Los datos y las
relación existente entre los datos se representan
mediante estas relaciones matemáticas, cada una
con un nombre que es único.
 En el Modelo de Red los datos se representan como
colecciones de registros y las relaciones entre los
datos se representan mediante conjuntos, que son
punteros en la implementación física. Los registros
se organizan como un grafo: los registros son los
nodos y los arcos son los conjuntos.
 El Modelo Jerárquico es similar al modelo de red, pero
con algunas restricciones. Los datos se representan
como colecciones de registros y las relaciones entre
los datos se representan mediante conjuntos. Una
base de datos jerárquica puede representarse
mediante un árbol: los arcos son los conjuntos, los
registros son los nodos, y cada nodo puede tener un
solo padre.
 El Modelo Orientado a Objetos define una Base de Dato
en términos de objetos. Los objetos con la misma
estructura y comportamiento pertenecen a una clase,
y se organizan en jerarquías o grafos acíclicos. Las
operaciones de cada clase se especifican en términos
de procedimientos denominados métodos.
 El segundo criterio para clasificar los SGBD es el
número de usuarios a los que da servicio el sistema,
y podemos encontrar:
 Sistemas Monousuario, que sólo atienden a un
usuario a la vez.
 Sistemas Multiusuario, entre los que se encuentran
la mayor parte de los SGBD, que atienden a varios usuarios al
mismo tiempo.
 Un tercer criterio para clasificar los SGBD, es el
número de sitios en los que está distribuida la base
de datos, y pueden ser:
 Centralizados: sus datos se almacenan en un solo
computador. pueden atender a varios usuarios a la ves, pero el
SGBD y la base de datos en sí residen por completo en una sola
máquina.
 Distribuidos: la base de datos real y el propio software
del SGBD pueden estar distribuidos en varios sitios conectados
por una red.
FUNCIONES DE LOS SISTEMAS DEFUNCIONES DE LOS SISTEMAS DE
GESTIÓN DE BASES DE DATOSGESTIÓN DE BASES DE DATOS
 Codd ha establecido una lista de servicios que
debe ofrecer todo SGBD.
 Un SGBD debe proporcionar a los usuarios la
capacidad de almacenar datos, acceder a ellos y
actualizarlos, y debe ocultar al usuario la
estructura física interna (la organización de los
archivos y las estructuras de almacenamiento).
 Un SGBD debe proporcionar un catálogo en el
que se almacenen las descripciones de los datos
y que sea accesible por los usuarios. Este
catálogo es lo que se denomina diccionario de
datos y contiene información que describe los
datos de la base de datos.
 Un SGBD debe garantizar que todas las
actualizaciones correspondientes a una
determinada transacción se realicen, o que no se
realice ninguna. Una transacción es un conjunto
de acciones que cambian el contenido de la base
de datos.
 Un SGBD debe proporcionar un mecanismo que
asegure que la base de datos se actualice
correctamente cuando varios usuarios la están
actualizando concurrentemente.
 Un SGBD debe proporcionar un mecanismo capaz
de recuperar la base de datos en caso de que
ocurra algún suceso que la dañe. Como se ha
comentado antes, cuando el sistema falla en medio
de una transacción, la base de datos se debe poder
volver a un estado consistente.
 Un SGBD debe proporcionar un mecanismo que
garantice que sólo los usuarios autorizados pueden
acceder a la base de datos.
 Un SGBD debe ser capaz de integrarse con algún
software de comunicación. Muchos usuarios
acceden a la base de datos desde terminales. En
ocasiones las terminales se pueden encontrar
conectados directamente a la máquina sobre la que
funciona el SGBD,o en lugares remotos, por lo que
la comunicación con la máquina que alberga al
SGBD se debe hacer a través de una red. Todas
estas transmisiones las maneja el gestor de
comunicaciones de datos. Aunque este gestor no
forma parte del SGBD, es necesario que el SGBD se
pueda integrar con él para que el sistema sea
comercialmente viable.
 Un SGBD debe garantizar que tanto los datos de la
base de datos, como los cambios que se realizan
sobre estos datos, sigan ciertas reglas. La integridad
de la base de datos requiere la validez y
consistencia de los datos almacenados. La
integridad se ocupa de la calidad de los datos.
Normalmente se expresa mediante restricciones,
que son una serie de reglas que la base de datos no
puede violar. Por ejemplo, se puede establecer la
restricción de que cada empleado no puede tener
asignados más de diez inmuebles. En este caso el
SGBD controlara que no se sobrepase este límite
cada vez que se asigne un inmueble a un empleado.
 Un SGBD debe permitir que se mantenga la
independencia entre los programas y la estructura
de la base de datos. La independencia de datos
mediante las vistas o subesquemas es fácil de
alcanzar. Sin embargo, lograr una completa
independencia de datos lógica es más difícil. Añadir
una nueva entidad, un atributo o una relación puede
ser sencillo, pero no es tan sencillo eliminarlos.
 Un SGBD debe proporcionar una serie de
herramientas que permitan administrar la base de
datos de modo efectivo. Algunas herramientas
trabajan a nivel externo y otras a nivel interno, y
deben ser proporcionadas por el distribuidor del
SGBD. Algunas de ellas son:
 Herramientas para importar y exportar datos.
 Herramientas para monitorizar el uso y el funcionamiento de la
base de datos.
 Programas de análisis estadístico para examinar las prestaciones
o las estadísticas de utilización.
 Herramientas para reorganización de índices.
 Herramientas para aprovechar el espacio dejado en el
almacenamiento físico por los registros borrados y que consoliden
el espacio liberado para reutilizarlo cuando sea necesario.
COMPONENTES DE UN SISTEMA DE
GESTIÓN DE BASES DE DATOS
 Los SGBD son paquetes de software muy complejos
y sofisticados que deben proporcionar los servicios ya
comentados, y tiene varios módulos, y cada uno de
los cuales realiza una función específica. El sistema
operativo proporciona servicios básicos al SGBD, que
es construido sobre él.
 No se puede generalizar sobre los elementos que
componen un SGBD ya que varían mucho unos de
otros.
 El procesador de consultasprocesador de consultas es el componente
principal de un SGBD. Transforma las consultas en
un conjunto de instrucciones de bajo nivel que se
dirigen al gestor de la base de datos.
 El gestor de la base de datosgestor de la base de datos es el interface con los
programas de aplicación y las consultas de los
usuarios. El gestor de la base de datos acepta
consultas y examina los esquemas externo y
conceptual para determinar qué registros se
requieren para satisfacer la petición. Entonces el
gestor de la base de datos realiza una llamada al
gestor de archivos para ejecutar la petición.
 El gestor de archivos maneja los archivos en disco
en donde se almacena la base de datos. Este
establece y mantiene la lista de estructuras e
índices definidos en el esquema interno. Si se
utilizan archivos dispersos, llama a la función de
dispersión para generar la dirección de los
registros. Pero no realiza directamente la entrada y
salida de datos. Lo que hace es pasar la petición a
los métodos de acceso del sistema operativo que
se encargan de leer o escribir los datos en el buffer
del sistema.
 El preprocesador del LMD convierte las sentencias del
LMD en los programas de aplicación. El
preprocesador del LMD debe trabajar con el
procesador de consultas para generar el código
apropiado.
 El compilador del LDD convierte las sentencias del
LDD en un conjunto de tablas que contienen
metadatos. Estas tablas se almacenan en el
diccionario de datos.
 El gestor del diccionario controla los accesos al
diccionario de datos y se encarga de mantenerlo.
La mayoría de los componentes del SGBD acceden
al diccionario de datos.
Los principales componentes de un SGBD son:
 Control de autorizaciónControl de autorización. Este módulo comprueba que si
el usuario tiene los permisos necesarios para llevar a
cabo la operación que solicita.
 Procesador de comandosProcesador de comandos. Una vez que el sistema ha
comprobado los permisos del usuario, se pasa el
control al procesador de comandos.
 Control de la integridadControl de la integridad. Cuando una operación cambia
los datos de la base de datos, este módulo debe
comprobar si la operación a realizar satisface todas
las restricciones de integridad necesarias.
 Optimizador de consultasOptimizador de consultas. Este módulo determina la
estrategia óptima para la ejecución de las consultas.
 Gestor de transaccionesGestor de transacciones. Este módulo realiza el
procesamiento de las transacciones.
 Planificador (scheduler)Planificador (scheduler). Este módulo es el
responsable de asegurar que las operaciones que se
realizan concurrentemente sobre la base de datos
tienen lugar sin conflictos.
 Gestor de recuperaciónGestor de recuperación. Este módulo garantiza que la
base de datos permanece en un estado consistente
en caso de que se produzca algún fallo.
 Gestor de buffersGestor de buffers. Este módulo es el responsable de
transferir los datos entre memoria principal y los
dispositivos de almacenamiento secundario. A este
módulo también se le denomina gestor de datos.

Más contenido relacionado

PPT
Unidad 3 Modelamiento De Datos Conceptual
PPTX
Sql DML Lenguaje de manipulación de datos
PDF
Consultas básicas en sql server
PPTX
Funciones de un administrador de base de datos
PPT
Modelos de datos
PDF
Fundamentos de Base de Datos
PPTX
Comandos utilizados en sql
Unidad 3 Modelamiento De Datos Conceptual
Sql DML Lenguaje de manipulación de datos
Consultas básicas en sql server
Funciones de un administrador de base de datos
Modelos de datos
Fundamentos de Base de Datos
Comandos utilizados en sql

La actualidad más candente (20)

PPTX
sistema gestor BD PostgreSql
PDF
Analisis de la independencia logica fisica de datos en un sistema de bases de...
PPTX
Fundamentos de las bases de datos
PDF
Normalizacion
PDF
1. Modelo de Datos
PPTX
Componentes de una base de datos
PDF
Componentes de un sistema de base de datos
PPTX
HISTORIA DE LAS BASES DE DATOS
PPT
Lenguaje SQL
PPTX
Fundamentos de base de datos 1a. unidad
PPTX
Modelo entidad relación de base de datos
PPT
Qué Son Las Bases De Datos
KEY
Fundamentos de Bases de Datos - Introducción
DOCX
Conexión desde una aplicación en java a un bd en mysql
PPTX
Base de datos
PPTX
Unidad 1. Fundamentos de Base de Datos
PPT
Diseño de bases de datos
PPTX
Caracteristicas de las bases de datos
PPTX
Diagramas de clase.pptx
PDF
Modelo relacional
sistema gestor BD PostgreSql
Analisis de la independencia logica fisica de datos en un sistema de bases de...
Fundamentos de las bases de datos
Normalizacion
1. Modelo de Datos
Componentes de una base de datos
Componentes de un sistema de base de datos
HISTORIA DE LAS BASES DE DATOS
Lenguaje SQL
Fundamentos de base de datos 1a. unidad
Modelo entidad relación de base de datos
Qué Son Las Bases De Datos
Fundamentos de Bases de Datos - Introducción
Conexión desde una aplicación en java a un bd en mysql
Base de datos
Unidad 1. Fundamentos de Base de Datos
Diseño de bases de datos
Caracteristicas de las bases de datos
Diagramas de clase.pptx
Modelo relacional
Publicidad

Similar a Sistemas de base de datos (20)

PPTX
PPTX
PDF
PDF
Trabajo de bases de datos
DOCX
GESTOR DE BASE DE DATOS
PPTX
Bases de datos
PPTX
Sistemas gestores de las bases de datos
PPTX
Unidad I
PDF
Abd clase 1
PPT
119318
PPTX
Bases de datos
PPTX
Bases de datos
PPTX
Bases de datos
PPTX
Lindaddadadaaaaa
PDF
DOCX
Enfoque de archivos
PPTX
Linda tatiana
PPTX
Linda tatiana
PPTX
Base_de_datos en la arquitectura de software
Trabajo de bases de datos
GESTOR DE BASE DE DATOS
Bases de datos
Sistemas gestores de las bases de datos
Unidad I
Abd clase 1
119318
Bases de datos
Bases de datos
Bases de datos
Lindaddadadaaaaa
Enfoque de archivos
Linda tatiana
Linda tatiana
Base_de_datos en la arquitectura de software
Publicidad

Último (20)

PDF
Gasista de unidades unifuncionales - pagina 23 en adelante.pdf
DOCX
III Ciclo _ Plan Anual 2025.docx PARA ESTUDIANTES DE PRIMARIA
PDF
COMUNICACION EFECTIVA PARA LA EDUCACION .pdf
PDF
Escuela de Negocios - Robert kiyosaki Ccesa007.pdf
PDF
IDH_Guatemala_2.pdfnjjjkeioooe ,l dkdldp ekooe
PDF
ACERTIJO Súper Círculo y la clave contra el Malvado Señor de las Formas. Por ...
PDF
Unidad de Aprendizaje 5 de Matematica 1ro Secundaria Ccesa007.pdf
PDF
Cronograma de clases de Práctica Profesional 2 2025 UDE.pdf
PDF
PFB-MANUAL-PRUEBA-FUNCIONES-BASICAS-pdf.pdf
PDF
Escuelas Desarmando una mirada subjetiva a la educación
PDF
GUIA DE: CANVA + INTELIGENCIA ARTIFICIAL
PDF
Habitos de Ricos - Juan Diego Gomez Ccesa007.pdf
PDF
DI, TEA, TDAH.pdf guía se secuencias didacticas
DOCX
UNIDAD DE APRENDIZAJE 5 AGOSTO tradiciones
PDF
Didactica de la Investigacion Educativa SUE Ccesa007.pdf
PDF
SESION 12 INMUNIZACIONES - CADENA DE FRÍO- SALUD FAMILIAR - PUEBLOS INDIGENAS...
PDF
5°-UNIDAD 5 - 2025.pdf aprendizaje 5tooo
DOCX
V UNIDAD - SEGUNDO GRADO. del mes de agosto
PDF
Conecta con la Motivacion - Brian Tracy Ccesa007.pdf
PDF
Salvese Quien Pueda - Andres Oppenheimer Ccesa007.pdf
Gasista de unidades unifuncionales - pagina 23 en adelante.pdf
III Ciclo _ Plan Anual 2025.docx PARA ESTUDIANTES DE PRIMARIA
COMUNICACION EFECTIVA PARA LA EDUCACION .pdf
Escuela de Negocios - Robert kiyosaki Ccesa007.pdf
IDH_Guatemala_2.pdfnjjjkeioooe ,l dkdldp ekooe
ACERTIJO Súper Círculo y la clave contra el Malvado Señor de las Formas. Por ...
Unidad de Aprendizaje 5 de Matematica 1ro Secundaria Ccesa007.pdf
Cronograma de clases de Práctica Profesional 2 2025 UDE.pdf
PFB-MANUAL-PRUEBA-FUNCIONES-BASICAS-pdf.pdf
Escuelas Desarmando una mirada subjetiva a la educación
GUIA DE: CANVA + INTELIGENCIA ARTIFICIAL
Habitos de Ricos - Juan Diego Gomez Ccesa007.pdf
DI, TEA, TDAH.pdf guía se secuencias didacticas
UNIDAD DE APRENDIZAJE 5 AGOSTO tradiciones
Didactica de la Investigacion Educativa SUE Ccesa007.pdf
SESION 12 INMUNIZACIONES - CADENA DE FRÍO- SALUD FAMILIAR - PUEBLOS INDIGENAS...
5°-UNIDAD 5 - 2025.pdf aprendizaje 5tooo
V UNIDAD - SEGUNDO GRADO. del mes de agosto
Conecta con la Motivacion - Brian Tracy Ccesa007.pdf
Salvese Quien Pueda - Andres Oppenheimer Ccesa007.pdf

Sistemas de base de datos

  • 1. SISTEMAS DE BASE DE DATOS Un SBD se puede definir como un conjunto de programas que se encargan de manejar, coordinar, ordenar, manipular y guardar grandes volumen de información, y esta formado por: Los usuarios Los componentes físicos – Hardware Los componentes lógicos – Software
  • 2. MODELOS DE DATOS Los Modelo de Base de Datos son métodos conceptual que sirven para describir la estructura de una Base de Dato, y se los pueden clasificar dependiendo de los tipos de conceptos que ofrecen. Modelos de Datos de Alto NivelModelos de Datos de Alto Nivel Modelo de Dato de Bajo NivelModelo de Dato de Bajo Nivel Modelos Conceptúales oModelos Conceptúales o Modelos Lógicos basados en objetosModelos Lógicos basados en objetos Modelos FísicosModelos Físicos
  • 3. Modelos conceptúales o lógicos basados en objetos: • Se utilizan para describir datos. • Utilizan conceptos como entidades, atributos y relaciones. • Una entidad representa un objeto, por ejemplo un empleado. • Un atributo representa algo de interés de una entidad, por ejemplo el nombre. • Una relación describe una interacción entre dos o mas entidades. Modelo RelacionalModelo Relacional Modelos Lógicos oModelos Lógicos o Modelos Lógicos basados en registrosModelos Lógicos basados en registros Modelo de RedModelo de Red Modelo JerárquicoModelo Jerárquico
  • 4. Modelos Lógicos basados en registros:  Se utilizan para describir datos, pero a diferencia de los modelos de datos basados en objetos, estos sirven para especificar la estructura lógica de la Base de Dato. Los mas utilizados son:  Modelo Relacional: Los datos y la relación entre los datos se representan por medio de una serie de tablas.  Modelo de red: Los datos se representan por medio de registros, y las relaciones se representan por medio de ligas.  Modelo Jerárquico: Es similar al modelo de red, con la diferencia que los registros están organizados como un árbol genealógico.
  • 5. Modelos Físicos de datos:  Describen como se almacenan los datos en el ordenador, el formato de los registros, la estructura de los archivos, y los métodos de acceso utilizados.  A la descripción de la base de dato mediante un modelo de dato se le denomina Esquema de la Base de Dato.  A los datos que la base de dato contiene en un momento determinado se le denomina Estado de la Base de Dato. Los SGBD se encargan de garantizar que todos los estados de base de datos sean estados validos.
  • 6. ARQUITECTURA DE LOS SISTEMAS DE BASE DE DATOS  En 1975 el comité ANSI-APARC (American National Standard Institute - Standards Planning and Requirements Committee) propuso una arquitectura de tres niveles para los sistemas de base de dato, con el objetivo de separar los programas de aplicación de la base de dato física. Los tres niveles son:
  • 7. 1)El Nivel Interno describe la estructura física de la base de dato mediante un esquema interno. 2)El Nivel Conceptual describe la estructura de todo la base de dato para una comunidad de usuarios en especial, mediante un esquema conceptual. 3)El Nivel Externo es el mas cercano a los usuarios porque les permite ver y percibir lo dato, describiendo las partes de las base de datos que le interesa al usuario, y oculta el resto.
  • 8. La arquitectura de tres niveles es útil para explicar el concepto de independencia de datos que podemos definir como la capacidad para modificar el esquema en un nivel del sistema sin tener que modificar el esquema del nivel inmediato superior. Se pueden definir dos tipos de independencia de datos:  La independencia lógica es la capacidad de modificar el esquema conceptual sin tener que alterar los esquemas externos ni los programas de aplicación. Se puede modificar el esquema conceptual para ampliar la base de datos o para reducirla. Si, por ejemplo, se reduce la base de datos eliminando una entidad, los esquemas externos que no se refieran a ella no deberán verse afectados.
  • 9.  La independencia física es la capacidad de modificar el esquema interno sin tener que alterar el esquema conceptual (o los externos). Por ejemplo, puede ser necesario reorganizar ciertos archivos físicos con el fin de mejorar el rendimiento de las operaciones de consulta o de actualización de datos. Dado que la independencia física se refiere sólo a la separación entre las aplicaciones y las estructuras físicas de almacenamiento, es más fácil de conseguir que la independencia lógica.
  • 10. LENGUAJES DE LOS SISTEMAS DE GESTIÓN DE BASE DE DATO  Los SGBD deben ofrecer un lenguaje e interfaces apropiados para cada tipo de usuario. Lenguaje de Definición de Dato: El SGBD posee un compilador de LDD cuya función consiste en procesar las sentencias del lenguaje para identificar las descripciones de los distintos elementos de los esquemas y almacenar la descripción del esquema en el catálogo o diccionario de datos.
  • 11.  Cuando en un SGBD hay una clara separación entre los niveles conceptual e interno, el LDD sólo sirve para especificar el esquema conceptual. Para especificar el esquema interno se utiliza un Lenguaje de Definición de Almacenamiento (LDA). Lenguaje de manejo de datos:  Una vez creados los esquemas de la base de datos, los usuarios necesitan un lenguaje que les permita manipular los datos, realizar consultas, inserciones, eliminaciones y modificaciones. Este lenguaje es el que se denomina LMD.  Hay dos tipos de LMD: los Procedurales y los No Procedurales.
  • 12.  Con un LMD procedural el usuario especifica qué datos se necesitan y cómo hay que obtenerlos. Estos lenguajes acceden a un registro, lo procesan y basándose en los resultados obtenidos, acceden a otro registro, que también deben procesar. Las sentencias de un LMD Procedural deben estar embebidas en un lenguaje de alto nivel, ya que se necesitan sus estructuras (bucles, condicionales, etc.) para obtener y procesar cada registro individual. A este lenguaje se le denomina Lenguaje Anfitrión.
  • 13.  Los LMD No Procedurales permiten especificar los datos a obtener en una consulta o los datos que se deben actualizar, mediante una sola y sencilla sentencia, y se puede utilizar de manera independiente para especificar operaciones complejas sobre la base de datos de forma concisa. El SGBD traduce las sentencias del LMD en uno o varios procedimientos que manipulan los conjuntos de registros necesarios. Los lenguajes no procedurales son más fáciles de aprender y de usar que los procedurales, y el usuario debe realizar menos trabajo, siendo el SGBD quien hace la mayor parte.  La parte de los LMD no procedurales que realiza la obtención de datos es lo que se denomina un Lenguaje de Consultas.
  • 14. Lenguajes de Cuarta Generación  Es un lenguaje no procedural  El usuario define qué se debe hacer, no cómo debe hacerse y generalmente se apoyan en unas herramientas de mucho más alto nivel denominadas herramientas de cuarta generación. El usuario no debe definir los pasos a seguir, sólo debe definir una serie de parámetros que estas herramientas utilizarán para generar un programa de aplicación.
  • 15.  Lenguajes de presentación, como lenguajes de consultas y generadores de informes.  Lenguajes especializados, como hojas de cálculo y lenguajes de bases de datos.  Generadores de aplicaciones definen, insertan, actualizan y obtienen datos de la base de datos.  Lenguajes de muy alto nivel que se utilizan para generar el código de la aplicación.
  • 16.  Un generador de formularios es una herramienta interactiva que permite crear rápidamente formularios de pantalla para introducir o visualizar datos.  Un generador de informes es una herramienta para crear informes a partir de los datos almacenados en la base de datos.  Un generador de gráficos es una herramienta para obtener datos de la base de datos y visualizarlos en un gráfico mostrando tendencias y relaciones entre datos.  Un generador de aplicaciones es una herramienta para crear programas que hagan de interfase entre el usuario y la base de datos. El uso de un generador de aplicaciones puede reducir el tiempo que se necesita para diseñar un programa de aplicación.
  • 17. CLASIFICACIÓN DE LOS SISTEMAS DE GESTIÓN DE BASES DE DATOS  El criterio que se utiliza con mayor frecuencia para clasificar los SGBD es: el modelo lógico en que se basan, como el Modelo Relacional, el de Red y el Jerárquico.  La mayoría de los SGBD actuales se basados en el modelo relacional, y los sistemas más antiguos estaban basados en el modelo de red o el modelo jerárquico
  • 18.  Los modelos de red y los jerárquicos requieren que el usuario tenga conocimiento de la estructura física de la base de datos, mientras que el modelo relacional proporciona una mayor independencia de datos. Se dice que el modelo relacional es declarativo (se especifica qué datos se han de obtener) y los modelos de red y jerárquico son navegacionales (se especifica cómo se deben obtener los datos).
  • 19.  El Modelo Relacional se basa en el concepto matemático denominado ``relación", que gráficamente se puede representar y es percibida por los usuarios como una tabla. Los datos y las relación existente entre los datos se representan mediante estas relaciones matemáticas, cada una con un nombre que es único.  En el Modelo de Red los datos se representan como colecciones de registros y las relaciones entre los datos se representan mediante conjuntos, que son punteros en la implementación física. Los registros se organizan como un grafo: los registros son los nodos y los arcos son los conjuntos.
  • 20.  El Modelo Jerárquico es similar al modelo de red, pero con algunas restricciones. Los datos se representan como colecciones de registros y las relaciones entre los datos se representan mediante conjuntos. Una base de datos jerárquica puede representarse mediante un árbol: los arcos son los conjuntos, los registros son los nodos, y cada nodo puede tener un solo padre.  El Modelo Orientado a Objetos define una Base de Dato en términos de objetos. Los objetos con la misma estructura y comportamiento pertenecen a una clase, y se organizan en jerarquías o grafos acíclicos. Las operaciones de cada clase se especifican en términos de procedimientos denominados métodos.
  • 21.  El segundo criterio para clasificar los SGBD es el número de usuarios a los que da servicio el sistema, y podemos encontrar:  Sistemas Monousuario, que sólo atienden a un usuario a la vez.  Sistemas Multiusuario, entre los que se encuentran la mayor parte de los SGBD, que atienden a varios usuarios al mismo tiempo.
  • 22.  Un tercer criterio para clasificar los SGBD, es el número de sitios en los que está distribuida la base de datos, y pueden ser:  Centralizados: sus datos se almacenan en un solo computador. pueden atender a varios usuarios a la ves, pero el SGBD y la base de datos en sí residen por completo en una sola máquina.  Distribuidos: la base de datos real y el propio software del SGBD pueden estar distribuidos en varios sitios conectados por una red.
  • 23. FUNCIONES DE LOS SISTEMAS DEFUNCIONES DE LOS SISTEMAS DE GESTIÓN DE BASES DE DATOSGESTIÓN DE BASES DE DATOS  Codd ha establecido una lista de servicios que debe ofrecer todo SGBD.  Un SGBD debe proporcionar a los usuarios la capacidad de almacenar datos, acceder a ellos y actualizarlos, y debe ocultar al usuario la estructura física interna (la organización de los archivos y las estructuras de almacenamiento).
  • 24.  Un SGBD debe proporcionar un catálogo en el que se almacenen las descripciones de los datos y que sea accesible por los usuarios. Este catálogo es lo que se denomina diccionario de datos y contiene información que describe los datos de la base de datos.  Un SGBD debe garantizar que todas las actualizaciones correspondientes a una determinada transacción se realicen, o que no se realice ninguna. Una transacción es un conjunto de acciones que cambian el contenido de la base de datos.
  • 25.  Un SGBD debe proporcionar un mecanismo que asegure que la base de datos se actualice correctamente cuando varios usuarios la están actualizando concurrentemente.  Un SGBD debe proporcionar un mecanismo capaz de recuperar la base de datos en caso de que ocurra algún suceso que la dañe. Como se ha comentado antes, cuando el sistema falla en medio de una transacción, la base de datos se debe poder volver a un estado consistente.  Un SGBD debe proporcionar un mecanismo que garantice que sólo los usuarios autorizados pueden acceder a la base de datos.
  • 26.  Un SGBD debe ser capaz de integrarse con algún software de comunicación. Muchos usuarios acceden a la base de datos desde terminales. En ocasiones las terminales se pueden encontrar conectados directamente a la máquina sobre la que funciona el SGBD,o en lugares remotos, por lo que la comunicación con la máquina que alberga al SGBD se debe hacer a través de una red. Todas estas transmisiones las maneja el gestor de comunicaciones de datos. Aunque este gestor no forma parte del SGBD, es necesario que el SGBD se pueda integrar con él para que el sistema sea comercialmente viable.
  • 27.  Un SGBD debe garantizar que tanto los datos de la base de datos, como los cambios que se realizan sobre estos datos, sigan ciertas reglas. La integridad de la base de datos requiere la validez y consistencia de los datos almacenados. La integridad se ocupa de la calidad de los datos. Normalmente se expresa mediante restricciones, que son una serie de reglas que la base de datos no puede violar. Por ejemplo, se puede establecer la restricción de que cada empleado no puede tener asignados más de diez inmuebles. En este caso el SGBD controlara que no se sobrepase este límite cada vez que se asigne un inmueble a un empleado.
  • 28.  Un SGBD debe permitir que se mantenga la independencia entre los programas y la estructura de la base de datos. La independencia de datos mediante las vistas o subesquemas es fácil de alcanzar. Sin embargo, lograr una completa independencia de datos lógica es más difícil. Añadir una nueva entidad, un atributo o una relación puede ser sencillo, pero no es tan sencillo eliminarlos.
  • 29.  Un SGBD debe proporcionar una serie de herramientas que permitan administrar la base de datos de modo efectivo. Algunas herramientas trabajan a nivel externo y otras a nivel interno, y deben ser proporcionadas por el distribuidor del SGBD. Algunas de ellas son:  Herramientas para importar y exportar datos.  Herramientas para monitorizar el uso y el funcionamiento de la base de datos.  Programas de análisis estadístico para examinar las prestaciones o las estadísticas de utilización.
  • 30.  Herramientas para reorganización de índices.  Herramientas para aprovechar el espacio dejado en el almacenamiento físico por los registros borrados y que consoliden el espacio liberado para reutilizarlo cuando sea necesario.
  • 31. COMPONENTES DE UN SISTEMA DE GESTIÓN DE BASES DE DATOS  Los SGBD son paquetes de software muy complejos y sofisticados que deben proporcionar los servicios ya comentados, y tiene varios módulos, y cada uno de los cuales realiza una función específica. El sistema operativo proporciona servicios básicos al SGBD, que es construido sobre él.  No se puede generalizar sobre los elementos que componen un SGBD ya que varían mucho unos de otros.
  • 32.  El procesador de consultasprocesador de consultas es el componente principal de un SGBD. Transforma las consultas en un conjunto de instrucciones de bajo nivel que se dirigen al gestor de la base de datos.  El gestor de la base de datosgestor de la base de datos es el interface con los programas de aplicación y las consultas de los usuarios. El gestor de la base de datos acepta consultas y examina los esquemas externo y conceptual para determinar qué registros se requieren para satisfacer la petición. Entonces el gestor de la base de datos realiza una llamada al gestor de archivos para ejecutar la petición.
  • 33.  El gestor de archivos maneja los archivos en disco en donde se almacena la base de datos. Este establece y mantiene la lista de estructuras e índices definidos en el esquema interno. Si se utilizan archivos dispersos, llama a la función de dispersión para generar la dirección de los registros. Pero no realiza directamente la entrada y salida de datos. Lo que hace es pasar la petición a los métodos de acceso del sistema operativo que se encargan de leer o escribir los datos en el buffer del sistema.
  • 34.  El preprocesador del LMD convierte las sentencias del LMD en los programas de aplicación. El preprocesador del LMD debe trabajar con el procesador de consultas para generar el código apropiado.  El compilador del LDD convierte las sentencias del LDD en un conjunto de tablas que contienen metadatos. Estas tablas se almacenan en el diccionario de datos.  El gestor del diccionario controla los accesos al diccionario de datos y se encarga de mantenerlo. La mayoría de los componentes del SGBD acceden al diccionario de datos.
  • 35. Los principales componentes de un SGBD son:  Control de autorizaciónControl de autorización. Este módulo comprueba que si el usuario tiene los permisos necesarios para llevar a cabo la operación que solicita.  Procesador de comandosProcesador de comandos. Una vez que el sistema ha comprobado los permisos del usuario, se pasa el control al procesador de comandos.  Control de la integridadControl de la integridad. Cuando una operación cambia los datos de la base de datos, este módulo debe comprobar si la operación a realizar satisface todas las restricciones de integridad necesarias.  Optimizador de consultasOptimizador de consultas. Este módulo determina la estrategia óptima para la ejecución de las consultas.
  • 36.  Gestor de transaccionesGestor de transacciones. Este módulo realiza el procesamiento de las transacciones.  Planificador (scheduler)Planificador (scheduler). Este módulo es el responsable de asegurar que las operaciones que se realizan concurrentemente sobre la base de datos tienen lugar sin conflictos.  Gestor de recuperaciónGestor de recuperación. Este módulo garantiza que la base de datos permanece en un estado consistente en caso de que se produzca algún fallo.  Gestor de buffersGestor de buffers. Este módulo es el responsable de transferir los datos entre memoria principal y los dispositivos de almacenamiento secundario. A este módulo también se le denomina gestor de datos.