martes, 3 de diciembre de 2013

FUNCIÓN DE UN SISTEMA MANEJADOR DE BASE DE DATOS

Las funciones de un sistema manejador de base de datos permiten manipular, describir y utilizar datos e interfaces. La función de descripción o definición permite al administrador de la base de datos especificar los elementos de datos que la integran, su estructura,  los controles a afectar antes de autorizar el acceso a la base, así como las características de tipo físico y las vistas lógicas de los usuarios.  Para la estructura externa y lógica global, la función de descripción ha de proporcionar los instrumentos para la definición de las entidades y su identificación, atributos de la misma, interrelaciones entre ellas, autorizaciones de acceso, restricciones de integridad.La función de Manipulación permite a los usuarios de la base de datos buscar, añadir, suprimir y modificar los datos contenidos en la misma, siempre de acuerdo con las especificaciones y las normas de seguridad dictadas por el administrador. La función de manipulación se llevara a cabo por medio de un lenguaje de manipulación de datos (LMD) que facilita los instrumentos necesarios para la realización de estas tareas y por último, se encuentra la función de Utilización que reúne todas las interfaces que necesitan los diferentes usuarios para comunicarse con la base y proporciona un conjunto de procedimientos para el administrador. Las exigencias respecto a la forma de utilizar la base de datos son muy diferentes, según los tipos de procesos y según los usuarios, siendo preciso que la función de utilización responda a todas ellas.

NIVELES DE UN SMBD - ESQUEMA - NIVELES

Los niveles de la  base de datos especifican las estructuras que conforman la base de datos. Representa tres niveles: 1. Nivel interno: es el nivel más bajo de abstracción, y define cómo se almacenan los datos en el soporte físico, así como los métodos de acceso.2. Nivel conceptual: trata de la representación de los datos, recoge las vistas parciales de los requerimientos de los diferentes usuarios y las aplicaciones posibles. Se configura como visión organizativa total, e incluye la definición de datos y las relaciones entre ellos. 3. Nivel externo: es el nivel de mayor abstracción. A este nivel corresponden las diferentes vistas parciales que tienen de la base de datos los diferentes usuarios. 

Un 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). El resultado de la compilación de las estructuras del LDD es un conjunto de tablas que se almacenan en un archivo especial llamado diccionario de datos o directorio de datos. Este archivo se consulta antes de leer o modificar los datos reales del sistema de base de datos.


CRITERIOS PARA LA SELECCIÓN DE UN SMBD

         Entre los criterios que maneja una base de datos se encuentran: a) Un buen DBMS permitirá una fácil carga de datos en la Base de Datos desde archivos planos. b) El DBMS deberá permitir que múltiples usuarios puedan utilizar las Bases de Datos sin perder la integridad o llegar a una situación de interbloqueo (esto es importante en aplicaciones de múltiples usuarios). c) El DBMS debe ser soportado por varias configuraciones de Hardware, esto es necesario si hay probabilidad de cambiar el Hardware. d) El DBMS debería proporcionar unos buenos mensajes de error. e)Verificar la existencia de las restricciones en cuanto al número limitado de campos por registros, de registros por archivos o de archivos por Base de Datos.

COMANDOS DEL LENGUAJE DE DEFINICION DE DATOS (DDL – DATA DEFINITION LANGUAJE)

- CREATE: Este comando crea un objeto dentro de la base de datos.  Puede ser  una tabla, índice, o consulta almacenada que la base de datos soporte. 

Ejemplo (crear una tabla)
CREATE TABLE 'TABLA_NOMBRE'
'CAMPO_1' INT,
'CAMPO_2' STRING

-  DROP: Este comando elimina un objeto de la base de datos. Puede ser una tabla, vista, índice, trigger, función, procedimiento o cualquier otro objeto que el motor de la base de datos soporte. Se puede combinar con la sentencia ALTER.

Ejemplo
ALTER TABLE ''TABLA_NOMBRE''
(
DROP COLUMN ''CAMPO_NOMBRE1''
)

- ALTER: Este comando permite modificar la estructura de un objeto. Se pueden agregar/quitar campos a una tabla, modificar el tipo de un campo, agregar/quitar índices a una tabla, modificar un trigger, etc.  Se utiliza para hacer modificaciones en sentencias SQL Para eliminar una tabla de una base de datos tenemos la sentencia DROP TABLE. Con ella quitamos una o varias definiciones de tabla y todos los datos, índices, desencadenadores, restricciones y especificaciones de permisos que tengan esas tablas. Las vistas o procedimientos almacenados que hagan referencia a la tabla quitada se deben quitar explícitamente con DROP VIEW o DROP PROCEDURE. Su sintaxis es:

        DROP TABLE [nbBaseDatos.[nbEsquema].|nbEsquema.]nbTabla[ ,...n ] [ ;

Ejemplo (agregar columna a una tabla)
ALTER TABLE 'TABLA_NOMBRE' (
ADD NUEVO_CAMPO INT UNSIGNED meel
)

- TRUNCATE: Este comando trunca todo el contenido de una tabla. La ventaja sobre el comando DROP, es que si se quiere borrar todo el contenido de la tabla, es mucho más rápido, especialmente si la tabla es muy grande. La desventaja es que TRUNCATE sólo sirve cuando se quiere eliminar absolutamente todos los registros, ya que no se permite la cláusula WHERE. Si bien, en un principio, esta sentencia parecería ser DML (Lenguaje de Manipulación de Datos), es en realidad una DDL, ya que internamente, el comando TRUNCATE borra la tabla y la vuelve a crear y no ejecuta ninguna transacción.

Ejemplo
TRUNCATE TABLE ''TABLA_NOMBRE1''

INDICE

PROCESAMIENTO DE CONSULTA

 El procesamiento de consulta interacciona con el usuario mediante sentencias específicas en un Lenguaje de Consulta. Éstos son poderosos y bastante flexibles como para proporcionar soluciones múltiples a un problema, uno de los más estandares es el SQL (Lenguaje de Consulta Secuencial).

PROCESAMIENTO DE TRANSACCIONES

El procesamiento de transacciones tiene como objetivo las cuestiones referentes a la integridad de la Base de Datos, recuperación y control de la concurrencia. Una transacción es un programa de aplicación, generalmente de duración breve, que accede y actualiza una parte también generalmente pequeña de la base de datos pudiendo controlar múltiples transacciones ejecutando el paralelo sobre una misma base de datos corriendo en un sistema que puede fallar. Los objetivos del gestor de transacciones del SMBD son: evitar que las transacciones interfieran unas con otras al ejecutar en paralelo, y garantizar que la base de datos no sea dañada en forma irreparable por caídas, ya sea del sistema en sí o de alguna de las transacciones. 

MANEJO DE ALMACENAMIENTO

El manejo de almacenamiento lo realizan los Administradores de la Base de Datos quienes crean las estructuras de almacenamiento apropiadas y los métodos de acceso escribiendo un conjunto de definiciones, que son traducidas por el compilador del Lenguaje de Definición y Almacenamiento de datos. Los componentes de gestión de almacenamiento proporcionan la interfaz entre los datos de bajo nivel almacenados en la base de datos y los programas de aplicación y envío de consultas al sistema.