B a s e d e d a t o s Sistemas Manejadores de Base de datos CONCEPTO DE BASE DE DATOS: Es una coleccin de datos relacionados que representa informacin operacional de una organizacin.
Tiene las siguientes propiedades implcitas:
* Una base de datos es diseada, creada y poblada con datos para un propsito especfico. * Una base de datos puede ser de cualquier tamao y de complejidad variable.
Cmo se genera una base de datos? La base de datos puede ser generada y mantenida manualmente o por medio de una computadora.
Una base de datos computarizada puede ser creada y mantenida por un grupo de programas de aplicacin escritos especficamente para esta tarea o por un sistema manejador de base de datos.
Una base de datos representa algn aspecto del mundo real, algunas veces llamado minimundo, cambios en el minimundo son reflejados en la base de datos. CARACTERSTICAS DEL ENFOQUE DE BASES DE DATOS:
Un sistema de base de datos tiene naturaleza autodescriptiva (metadatos). Aislamiento entre programas y datos (Abstraccin de datos). Soporte de mltiples vistas de los datos. Capacidad para compartir los datos. Procesamiento de las transacciones multiusuario.
IMPLICACIONES DEL USO DEL ENFOQUE DE BASES DE DATOS:
Potencialidad para definir estndares Desarrollo de aplicaciones en tiempo reducido Flexibilidad Disponibilidad de la informacin actualizada Generacin de ahorro (tiempo, procesos, etc.)
SISTEMA MANEJADOR DE BASE DE DATOS(SMBD) (DBMS):
Es un software de sistemas que tiene como propsito general facilitar el proceso de definir, construir y manipular bases de datos que se utilizan para diferentes tipos de aplicaciones. Componentes de software principales asociados a un SMDB : Generadores de aplicacin. Lenguajes de cuarta generacin (4GL). Software de consulta a la base de datos. Generadores de reportes y pantallas. Ejemplos de software: Informix 4GL, Oracle, SQL server... Programas de Aplicacin/Queries Software para procesar programas/queries Software para accesar datos almacenados Definicin de la base de datos (Metadatos) Base de datos almacenada Usuarios/Programadores Esquema del ambiente de un DBMS Los niveles estn conectados lgicamente Nivel Interno Nivel Conceptual Nivel Externo PROCESOS RELACIONADOS CON LOS SMBD:
*Definir la base de datos significa la declaracin de: Los tipos de datos La estructura Las restricciones de los datos a ser almacenados en la base de datos.
* Crear o construir la base de datos: es el proceso de almacenar los datos en algn medio de almacenamiento, esto es controlado por el SMBD.
* Manipular una base de datos incluye funciones como:
Consultar la base de datos para obtener algunos datos especficos. Actualizar la base de datos para reflejar cambios en el minimundo. Generar reportes de los datos. Eliminar algunos datos
CAPACIDADES QUE DEBE OFRECER UN SMBD:
Control de redundancias. Restriccin de accesos no autorizados Proporcionar mltiples interfaces de usuario. Representar relaciones complejas entre datos. Forzar el uso de restricciones de integridad. Proporcionar mtodos de respaldos y recuperacin.
CUANDO NO UTILIZAR UN SMBD
* La base de datos y aplicaciones son simples, bien definidas y se requieren pocos cambios.
* No es necesario el acceso de mltiples usuarios a los datos.
Los tres niveles de arquitectura de un SMBD Vista Interna Vista Conceptual Vista A Vista B Vista C D B M S Nivel Externo: Vista del usuario de aplicacin, definida por el usuario o el programador de aplicaciones en consulta con el DBA Nivel conceptual: Definido por el DBA. Nivel Interno: Definido por el DBA para su optimizacin. DBMS/OS Vista Externa: Nivel mas alto, visto por el programador de aplicaciones o el usuario, en esta vista solo porciones de la base de datos son de inters para el usuario o programador de aplicaciones, se representa por el esquema externo.
Vista Conceptual o global : En esta vista se incluyen todas las entidades de la base de datos y las relaciones entre ellas. La vista conceptual representa la base de datos entera, definida por el esquema conceptual.
Vista Interna: Nivel mas bajo de abstraccin de la base de datos, contiene la definicin del almacenamiento de registros, el mtodo de representacin de datos y el acceso utilizado, expresado por el esquema interno.
Ejemplo: Se tiene una entidad de EMPLEADOS de una base de datos, con 2 aplicaciones una en el rea de pagos y otra en recursos humanos(correspondencia). Name Address Name: String Soc_Sec_No:Key Department:String Address:String Skill:String Annual_Salary:integer Name Soc_Sec_No Address Annual_Salary Registro Lgico 1 Registro Lgico 2 Registro conceptual Name: String length 25 offset 0 Soc_Sec_No:9,0 dec offset 25 Unique Department:String length 6 offset 34 Address:String length 51 offset 40 Skill:String length 20 offset 91 Annual_Salary:9,2 dec offset 111 Registro lgico DBA User 1 RH User 2 Pagos CODIFICACIN DE LOS ESQUEMAS Esquema externo:
Type EMPLOYEE = record EMPLOYEE.NAME:string; EMPLOYEE.Address:string end
Type EMPLOYEE = record EMPLOYEE.NAME:string; EMPLOYEE.Soc_Sec_No:integer unique; EMPLOYEE.Address : string; EMPLOYEE.Salary : integer end Esquema conceptual: Type EMPLOYEE = record EMPLOYEE.NAME:string; EMPLOYEE.Soc_Sec_No:integer primary key; EMPLOYEE.Department:string; EMPLOYEE.Address : string;; EMPLOYEE.Skill:string; EMPLOYEE.Annual_Salary : integer end Esquema interno:
Type EMPLOYEE = record length 120 EMPLOYEE.NAME:string length 25 offset 0; EMPLOYEE.Soc_Sec_No:integer positive 9 dec digits offset 25 unique use forindex; EMPLOYEE.Department:string length 6 offset 34; EMPLOYEE.Address : string length 51 offset 40; EMPLOYEE.Skill:string length 20 offset 91; EMPLOYEE.Annual_Salary : integer positive 9,2 dec digits offset 111 end Ejercicio: Existe una entidad de proveedores con los siguientes atributos
Nombre de atributo Tipo dato posicin en el registro Nmero integer 0 -6 Nombre String 7-26 Tipo integer 27-28 Familia integer 29-31 Contacto string 32-51 Crdito real,2 dec 52-60 Direccin string 61-80
En el departamento de cuentas por pagar se tiene una aplicacin con los atributos siguientes:
Catalgo= Nmero + Nombre + Credito
Adems en el departamento de pagos a proveedores la aplicacin siguiente:
Pagos = Nmero + Tipo + Direccin + Contacto
Elaborar los esquemas a).- Externo, b).- Conceptual, c).- Interno COMPONENTES DE UN SMBD SMBD DDL(Data Definition Language)
DML(Data Manipulation Language) Caractersticas: DDL: Utilizado para definir el esquema conceptual y proporciona detalles acerca de cmo implementar este esquema en los dispositivos fsicos utilizados para el almacenamiento de datos.
* Diccionario de datos: contiene la informacin de los datos y es consultado por el SMBD antes de cualquier operacin de manipulacin.
* Catlogo del Sistema o Directorio.
*Metadata: Datos acerca de los datos, estructura de la base de datos.
*Definir la base de datos significa la declaracin de: Los tipos de datos La estructura Las restricciones de los datos a ser almacenados en la base de datos.
DML Recuperacin de datos Insercin de nuevos datos Borrar datos Modificar datos Manipular una base de datos incluye funciones como:
Consultar la base de datos para obtener algunos datos especficos Actualizar la base de datos Generar reportes de los datos. Eliminar algunos datos.
DML: Lenguaje utilizado para manipular los datos, la primera de estas implementaciones es llamada Query. * Naive users: Usuarios que no necesitan conocer la presencia de la base de datos, el usuario es instruido acerca de cmo operar una transaccin, sus operaciones son muy limitadas. Tambin se consideran los usuarios finales que trabajan con un programa de aplicacin de formularios tipo men.
* On line users: Usuarios que se pueden comunicar directamente via computadora en lnea o indirectamente via interface del usuario y programas de aplicacin, conocen el sistema de base de datos y han adquirido un monto de experiencia.
* Application Programmer: Programadores proffesionales quienes son responsables de desarrollar los programas de aplicacin que utilizarn los usuarios naive y en lnea, los programas de aplicacin pueden ser escritos en lenguajes como Assembler,C, COBOL,Pascal...
* Data Base Administrator(DBA): El control centralizado de la base de datos es ejercido por una persona o grupo de personas bajo la supervisin de un administrador de alto nivel . Esta persona o grupo se conocen como DBA, son responsables de crear, modificar y mantener los tres niveles del DBMS. El DBA es el custodio de los datos y controla la estructura de la base de datos.
USUARIOS DE UN SMBD
Data Manager: Es el software central del DBMS, convierte las operaciones en las consultas de los usuarios, via procesador query o indirectamente via programa de aplicacin, es responsable de la interfaz con el sistema de archivos.
File Manager: Responsable de la estructura de los archivos y administra el espacio restante, tambin es responsable de localizar el bloque que contiene los registros requeridos, solicitndolo al disk manager.
Disk Manager: Es parte del sistema operativo del host y realiza todas las operaciones fsicas de entradas y salidas, el disk manager transfiere el block o pgina requerido por el file manager.