Upload
bryan-vasquez
View
1.051
Download
0
Embed Size (px)
DESCRIPTION
Conceptos generales de Base de Datos
Citation preview
1
BASES DE DATOSConceptos Básicos
2
Un poco de historia …Sistemas de archivos:Sistemas de archivos: Surgieron a raíz de la necesidad de almacenamiento de la
información para su correspondiente reutilización (persistenciapersistencia)
Desventajas: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
3
Procesamiento Procesamiento
dede
ClientesClientes
Archivode
Clientes
Procesamiento Procesamiento
dede
PréstamosPréstamos
Archivode
Préstamos
UsuarioUsuario del Archivo de Clientes
UsuarioUsuario del Archivo de Préstamos
Por cada préstamo se guarda la informacióndel cliente correspondiente: Redundancia
Un poco de historia …
4
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 persistenciapersistencia Soporte por lo menos de un modelo de datosmodelo de datos Soporte de un lenguaje de alto nivellenguaje de alto nivel que permita
manipular y definir la estructura de la información Control de accesoControl de acceso Evitar inconsistenciasEvitar inconsistencias al compartircompartir la información
5
… Antes
EmpleadosClientes
Inventario
Ventas Cuentas
SGBDEmpleados
ClientesVentas
InventarioCuentas
Dpto. Personal Dpto. VentasDpto. Contabilidad
BASE DE DATOS… AhoraPersonal
Ventas
Contabilidad
6
Facturas
......
900
1250
Precio
.......
Pintura
Azulejos
Producto
....................
Misiones 1456
Fernando Martínez
1226
Rincón 1224
Joaquín García 1225
Dom. Nombre Num
Ejemplo Archivos Tradicionales
.....................................
[email protected] 9157878Rincón 876Fernando Martínez
1226
4182569Guaná 1202
Juan García 1225
E-mailTelefono Dirección Nombre Num
Clientes
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.
Desventajas:
-Se duplican esfuerzos
-Se presentan redundancias de datos (datos repetidos innecesaramente)
-Se pueden producir contradicciones entre los datos, si por ejemplo se ingresan nombres diferentes para un mismo cliente.
7
Definición
Una base de datos es un conjunto estructurado de datos coherentes
Colección disponible de información
8
Definición
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)
9
Definición
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
10
Conceptos básicos vinculados al tema Bases de Datos.
CONCEPTOS BÁSICOS
Datos
Entidades
Claves primarias y foráneas
Relaciones
Restricciones de integridad referencial
Metadatos
11
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.
3256789Elena S nchez á
Kli@ ad inet.com .uy
Sarand 1 00í
Jos Martnez é í
18 de Julio 1880
12
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.
Entidades
CLIENTES cuenta con los atributos: Código de Cliente, Nombre, Apellido, Domicilio, Teléfono.
13
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 y Claves Foráneas
CLAVES PRIMARIAS Código de Cliente es la clave primariade 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.
14
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 Facturas debe cumplir que exista en Productos y que sea clave primaria
15
Retomando la Definición de Base de Datos (1), 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.
16
Datos y Metadatos
Metadatos son datos acerca de los datos presentes en la base de datos.
..................
20Alfabético Nombre
4NuméricoNum
Longitud Tipo Dato
Ejemplo metadatos El tipo de datos puede ser Numérico, alfabético, fecha, lógico (Sï /NO).
La longitud indica la cantidad máxima de caracteres que puede asumir el
dato.
Ejemplo de Restricción de Dominio:
Num >0 y <9999
17
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
18
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 »
Los SGBD deben cumplir con las propiedades ACID para las transacciones:Atomicity (Atomicidad: las transacciones son atómicas)Consistency (Consistencia: una transacción transforma un estado consistente de la BD en otro)Isolation (Aislamiento: las transacciones están aisladas entre si)Durability (Durabilidad: después que una transacción ha sido confirmada ella persiste)
19
Ventajas de un SGBD
1. Reutilización de datos y programas
2. Control de redundancia
3. Estandarización
4. Consistencia (No hay redundancia)
20
Ventajas de un SGBD
1. Integridad Seguridad
2. Rapidez de desarrollo
3. Mantenimiento y reingeniería: cambios en la estructura de datos sin cambiar los programas que los usan (hasta cierto punto)
21
Desventajas de un SGBD
Tamaño Susceptibilidad a fallas (Discutible) Complejidad en la recuperación a fallas
(Discutible) Puede llegar a trabajar en forma “lenta”
debido a la cantidad de verificaciones que debe hacer
22
Diseño de B de D Relacionales I
Planificación del tipo de información a almacenar: Información disponible. Información que necesitamos.
Esquematizar sobre papel el problema. Considerar los datos a gestionar y estimar el
espacio de memoria que necesitan.
23
Diseño de B de D Relacionales II
Los dos aspectos mas importantes a la hora del diseño de las Tablas son: Campos
Nombre del campo Tipo del campo Anchura del campo
Datos Caracteres (texto), valores numéricos, fechas,
informaciones lógicas, imágenes, multimedia.
24
Fases del diseño de una B de D
Definición de los datos (análisis de los datos existentes).
Refinamiento de los datos (depuración de los datos necesarios).
Establecer relaciones entre los campos.
25
Definición de los datos
Lista en papel de todos los atributos (Campos).
Examinar la aplicación con detalle para determinar exactamente la clase de información que debe almacenarse en la B de D.
26
Definición de datos (ejemplo)
Gestión del ingreso de pacientes en un hospital. Nombre del paciente Apellidos del paciente Dirección del paciente Número de teléfono Fecha de ingreso Procedencia (con o sin P10) Destino del paciente Observaciones
27
Refinamiento de los datos
Refinar la lista inicial de campos de modo que los campos constituyan una descripción precisa de los tipos de datos necesarios.
Importante incluir las sugerencias de los futuros usuarios de la B de D.
28
Refinamiento de los datos (ejemplo 1) Nombre del paciente Apellidos del paciente Domicilio Población Provincia Código postal Número de teléfono Procedencia Fecha de ingreso
Nombre del hospital Médico responsable Número de planta Número de cama Número de historial clínico Observaciones
29
Refinamiento de los datos (ejemplo 2) Nombre del paciente Apellidos del paciente Domicilio Población Provincia Código postal Número de teléfono Procedencia Fecha de ingreso Nombre del hospital
Médico responsable Nombre del médico Apellidos del médico Especialidad Número de colegiado Cargo Número de planta Número de cama Número de historial clínico Observaciones
30
Consideración de las relaciones
Inspeccionar los Campos de la Tabla para localizar redundancias en los datos a introducir.
Esta estrategia nos permitirá determinar si es conveniente o no utilizar varias Tablas y, en su caso, la forma de establecer las relaciones futuras entre los campo.
31
Relaciones (ejemplo 1)
Cada vez que se de de alta a un paciente hay que cumplimentar los datos del médico, pudiendose ser el mismo médico para diversos paciente.
Por ello conviene separar los datos en dos Tablas: Pacientes Médicos
32
Relaciones (ejemplo 2) Tabla Pacientes
Número SS paciente Nombre del paciente Apellidos del paciente Domicilio Población Provincia Código postal Número de Teléfono Procedencia Fecha de ingreso Código del médico
responsable Número de planta Número de cama Número de historial clínico Observaciones
Tabla médicos Código del médico
responsable Nombre Apellidos Especialidad Número de colegiado Cargo Observaciones
33
Relaciones (ejemplo 3)
Se ha añadido un código de identificación del médico responsable, presente en ambas Tablas.
Se ha añadido el Número de la SS para identificar de forma única a cada paciente.
Observando la Tabla pacientes se ve que esta se puede descomponer en: Tabla Pacientes (datos de identificación) Tabla Ingresos
34
Relaciones (ejemplo 4)
Tabla pacientes Número de la SS Nombre del paciente Domicilio Población Provincia Código postal Número de teléfono Número de historial
clínico Observaciones
Tabla ingresos Número de historial
clínico Procedencia Fecha de ingreso Código de identificación
del médico responsable Número de planta Número de cama Observaciones
35
Relaciones (ejemplo 5)
Tabla médicos Código de identificación
del médico Nombre Apellidos Especialidad Número de colegiado Cargo Observaciones