Sistemas Manejadores de Base de datos

Download Report

Transcript Sistemas Manejadores de Base de datos

Taller de Base de datos
Sistemas Manejadores de Bases
de Datos
1
Sistemas Manejadores de Base de datos
CONCEPTO DE BASE DE DATOS: Es una colección de datos relacionados
que representa información operacional de una organización.
Tiene las siguientes propiedades implícitas:
* Una base de datos es diseñada, creada y poblada con datos para un propósito
específico.
* Una base de datos puede ser de cualquier tamaño y de complejidad variable.
¿Cómo 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 aplicación escritos específicamente para esta tarea o por un sistema
manejador de base de datos.
Una base de datos representa algún aspecto del mundo real, algunas veces llamado
minimundo, cambios en el minimundo son reflejados en la base de datos.
CARACTERÍSTICAS DEL ENFOQUE DE BASES DE DATOS:
•Un sistema de base de datos tiene naturaleza autodescriptiva (metadatos).
•Aislamiento entre programas y datos (Abstracción de datos).
•Soporte de múltiples 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 estándares
•Desarrollo de aplicaciones en tiempo reducido
•Flexibilidad
•Disponibilidad de la información actualizada
•Generación de ahorro (tiempo, procesos, etc.)
SISTEMA MANEJADOR DE BASE DE DATOS(SMBD) (DBMS):
Es un software de sistemas que tiene como propósito 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 aplicación.
•Lenguajes de cuarta generación (4GL).
•Software de consulta a la base de datos.
•Generadores de reportes y pantallas.
Ejemplos de software: Informix 4GL, Oracle, SQL server...
Usuarios/Programadores
Nivel Externo
Nivel
Conceptual
Nivel
Interno
Programas de Aplicación/Queries
Software para procesar programas/queries
Software para accesar datos almacenados
Definición de la
base de datos
(Metadatos)
Base de datos
almacenada
Esquema del ambiente
de un DBMS
Los niveles están
conectados
lógicamente
PROCESOS RELACIONADOS CON LOS SMBD:
*Definir la base de datos significa la declaración 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 algún
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 específicos.
•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.
•Restricción de accesos no autorizados
•Proporcionar múltiples interfaces de usuario.
•Representar relaciones complejas entre datos.
•Forzar el uso de restricciones de integridad.
•Proporcionar métodos de respaldos y recuperación.
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 múltiples usuarios a los datos.
Los tres niveles de arquitectura de un SMBD
Nivel Externo: Vista
del usuario de aplicación,
definida por el usuario o
el programador de
aplicaciones en consulta
con el DBA
Vista A
Vista B
DBM S
Nivel conceptual:
Definido por el DBA.
Vista Conceptual
DBMS/OS
Nivel Interno: Definido
por el DBA para su
optimización.
Vista Interna
Vista C
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 interés
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 abstracción de la base de datos, contiene
la definición del almacenamiento de registros, el método de representación
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
Name
User 1 RH
Soc_Sec_No
Address
Address
Registro Lógico 1
Annual_Salary
Name: String
Registro Lógico 2
Soc_Sec_No:Key
Department:String
Address:String
Skill:String
Annual_Salary:integer
Registro conceptual
Name: String length 25 offset 0
Soc_Sec_No:9,0 dec offset 25 Unique
DBA
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 lógico
User 2
Pagos
CODIFICACIÓN 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
Número
Nombre
Tipo
Familia
Contacto
Crédito
Dirección
Tipo dato
integer
String
integer
integer
string
real,2 dec
string
posición en el registro
0 -6
7-26
27-28
29-31
32-51
52-60
61-80
En el departamento de cuentas por pagar se tiene una aplicación con los
atributos siguientes:
Catalógo= Número + Nombre + Credito
Además en el departamento de pagos a proveedores la aplicación siguiente:
Pagos = Número + Tipo + Dirección + Contacto
Elaborar los esquemas
a).- Externo, b).- Conceptual, c).- Interno
COMPONENTES DE UN SMBD
DDL(Data Definition Language)
SMBD
DML(Data Manipulation Language)
Características:
DDL: Utilizado para definir el esquema conceptual y proporciona detalles acerca
de cómo implementar este esquema en los dispositivos físicos utilizados para el
almacenamiento de datos.
* Diccionario de datos: contiene la información de los datos y es consultado por
el SMBD antes de cualquier operación de manipulación.
* Catálogo del Sistema o Directorio.
*Metadata: Datos acerca de los datos, estructura de la base de datos.
*Definir la base de datos significa la declaración de:
•Los tipos de datos
•La estructura
•Las restricciones de los datos a ser almacenados en la base de datos.
DML: Lenguaje utilizado para manipular los datos, la primera de estas
implementaciones es llamada Query.
DML
• Recuperación de datos
• Inserción de nuevos datos
• Borrar datos
• Modificar datos
Manipular una base de datos incluye funciones como:
• Consultar la base de datos para obtener algunos datos específicos
• Actualizar la base de datos
• Generar reportes de los datos.
• Eliminar algunos datos.
USUARIOS DE UN SMBD
* Naive users: Usuarios que no necesitan conocer la presencia de la base de datos,
el usuario es instruido acerca de cómo operar una transacción, sus operaciones son
muy limitadas. También se consideran los usuarios finales que trabajan con un
programa de aplicación de formularios tipo menú.
* On line users: Usuarios que se pueden comunicar directamente via computadora
en línea o indirectamente via interface del usuario y programas de aplicación, 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 aplicación que utilizarán los usuarios naive y en línea,
los programas de aplicación 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 supervisión 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.
ESTRUCTURA DE UN DBMS
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
aplicación, es responsable de la interfaz con el sistema de archivos.
File Manager: Responsable de la estructura de los archivos y administra el espacio
restante, también es responsable de localizar el bloque que contiene los registros
requeridos, solicitándolo al disk manager.
Disk Manager: Es parte del sistema operativo del host y realiza todas las operaciones
físicas de entradas y salidas, el disk manager transfiere el block o página requerido
por el file manager.
Http:www.compapp.du.ie/databases/f017.html