bases de datos i introducción. ¿que es un sgdb o dbms? consiste en una colección de datos...

42
BASES DE DATOS I Introducción

Upload: abraam-najera

Post on 02-Apr-2015

112 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

BASES DE DATOS I

Introducción

Page 2: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

¿Que es un SGDB o DBMS?

• Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a estos datos.

• La colección de datos normalmente se llama base de datos.

• Contiene información de una empresa determinada.

Page 3: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

Objetivos del curso:

• Proveer y manejar los conceptos fundamentales de la gestión de la base de datos.

• Diseño de base de datos.

• Lenguajes de bases de datos.

• Implementación de bases de datos.

Page 4: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

Objetivo primordial de un DBMS

• Es la de proporcionar un entorno que sea a la vez conveniente y eficiente para ser utilizado al extraer y almacenar información de la base de datos.

• Los sistemas de base de datos están diseñados para gestionar grandes bloques de información.

Page 5: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

Que implica esta gestión de datos?

• Implica la definición de las estructuras para el almacenamiento de información.

• Proveer mecanismos para la gestión de la información.

• Mantener la seguridad de la información almacenada.

Page 6: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

Ejemplo de un SGBD

• Consederése una empresa bancaria que tiene cuentas de ahorro de sus clientes en archivos de sistemas permanentes en el banco.

• Tienen un programa para hacer cargos o abonos de la cuenta.

• Pro. Añadir una nueva cuenta.

• Pro. P. Obtener saldo de una cuenta.

• Generar estados mensuales.

Page 7: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

Objetivos de los sistemas de BD

• Redundancia de datos. Dplic.

• Inconsistencia de datos. Actualiz.=

• Dificultad para tener acceso a los datos.

• Aislamiento de los datos. Varios arch.

• Anomalías del acceso concurrente. Superv.

• Problemas de seguridad.

• Problemas de integridad.

Page 8: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

Abstracción de datos:• Un SGBD es una

colección de archivos interrelacionados y un conjunto de programas que permiten a los usuarios acceder y modificar esos archivos.

• El objetivo imp. De un sgbd es proporcionar a los usuarios una visión abstracta de los datos

• Nivel físico, describe como se almacena los datos. Describe en detalle la estructura.

• Nivel conceptual. Describe que datos y la relación entre ellos.

• Nivel de visión. Describe sólo parte de la BD es el más alto.

Page 9: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

Niveles de abstracción de datos.

Vista nVista 2Vista 1 ....

Nivel conceptual

Nivel físico

Page 10: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

Modelos de datos

Page 11: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

A. Modelos lógicos basados en objetos.

Se usan para describir datos en los niveles conceptual y de visión. Proporciona capacidaad de estructuración flexible y permite especificar restricciones de datos explícitamente.

Page 12: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

Modelos de datos basados en objetos

– El modelo entidad-relación– El modelo orientado a objetos.– El modelo binario.– El modelo semántico de datos.– El modelo infológico.– El modelo funcional de datos.

Page 13: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

El modelo entidad-relación

• El modelo entidad relación (E-R) se basa en una percepción de un mundo real que consiste en una colección de objetos básicos llamados entidades, y relaciones entre estos objetos.

• Una Entidad: es un objeto que es distinguible de otros objetos por medio de un conjunto específico de atributos.

Page 14: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

• EL Atributo: son las características asociadas al objeto.

• Una Relación: es una asociación entre varias entidades.

• Conjunto de entidades: entidades del mismo tipo.

• Conjunto de relaciones: relaciones del mismo tipo.

Page 15: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

• El modelo E-R represente ciertas restricciones a las que deben ajustarse lo contenidos de una BD. Una restricción importante es la de cardinalidad de asignación, que expresa el número de entidades a las que puede asociarse otra entidad mediante un conjunto de relación.

Page 16: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

• La estructura lógica global de una BD puede expresarse gráficamente por el diagrama E-R:

• Rectángulos: representan conjunto de entidades.

• Elipses: representan atributos.

• Rombos: representan relaciones entre conjuntos de entidades.

• Líneas: que conectan atributos a conjuntos de entidades conjuntos de entidades a relaciones.

Page 17: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

Ejemplo:

CtaCliCliente Cuenta

Nombre

Calle

Ciudad Número Saldo

Page 18: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

El modelo orientado a objetos

• Al igual que el anterior, se basa en una colección de objetos.

• Un objeto contiene valores almacenados en variables instancia dentro del objeto, estos valores son objetos por si mismos (objetos anidados a nivel arbitrario a otros objetos).

• Un objeto también tiene partes de código que operan sobre el objeto. Estas partes se llaman métodos.

• Los objetos que contienen los mismos tipos de valores y los mismos métodos se agrupan en clases. Una clase puede ser vista como una definición de tipo para objetos.

Page 19: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

• La única forma en la que un objeto puede acceder a los datos de otro objeto es invocando a un método de ese otro objeto. Esto se llama envío de un mensaje al objeto.

• La interfaz de llamada de los métodos de un objeto define su parte visible externamente.

• La parte interna del objeto -las variables de instancia y el código de método- no son visibles externamente. El resultado es dos niveles de abstracción de datos. Ejemplo, cuenta bancaria, obtención de su saldo e interés.

Page 20: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

B. Modelos lógicos basados en registros

• Los modelos lógicos basados en registros se utilizan para describir datos en los modelos conceptual y físico, se usan para especificar la estructura lógica global de la BD y para proporcionar una descripción a nivel más alto de la implementación.

Page 21: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

• En los modelos basados en registros la BD está estructurada en registros de formato fijo de varios tipos. Cada tipo de registro define un número fijo de campos, o atributos, y cada campo normalmente es de longitud fija. El uso de registros de longitud fija simplifica la implementación del nivel físico de las BDs.

• Los tres modelos mas ámpliamente aceptados son los modelos relacionales, de red y jerárquico.

Page 22: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

El modelo relacionnal

• El modelo relacional presenta los datos y las relaciones entre los datos mediante una colección de tablas, cada una de las cuales tiene un número de columnas con nombres únicos.

Page 23: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

Ejemplo BD Relacional

Nombre Calle Ciudad Número

LowelyShiverShiverHodgesHodges

MapleNorrthNorthSidehillSidehill

QueensBronxBronxBrooklynBrooklin

900556647801647

NúmeroSaldo900556647801

5510000010536610533

Page 24: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

El modelo de red

• Los datos en el modelo de red se representan mediante colecciones de registros y las relaciones entre los datos se representan mediante enlaces, los cuales pueden verse como punteros. Los registros en la BD se organizan como colecciones de grafos arbitrarios.

Page 25: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

Ejemplo

Lowery Maple Queens

BronxNorth

BrooklinSidehill

Shiver

hodges 801

647

556

900

105366

10533

100000

55

Page 26: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

El modelo jerárquico

• El modelo jerárquico es similar al modelo de red en el sentido de que los datos y las relaciones entre los datos se representan mediante registros y enlaces, respectivamente.

• Se diferencia del modelo de red en que los registros están organizados como colecciones de árboles en vez de grafos arbitrarios.

Page 27: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

Ejemplo

Lowery Maple Queens

BronxNorth

BrooklinSidehill

Shiver

hodges

801647

556

900 105366 10533

100000

55

647 105366

Page 28: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

C. Modelo físico de datos

• Se usan para describir datos en el nivel más bajo. A diferencia de los modelos lógicos de datos, hay muy pocos modelos físicos en uso. Los más conocidos son:– Modelo unificador.– Memoria de elementos.

Page 29: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

D. Instancias y Esquemas

• Las BD cambian a lo largo del tiempo según se añade y se suprime información. La colección de información almacenada en la BD, en un momento determinado, se llama una instancia de la BD.

• EL diseño global de la BD se llama esquema de la BD. Los esquemas se cambian muy raras veces, o nunca. El concepto de esquema de BD corresponde a la noción de definición de tupo en el lenguaje de programación. Esquema Físico, conceptual, subesquema.

Page 30: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

E. Independencia de datos

• Independencia física de datos es la capacidad de modificar el esquema físico sin provocar que se vuelvan a escribir los programas de aplicación.

• Independencia lógica de datos es la capacidad de modificar el esquema conceptual sin provocar que se vuelvan a escribir los programas de aplicación.

• La independencia lógica de datos es más difícil de lograr que la independencia física. Programas son dependientes de la estructura lógica de D.

Page 31: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

F. Lenguaje de definición de datos

• Un esquema de BD se especifica por medio de un conjunto de definiciones que se expresan mediante un lenguaje especial llamado lenguaje de definición de datos (data definition language (DDL)). El resultado de la compilación de sentencias de DDL es un conjunto de tablas las cuales se almacenan en un archivo especial llamado diccionario de datos (o directorio).

Page 32: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

• Un directorio de datos es un archivo que contiene metadatos, es decir “datos sobre datos” este archivo se consulta antes de leer o modificar los datos reales en el sistema de BD.

• La estructura de almacenamiento y los métodos de acceso usados por los sistemas de BD se especifican por medio de un conjunto de definiciones en un tipo especial de DDL llamado lenguaje de almacenamiento y definición de datos. El resultado de la compilación de estas definiciones es un conjunto de instrucciones que especifican los detalles de implementación de los esquemas de BD que se esconden la los usuarios.

Page 33: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

G. Lenguaje de manipulación de datos

• En los niveles de abstracción de datos se aplican no sólo a la definición o estructuración de datos, sino también a la manipulación de datos. Por manipulación de datos queremos decir a:– La recuperación de información almacenada en la BD.– La inserción de información nueva en la BD.– La supresión de información de la BD.– La modificación de datos almacenados en la BD.

Page 34: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

• A nivel físico debemos definir algoritmos que permitan acceso acceso eficiente a los datos, En los niveles altos, facilidad de uso.

• Un lenguaje de manipulación de datos (data manipulation language (DML)) es un lenguaje que capacita a los usuarios a acceder o manipular los datos según estén organizados por el modelo de datos adecuado. Existen dos tipos:– Procedimentales.– No procedimentales.

Page 35: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

• Los DML procedimentales requieren que el usuario especifique qué datos se necesitan y cómo obtenerlos.

• Los DML no procedimentales requieren que el usuario especifique qué datos se necesitan sin especificar cómo obtenerlos. Normalmente son más sencillos de aprender y usar. Sin embargo, estos lenguajes pueden generar código que no sea eficiente como los procedimentales.

• DML es sinónimo de lenguajes de consultas.

Page 36: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

H. Gestor de base de datos• Es un módulo de programa que proporciona el

interfáz entre los datos de bajo nivel almacenados en la base de datos y los programas de aplicación y consultas hechos al sistema. El gestor de BD es responsable:– Interacción con el estor de archivos.– Implantación de la integridad– Implantación de seguridad.– Copia de seguridad y recuperación.– Control de concurrencia.

Page 37: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

I. Administrador de BD

• Funciones de un DBA:– Definición de esquema– Definición de la estructura de almacenamiento y del

método de acceso.– Modificación del esquema y de la organización

física.– Concesión de autorización para el acceso a los datos.– Especificación de las restricciones de integridad.

Page 38: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

J. Usuarios de BD

• Por su función:– Programadores de aplicaciones– Usuarios sofisticados.– Usuarios especializados.– Usuarios ingenuos.

Page 39: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

K. Estructura del sistema global• Los componentes funcionales de un SGBD son:

– Gestor de archivos– Gestor de base de datos.– Procesador de consurltas.– Precompilador de DML– Compilador de DML.

• Las estructuras de datos del sistema físico:– Archivo de datos.– Diccionario de datos.– Indices

Page 40: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

Almacenamiento en disco

Archivos

de datosDiccionario

de datos

gestorde archivos

gestorde archivos

Codigo obj.De prog. De aplic.

PrecompiladorDe LMD

ProcesadorDe consultas

Compiladorde LDD

Planificacionde BDConsultaProgramadores

de aplicación

Interfaces de aplicación

Sistema deGestion de

Base de datos

Estructura

Del sistema

User left Programer User most Administ

Page 41: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

Ejercicios

• Cuales son las principales diferencias entre un sistema de procesamiento de archivos y un sistema de gestión de base de datos?

• Que desventajas tiene un SGBD.

• Explicar la independencia física y lógica de los datos.

• Que problemas tiene el gestor de db. En sus responsabilidades.

• Listar varios lenguajes de programación diferentes que sean procedurales y no procedurales.

Page 42: BASES DE DATOS I Introducción. ¿Que es un SGDB o DBMS? Consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a

• Que grupo es mas fácil de aprender y porque?

• Listar los pasos principales que necesitan tomarse al establecer una base de datos para una empresa determinada.

• Explicar un esquema e instancia si se tiene un array bidimensional entero.

• Explique los tres niveles de abstracción de datos dentro de un array bidim. entero.