SlideShare una empresa de Scribd logo
Lenguajes de Bases de Datos
Un sistema de bases de datos proporciona
 Un lenguaje de definición de datos (LDD) para definir la estructura que almacena los datos así
como procedimientos/funciones que permite consultar la base de datos.
 Y un lenguaje de manipulación de datos (LMD) para tareas de consulta o modificación de los
datos contenidos en las bases de datos.
Ambos en la práctica, el lenguaje de definición y manipulación de datos no son dos lenguajes
separados, forman partes de un único lenguaje de bases de datos, tal como SQL (Structured Query
Lenguaje).
Una estructura o esquema de base de datos se especifica mediante un conjunto de definiciones
expresadas mediante un lenguaje especial llamado lenguaje de definición de datos (LDD).
Por ejemplo, la siguiente instrucción en el lenguaje SQL define la tabla empleado:
create table empleado (
numeroCedula char (8),
nombreEmpleado char (40) ,
direccionEmpleado char (80),
SexoEmpleado char (1)
edadEmpleado integer
fechaNacimiento char (8)
numeroTelefono char (11)
sueldoEmpleado real
)
La ejecución de la instrucción LDD anterior crea la tabla empleado. Además, actualiza un conjunto
especial de tablas denominado diccionario de datos o directorio de datos.
Un diccionario de datos contiene metadatos, es decir, datos acerca de los datos.
La estructura o esquema de una tabla es un ejemplo de metadatos. Un sistema de base de datos
consulta el diccionario de datos antes de leer o modificar los datos reales.
Especificamos el almacenamiento y los métodos de acceso usados por el sistema de bases de datos por
un conjunto de instrucciones en un tipo especial de LDD denominado lenguaje de almacenamiento y
definición de datos.
Los valores de datos almacenados en la base de datos deben satisfacer ciertas restricciones de
consistencia.
Por ejemplo, supóngase que el sueldo de un empleado no debe estar por debajo de 0 Bs. El LDD
proporciona facilidades para especificar tales restricciones. Los sistemas de bases de datos comprueban
estas restricciones cada vez que se actualiza la base de datos.
Curso de Base de Datos. Lenguajes de base de datos
Ing. Jesús Parra
Estructura o Esquema
Lenguaje de Manipulación de Datos
La manipulación de datos es:
 Recuperación de información almacenada en la base de datos.
 Inserción de información nueva en la base de datos.
 Borrado de información de la base de datos.
 Modificación de información almacenada en la base de datos.
Un lenguaje de manipulación de datos (LMD) es un lenguaje que permite a los usuarios acceder o
manipular los datos organizados mediante el modelo de datos apropiado. Hay dos tipos básicamente:
✔ LMDs procedimentales. Requieren que el usuario especifique qué datos se necesitan y cómo
obtener esos datos.
✔ LMDs declarativos. Conocidos como LMDs NO procedimentales y requieren que el usuario
especifique qué datos se necesitan sin especificar cómo obtener esos datos.
Una consulta es una instrucción de solicitud para recuperar información. La parte de un LMD que
implica recuperación de información se llama lenguaje de consultas.
Esta consulta en el lenguaje SQL encuentra el nombre del empleado cuya cédula de identidad es
16.559.724 :
select nombreEmpleado
from empleado
where numeroCedula = “16559724”
Acceso a la base de datos desde un programa
Los programas son un tipo de software diseñado para facilitar al usuario una tarea y podemos usarlos
para interactuar con la base de datos. Estos programas se escriben usualmente en un lenguaje anfitrión
como Cobol, C, C++ o Java, Python, PHP, Visual .net, entre otros.
Para acceder a la base de datos, las instrucciones LMD necesitan ser ejecutadas desde un lenguaje
anfitrión. Existen dos maneras de hacerlo :
 Utilizando una interfaz externa
 De forma interna en la aplicación
Utilizando una interfaz externa : Proporcionando una interfaz de programas que se pueden usar para
enviar instrucciones LMD y LDD a la base de datos, y recuperar los datos.
Curso de Base de Datos. Lenguajes de base de datos
Ing. Jesús Parra
 El estándar de conectividad abierta de bases de datos (ODBC, Open Data Base Connectivity)
definido por Microsoft para el uso con el lenguaje C es un estándar de interfaz de programas de
aplicación usado comúnmente.
 El estándar conectividad de Java con bases de datos (JDBC, Java Data Base Connectivity)
proporciona características correspondientes para el lenguaje Java.
De forma interna en la aplicación : Extendiendo la sintaxis del lenguaje anfitrión para incorporar
llamadas LMD dentro del programa del lenguaje anfitrión . Usualmente, un carácter especial precede a
las llamadas LMD, y un preprocesador, denominado el precompilador LMD, convierte las
instrucciones LMD en llamadas normales a procedimientos en el lenguaje anfitrión.
Usuarios y administradores de la base de datos
Un objetivo de un sistema de bases de datos es recuperar información y almacenar nueva
información en la base de datos. Las personas que trabajan con una base de datos se pueden clasificar
como usuarios de bases de datos o como administradores.
Usuarios de bases de datos e interfaces de usuario
Existen cuatro tipos diferentes de usuarios de un sistema de base de datos, diferenciados por la forma
en que ellos recuperar información y almacenar nueva información en la base de datos.
 Usuarios normales
 Programadores de aplicaciones
 Usuarios sofisticados
 Usuarios especializados
Usuarios normales
Son usuarios no sofisticados que interactúan con el sistema mediante la invocación de alguno de los
programas de aplicación, Por ejemplo, un cajero bancario que necesita transferir Bs 100.000,00 de la
cuenta A a una cuenta B ejecutaría un programa para realizar la transferencia.
Programadores o desarrolladores de aplicaciones
Son profesionales de informática que escriben programas o aplicación. Los programadores o
desarrolladores, pueden elegir entre muchas herramientas para desarrollar interfaces de usuario. Las
herramientas de desarrollo rápido de aplicaciones (RAD, Rapid Application Development) son
herramientas que permiten al programador de aplicaciones construir formularios e informes sin escribir
un programa.
Hay también tipos especiales de lenguajes de programación que combinan estructuras de control
imperativo con instrucciones del lenguaje de manipulación de datos. Estos lenguajes, llamados a veces
lenguajes de cuarta generación.
Curso de Base de Datos. Lenguajes de base de datos
Ing. Jesús Parra
Usuarios sofisticados
Interactúan con el sistema sin programas escritos. En su lugar, ellos forman sus consultas en un
lenguaje de consulta de bases de datos. Cada una de estas consultas se envía al procesador de consultas,
cuya función es transformar instrucciones LMD a instrucciones que el gestor de almacenamiento
entienda. Los analistas que escriben y envían las consultas para explorar los datos en la base de datos
entran en esta categoría.
Las herramientas de procesamiento analítico en línea (OLAP, Online Analytical Processing)
simplifican la labor de los analistas permitiéndoles ver resúmenes de datos de formas diferentes. Otra
clase de herramientas para los analistas son las herramientas de recopilación de datos, que les ayudan a
encontrar ciertas clases de patrones de datos.
Usuarios especializados
Son usuarios sofisticados que escriben aplicaciones de bases de datos especializadas que no son
adecuadas en el marco de procesamiento de datos tradicional. Entre estas aplicaciones están los
sistemas de diseño asistido por computador, sistemas de bases de conocimientos y sistemas expertos,
sistemas que almacenan los datos con tipos de datos complejos (por ejemplo, datos gráficos y datos de
audio) y sistemas de modelado del entorno.
Administrador de bases de datos (DBA)
Una de las principales razones de usar SGBD es tener un control centralizado tanto de los datos como
de los programas que acceden a esos datos. La persona que tiene este control central sobre el sistema se
llama administrador de la base de datos (DBA, database administrator).
Las funciones de un DBA incluyen las siguientes:
 Definición del esquema. Crea el esquema mediante instrucciones de definición de datos en el
LDD.
 Definición de la estructura y del método de acceso.
 Modificación del esquema y de la organización física. Los DBA realizan cambios en el
esquema y en la organización física para reflejar las necesidades cambiantes de la organización,
o para alterar la organización física para mejorar el rendimiento.
 Concesión de autorización para el acceso a los datos. Determinar a qué partes de la base de
datos puede acceder cada usuario.
 Mantenimiento frecuente.
➢ Copia de seguridad periódica de la base de datos, bien sobre cinta o sobre servidores
remotos, para prevenir la pérdida de datos en caso de desastres como inundaciones.
➢ Asegurarse de que haya suficiente espacio libre en disco para las operaciones normales
y aumentar el espacio en disco según sea necesario.
➢ Supervisión de los trabajos que se ejecuten en la base de datos y asegurarse de que el
rendimiento no se degrada por tareas muy costosas iniciadas por algunos usuarios.
Curso de Base de Datos. Lenguajes de base de datos
Ing. Jesús Parra
Gestión de Transacciones
Varias operaciones sobre la base de datos forman a menudo una única unidad lógica de trabajo. Que
debe mantener las propiedades de:
 Atomicidad: Todo o nada.
 Consistencia: Preservación de los datos.
 Durabilidad: Persistencia de la información.
Una transacción es una colección de operaciones que se lleva a cabo como una única función lógica en
una aplicación de bases de datos.
Cada transacción es una unidad de atomicidad y consistencia.
 Es decir, si la base de datos era consistente cuando la transacción comenzó, la base de datos
debe ser consistente cuando la transacción termine con éxito.
 Sin embargo, durante la ejecución de una transacción, puede ser necesario permitir
inconsistencias temporalmente, ya que o el cargo de A o el abono de B se debe realizar uno
antes que otro.
Asegurar las propiedades de atomicidad y durabilidad es responsabilidad del propio sistema de bases de
datos, específicamente del componente de gestión de transacciones.
Otras funciones que debe desempeñar el SGBD durante el proceso de transacciones son:
 Recuperación de fallos, es decir, detectar los fallos del sistema y restaurar la base de datos al
estado que existía antes de que ocurriera el fallo.
 Control de Concurrencia: Controlar la interacción entre las transacciones concurrentes para
asegurar la consistencia de la base de datos.
Estructura de un sistema de bases de datos
Un sistema de bases de datos se divide en módulos que se encargan de cada una de las
responsabilidades del sistema completo.
Los componentes funcionales de un sistema de bases de datos se pueden dividir a grandes rasgos:
 Gestor de almacenamiento.
 Procesador de consultas.
Gestor de almacenamiento
 Un gestor de almacenamiento es un módulo de programa que proporciona la interfaz entre los
datos de bajo nivel en la base de datos y los programas de aplicación y consultas emitidas al
sistema.
 El gestor de almacenamiento es responsable de la interacción con el gestor de archivos.
Curso de Base de Datos. Lenguajes de base de datos
Ing. Jesús Parra
 El gestor de almacenamiento traduce las diferentes instrucciones LMD a órdenes de un sistema
de archivos de bajo nivel. Así, el gestor de almacenamiento es responsable del
almacenamiento, recuperación y actualización de los datos en la base de datos.
Gestor de Almacenamiento
Los componentes del gestor de almacenamiento incluyen:
 Gestor de autorización e integridad, que comprueba que se satisfagan las restricciones de
integridad y la autorización de los usuarios para acceder a los datos.
 Gestor de transacciones, que asegura que la base de datos quede en un estado consistente
(correcto) a pesar de los fallos del sistema, y que las ejecuciones de transacciones concurrentes
ocurran si conflictos.
 Gestor de archivos, que gestiona la reserva de espacio de almacenamiento de disco y las
estructuras de datos usadas para representar la información almacenada en disco.
 Gestor de memoria intermedia, que es responsable de traer los datos del disco de
almacenamiento a memoria principal y decidir qué datos tratar en memoria caché.
El gestor de almacenamiento implementa varias estructuras de datos como parte de la implementación
física del sistema:
✔ Archivos de datos, que almacenan la base de datos en sí.
✔ Diccionario de datos, que almacena metadatos acerca de la estructura de la base de datos, en
particular, el esquema de la base de datos.
✔ Índices, que proporcionan acceso rápido a elementos de datos que tienen valores particulares.
Procesador de consultas
El procesador de consultas ayuda al sistema de bases de datos a simplificar y facilitar el acceso a los
datos.
 Las vistas de alto nivel ayudan a conseguir este objetivo.
Es trabajo del sistema de bases de datos traducir las actualizaciones y las consultas escritas en un
lenguaje no procedimental, en el nivel lógico, en una secuencia de operaciones en el nivel físico.
Los componentes del procesador de consultas incluyen:
 Intérprete del LDD, que interpreta las instrucciones del LDD y registra las definiciones en el
diccionario de datos.
 Compilador del LMD, que traduce las instrucciones del LMD en un lenguaje de consultas a un
plan de evaluación que consiste en instrucciones de bajo nivel que entiende el motor de
evaluación de consultas.
 Motor de evaluación de consultas, que ejecuta las instrucciones de bajo nivel generadas por el
compilador del LMD.
Curso de Base de Datos. Lenguajes de base de datos
Ing. Jesús Parra
Arquitectura de un sistema de bases de datos
En un ambiente de trabajo de red se pueden diferenciar:
 Los equipos cliente, donde trabajan los usuarios remotos de la base de datos
 Y los servidor, en las que se ejecuta el sistema de bases de datos.
Curso de Base de Datos. Lenguajes de base de datos
Ing. Jesús Parra

Más contenido relacionado

PPTX
PPTX
PPTX
Lenguajes de bases de datos
PPTX
Usuarios Y Administradores
PPT
Lenguajes de bases de datos
PPTX
Manejador de base de datos
PPTX
Unidad 1. Sistema Manejador de Bases de Datos
PPT
Sistemas de base de datos
Lenguajes de bases de datos
Usuarios Y Administradores
Lenguajes de bases de datos
Manejador de base de datos
Unidad 1. Sistema Manejador de Bases de Datos
Sistemas de base de datos

La actualidad más candente (19)

PPTX
Gestión transacciones
PPTX
Sistema GestióN De Bases De Datos
PPTX
Diapositivas sobre BD (Base de Datos)
PPTX
Lindaddadadaaaaa
PPTX
Estructura del sistema de bases de datos
DOCX
Trabajo bases de datos
PDF
Presentacion bases de datos pibd213 unidad i
PDF
Sistemas gestores-de-bases-de-datos
PDF
Base de datos unidad 1
DOCX
GESTOR DE BASE DE DATOS
PPT
Sistemas de Gestión de Bases de datos
DOC
Sistema manejador de bases de datos
DOCX
Guia de planeacion 2
PPTX
Actividad 4 presentacion escobar
PPTX
Bases de datos
PPT
Balotario oficial de bd
PPTX
Base de datos
DOCX
Base de datos alfonzo
PPTX
Base de datos
Gestión transacciones
Sistema GestióN De Bases De Datos
Diapositivas sobre BD (Base de Datos)
Lindaddadadaaaaa
Estructura del sistema de bases de datos
Trabajo bases de datos
Presentacion bases de datos pibd213 unidad i
Sistemas gestores-de-bases-de-datos
Base de datos unidad 1
GESTOR DE BASE DE DATOS
Sistemas de Gestión de Bases de datos
Sistema manejador de bases de datos
Guia de planeacion 2
Actividad 4 presentacion escobar
Bases de datos
Balotario oficial de bd
Base de datos
Base de datos alfonzo
Base de datos
Publicidad

Destacado (20)

PDF
Necronomicon
PDF
Comunicación CIBES 2015
PPS
Aspartame
PPTX
Guide pratique de la cyberformation en entreprise
PPT
Cadena de valor
PPT
Marc halevy optimisme_de_demain_vs_cynisme_d_hier
PDF
Estampas comunión eva_morales
PDF
Openlayers - Drupalcamp Paris 2013
PPTX
Der perfekte Baukasten
PPTX
Thessa sagt
PPT
Claupo
PDF
Mobile Mashups mit der TLA
PPS
Numbers
PPTX
Glogster EDU
PDF
Tarea de presupuestos hierros
PDF
Wie Transformationen und gesellschaftliche Innovationen gelingen können
PDF
Libro de Daniel No.1
PPS
Dreckhalde
PPT
Et le français dans tout ça #26
PPTX
Hecho en méxico, hecho en gf k contactos con su entorno- julio 2010
Necronomicon
Comunicación CIBES 2015
Aspartame
Guide pratique de la cyberformation en entreprise
Cadena de valor
Marc halevy optimisme_de_demain_vs_cynisme_d_hier
Estampas comunión eva_morales
Openlayers - Drupalcamp Paris 2013
Der perfekte Baukasten
Thessa sagt
Claupo
Mobile Mashups mit der TLA
Numbers
Glogster EDU
Tarea de presupuestos hierros
Wie Transformationen und gesellschaftliche Innovationen gelingen können
Libro de Daniel No.1
Dreckhalde
Et le français dans tout ça #26
Hecho en méxico, hecho en gf k contactos con su entorno- julio 2010
Publicidad

Similar a Estructura basedatos (20)

PDF
Cuestionario 1.2 Base de Datos
PPTX
Sistemas gestores de las bases de datos
PDF
Diseno de bases de datos Capitulo 1.pdf
PPTX
Base de datos 1
PPTX
Bd uni 1_2
PPTX
Base de datos
PPT
PPTX
Bases de datos
DOC
Smb ds
DOC
Sistemas Manejadores de Bases de Datos
DOC
PPTX
Inducción
PPTX
Tipos de Datos
PDF
Taller de base de datos ags dic_2014 control escolar
PPTX
Presentacion Base de Datos.pptx
PPT
01 introduccion (1)my sql
PPTX
Bases de datos, Mysql y phpMyadmin
PPTX
Tarea 3 puestos y responsabilidades del personal de bd
Cuestionario 1.2 Base de Datos
Sistemas gestores de las bases de datos
Diseno de bases de datos Capitulo 1.pdf
Base de datos 1
Bd uni 1_2
Base de datos
Bases de datos
Smb ds
Sistemas Manejadores de Bases de Datos
Inducción
Tipos de Datos
Taller de base de datos ags dic_2014 control escolar
Presentacion Base de Datos.pptx
01 introduccion (1)my sql
Bases de datos, Mysql y phpMyadmin
Tarea 3 puestos y responsabilidades del personal de bd

Más de Jesus Parra (8)

PPTX
Modelo Entidad Relacion
PDF
Funciones y Componente de un Sistema de Gestión de Base de Datos
PDF
Modelo de datos
ODP
Nivel de abstacción de los datos
PDF
Deep web
ODP
Agregar una tarjeta de crédito (débito) en la tienda virtual Amazon
PDF
Aprendizaje colaborativo
PPT
Uso de la TIC y el Maestro del Futuro
Modelo Entidad Relacion
Funciones y Componente de un Sistema de Gestión de Base de Datos
Modelo de datos
Nivel de abstacción de los datos
Deep web
Agregar una tarjeta de crédito (débito) en la tienda virtual Amazon
Aprendizaje colaborativo
Uso de la TIC y el Maestro del Futuro

Estructura basedatos

  • 1. Lenguajes de Bases de Datos Un sistema de bases de datos proporciona  Un lenguaje de definición de datos (LDD) para definir la estructura que almacena los datos así como procedimientos/funciones que permite consultar la base de datos.  Y un lenguaje de manipulación de datos (LMD) para tareas de consulta o modificación de los datos contenidos en las bases de datos. Ambos en la práctica, el lenguaje de definición y manipulación de datos no son dos lenguajes separados, forman partes de un único lenguaje de bases de datos, tal como SQL (Structured Query Lenguaje). Una estructura o esquema de base de datos se especifica mediante un conjunto de definiciones expresadas mediante un lenguaje especial llamado lenguaje de definición de datos (LDD). Por ejemplo, la siguiente instrucción en el lenguaje SQL define la tabla empleado: create table empleado ( numeroCedula char (8), nombreEmpleado char (40) , direccionEmpleado char (80), SexoEmpleado char (1) edadEmpleado integer fechaNacimiento char (8) numeroTelefono char (11) sueldoEmpleado real ) La ejecución de la instrucción LDD anterior crea la tabla empleado. Además, actualiza un conjunto especial de tablas denominado diccionario de datos o directorio de datos. Un diccionario de datos contiene metadatos, es decir, datos acerca de los datos. La estructura o esquema de una tabla es un ejemplo de metadatos. Un sistema de base de datos consulta el diccionario de datos antes de leer o modificar los datos reales. Especificamos el almacenamiento y los métodos de acceso usados por el sistema de bases de datos por un conjunto de instrucciones en un tipo especial de LDD denominado lenguaje de almacenamiento y definición de datos. Los valores de datos almacenados en la base de datos deben satisfacer ciertas restricciones de consistencia. Por ejemplo, supóngase que el sueldo de un empleado no debe estar por debajo de 0 Bs. El LDD proporciona facilidades para especificar tales restricciones. Los sistemas de bases de datos comprueban estas restricciones cada vez que se actualiza la base de datos. Curso de Base de Datos. Lenguajes de base de datos Ing. Jesús Parra Estructura o Esquema
  • 2. Lenguaje de Manipulación de Datos La manipulación de datos es:  Recuperación de información almacenada en la base de datos.  Inserción de información nueva en la base de datos.  Borrado de información de la base de datos.  Modificación de información almacenada en la base de datos. Un lenguaje de manipulación de datos (LMD) es un lenguaje que permite a los usuarios acceder o manipular los datos organizados mediante el modelo de datos apropiado. Hay dos tipos básicamente: ✔ LMDs procedimentales. Requieren que el usuario especifique qué datos se necesitan y cómo obtener esos datos. ✔ LMDs declarativos. Conocidos como LMDs NO procedimentales y requieren que el usuario especifique qué datos se necesitan sin especificar cómo obtener esos datos. Una consulta es una instrucción de solicitud para recuperar información. La parte de un LMD que implica recuperación de información se llama lenguaje de consultas. Esta consulta en el lenguaje SQL encuentra el nombre del empleado cuya cédula de identidad es 16.559.724 : select nombreEmpleado from empleado where numeroCedula = “16559724” Acceso a la base de datos desde un programa Los programas son un tipo de software diseñado para facilitar al usuario una tarea y podemos usarlos para interactuar con la base de datos. Estos programas se escriben usualmente en un lenguaje anfitrión como Cobol, C, C++ o Java, Python, PHP, Visual .net, entre otros. Para acceder a la base de datos, las instrucciones LMD necesitan ser ejecutadas desde un lenguaje anfitrión. Existen dos maneras de hacerlo :  Utilizando una interfaz externa  De forma interna en la aplicación Utilizando una interfaz externa : Proporcionando una interfaz de programas que se pueden usar para enviar instrucciones LMD y LDD a la base de datos, y recuperar los datos. Curso de Base de Datos. Lenguajes de base de datos Ing. Jesús Parra
  • 3.  El estándar de conectividad abierta de bases de datos (ODBC, Open Data Base Connectivity) definido por Microsoft para el uso con el lenguaje C es un estándar de interfaz de programas de aplicación usado comúnmente.  El estándar conectividad de Java con bases de datos (JDBC, Java Data Base Connectivity) proporciona características correspondientes para el lenguaje Java. De forma interna en la aplicación : Extendiendo la sintaxis del lenguaje anfitrión para incorporar llamadas LMD dentro del programa del lenguaje anfitrión . Usualmente, un carácter especial precede a las llamadas LMD, y un preprocesador, denominado el precompilador LMD, convierte las instrucciones LMD en llamadas normales a procedimientos en el lenguaje anfitrión. Usuarios y administradores de la base de datos Un objetivo de un sistema de bases de datos es recuperar información y almacenar nueva información en la base de datos. Las personas que trabajan con una base de datos se pueden clasificar como usuarios de bases de datos o como administradores. Usuarios de bases de datos e interfaces de usuario Existen cuatro tipos diferentes de usuarios de un sistema de base de datos, diferenciados por la forma en que ellos recuperar información y almacenar nueva información en la base de datos.  Usuarios normales  Programadores de aplicaciones  Usuarios sofisticados  Usuarios especializados Usuarios normales Son usuarios no sofisticados que interactúan con el sistema mediante la invocación de alguno de los programas de aplicación, Por ejemplo, un cajero bancario que necesita transferir Bs 100.000,00 de la cuenta A a una cuenta B ejecutaría un programa para realizar la transferencia. Programadores o desarrolladores de aplicaciones Son profesionales de informática que escriben programas o aplicación. Los programadores o desarrolladores, pueden elegir entre muchas herramientas para desarrollar interfaces de usuario. Las herramientas de desarrollo rápido de aplicaciones (RAD, Rapid Application Development) son herramientas que permiten al programador de aplicaciones construir formularios e informes sin escribir un programa. Hay también tipos especiales de lenguajes de programación que combinan estructuras de control imperativo con instrucciones del lenguaje de manipulación de datos. Estos lenguajes, llamados a veces lenguajes de cuarta generación. Curso de Base de Datos. Lenguajes de base de datos Ing. Jesús Parra
  • 4. Usuarios sofisticados Interactúan con el sistema sin programas escritos. En su lugar, ellos forman sus consultas en un lenguaje de consulta de bases de datos. Cada una de estas consultas se envía al procesador de consultas, cuya función es transformar instrucciones LMD a instrucciones que el gestor de almacenamiento entienda. Los analistas que escriben y envían las consultas para explorar los datos en la base de datos entran en esta categoría. Las herramientas de procesamiento analítico en línea (OLAP, Online Analytical Processing) simplifican la labor de los analistas permitiéndoles ver resúmenes de datos de formas diferentes. Otra clase de herramientas para los analistas son las herramientas de recopilación de datos, que les ayudan a encontrar ciertas clases de patrones de datos. Usuarios especializados Son usuarios sofisticados que escriben aplicaciones de bases de datos especializadas que no son adecuadas en el marco de procesamiento de datos tradicional. Entre estas aplicaciones están los sistemas de diseño asistido por computador, sistemas de bases de conocimientos y sistemas expertos, sistemas que almacenan los datos con tipos de datos complejos (por ejemplo, datos gráficos y datos de audio) y sistemas de modelado del entorno. Administrador de bases de datos (DBA) Una de las principales razones de usar SGBD es tener un control centralizado tanto de los datos como de los programas que acceden a esos datos. La persona que tiene este control central sobre el sistema se llama administrador de la base de datos (DBA, database administrator). Las funciones de un DBA incluyen las siguientes:  Definición del esquema. Crea el esquema mediante instrucciones de definición de datos en el LDD.  Definición de la estructura y del método de acceso.  Modificación del esquema y de la organización física. Los DBA realizan cambios en el esquema y en la organización física para reflejar las necesidades cambiantes de la organización, o para alterar la organización física para mejorar el rendimiento.  Concesión de autorización para el acceso a los datos. Determinar a qué partes de la base de datos puede acceder cada usuario.  Mantenimiento frecuente. ➢ Copia de seguridad periódica de la base de datos, bien sobre cinta o sobre servidores remotos, para prevenir la pérdida de datos en caso de desastres como inundaciones. ➢ Asegurarse de que haya suficiente espacio libre en disco para las operaciones normales y aumentar el espacio en disco según sea necesario. ➢ Supervisión de los trabajos que se ejecuten en la base de datos y asegurarse de que el rendimiento no se degrada por tareas muy costosas iniciadas por algunos usuarios. Curso de Base de Datos. Lenguajes de base de datos Ing. Jesús Parra
  • 5. Gestión de Transacciones Varias operaciones sobre la base de datos forman a menudo una única unidad lógica de trabajo. Que debe mantener las propiedades de:  Atomicidad: Todo o nada.  Consistencia: Preservación de los datos.  Durabilidad: Persistencia de la información. Una transacción es una colección de operaciones que se lleva a cabo como una única función lógica en una aplicación de bases de datos. Cada transacción es una unidad de atomicidad y consistencia.  Es decir, si la base de datos era consistente cuando la transacción comenzó, la base de datos debe ser consistente cuando la transacción termine con éxito.  Sin embargo, durante la ejecución de una transacción, puede ser necesario permitir inconsistencias temporalmente, ya que o el cargo de A o el abono de B se debe realizar uno antes que otro. Asegurar las propiedades de atomicidad y durabilidad es responsabilidad del propio sistema de bases de datos, específicamente del componente de gestión de transacciones. Otras funciones que debe desempeñar el SGBD durante el proceso de transacciones son:  Recuperación de fallos, es decir, detectar los fallos del sistema y restaurar la base de datos al estado que existía antes de que ocurriera el fallo.  Control de Concurrencia: Controlar la interacción entre las transacciones concurrentes para asegurar la consistencia de la base de datos. Estructura de un sistema de bases de datos Un sistema de bases de datos se divide en módulos que se encargan de cada una de las responsabilidades del sistema completo. Los componentes funcionales de un sistema de bases de datos se pueden dividir a grandes rasgos:  Gestor de almacenamiento.  Procesador de consultas. Gestor de almacenamiento  Un gestor de almacenamiento es un módulo de programa que proporciona la interfaz entre los datos de bajo nivel en la base de datos y los programas de aplicación y consultas emitidas al sistema.  El gestor de almacenamiento es responsable de la interacción con el gestor de archivos. Curso de Base de Datos. Lenguajes de base de datos Ing. Jesús Parra
  • 6.  El gestor de almacenamiento traduce las diferentes instrucciones LMD a órdenes de un sistema de archivos de bajo nivel. Así, el gestor de almacenamiento es responsable del almacenamiento, recuperación y actualización de los datos en la base de datos. Gestor de Almacenamiento Los componentes del gestor de almacenamiento incluyen:  Gestor de autorización e integridad, que comprueba que se satisfagan las restricciones de integridad y la autorización de los usuarios para acceder a los datos.  Gestor de transacciones, que asegura que la base de datos quede en un estado consistente (correcto) a pesar de los fallos del sistema, y que las ejecuciones de transacciones concurrentes ocurran si conflictos.  Gestor de archivos, que gestiona la reserva de espacio de almacenamiento de disco y las estructuras de datos usadas para representar la información almacenada en disco.  Gestor de memoria intermedia, que es responsable de traer los datos del disco de almacenamiento a memoria principal y decidir qué datos tratar en memoria caché. El gestor de almacenamiento implementa varias estructuras de datos como parte de la implementación física del sistema: ✔ Archivos de datos, que almacenan la base de datos en sí. ✔ Diccionario de datos, que almacena metadatos acerca de la estructura de la base de datos, en particular, el esquema de la base de datos. ✔ Índices, que proporcionan acceso rápido a elementos de datos que tienen valores particulares. Procesador de consultas El procesador de consultas ayuda al sistema de bases de datos a simplificar y facilitar el acceso a los datos.  Las vistas de alto nivel ayudan a conseguir este objetivo. Es trabajo del sistema de bases de datos traducir las actualizaciones y las consultas escritas en un lenguaje no procedimental, en el nivel lógico, en una secuencia de operaciones en el nivel físico. Los componentes del procesador de consultas incluyen:  Intérprete del LDD, que interpreta las instrucciones del LDD y registra las definiciones en el diccionario de datos.  Compilador del LMD, que traduce las instrucciones del LMD en un lenguaje de consultas a un plan de evaluación que consiste en instrucciones de bajo nivel que entiende el motor de evaluación de consultas.  Motor de evaluación de consultas, que ejecuta las instrucciones de bajo nivel generadas por el compilador del LMD. Curso de Base de Datos. Lenguajes de base de datos Ing. Jesús Parra
  • 7. Arquitectura de un sistema de bases de datos En un ambiente de trabajo de red se pueden diferenciar:  Los equipos cliente, donde trabajan los usuarios remotos de la base de datos  Y los servidor, en las que se ejecuta el sistema de bases de datos. Curso de Base de Datos. Lenguajes de base de datos Ing. Jesús Parra