1 base de datos

Page 1

BASES DE DATOS Conceptos Bรกsicos Profesor: Godofredo Poccori Umeres

1


Un poco de historia … Sistemas de archivos:  Surgieron a raíz de la necesidad de almacenamiento de la información para su correspondiente reutilización (persistencia) persistencia Desventajas:  Redundancia de los datos  Los archivos están separados unos de otros (no se pueden “combinar” fácilmente)  Alto costo para la propagación de cambios  Inconsistencia debido a actualizaciones simultáneas

2


Un poco de historia … Procesamiento de Usuario del Archivo de Clientes

Clientes

Archivo de Clientes

Procesamiento de Préstamos Usuario del Archivo de Préstamos

Archivo de Préstamos

Por cada préstamo se guarda la información del cliente correspondiente: Redundancia 3


Ejemplo Archivos Tradicionales Se cuenta con dos archivos Clientes y Facturas. El primer archivo tiene los datos básicos de los clientes, mientras que en el segundo se almacenan las ventas realizadas. Al emitir cada factura se ingresan nuevamente los datos num, nombre, domicilio. Clientes Num

Nombre

Dirección

Telefono

E-mail

1225

Juan Garcia

Guaná 1202

4182569

jgarcia@adinet.co m.uy

Desventajas:

-Se

1226

Fernando Martínez

Rincón 876

9157878

Fmar@gmail.com

....

.......

.........

.........

........

Facturas

-Se

presentan redundancias de datos (datos repetidos innecesaramente) -Se

Num

Nombre

Dom.

Producto

Precio

1225

Juan Garcia

Rincón 1224

Azulejos

1250

1226

Fernando Martínes

Pintura

900

.....

.......

.......

......

Rincón 876 ........

duplican esfuerzos

pueden producir contradicciones entre los datos, si por ejemplo se ingresan nombres diferentes para un mismo cliente.


Un poco de historia … ¿Por qué surgieron los sistemas de Bases de Datos?  Necesidad de solucionar las debilidades de los sistemas de archivos  Capacidades:   

 

Manejo de persistencia Soporte por lo menos de un modelo de datos Soporte de un lenguaje de alto nivel que permita manipular y definir la estructura de la información Control de acceso Evitar inconsistencias al compartir la información 5


… Antes Dpto. Personal

Empleados

Dpto. Ventas Clientes

Ventas

Dpto. Contabilidad Cuentas

Inventario

Personal Ventas

Contabilidad

… Ahora SGBD

BASE DE DATOS Empleados Clientes Ventas Inventario Cuentas

6


CONCEPTOS BÁSICOS

Datos Entidades Claves primarias y foráneas Relaciones Restricciones de integridad referencial Metadatos

7


Datos “Datos son hechos conocidos que pueden registrarse y que tienen un significado implícito”. Ramez Elmasri y Shamkant B. Navathe

Ejemplo: Pueden constituir datos los nombres, números telefónicos y direcciones de personas que conocemos.

3256789 18 de Julio 1880

Elena Sánchez

Kli@adinet.com.uy

José Martínez Sarandí 100


Entidades

Una entidad es todo aquello de lo cual interesa guardar datos, por ejemplo: clientes, facturas, productos, empleados. En el Modelo de Entidad-Relaci贸n que se presenta, se observa que las entidades est谩n formadas por atributos o campos referidos a un mismo tema que interesa almacenar.

CLIENTES cuenta con los atributos: C贸digo de Cliente, Nombre, Apellido, Domicilio, Tel茅fono.


Claves Primarias y Claves Foráneas Cada entidad tiene una clave primaria o campo llave que identifica unívocamente al conjunto de datos. Cuando en una entidad figura la clave primaria de otra entidad, ésta se denomina clave foránea. Las entidades se relacionan entre sí a través de las claves foráneas.

CLAVES PRIMARIAS Código de Cliente es la clave primaria de Cliente. A cada cliente se le asocia un código y a cada código le corresponde un cliente. Asimismo, Número de Factura y Código de Producto son claves primarias de Facturas y Productos respectivamente.

CLAVES FORÁNEAS Son claves foráneas en Facturas Código de Cliente y Código de Producto. Clientes se relaciona con Facturas a través del Código de Cliente que figura en ambas tablas y con Productos mediante el Código de producto.


Restricciones de integridad referencial

RESTRICCIONES DE INTEGRIDAD REFERENCIAL -C贸digo

de Clientes en Facturas debe cumplir que exista en Clientes y que sea clave primaria -C贸digo

de Producto en Facturas debe cumplir que exista en Productos y que sea clave primaria 11


Retomando la Definición de Base de Datos (2), la cual señala que ésta “...es un conjunto de datos relacionados entre sí y que tienen un significado implícito”, se observa en la imagen que los datos de las tablas se relacionan a través de las claves y que éstos tienen el significado implícito que se les atribuye en dicho contexto.


Datos y Metadatos Metadatos son datos acerca de los datos presentes en la base de datos.

Ejemplo metadatos El tipo de datos puede ser Numérico, alfabético, fecha, lógico (Sï /NO).

Dato

Tipo

Longitud

Num

Numérico

4

Nombre

Alfabético

20

.....

......

.......

La longitud indica la cantidad máxima de caracteres que puede asumir el dato.

Ejemplo de Restricción de Dominio: Num >0 y <9999

13


Ciclo de desarrollo de los sistemas de informaciĂłn

En la etapa 4) DiseĂąo se definen los detalles a fin de cumplir con los requerimientos identificados en la etapa 3) AnĂĄlisis.

Fuente: Kendall y Kendall


BASE DE DATOS


Definición (1)

Una base de datos es un conjunto estructurado de datos coherentes Colección disponible de información

16


Definición(1)

Una base de datos es un conjunto estructurado de datos coherentes Colección organizada en subconjuntos, en función de ligas y de relaciones entre las diferentes informaciones (estructura lógica) 17


Definición(1)

Una base de datos es un conjunto estructurado de datos coherentes No hay contradicción entre los datos ligados, no hay pérdida de información, aun sabiendo que hay una utilización compartida de los datos entre varios usuarios

18


Definición(2) “Base de Datos es un conjunto de datos relacionados entre sí y que tienen un significado implícito”. Ramez Elmasri y Shamkant B. Navathe

La definición presentada anteriormente hace referencia a dos elementos para que un conjunto de datos constituya una Base de Datos: 1) Relaciones entre datos, tema que se trata en las próximas transparencias. 2) Significado implícito de los datos que se atribuye dependiendo del contexto en que se utilizan los mismos. Por ejemplo, el dato fecha en una base de datos de ventas puede referirse a la fecha de emisión de las facturas, mientras que si la base de datos es de música quizás corresponda a la fecha en que se grabó un tema musical.


Definición(3) . “Una base de datos tiene una fuente de la cual se derivan los datos, cierto grado de interacción con los acontecimientos del mundo real y un público que está activamente interesado en el contenido de la base de datos”. Ramez Elmasri y Shamkant B. Navathe


SISTEMA DE GESTION DE BASE DE DATOS

Definición 

Un Sistema de Gestión de Bases de Datos (SGBD) es un software que permite manipular las bases de datos •Construir •Utilizar •Mantener •Reorganizar 21


Sistema de Gestión de Bases de Datos 

Propiedades fundamentales  Independencia de los datos (OJO es muy importante)  Acceso eficiente a los datos  Integridad y seguridad de los datos  Administración de los datos  Acceso concurrente y recuperación en caso de « crash »

22


Entorno simplificado de un SGBD En el esquema se observa que los usuarios interact煤an con una aplicaci贸n (por ej. un sistema integrado de gesti贸n o un paquete contable) que utiliza un SGBD para procesar las consultas, el cual accede a los metadatos y a la base de datos correspondiente.

Fuente: Ramez Elmasri y Shamkant B. Navathe 23


Algunas definiciones 

Esquema de una Base de Datos: Datos Cuando una base de Datos es diseñada interesa definir una estructura para ésta. Esta estructura permanece “estática” durante un gran período de tiempo, aunque puede sufrir modificaciones ocasionales

Instancia: Instancia Es la información que en un determinado instante del tiempo posee la base de datos y que cambia permanentemente (excepto en algunos tipos de bases de BD particulares)

24


Algunas definiciones 

Usuario final: El que interactúa con la base de datos, por lo general a través de aplicaciones e interfaces Usuario especialista: El que diseña y programa aplicaciones para usuarios finales. DBA (Database Administrator): El que administra la base de datos. ¿Qué hace?

25


Funciones y componentes principales de un SGBD Peticiones Peticiones Esquemas externos

DML planeadas

DML No planeadas

Procesador DML

Procesador Lenguaje Consulta

Peticiones compiladas

Procesador DDL

Optimizador Esquemas y transformaciones

DDL: lenguaje de definición de datos DML: lenguaje de manipulación de datos

Peticiones optimizadas

Manejador de transacciones Manejador de almacenamiento

Datos y Metadatos

Base de datos

Fuente: “Introducción a los sistemas de bases de datos” C.J. Date 26


Componentes funcionales de un SGBD 

Metadatos o Diccionario de Datos (D.D): Contiene el esquema de la B.D, los usuarios, los permisos de acceso, etc. Son datos sobre los datos. Almacena la información que permite la traducción entre los 3 niveles de la Arquitectura ANSI/SPARC* Optimizador de consultas: Define el plan de ejecución de operaciones solicitadas por los usuarios, de tal manera que se lleven a cabo de la manera más eficiente posible Manejador de transacciones: Controla el acceso y la concurrencia de operaciones

27


Componentes funcionales de un SGBD 

Manejador de almacenamiento tiene dos componentes: -Manejador de archivos  recupera desde disco los bloques que contienen la información solicitada por una transacción. -Manejador de buffer  mantiene en memoria principal la información más usada y decide cuando llevar a disco alguno de sus bloques.

28


SGBD - Funciones 

Soporta DML: Lenguaje para actualización, almacenamiento y recuperación de datos

 

Ofrece optimización en la búsqueda de la información Soporta DDL : Lenguaje para definir los datos Metadatos (DD): Catálogo autodescriptivo, información sobre los objetos existentes en el sistema  Datos sobre los datos

29


Ventajas de un SGBD 1. 2. 3. 4. 5.

Reutilizaci贸n de datos y programas Control de redundancia Estandarizaci贸n Consistencia (No hay redundancia) Es posible equilibrar las cargas de los requerimientos (establecer prioridades)

30


Ventajas de un SGBD 6.

7. 8. 9.

Integridad (Se cumplen las reglas establecidas  ¿Por quién?) Seguridad Rapidez de desarrollo Mantenimiento y reingeniería: cambios en la estructura de datos sin cambiar los programas que los usan (hasta cierto punto)

31


Niveles de abstracci贸n (ANSI/SPARC) Vista usuario n

n esquemas externos

Vista usuario 2

Nivel externo confidencialidad Nivel conceptual integridad-coherencia Nivel interno gesti贸n de acceso

Vista usuario 1

Esquema l贸gico, resultado de un proceso de modelamiento Esquema f铆sico

32


Nivel de Visión   

 

Externo El más cercano a los usuarios finales Percepción de la base de datos por parte de los usuarios finales Tantas visiones como tipos de usuarios Cada visión de usuario final se puede caracterizar como un subesquema

33


Nivel de Visi贸n Cada visi贸n puede proporcionar diferentes representaciones de los mismos datos Visi贸n Vendedor Fechas con formato: (dd-mm-yy)

Visi贸n Contador BD

Fechas con formato: (yyyy-dd-mm)

34


Nivel de Visión Algunas visiones de usuario pueden incluir:  Datos Agrupados: Agrupados Totales por Dpto.  Datos Derivados: Derivados Sueldo total = básico + comisión  Datos Calculados: Calculados Edad de una persona (inferida a partir de su fecha de Nacimiento)

35


Nivel de Visión 

Los conceptos de dato derivado y calculado podrían usarse indistintamente para significar, en general, que un dato se genera a partir de otro(s) Pueden haber a su vez datos agregados derivados, datos agregados calculados etc.

36


Nivel Conceptual   

Mediador entre los otros 2 niveles Interesante para el usuario especialista Se ocupa de los datos almacenados en la base de datos física y las relaciones entre ellos Descripción semántica de los datos que conforman la base de datos Soporta a cada visión de usuario externa

37


Nivel Conceptual 

 

Es una visión completa de todos los requerimientos y elementos de interés para la organización Debe incluir restricciones sobre los datos La descripción del nivel conceptual no debe tener detalles dependientes del almacenamiento* Tiene asociado un lenguaje de alto nivel

* Sin embargo en algunos SGBD esto no se logra expresar de esta manera…

38


Nivel Físico   

Interno Más cercano a la máquina Interesa al Administrador y al usuario Especialista Esquema físico: Descripción y tipos de datos: tamaño y precisión, tipos de índices y de estructuras de almacenamiento concretas que se manejan, de acuerdo con un SGBD particular

39


Nivel Físico 

Describe cómo los datos son almacenados en términos de estructuras de datos particulares Se encarga de: - Reservar espacio para datos e índices - Compresión de datos - Técnicas de encriptamiento de datos

40


Independencia de los datos 

Es uno de los objetivos de la arquitectura ANSI/SPARC Permite modificar la definición de un nivel sin afectar (en lo posible) el nivel inmediatamente superior Sin independencia de datos se requeriría mucho esfuerzo para cambiar las aplicaciones de tal forma que se adaptasen a la nueva estructura de la base de datos. Hay dos tipos: física y lógica

41


Independencia de los datos 

Física: inmunidad que tienen los usuarios y las aplicaciones ante los cambios en la forma de almacenar físicamente los datos.

Conceptual o lógica: inmunidad que poseen los usuarios y las aplicaciones ante los cambios en la estructura lógica de la base de datos

42


Independencia Física  

Se presenta entre el nivel conceptual y el nivel físico Un cambio en el esquema físico (usar otras estructuras de almacenamiento) no conduce a cambios en el esquema conceptual Ej. Cambio en la forma de almacenar un índice: B+ por Hashing, ¿con qué propósito se hace un cambio de este tipo? Inmunidad del esquema conceptual ante cambios del esquema físico

43


Independencia Lógica 

Se presenta entre el nivel de visión y el nivel conceptual Significa que un cambio en el nivel conceptual no debe conllevar a un cambio en el nivel de visión Es más difícil de lograr. ¿Por qué?

44


Independencia Lógica Algunos de los posibles cambios en el nivel conceptual:  Adición de nuevos elementos (atributos, entidades etc.)  Eliminación de elementos  Puede afectar a los subesquemas externos

45


Tendencias de los SGBD 

Sistemas para el soporte para toma de decisiones (Data Warehouse) y/o con capacidades deductivas y bases de datos temporales

Manejar información multimedial: Imágenes, audio, videos

Bases de datos orientadas a objetos y objeto-relacionales

Manejar información georeferenciada: Información Geográficos (SIG)

Manejo de información documental: Motores de búsqueda, sistemas para el manejo de documentos.

Bases de datos nativas para XML

Sistemas

de

46


RESUMEN  

La descripción completa de una base de datos se denomina esquema Cada visión de usuario tiene su esquema (subesquema), existe un esquema conceptual y uno interno Existen correspondencias (“mappings”) - Entre cada subesquema externo y el conceptual - Entre el esquema conceptual y el interno Estas correspondencias le permiten al SGBD por ejemplo saber un registro conceptual con qué registro(s) del nivel físico se corresponde

47


RESUMEN 

En teoría debería existir un lenguaje de descripción para cada nivel* En la práctica sin embargo en muchos SGBD el esquema conceptual queda fusionado con la especificación del esquema interno.

* No siempre sucede así en los SGBD actuales…

48


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.