Componentes de un Sistema de Gestión de
                Base de Datos
Docente : Ing. Edwin Gustavo Enriquez Arias
SISTEMAS DE GESTIÓN DE BASES
           DE DATOS
                         
 Los SGBD son paquetes de software muy complejos
  y sofisticados que deben proporcionar los servicios.
 En informática existen los sistemas gestores de bases
  de datos (SGBD), es el software que interactúa con
  los programas de aplicación del usuario y con la base
  de datos.
 Un Sistema de Gestión de Bases de Datos (SGBD) es
  un conjunto de programas que permiten administrar
  y gestionar la información de una base de datos.
SISTEMAS DE GESTIÓN DE
        BASES DE DATOS.
                        
 No se puede generalizar sobre los elementos que
  componen un SGBD ya que varían mucho unos de
  otros. Sin embargo, es muy útil conocer sus
  componentes y cómo se relacionan cuando se trata
  de comprender lo que es un sistema de gestión de
  bases de datos.
 Sistema de gestión de bases de datos se divide en
  módulos que se encargan de cada una de las
  responsabilidades del sistema completo y el sistema
  operativo proporciona servicios básicos al SGBD, que
  es construido sobre él.
SISTEMAS DE GESTIÓN DE
      BASES DE DATOS.
                             
 Proporcionan a los usuarios de las bases de datos
  facilidades para realizar las siguientes tareas:
    a) Definición de los datos.
    b) Manipulación de los datos, es decir, inserción,
     actualización, borrado y consulta.
    c) Mantenimiento de la integridad de la base de datos. Los
     datos almacenados en la base de datos han de satisfacer las
     restricciones definidas en el esquema de ésta.
    d) Control de la privacidad y seguridad de los datos en la
     base de datos, permitiendo el acceso a los mismos sólo a los
     usuarios autorizados
SISTEMAS DE GESTIÓN DE
      BASES DE DATOS.
                              
 Un SGBD es una pantalla entre usuarios y el almacenamiento
  masivo. Es decir, es una interfaz entre el usuario y el
  almacenamiento de la información.
 Qué nos va a permitir:
    a) Estamos solos en la base de datos.
    b) Disponibilidad de los datos para nosotros solos.
    c) Los datos se verán como nosotros queremos verlos.
    d) Controlar las solicitudes de acceso.
    e) Protegerá a los usuarios de fallos de hardware (Mecanismos
     de recuperación).
    f) Proporciona rá a los usuarios una visión abstracta de la
     información, es decir, ocultará al usuario una información que
     no le interesa ver.
SISTEMAS DE GESTIÓN DE
      BASES DE DATOS.
                         
 Es una herramienta que nos permite INSERTAR,
  BORRAR, MODIFICAR los datos.
 Normalmente un SGBD está formado por:
   a) Paquetes de Software.
   b) Algunas veces por hardware, como el
    almacenamiento de la información (cintas) y su
    mantenimiento.
 Una B.D. está formada por un conjunto de datos,
  gestionados por un SGBD. Esto contrasta con la idea
  anticuada de ficheros.
Objetivos de los SGBD
            
 Versatilidad para representar la información.
   Los datos podrán ser accedidos de diferentes maneras.
    Así un programador usará los datos de distinto modo
    que un usuario que necesite realizar una consulta.
 Desempeño.
   La base de datos debe atender con la rapidez
    adecuada las peticiones de datos que se hagan, según
    el uso que se vaya a hacer de ellos. Por ejemplo,
    supongamos que deseamos hacer una reserva de
    plazas de un vuelo, el tiempo de respuesta debe ser de
    pocos segundos.
Objetivos de los SGBD
            
 Redundancia mínima.
   El objetivo fundamental de las bases de datos es
    eliminar la redundancia, ya que esto mejora el
    rendimiento en la base. Al haber redundancia la base
    es mayor en espacio, los tiempos de respuestas son
    mayores.
 Capacidad de acceso.
   La capacidad de respuesta de una base de datos ante
    una consulta depende de la organización física de los
    datos.
Objetivos de los SGBD
             
 Integridad.
    Los datos de una base de datos pueden ser usados por muchos
     usuarios y de diferentes maneras. Por tanto los valores
     almacenados deben cumplir determinadas restricciones. Por
     ejemplo si en una tabla existe el campo ‘EDAD’, este campo
     debe cumplir la restricción de ser mayor que cero.
 Seguridad y Privacidad.
 En una base de datos pueden haber muchos usuarios. Por tanto,
  el administrador debe garantizar que ningún usuario pueda
  acceder a datos de otros usuarios, si estos desean que sus datos
  estén protegidos. También debe existir mecanismos de
  seguridad que protejan los datos frente a fallos del sistema,
  evitando su pérdida y garantizando su recuperación.
Objetivos de los SGBD
            
 Afinación
    La organización física de los datos debe ser buena, puesto
     que con el tiempo los datos de la base van aumentando.
 Interfaz con el pasado y futuro.
    Con el tiempo las necesidades de la empresa van
     cambiando. Por tanto se hace necesario actualizar el sistema
     de procesamiento. Ante una actualización de software
     deberá cumplir:
       Independencia física de los datos.Cuando se introduzcan
        modificaciones en la organización física de los datos no
        deben afectar a los programas que usen estos datos.
       Independencia lógica de los datos. Si se añaden nuevos
        campos estos no deben afectar a los programas que usen
        estos datos.
Componentes de SGBD
         
 Gestor de Base de Datos.
   Es un conjunto de programas transparentes al usuario
    que se encargan de garantizar la seguridad, integridad
    y acceso concurrente a los datos, así como de
    interaccionar con el sistema operativo. El gestor
    proporciona una interfaz entre los datos almacenados,
    los programas que manejan los datos y los usuarios.
   El gestor almacena en el diccionario de datos la
    descripción de la base de datos, los usuarios
    permitidos y las autorizaciones pertinentes. Existe un
    usuario llamado administrador encargado de
    centralizar estas tareas.
Componentes de SGBD
         
 Diccionario de Datos.
    El diccionario de datos es una base de datos donde se almacena
     toda la descripción de la base de datos, información que hace
     referencia a la estructura de datos, relaciones entre ellos,
     gestión e implantación de la base de datos. El diccionario
     contendrá:
         Descripciones externas, conceptual e interna de la base de datos.
         Transformaciones entre los tres niveles.
         Restricciones sobre los datos.
         Acceso a los datos.
         Descripciones de las cuentas de usuarios.
         Autorizaciones de cada usuario.
         Esquemas externos de cada programa, sus usuarios y qué
          autorizaciones tienen.
Componentes de SGBD
         
 Administrador de la Base de Datos.
 El administrador de la base de datos (DBA) es una
  persona (o grupo de personas) responsable de la
  seguridad y el control de los datos, los cuales se
  pueden utilizar por cualquiera que tenga autoridad
  para ello. Si alguien desea crear un nuevo objeto de
  base de datos o modificar la estructura de un objeto
  existente, debe pedir autorización al administrador,
  que concederá los privilegios para que pueda
  modificar las estructuras de datos.
Componentes de SGBD
         
 Tareas del administrador:
    Definición del esquema lógico de la base de datos mediante
     el uso de sentencias DDL.
    Definición del esquema físico, es decir, de las estructuras de
     almacenamiento de los datos y de los métodos de acceso.
    Definición de los sub-esquemas o visiones de usuario de la
     base de datos.
    Concesión de autorización para el acceso a los datos
     mediante la asignación de privilegios a los usuarios.
    Mantenimiento de la seguridad de los datos almacenados
     en la base de datos.
Componentes de SGBD
         
 Lenguajes.
 El SGBD ha de proporcionar lenguajes para definir y manipular
  los datos de la base de datos. Podrán usar estos lenguajes los
  administradores y los usuarios. Son los siguientes:
 Lenguaje de Definición de Datos (DDL). Se utiliza para definir el
  esquema conceptual y los distintos sub-esquemas externos de la
  base de datos.
 Lenguaje de Manipulación de Datos (DML). Se utiliza para
  manipular los datos de la base de datos, permitiéndonos
  insertar, modificar, eliminar y recuperar datos.
 Lenguaje de Control de Datos (DCL). Se utiliza para controlar el
  acceso a los datos de la base de datos, definiendo los privilegios
  y tipos de acceso, así como para el control y seguridad de los
  datos. De esta tarea se encarga el administrador.
Arquitectura de Una
       Base de Datos
             
 Los usuarios de una base de datos deben tener una
  visión lo más abstracta posible de los datos
  almacenados en la base de datos, es decir, no tienen
  necesidad de saber cómo están almacenados u
  organizados los datos.
 La base de datos debe presentar una visión de los
  datos de tal manera que sea capaz de interpretarlos y
  manejarlos. No necesitan la misma información un
  experto que desea conocer la ubicación física de los
  archivos físicos, que un usuario que realiza consultas
  a la base.
Arquitectura de Una
   Base de Datos
         
Arquitectura de Una
        Base de Datos
              
 Nivel interno. Es la representación más cercana al
  almacenamiento físico de los datos. Permite describirlo tal y
  como están almacenados. Este nivel se describe mediante el
  esquema interno. En este nivel se describen los ficheros que
  contienen información, su organización, ubicación, forma de
  acceso a sus registros, su longitud, campos que lo componen,
  índices, etc.
 Nivel conceptual. No se tiene en cuenta la organización física ni
  los métodos de acceso. Existe un esquema conceptual.
 Nivel externo. Es el nivel más cercano al usuario. Representa la
  visión individual de un usuario o grupo de usuarios de la base
  de datos. En él se describe la parte de los datos que interesa a
  un usuario o grupo de usuarios.
Arquitectura de Una
       Base de Datos
             
 ESQUEMA EXTERNO: Visión parcial de las tablas
  de la base de datos según el usuario.
 Un ejemplo podría ser que el usuario ‘A’ sólo tenga
  acceso de lectura a la tabla NOTAS, y el usuario ‘B’
  tenga sólo acceso de lectura a la tabla
  ‘ASIGNATURAS’. Por tanto, aquí podemos observar
  que el administrador debe asignar una serie de
  privilegios de acceso para crear los dos esquemas
  externos.
Arquitectura de Una
       Base de Datos
             
 ESQUEMA CONCEPTUAL: Definición de todas
  las tablas, Columnas y Restricciones.
 Tabla ALUMNOS. Columnas: Nº Matrícula,
  Nombre, Curso, Dirección, Población. Clave: Nº
  Matrícula.
 Tabla ASIGNATURAS: Columnas: Código, Nombre
  de asignatura Clave: Código.
 Tabla NOTAS: Columnas: Nº Matrícula, Código
  asignatura, Nota.
Arquitectura de Una
       Base de Datos
             
 ESQUEMA INTERNO: Almacenamiento físico de
  los datos.
 Archivo de indices para tabla ALUMNOS: Clave
  alumno, Dirección de la fila.
 Archivo de índices para ASIGNATURAS: Clave
  asignatura, Dirección de la fila.
 Archivo de ALUMNOS: Nº Matrícula, Nombre,
  Curso, Dirección, Población.
 Archivo de ASIGNATURAS: Código, Nombre de
  asignatura.
Arquitectura de Una
   Base de Datos
         
Clasificación de DBMS
           
 Según el Modelo de Datos:
   Relacional.
   Orientado a Objetos.
   Otros: Redes, Jerárquico, Deductivo, ...
 Según el porte:
   Desktop (escritorio) / mono-usuario.
   Servidor / multi-usuario.
 Según distribución de la BD:
   Centralizado.
   Distribuido.
Esquemas e Instancias
           
 Esquema: Es una descripción lógica de la base de datos.
  (Campos de la B.D)
 Es un diagrama de los tipos de datos que se usa.
 Proporciona los nombres de las entidades y sus atributos.
 Especifica las relaciones entra entidades y los atributos.
 Cuando está relleno de valores tenemos una instancia de ese
  esquema.
 Instancia: Es el conjunto de valores que puede tener asociado
  un registro en un determinado momento, y que por supuesto,
  pueden variar.
 Los esquemas se representan a menudo a través de diagramas
  de bloques, donde las líneas continuas representan
  RELACIONES.
Resumen
                    
 Un Sistema de Gestión de Bases de Datos (SGBD) es
  un conjunto de programas que permiten administrar
  y gestionar la información de una base de datos.
 Esta compuesto por una serie de componentes que
  permiten la interacción del usuario con bases de
  datos.
 Mantiene una arquitectura donde un nivel
  conceptual se encuentra toda la estructura de la base
  de datos y podríamos tener varios niveles externos
  como usuarios existan. Estos niveles externo serian
  un subconjunto del nivel conceptual.
Base de datos 2(tema 2)

Base de datos 2(tema 2)

  • 1.
    Componentes de unSistema de Gestión de Base de Datos Docente : Ing. Edwin Gustavo Enriquez Arias
  • 2.
    SISTEMAS DE GESTIÓNDE BASES DE DATOS   Los SGBD son paquetes de software muy complejos y sofisticados que deben proporcionar los servicios.  En informática existen los sistemas gestores de bases de datos (SGBD), es el software que interactúa con los programas de aplicación del usuario y con la base de datos.  Un Sistema de Gestión de Bases de Datos (SGBD) es un conjunto de programas que permiten administrar y gestionar la información de una base de datos.
  • 3.
    SISTEMAS DE GESTIÓNDE BASES DE DATOS.   No se puede generalizar sobre los elementos que componen un SGBD ya que varían mucho unos de otros. Sin embargo, es muy útil conocer sus componentes y cómo se relacionan cuando se trata de comprender lo que es un sistema de gestión de bases de datos.  Sistema de gestión de bases de datos se divide en módulos que se encargan de cada una de las responsabilidades del sistema completo y el sistema operativo proporciona servicios básicos al SGBD, que es construido sobre él.
  • 4.
    SISTEMAS DE GESTIÓNDE BASES DE DATOS.   Proporcionan a los usuarios de las bases de datos facilidades para realizar las siguientes tareas:  a) Definición de los datos.  b) Manipulación de los datos, es decir, inserción, actualización, borrado y consulta.  c) Mantenimiento de la integridad de la base de datos. Los datos almacenados en la base de datos han de satisfacer las restricciones definidas en el esquema de ésta.  d) Control de la privacidad y seguridad de los datos en la base de datos, permitiendo el acceso a los mismos sólo a los usuarios autorizados
  • 5.
    SISTEMAS DE GESTIÓNDE BASES DE DATOS.   Un SGBD es una pantalla entre usuarios y el almacenamiento masivo. Es decir, es una interfaz entre el usuario y el almacenamiento de la información.  Qué nos va a permitir:  a) Estamos solos en la base de datos.  b) Disponibilidad de los datos para nosotros solos.  c) Los datos se verán como nosotros queremos verlos.  d) Controlar las solicitudes de acceso.  e) Protegerá a los usuarios de fallos de hardware (Mecanismos de recuperación).  f) Proporciona rá a los usuarios una visión abstracta de la información, es decir, ocultará al usuario una información que no le interesa ver.
  • 6.
    SISTEMAS DE GESTIÓNDE BASES DE DATOS.   Es una herramienta que nos permite INSERTAR, BORRAR, MODIFICAR los datos.  Normalmente un SGBD está formado por:  a) Paquetes de Software.  b) Algunas veces por hardware, como el almacenamiento de la información (cintas) y su mantenimiento.  Una B.D. está formada por un conjunto de datos, gestionados por un SGBD. Esto contrasta con la idea anticuada de ficheros.
  • 7.
    Objetivos de losSGBD   Versatilidad para representar la información.  Los datos podrán ser accedidos de diferentes maneras. Así un programador usará los datos de distinto modo que un usuario que necesite realizar una consulta.  Desempeño.  La base de datos debe atender con la rapidez adecuada las peticiones de datos que se hagan, según el uso que se vaya a hacer de ellos. Por ejemplo, supongamos que deseamos hacer una reserva de plazas de un vuelo, el tiempo de respuesta debe ser de pocos segundos.
  • 8.
    Objetivos de losSGBD   Redundancia mínima.  El objetivo fundamental de las bases de datos es eliminar la redundancia, ya que esto mejora el rendimiento en la base. Al haber redundancia la base es mayor en espacio, los tiempos de respuestas son mayores.  Capacidad de acceso.  La capacidad de respuesta de una base de datos ante una consulta depende de la organización física de los datos.
  • 9.
    Objetivos de losSGBD   Integridad.  Los datos de una base de datos pueden ser usados por muchos usuarios y de diferentes maneras. Por tanto los valores almacenados deben cumplir determinadas restricciones. Por ejemplo si en una tabla existe el campo ‘EDAD’, este campo debe cumplir la restricción de ser mayor que cero.  Seguridad y Privacidad.  En una base de datos pueden haber muchos usuarios. Por tanto, el administrador debe garantizar que ningún usuario pueda acceder a datos de otros usuarios, si estos desean que sus datos estén protegidos. También debe existir mecanismos de seguridad que protejan los datos frente a fallos del sistema, evitando su pérdida y garantizando su recuperación.
  • 10.
    Objetivos de losSGBD   Afinación  La organización física de los datos debe ser buena, puesto que con el tiempo los datos de la base van aumentando.  Interfaz con el pasado y futuro.  Con el tiempo las necesidades de la empresa van cambiando. Por tanto se hace necesario actualizar el sistema de procesamiento. Ante una actualización de software deberá cumplir:  Independencia física de los datos.Cuando se introduzcan modificaciones en la organización física de los datos no deben afectar a los programas que usen estos datos.  Independencia lógica de los datos. Si se añaden nuevos campos estos no deben afectar a los programas que usen estos datos.
  • 11.
    Componentes de SGBD   Gestor de Base de Datos.  Es un conjunto de programas transparentes al usuario que se encargan de garantizar la seguridad, integridad y acceso concurrente a los datos, así como de interaccionar con el sistema operativo. El gestor proporciona una interfaz entre los datos almacenados, los programas que manejan los datos y los usuarios.  El gestor almacena en el diccionario de datos la descripción de la base de datos, los usuarios permitidos y las autorizaciones pertinentes. Existe un usuario llamado administrador encargado de centralizar estas tareas.
  • 12.
    Componentes de SGBD   Diccionario de Datos.  El diccionario de datos es una base de datos donde se almacena toda la descripción de la base de datos, información que hace referencia a la estructura de datos, relaciones entre ellos, gestión e implantación de la base de datos. El diccionario contendrá:  Descripciones externas, conceptual e interna de la base de datos.  Transformaciones entre los tres niveles.  Restricciones sobre los datos.  Acceso a los datos.  Descripciones de las cuentas de usuarios.  Autorizaciones de cada usuario.  Esquemas externos de cada programa, sus usuarios y qué autorizaciones tienen.
  • 13.
    Componentes de SGBD   Administrador de la Base de Datos.  El administrador de la base de datos (DBA) es una persona (o grupo de personas) responsable de la seguridad y el control de los datos, los cuales se pueden utilizar por cualquiera que tenga autoridad para ello. Si alguien desea crear un nuevo objeto de base de datos o modificar la estructura de un objeto existente, debe pedir autorización al administrador, que concederá los privilegios para que pueda modificar las estructuras de datos.
  • 14.
    Componentes de SGBD   Tareas del administrador:  Definición del esquema lógico de la base de datos mediante el uso de sentencias DDL.  Definición del esquema físico, es decir, de las estructuras de almacenamiento de los datos y de los métodos de acceso.  Definición de los sub-esquemas o visiones de usuario de la base de datos.  Concesión de autorización para el acceso a los datos mediante la asignación de privilegios a los usuarios.  Mantenimiento de la seguridad de los datos almacenados en la base de datos.
  • 15.
    Componentes de SGBD   Lenguajes.  El SGBD ha de proporcionar lenguajes para definir y manipular los datos de la base de datos. Podrán usar estos lenguajes los administradores y los usuarios. Son los siguientes:  Lenguaje de Definición de Datos (DDL). Se utiliza para definir el esquema conceptual y los distintos sub-esquemas externos de la base de datos.  Lenguaje de Manipulación de Datos (DML). Se utiliza para manipular los datos de la base de datos, permitiéndonos insertar, modificar, eliminar y recuperar datos.  Lenguaje de Control de Datos (DCL). Se utiliza para controlar el acceso a los datos de la base de datos, definiendo los privilegios y tipos de acceso, así como para el control y seguridad de los datos. De esta tarea se encarga el administrador.
  • 16.
    Arquitectura de Una Base de Datos   Los usuarios de una base de datos deben tener una visión lo más abstracta posible de los datos almacenados en la base de datos, es decir, no tienen necesidad de saber cómo están almacenados u organizados los datos.  La base de datos debe presentar una visión de los datos de tal manera que sea capaz de interpretarlos y manejarlos. No necesitan la misma información un experto que desea conocer la ubicación física de los archivos físicos, que un usuario que realiza consultas a la base.
  • 17.
    Arquitectura de Una Base de Datos 
  • 18.
    Arquitectura de Una Base de Datos   Nivel interno. Es la representación más cercana al almacenamiento físico de los datos. Permite describirlo tal y como están almacenados. Este nivel se describe mediante el esquema interno. En este nivel se describen los ficheros que contienen información, su organización, ubicación, forma de acceso a sus registros, su longitud, campos que lo componen, índices, etc.  Nivel conceptual. No se tiene en cuenta la organización física ni los métodos de acceso. Existe un esquema conceptual.  Nivel externo. Es el nivel más cercano al usuario. Representa la visión individual de un usuario o grupo de usuarios de la base de datos. En él se describe la parte de los datos que interesa a un usuario o grupo de usuarios.
  • 19.
    Arquitectura de Una Base de Datos   ESQUEMA EXTERNO: Visión parcial de las tablas de la base de datos según el usuario.  Un ejemplo podría ser que el usuario ‘A’ sólo tenga acceso de lectura a la tabla NOTAS, y el usuario ‘B’ tenga sólo acceso de lectura a la tabla ‘ASIGNATURAS’. Por tanto, aquí podemos observar que el administrador debe asignar una serie de privilegios de acceso para crear los dos esquemas externos.
  • 20.
    Arquitectura de Una Base de Datos   ESQUEMA CONCEPTUAL: Definición de todas las tablas, Columnas y Restricciones.  Tabla ALUMNOS. Columnas: Nº Matrícula, Nombre, Curso, Dirección, Población. Clave: Nº Matrícula.  Tabla ASIGNATURAS: Columnas: Código, Nombre de asignatura Clave: Código.  Tabla NOTAS: Columnas: Nº Matrícula, Código asignatura, Nota.
  • 21.
    Arquitectura de Una Base de Datos   ESQUEMA INTERNO: Almacenamiento físico de los datos.  Archivo de indices para tabla ALUMNOS: Clave alumno, Dirección de la fila.  Archivo de índices para ASIGNATURAS: Clave asignatura, Dirección de la fila.  Archivo de ALUMNOS: Nº Matrícula, Nombre, Curso, Dirección, Población.  Archivo de ASIGNATURAS: Código, Nombre de asignatura.
  • 22.
    Arquitectura de Una Base de Datos 
  • 23.
    Clasificación de DBMS   Según el Modelo de Datos:  Relacional.  Orientado a Objetos.  Otros: Redes, Jerárquico, Deductivo, ...  Según el porte:  Desktop (escritorio) / mono-usuario.  Servidor / multi-usuario.  Según distribución de la BD:  Centralizado.  Distribuido.
  • 24.
    Esquemas e Instancias   Esquema: Es una descripción lógica de la base de datos. (Campos de la B.D)  Es un diagrama de los tipos de datos que se usa.  Proporciona los nombres de las entidades y sus atributos.  Especifica las relaciones entra entidades y los atributos.  Cuando está relleno de valores tenemos una instancia de ese esquema.  Instancia: Es el conjunto de valores que puede tener asociado un registro en un determinado momento, y que por supuesto, pueden variar.  Los esquemas se representan a menudo a través de diagramas de bloques, donde las líneas continuas representan RELACIONES.
  • 25.
    Resumen   Un Sistema de Gestión de Bases de Datos (SGBD) es un conjunto de programas que permiten administrar y gestionar la información de una base de datos.  Esta compuesto por una serie de componentes que permiten la interacción del usuario con bases de datos.  Mantiene una arquitectura donde un nivel conceptual se encuentra toda la estructura de la base de datos y podríamos tener varios niveles externos como usuarios existan. Estos niveles externo serian un subconjunto del nivel conceptual.