Vous êtes sur la page 1sur 73

INTRODUCCION

PPT1:
BASES DE DATOS:
• DEFINICION DE BASE DE DATOS
• ES UNA COLECCION DE DATOS RELACIONADOS
• ES UNA COLECCION DE ARCHIVOS DISEÑADOS PARA SERVIR A
MÚLTIPLES APLICACIONES
• ES UN DATO QUE REPRESENTA HECHOS CONOCIDOS QUE PUEDEN
REGISTRARSE Y QUE TIENEN UN RESULTADO IMPLÍCITO.
• PROPIEDADES IMPLICITAS DE UNA BD
• UNA BD REPRESENTA ASPECTOS DEL MUNDO REAL A VECES
DENOMINADO UNIVERSO DE DISCURSO
• ES UNA COLECCION COHERENTE DE DATOS CON SIGNIFICADOS
INHERENTES. UN CONJUNTO ALEATORIO DE DATOS NO PUEDE
CONSIDERARSE UNA BD. OSEA, LOS DATOS DEBEN TENER CIERTA LÓGICA.
• UNA BD SE DISEÑA, CONSTRUYE Y COMPLETA DE DATOS PARA UN
PROPOSITO ESPECIFICO. ESTA DESTINADA A UN GRUPO DE USUARIOS
CONCRETOS Y TIENE ALGUNAS APLICACIONES PRECONCEBIDAS EN LAS
CUALES ESTAN INTERESADOS LOS USUARIOS.

DATA BASE MANAGEMENT SYSTEM (SISTEMA GERENCIADOR DE BASES DE DATOS)


• DBMS ES UNA COLECCION DE PROGRAMAS QUE PERMITENA LOS USUARIOS
CREAR Y MANTENER LA BD
• DBMS ES UN SISTEMA DE SOFTWARE DE PROPOSITO GENERAL QUE FACILITA
LOS PROCESOS DE DEFINICION, CONSTRUCCIÓN Y MANIPULACION DE LA BD
• LOS OBJETIVOS DE UN DBMS SON:
• EVITAR REDUNDANCIA E INCONSISTENCIA DE DATOS.
• PERMITIR ACCESO A LOS DATOS EN TODO MOMENTO.
• EVITAR ANOMALIAS EN EL ACCESO CONCURRENTE.
• RESTRICCIÓN A ACCESOS NO AUTORIZADOS (SEGURIDAD)
• SUMINISTRO DE ALMACENAMIENTO PERSISTENTE DE DATOS (AUN ANTE
FALLOS) - SEGURIDAD DESDE OTRA PERSPECTIVA.
• INTEGRIDAD DE LOS DATOS.
• BACKUPS
• UN DBMS ESTA FORMADO POR
• DDL: DATA DEFINITION LANGUAGE, ESPECIFICA EL ESQUEMA DE BD.
RESULTADO: DICCIONARIO DE DATOS.
• DML: DATA MANIPULATION LANGUAGE, RECUPERACION, AGREGADO,
QUITADO Y MODIFICACION DE INFORMACION.
 PROCEDIMENTALES: SQL REQUIERE QUE EL USUARIO
ESPECIFIQUE QUE DATOS SE MUESTRAN Y COMO OBTENERLOS.
 NO PROCEDIMENTALES: QBE, REQUIEREN QUE EL USUARIO
ESPECIFIQUE QUE DATOS MOSTRAR SIN ESPECIFICAR COMO
OBTENERLOS.

CONCLUSION
• LA DEFINICION DE UNA BD CONSISTE EN ESPECIFICAR LOS TIPOS DE DATOS,
LAS ESTRUCTURAS Y RESTRICCIONES DE LOS MISMOS.
• LA CONSTRUCCION DE LA BD ES EL PROCESO DE ALMACENAR DATOS
CONCRETOS EN ALGUN DISPOSITIVO DE ALMACENAMIENTO BAJO LA GESTION DEL
DBMS.
• LA MANIPULACION DE BD INCLUYE FUNCIONES TALES COMO CONSULTAR LA BD
PARA RECUPERAR DATOS ESPECIFICOS, ACTUALIZAR LOS DATOS EXISTENTES,
REFLEJAR CAMBIOS PRODUCIDOS, ETC.

CONCEPTOS BASICOS
• ABSTRACCIONES:
• VISION: VE SOLO LOS DATOS DE INTERES (MUCHAS VISTAS PARA LA
MISMA BD) A TRAVES DE PROGRAMAS DE APLICACION.
• CONCEPTUAL: QUE DATOS SE ALMACENAN EN LA BD Y QUE RELACIONES
EXISTEN ENTRE ELLAS.
• FISICO: DESCRIBE COMO SE ALMACENAN REALMENTE LOS DATOS
(ARCHIVOS Y HARD)
• MODELOS DE DATOS: COLECCION DE HERRAMIENTAS CONCEPTUALES PARA
DESCRIBIR DATOS, RELACIONES ENTRE ELLOS, SEMANTICA ASOCIADA A LOS
DATOS Y RESTRICCIONES DE CONSISTENCIA.
• MODELOS:
• BASADO EN OBJETOS (VISION, CONCEPTUAL) ESTRUCTURA FLEXIBLE,
ESPECIFICAN RESTRICCIONES EXPLICITAMENTE.
 MODELO DE ENTIDAD-RELACION.
 MODELO ORIENTADO A OBJETOS
• BASADO EN REGISTROS (CONCEPTUAL, FISICO) LA BD SE ESTRUCTURA
EN REGISTROS DE FORMATO FIJO. SE DISPONE DE LENGUAJE ASOCIADO
PARA EXPRESAR CONSULTAS (RELACIONAL, JERARQUICO, RED)
• FISICO DE DATOS (FISICO) DESCRIBEN LOS DATOS EN EL NIVEL MAS
BAJO.
• INDEPENDENCIA DE DATOS: CAPACIDAD DE MODIFICAR ESQUEMAS SIN
ALTERAR OTRO NIVEL.
• FISICO, MODIFICAR EL ESQUEMA FISICO SIN PROVOCAR QUE LOS
PROGRAMAS DE APLICACION TENGAN QUE REESCRIBIRSA. GENERALMENTE,
PARA MEJORAR EL FUNCIONAMIENTO
• LOGICO, MODIFICAR EL ESQUEMA CONCEPTUAL.
• CATEGORIAS DE SOFT DE PROCESAMIENTO DE DATOS:
• SIN INDEPENDENCIA DE DATOS (S.O., TRANSFERENCIA A UN SECTOR
PARTICULAR)
• INDEPENDENCIA FISICA (LEER UN REGISTRO DE UN ARCHIVO, SO)
• INDEPENDENCIA LOGICA PARCIAL (LEER SIGUIENTE REGISTRO DE UN
ARCHIVO)
• INDEPENDENCIA LOGICA Y FISICA (LEER SIGUIENTE REGISTRO DE UN
TIPO PARTICULAR, DBMS)
• INDEPENDENCIA GEOGRAFICA (BDS DISTRIBUIDAS)

• ACTORES INVOLUCRADOS CON UNA BD:


• DBA: ADMINISTRA EL RECURSO, AUTORIZA ACCESOS, COORDINA Y
VIGILA LA UTILIZACION DE RECURSOS DE HARDWARE, RESPONSIBLE ANTE
PROBLEMAS DE VIOLACION DE SEGURIDAD O RESPUESTA LENTA DEL
SISTEMA.
• DISEÑADOR DE BD: DEFINE LA ESTRUCTURA DE LA BD DE ACUERDO AL
PROBLEMA DEL MUNDO REAL QUE SE ESTE REPRESENTADO.
• ANALISTA DE SISTEMAS: DETERMINAN LOS REQUERIMIENTOS DE LOS
USUARIOS FINALES GENERANDO LA INFORMACION NECESARIA PARA EL
DISEÑADOR
• PROGRAMADORES: IMPLEMENTAN LAS ESPECIFICACIONES DE LOS
ANALISTAS UTILIZANDO LA BD GENERADA POR EL DISEÑADOR.
• USUARIOS: DE DISTINTOS TIPOS.
ARCHIVOS
• NIVEL FISICO:
• ARCHIVOS. DEFINICIONES.
 COLECCION DE REGISTROS GUARDADOS EN ALMACENAMIENTO
SECUNDARIO.
 COLECCION DE DATOS ALMACENADOS EN DISPOSITIVOS
SECUNDARIOS DE MEMORIA
 COLECCION DE REGISTROS QUE ABARCAN ENTIDADES CON UN
ASPECTO COMUN Y ORIGINADAS PARA ALGUN PROPOSITO PARTICULAR
• HARDWARE
 ALMACENAMIENTO PRIMARIO
 ALMACENAMIENTO SECUNDARIO (DR)
• PLATOS
• SUPERFICIES
• PISTAS
• SECTORES
• CILINDROS
• A DOS NIVELES:
• FISICO: ALMACENAMIENTO SECUNDARIO.
• LOGICO: DENTRO DEL PROGRAMA
 OPERACIONES
• CREAR
• ABRIR
• READ/WRITE
• EOF
• SEEK
• ORGANIZACION:
• SECUENCIA DE BYTES (ARCHIVOS DE TEXTO): NO SE PUEDE
DETERMINAR FACILMENTE EL INICIO Y EL FIN DE UN DATO.
• CAMPOS: UNIDAD MAS PEQUEÑA LOGICAMENTE SIGNIFICATIVA DE UN
ARCHIVO.
• REGISTROS: CONJUNTO DE CAMPOS AGRUPADOS QUE DEFINEN UN
ARCHIVO.
• ACCESO A LOS ARCHIVOS
• SECUENCIAL: ACCESO A LOS REGISTROS UNO TRAS OTRO Y EN EL
ORDEN FISICO EN EL QUE ESTAN GUARDADOS.
• SECUENCIAL INDIZADO: ACCESO A LOS REGISTROS DE ACUERDO AL
ORDEN ESTABLECIDO POR OTRA ESTRUCTURA (X EJ UNA GUIA TELEFONICA,
UN INDICE DE UN LIBRO)
• DIRECTO: SE ACCEDE A UN REGISTRO DETERMINADO SIN NECESITAD DE
HABER ACCEDIDO A LOS PREDECESORES.
• BUFFERS
• MEMORIA INTERMEDIA ENTRE UN ARCHIVO Y UN PROGRAMA DONDE LOS
DATOS RESIDEN PROVISORIAMENTE HASTA SER ALMACENADOS
DEFINITIVAMENTE EN MEMORIA SECUNDARIA O DONDE LOS DATOS RESIDEN
UNA VEZ RECUPERADOS DE DICHA MEMORIA SECUNDARIA.
OCUPAN LUGAR EN LA MEMORIA RAM, SON ADMINISTRADOS POR EL S.O.
(PPT2)
• OPERACIONES:
• EN LA CREACION: SE DEBE ESTABLECER LA CORRESPONDENCIA ENTRE
EL NOMBRE LOGICO Y EL NOMBRE FISICO. EL NOMBRE LOGICO ES UNA
VARIABLE DE TIPO ARCHIVO SOBRE LA QUE SE REALIZAN LAS
OPERACIONES.
• CIERRE DE ARCHIVOS: INDICA QUE NO SE VA A TRABAJAR MAS CON EL
ARCHIVO, ES DECIR, PONE UNA MARCA DE EOF AL FINAL DEL MISMO.
• LECTURA/ESCRITURA: LEEN Y/O ESCRIBEN SOBRE LOS BUFFERS
RELACIONADOS A LOS ARCHIVOS. NO SE REALIZA DIRECTAMENTE SOBRE EL
DISCO RIGIDO. EN AMBOS CASOS, LA VARIABLE DEBE SER DEL MISMO TIPO
QUE LOS ELEMENTOS QUE SE DECLARRARON COMO PARTE DEL ARCHIVO.
• FUNCIONES
• FIN DE ARCHIVO
• TAMAÑO DEL ARCHIVO
• POSICION ACTUAL DENTRO DEL ARCHIVO.
• PROCESOS:
• IR A UNA POSICION EN EL ARCHIVO (ENTRE 0 Y CANTREGS-1)
• ALGORITMICA CLASICA:
• OPERACIONES USUALES A RESOLVER USANDO ARCHIVOS:
 MODIFICAR EL CONTENIDO ACTUAL DEL ARCHIVO
• INVOLUCRA UN ARCHIVO DE DATOS PREVIAMENTE
GENERADO Y CONSISTE EN CAMBIAR SUS DATOS.
• EL ARCHIVO DEBE SER RECORRIDO DESDE SU PRIMER
ELEMENTO Y HASTA EL ULTIMO SIGUIENDO UN PROCESAMIENTO
SECUENCIAL.
 AGREGAR NUEVOS ELEMENTOS:
• SE PROCESA UN SOLO ARCHIVO
• YA TIENE INFORMACION
• SE LE INCORPORAN NUEVOS DATOS
 ACTUALIZAR UN ARCHIVO MAESTRO CON UNO O VARIOS
DETALLES
• ESTE PROBLEMA INVOLUCRA UTILIZAR MAS DE UN
ARCHIVO DE DATOS AL MISMO TIEMPO
• SE DENOMINA MAESTRO AL ARCHIVO QUE RESUME
UN DETERMINADO CONJUNTO DE DATOS
• SE DENOMINA DETALLE AL QUE AGRUPA
INFORMACION QUE SE UTILIZARA PARA MODIFICAR EL
CONTENIDO DEL ARCHIVO MAESTRO.
• POR LO GENERAL, UN ARCHIVO MAESTRO Y N
ARCHIVOS DETALLES.
 CORTE DE CONTROL
• EL PROBLEMA CONSISTE EN LA GENERACION DE
REPORTES: ES UN PROBLEMA CLASICO EN EL MANEJO DE BD. LOS
DBMS LO MANEJAN DIFERENTE.
 MERGE DE VARIOS ARCHIVOS
• INVOLUCRA ARCHIVOS CON CONTENIDO SIMILAR, EL CUAL
DEBE RESUMIRSE EN UN UNICO ARCHIVO.

PPT3
LA MEMORIA PRIMARIA (RAM) ES RAPIDA Y DE SIMPLE ACCESO, PERO SU USO TIENE
ALGUNAS DESVENTAJAS RESPECTO AL ALMACENAMIENTO SECUNDARIO:
• CAPACIDAD LIMITADA
• MAYOR COSTO
• ES VOLATIL
• ALMACENAMIENTO SECUNDARIO: NECESITA MÁS TIEMPO PARA TENER ACCESO
A LOS DATOS QUE EN RAM.
• SU ACCESO ES TAN LENTO QUE ES IMPRESCINDIBLE ENVIAR Y
RECUPERAR DATOS CON INTELIGENCIA
• AL BUSCAR UN DATO, SE ESPERA ENCONTRARLO EN EL PRIMER INTENTO
(O EN POCOS)
• SI SE BUSCAN VARIOS DATOS, SE PRETENDERA TRAER TODOS JUNTOS
DE UNA SOLA VEZ.
• LA INFORMACION ESTA ORGANIZADA EN ARCHIVOS.
• HW DE ALMACENAMIENTO SECUNDARIO
 DISCOS: ALMACENAMIENTO:
• UN SOLO REGISTRO POR SECTOR: TIENE COMO VENTAJA
QUE CUALQUIER REGISTRO SE RECUPERA CON SOLO RECUPERAR
UN SECTOR, PERO TIENE LA DESVENTAJA QUE PUEDE QUEDAR
ESPACIO DEL SECTOR SIN USAR.
• EL PRINCIPIO DE UN REGISTRO EN UN SECTOR Y EL FINAL
EN OTRO: TIENE COMO VENTAJA QUE NO QUEDARA ESPACIO
DESPERDICIADO, PERO POR OTRO LADO ES NECESARIO MAS DE
UN ACCESO A SECTORES EN LUGAR DE SOLO UNO.
 CINTAS: ES EL MEDIO MAS ECONOMICO, ESTABLE EN DIFERENTES
CONDICIONES AMBIENTALES Y FACILES DE TRANSPORTAR.
• VIAJE DE UN BYTE. (HASTA ACA LEI)
• ADMINISTRADOR DE ARCHIVOS: CONJUNTO DE PROGRAMAS DEL S.O.
QUE TRATAN ASPECTOS RELACIONADOS CON ARCHIVOS Y DISPOSITIVOS DE
E/S
 EN LAS CAPAS SUPERIORES, ESTABLECE SI LAS CARACTERISTICAS
DEL ARCHIVO SON COMPATIBLES CON LA OPERACION DESEADA.
 EN CAPAS INFERIORES DETERMINA DONDE SE GUARDA EL DATO
(CLINDRO, SECTOR, ETC). SI EL SECTOR ESTA UBICADO EN RAM, SE
UTILIZA, SINO DEBERA TRAERSE PREVIAMENTE.
• BUFFERS DE E/S: AGILIZAN LA E/S DE DATOS. MANEJAR BUFFERS IMPLICA
TRABAJAR CON GRANDES GRUPOS DE DATOS EN RAM, PARA REDUCIR EL
ACCESO A ALMACENAMIENTO SECUNDARIO.
• PROCESADOR DE E/S: DISPOSITIVO UTILIZADO PARA LA TRANSMISION
DESDE O HACIA EL ALMACENAMIENTO EXTERNO, INDEPENDIENTE DE LA CPU
• CONTROLADOR DE DISCO: ES EL ENCARGADO DE CONTROLAR LAS
OPERACIONES DEL DISCO COMO COLOCARSE EN LA PISTA, SECTOR Y
TRANSFERIR LOS DATOS.
• QUE SUCEDE AL ESCRIBIR UN BYTE EN EL DISCO DESDE UN PROGRAMA:
 EL PROGRAMA PIDE AL S.O. ESCRIBIR EL CONTENIDO DE UNA
VARIABLE EN UN ARCHIVO
 EL S.O. TRANSFIERE EL TRABAJO AL ADMINISTRADOR DE
ARCHIVOS.
 EL ADMINISTRADOR BUSCA EL ARCHIVO EN SU TABLA DE
ARCHIVOS Y VERIFICA LAS CARACTERISTICAS
 EL ADM DE ARCHIVOS OBTIENE DE LA FAT LA UBICACION FISICA
DEL SECTOR DEL ARCHIVO DONDE SE GUARDARA EL BYTE.
 EL ADM SE ASEGURA QUE EL SECTOR DEL ARCHIVO ESTA EN UN
BUFFER Y GRABA EL DATO DONDE VA DENTRO DEL SECTOR DEL
BUFFER.
 EL ADM DA INSTRUCCIONES AL PROCESADOR DE E/S (DONDE
ESTA EL BYTE EN RAM Y EN QUE PARTE DEL DISCO SE DEBERA
ALMACENAR)
 EL PROCESADOR DE E/S ENCUENTRA EL MOMENTO PARA
TRANSMITIR EL DATO A DISCO, LA CPU SE LIBERA.
 EL PROCESADOR DE E/S ENVIA EL DATO AL CONTROLADOR DEL
DISCO (CON LA DIRECCION DE ESCRITURA)
 EL CONTROLADOR PREPARA LA ESCRITURA Y TRANSFIERE BIT
POR BIT EN LA SUPERFICIE DEL DISCO.
• ARCHIVOS - TRES ASPECTOS:
• TECNICAS DE ACCESO. VEREMOS SU EVOLUCION, NECESIDADES Y
CARACTERÍSTICAS.
• INDEPENDENCIA: FISICA Y LOGICA
• REDUNDANCIA DE DATOS: CONCEPTOS DE NORMALIZACION,.
• CARACTERISTICAS DE ESTRUCTURA DE ARCHIVOS:
• SECUENCIA DE BYTES
 NO PUEDE DETERMINAR FACILMENTE COMIENZO Y FIN DE CADA
DATO
• CAMPOS
 UNIDAD LOGICAMENTE SIGNIFICATIVA MAS PEQUEÑA DE UN
ARCHIVO. PERMITE SEPARAR LA INFORMACIÓN.
 IDENTIDAD DE CAMPOS: VARIANTES, PRO Y CONTRAS.
• LONGITUD PREDECIBLE (LONGITUD FIJA, DESPERDICIO DE
ESPACIO, SI EL TAMAÑO ES PEQUEÑO, AL AGRANDARLO SE
PODRIA DESPERDICAR MAS ESPACIO)
• INDICADOR DE LONGITUD. AL PRINCIPIO DE CADA CAMPO
• DELIMITADOR AL FINAL DE CADA CAMPO (CARACTER
ESPECIAL NO USADO COMO DATO)
• REGISTROS
 CONJUNTO DE CAMPOS AGRUPADOS QUE DEFINEN UN ELEMENTO
DEL ARCHIVO.
 ORGANIZACION:
• LONGITUD PREDECIBLE (CANT DE BYTES O CANTIDAD DE
CAMPOS)
• INDICADOR DE LONGITUD (AL COMIENZO, INDICA LA
CANTIDAD DE BYTES QUE CONTIENE)
• SEGUNDO ARCHIVO (MANTIENE LA INFO DE LA DIRECCION
DEL BYTE DE INICIO DE CADA REGISTRO)
• DELIMITADOR (CARACTER ESPECIAL NO USADO COMO
DATO)
• LLAVE O CLAVE: SE CONCIBE AL REGISTRO COMO LA CANTIDAD DE
INFORMACION QUE SE LEE O ESCRIBE.
• OBJETIVO: EXTRAER SOLO UN REGISTRO ESPECIFICO EN VEZ DEL
ARCHIVO COMPLETO
• ES CONVENIENTE IDENTIFICAR UN REGISTRO CON UNA CLAVE QUE SE
BASE EN EL CONTENIDO DEL MISMO.
• PERMITE LA IDENTIFICACION DEL REGISTRO:
 UNIVOCA / PRIMARIA
 SECUNDARIA (GENERALMENTE NO IDENTIFICAN UN UNICO
REGISTRO)
• FORMA CANONICA: FORMA ESTANDAR PARA UNA LLAVE PUEDE
DERIVARSE A PARTIR DE REGLAS BIEN DEFINIDAS.
 REPRESENTACION UNICA PARA LA LLAVE, AJUSTADA A LA REGLA.
 EJ. LLAVE SOLO CON LETRAS MAYUSCULAS Y SIN ESPACIOS AL
FINAL
 AL INTRODUCIR UN REGISTRO NUEVO, SE FORMA UNA LLAVE
CANONICA PARA ESE REGISTRO Y DESPUES SE LA BUSCA EN EL
ARCHIVO. SI YA EXISTE, SE DEBE MODIFICAR LOS CAMPOS DE LA
LLAVE PARA QUE SEA UNICA.

PERFORMANCE
• ESTUDIO DE PERFORMANCE
• PUNTO DE PARTIDA PARA FUTURAS EVALUACIONES
• COSTO: ACCESO A DISCO, NUM DE COMPARACIONES.
• CASO PROMEDIO
• EN EL CASO SECUENCIAL
• MEJOR CASO: LEER 1 REGISTRO, EL PEOR CASO LEER N REGISTROS
• PROMEDIO N/2 COMPARACIONES
• SUPONGAMOS QUE HAY 1000 REGISTROS, BUSCAR UNO EN PARTICULAR
EN EL PEOR CASO SERIA 1000, EL MEJOR CERO (PODRIA ESTAR CARGADO
EN MEMORIA)
• ES O(N) PORQUE DEPENDE DE LA CANTIDAD DE REGISTROS.
• LECTURA DE BLOQUES DE REGISTROS. MEJORA EL ACCESO A DISCO
PERON NO VARIAN LAS COMPARACIONES. SIGUE SIENDO O(N), PERO
AHORRA TIEMPO YA QUE DISMINUYE EL NUM DE DESPLAZAMIENTO DEL
BRAZO DEL DISCO.
• ACCESO DIRECTO: MODO DE ACCESO QUE PERMITE SALTAR A UN REGISTRO
PRECISO, REQUIERE UNA SOLA LECTURA PARA TRAER EL DATO O(1). DEBE
NECESARIAMENTE CONOCERSE EL LUGAR DONDE COMIENZA EL REGISTRO
REQUERIDO.
• NUMERO RELATIVO AL REGISTRO (NRR) INDICA LA POSICION RELATIVA
CON RESPECTO AL PRINCIPIO DEL ARCHIVO.
 CON REGISTROS DE LONGITUD VARIABLE (LA LECTURA SIGUE
SIENDO SECUENCIAL , O(N) )
 CON REGISTROS DE LONGITUD FIJA, POSIBILITA EL ACCESO
DIRECTO, SE TRADUCE EL NRR CALCULANDO LA DISTANCIA EN BYTES
PARA ACCEDER EL REGISTRO BUSCADO.
• REGISTRO ENCABEZADO: MANTIENE INFORMACION GENERAL DE UN
ARCHIVO (CANTIDAD DE REGISTROS, TAMAÑO DE REGISTROS, TIPO DE
DELIMITADOR, ETC)
EL ACCESO DIRECTO ES PREFERIBLE SOLO CUANDO SE NECESITAN POCOS
REGISTROS ESPECIFICOS, PERO ESTE METODO NO SIEMPRE ES EL MAS
APROPIADO PARA LA EXTRACCION DE INFORMACION, POR EJEMPLO EN UN
PROCESO DE PAGO DE CHEQUES PARA TODOS LOS EMPLEADOS,
OBLIGATORIAMENTE SE PROCESARAN TODOS LOS REGISTROS, ES MAS PRACTICO
RECORRERLO SECUENCIAL.
• ARCHIVOS SERIE: ARCHIVO DONDE CADA REGISTRO ES ACCESIBLE SOLO
LUEGO DE PROCESAR SU ANTECESOR, SIMPLES DE ACCEDER
• ARCHIVO SECUENCIAL: ARCHIVO DONDE LOS REGISTROS SON ACCESIBLES EN
ORDEN DE ALGUNA CLAVE.
TIPOS DE ARCHIVOS
• ESTATICOS: POCOS CAMBIOS
• PUEDEN ACTUALIZARSE EN PROCESAMIENTO POR LOTES
• NO NECESITA DE ESTRUCTURAS ADICIONALES PARA AGILIZAR LOS
CAMBIOS.
• VOLATILES: SOMETIDO A OPERACIONES FRECUENTES:
• AGREGAR / BORRAR / ACTUALIZAR
• SU ORGANIZACION DEBE FACILITAR CAMBIOS RÁPIDOS
• NECESITA ESTRUCTURAS ADICIONALES PARA MEJORAR LOS TIEMPOS DE
ACCESO.
ELIMINACION:
• CUALQUIER ESTRATEGIA DE ELIMINACION DE REGISTROS DEBE PROVEER UNA
FORMA DE RECONOCERLOS UNA VEZ ELIMINADOS (EJ, COLOCAR UNA MARCA DE
"ELIMINADO")
• CON ESTE CRITERIO SE PUEDE DESHACER LA ELIMINACION FACILMENTE
• COMO REUTILIZAR EL ESPACIO DE LOS ELIMINADOS?
• LOS PROGRAMAS QUE USAN ARCHIVOS DEBEN INCLUIR CIERTA LOGICA PARA
IGNORAR LOS REGISTROS ELIMINADOS.
• COMPACTACION:
• CON ESPACIO SUFICIENTE, LA FORMA MAS SIMPLE ES COPIAR TODO A
EXCEPCION DE LOS REGISTROS ELIMINADOS -> BAJA FISICA
• FRECUENCIA: TIEMPO O DEPENDIENDO DE LA NECESIDAD DE ESPACIO.
• HAY SITUACIONES EN QUE SE NECESITA REUTILIZAR ESPACION DE LOS
REGISTROS ELIMINADOS LO ANTES POSIBLE
• VEREMOS EL ANALISIS DE RECUPERACION DINAMICA DEL
ALMACENAMIENTO.
• APROVECHAMIENTO DE ESPACIO:
• REGISTROS DE LONGITUD FIJA -> ES NECESARIO GARANTIZAR:
 MARCAS ESPECIALES EN LOS REGISTROS BORRADOS (EJ UN
ASTERISCO AL PRINCIPIO DEL REGISTRO BORRADO -> BAJA LOGICA)
 RECUPERACION DEL ESPACIO PARA SU REUTILIZACION CUANDO
SE AGREGUEN REGISTROS
• BUSQUEDA SECUENCIAL -> USA LAS MARCAS DE
BORRADO.
• PARA AGREGAR, SE BUSCA EL PRIMER REGISTRO
ELIMINADO. SI NO EXISTE SE LLEGA AL FINAL DEL ARCHIVO
Y SE AGREGA AHI.
• ES MUY LENTO PARA OPERACIONES FRECUENTES.
• ES NECESARIO
• UNA FORMA DE SABER DE INMEDIATO SI HAY
LUGARES VACIOS EN EL ARCHIVO
• UNA FORMA DE SALTAR DIRECTAMENTE A UNOS DE
ESOS LUGARES EN CASO DE EXISTIR.
 RECUPERACION DE ESPACIO CON LISTA O PILAS (HEADER)
• LISTA ENCADENADA DE REGISTROS DISPONIBLES
• AL INSERTAR UN REGISTRO NUEVO EN UN ARCHIVO DE
REGISTROS CON LONGITUD FIJA, CUALQUIER REGISTRO
DISPONIBLE ES BUENO.
• LA LISTA NO NECESITA TENER UN ORDEN PARTICULAR, YA
QUE TODOS LOS REGISTROS SON DE LONGITUD FIJA Y TODOS
LOS ESPACIOS LIBRES SON IGUALES.
• SE UTILIZA EL NRR COMO DIRECCION DE ENLACE ENTRE
NODOS
• PARA LA LISTA DE ELEMENTOS (EN REALIDAD UNA PILA)
SE UTILIZA -1 INDICANDO QUE NO HAY MAS LUGARES LIBRES
PARA LA UTILIZACION.
• CONSIDERAR LA LISTA COMO UNA PILA IMPLICA UNA
MINIMA REORGANIZACION AL AGREGAR O QUITAR ELEMENTOS
• EL NRR QUE INDICA EL PRIMER REGISTRO DE LA PILA DE
DISPONIBLES, ESTA EN UN REGISTRO ENCABEZADO DEL ARCHIVO
(SI HUBIERA UN -1 INDICARIA QUE LA LISTA O PILA ESTA VACIA)
• EJ: ALFA BETA DELTA *6 GAMMA *-1 EPSILON
EL ENCABEZADO TIENE COMO PROXIMO A INSERTAR EN POS 4.
BORRO BETA
ALFA *4 DELTA *6 GAMMA *-1 EPSILON
AHORA EL ENCABEZADO TIENE COMO PROXIMO A INSERTAR EN
POS 2. SI INSERTO UN DATO, VUELVE A QUEDAR COMO EN EL
PRIMER ESTADO, CON EL ENCABEZADO CON PROXIMOA
INSERTAR EN POS 4.
• RECUPERACION DE ESPACIO CON REGISTROS DE LONGITUD VARIABLE:
 MARCA DE BORRADO AL IGUAL QUE EN REGISTRO DE LONGITUD
FIJA
 EL PROBLEMA DE ESTOS REGISTROS ES QUE NO SE PUEDE
COLOCAR EN CUALQUIER LUGAR, PARA PODER PONERLO, DEBE CABER
OBLIGATORIAMENTE.
 LISTA, NO SE PUEDE USAR NRR COMO ENLACE, SE USA UN CAMPO
BINARIO QUE EXPLICITAMENTE INDICA EN ENLACE (CONVIENE QUE
TAMBIEN INDIQUE EL TAMAÑO).
 CADA REGISTRO INDICA EN SU INICIO LA CANTIDAD DE BYTES.
 REUTILIZACION: BUSCAR EL REGISTRO BORRADO DE TAMAÑO
ADECUADO (LO SUFICIENTEMENTE GRANDE)
 COMO SE NECESITA BUSCAR, NO SE PUEDE ORGANIZAR LA LISTA
DE DISPONIBLES COMO UNA PILA.
 EL TAMAÑO ADECUADO DEL PRIMER REGISTRO BORRADO A
UTILIZAR -> ORIGINA FRAGMENTACION,
• FRAGMENTACION INTERNA: OCURRE CUANDO SE DESPERDICIA
ESPACIO DE UN REGISTRO, SE LE ASIGNA EL LUGAR PERON NO
LO OCUPA TOTALMENTE. SE DEFINE UN LONG Y NO SE UTILIZA
TOTALMENTE.
• OCURRE CON REGISTROS DE LONGITUD FIJA, SALCO QUE
LOS DATOS REALES SEAN DE LONGITUD FIJA.
• NO EXISTE EN REGISTROS DE LONGITUD VARIABLE,
CUANDO SE ESCRIBE EL ARCHIVO POR PRIMERA VEZ, SI
EXISTE SI SE ELIMINA UN REGISTRO Y SE REEMPLAZA POR
UNO MAS CORTO.
• SOLUCION: EL "RESIDUO" UNA VEZ OCUPADO EL ESPACIO
LIBRE, PASA A SER UN NUEVO REGISTRO LIBRE. SI ESTE ES
MUY CHICO NO SE PODRA OCUPAR -> FRAGMENTACION
EXTERNA.
• FRAGMENTACION EXTERNA: OCURRRE CUANDO EL ESPACIO QUE
NO SE USA ES DEMASIADO PEQUEÑO PARA OCUPARSE.
• SOLUCIONES:
• UNIR ESPACIOS LIBRES PEQUEÑOS ADYACENTES
PARA GENERAR UN ESPACIO DISPONIBLE MAYOR.
• MINIMIZAR LA FRAGMENTACION ELIGIENDO EL
ESPACIO MAS ADECUADO EN CADA CASO.
• ESTRATEGIAS DE COLOCACION:
 PRIMER AJUSTE: SE SELECCIONA LA PRIMER ENTRADA DE LA LISTA
DE DISPONIBLES QUE PUEDA ALMACENAR AL REGISTRO Y SE LE
ASIGNA EL MISMO.
• MINIMIZA LA BUSQUEDA.
• NO SE PREOCUPA POR LA EXACTITUD DEL AJUSTE.
• MAS RAPIDO
 MEJOR AJUSTE: ELIGE LA ENTRADA QUE MAS SE APROXIME AL
TAMAÑO DEL REGISTRO Y SE LE ASIGNA COMPLETA.
• EXIGE BUSQUEDA.
• GENERA FRAGMENTACION INTERNA
 PEOR AJUSTE: SELECCIONA LA ENTRADA MAS GRANDE PARA EL
REGISTRO Y SE LE ASIGNA SOLO EL ESPACIO NECESARIO.EL RESTO
QUEDA LIBRE PARA OTRO REGISTRO.
• GENERA FRAGMENTACION EXTERNA.
BUSQUEDA:
• EL COSTO DE LA BUSQUEDA DE INFORMACION SE PUEDE MEDIR EN:
• NUMERO DE COMPARACIONES. OPERACIONES EN MEMORIA, SE PUEDE
MEJORAR CON ALGORITMOS MAS EFICIENTES.
• NUMERO DE ACCESOS. OPERACIONES EN DISCO.
• BUSQUEDA DE UN REGISTRO
• ES MAS RAPIDO SI CONOCEMOS EL NRR PORQUE PODEMOS ACCEDER
DIRECTAMENTE
• SECUENCIAL, DEBE BUSCARSE DESDE EL PRINCIPIO
• TRATAREMOS DE INCORPORAR EL USO DE CLAVES.
• BUSQUEDA BINARIA.
• SUPONGAMOS UN ARCHIVO ORDENADO POR CLAVE Y REGISTROS DE
LONGITUD FIJA
• LA BUSQUEDA CONSISTE EN PARTIR EL ARCHIVO A LA MITAD Y
COMPARAR LA CLAVE (PUEDO ACCEDER AL MEDIO POR TENER LONGITUD
FIJA)
• SI N ES EL NUMERO DE REGISTROS, LA PERFORMANCE SERA DEL ORDEN
DE LOG2N
• SE MEJORA LA PERFORMANCE DE LA BUSQUEDA SECUENCIAL
• ACOTA EL ESPACIO PARA ENCONTRAR INFORMACION TIENE UN COSTO
POR MANTENER EL ARCHIVO ORDENADO.
• PRIMERA SOLUCION:
 LLEVAR EL ARCHIVO A RAM (VECTOR) Y ORDENAR.
 POR QUE ORDENAR EN RAM Y NO EN DISCO DIRECTAMENTE.
• EL NUMERO DE CORRIMIENTOS IMPLICA ACCESOS A DISCO
(MUY COSTOSO)
• PRIMER PASO, LLEVAR LAS LLAVES A FORMA CANONICA.
• ALGORITMOS DE ORDENACION SE PUEDEN ENCONTRAR
EN BIBLIOGRAFIA, APARECE UNA VARIANTE INTERESANTE
• SEGUNDA SOLUCION
 NO LLEVAR TODO EL ARCHIVO A RAM, SOLO LLEVAR LA CLAVE.
• ESTO PERMITE CLASIFICAR ARCHIVOS MAS GRANDES
• TERCERA SOLUCION
 CUANDO EL ARCHIVO DE DATOS NO ENTRA EN RAM, NI TAMPOCO
SOLO LAS CLAVES.
 SE PARTE EL ARCHIVO, SE ORDENA CADA PARTE Y SE JUNTAN LAS
PARTES ORDENADAS.
 VENTAJAS:
• PERMITE CLASIFICAR ARCHIVOS GRANDES
• LECTURA DE CADA PARTICION ES SIEMPRE SECUENCIAL
• LECTURA DE CADA PARTICION EN ORDEN, ESCRITURA EN
UN NUEVO ARCHIVO (AMBAS SECUENCIALES)
 EL TAMAÑO LO DEFINE EL TAMAÑO DE LA RAM
INDICES:
• DEFINICIONES
• HERRAMIENTA: PARA ENCONTRAR REGISTROS EN UN ARCHIVO.
CONSISTE EN UN CAMPO CLAVE (BUSQUEDA) Y UNO DE REFERENCIA QUE
INDICA DONDE ENCONTRAR EL REGISTRO DENTRO DEL ARCHIVO DE DATOS.
• TABLA: QUE OPERA CON UN PROCEDIMIENTO QUE ACEPTA
INFORMACION ACERCA DE CIERTOS VALORES DE ATRIBUTOS COMO LA
ENTRADA (CLAVE) Y PROVEE COMO SALIDA INFORMACION QUE PERMITE LA
RAPIDA LOCALIZACION DEL REGISTRO CON ESOS ATRIBUTOS.
• ESTRUCTURA DE DATOS (CLAVE,DIRECCION) USADA PARA
DECREMENTAR EL TIEMPO DE ACCESO A UN ARCHIVO.
• EQUIVALE A UN INDICE DE UN LIBRO, LA FORMA MAS SENCILLA DE
IMPLEMENTARLO ES CON UN ARBOL, Y SU CARACTERISTICA FUNDAMENTAL ES
QUE PERMITE QUE SE ORDENE SIN QUE REALMENTE EL ARCHIVO SE REACOMODE.
• OPERACIONES BASICAS EN UN ARCHIVO INDIZADO:
• INDICE EN MEMORIA: BUSQUEDA BINARIA + RAPIDA, COMPARADA CON
ARCHIVOS CLASIFICADOS.
• CREAR LOS ARCHIVOS: EL INDICE Y EL ARCHIVO DE DATOS SE CREAN
VACIOS, SOLO CON REGISTRO CABECERA.
• CARGAR EL INDICE EN MEMORIA: SE SUPONE QUE CABE, YA QUE ES LO
SUFICIENTEMENTE PEQUEÑO. SE ALMACENA EN UN ARREGLO.
• AGREGAR NUEVOS REGISTROS: IMPLICA AL AGREGAR AL ARCHIVO DE
DATOS Y AL ARCHIVO DE INDICESS. EN EL ARCHIVO DE DATOS,LO COPIA AL
FINAL, SE DEBE SABER EL NRR (EN FIJA) O LA DISTANCIA EN BYTES (EN
VARIABLE) PARA EL INDICE. EL INDICE SE ORDENA CON CADA NUEVO
ELEMENTO EN FORMA CANÓNICA (EN MEMORIA), SETEA EL FLAG ANTERIOR.
• ELIMINAR UN REGISTRO: EN EL ARCHIVO DE DATOS, SE UTILIZA
CUALQUIERA DE LAS TECNICAS VISTAS PARA REUTILIZAR EL ESPACIO. EN EL
ARCHIVO DE INDICES, O SE BORRA LA ENTRADA O SE MARCA COMO
BORRADO.
• REESCRITURA DEL ARCHIVO DE INDICE: UNO DE LOS CAMBIOS
POSIBLES PUEDE SER CAMBIAR UN FLAG EN EL REGISTRO CABECERA
CUANDO LA COPIA DEL INDICE ESTA EN MEMORIA PRINCIPAL, TODOS LOS
PROGRAMAS DEBERIAN REVISAR EL FLAG ANTES DE UTILIZARLO. SI EL FLAG
ESTA ACTIVO, EL PROGRAMA SABRA QUE EL INDICE NO ESTA ACTUALIZADO.
SI UN PROGRAMA DETECTA EL INDICE DESACTUALIZADO, SE DEBE ACCEDER
A UN PROCEDIMIENTO PARA SU RECONSTRUCCION.
• ACTUALIZACION DE REGISTROS: SI ESTA OPERACION SE REALIZARA SIN
MODIFICAR LA CLAVE, SI EL REGISTRO NO CAMBIA DE LONGITUD, SE
ALMACENA EN LA MISMA POSICION FISICA Y EL INDICE NO SE TOCA. SI EN
CAMBIO EL REGISTRO CAMBIA DE LONGITUD (Y SE AGRANDA), SE REUBICA
EN EL ARCHIVO DE DATOS Y POR LO TAMNTO SE DEBE GUARDAR EN EL
INDICE LA NUEVA POSICION. EN CAMBIO SI LA ACCION SE REALIZARA PARA
MODIFICAR LA CLAVE, SIGNIFICARIA QUE HUBO UN CAMBIO EN EL ARCHIVO
DE DATOS E IMPLICARIA REORGANIZAR EL ARCHIVO DE INDICES (EL NUEVO
VALOR QUIZA HAYA DEJADO LA ESTRUCTURA DESORDENADA).
• LAS VENTAJAS DE USAR INDICES SON QUE SE ALMACENAN EN MEMORIA
PRINCIPAL, PERMITE LA BUSQUEDA BINARIA Y EL MANTENIMIENTO ES MENOS
COSTOSO.
• INDICES GRANDES PARA ENTRAR EN MEMORIA:
• ACCESO Y MANTENIMIENTO DEL INDICE: ALMACEN SECUNDARIO
 VENTAJAS:
• POSIBILITA LA BUSQUEDA BINARIA EN UN ARCHIVO CON
REGISTROS DE LONGITUD VARIABLE.
• LA REORGANIZACION Y EL MANTENIMIENTO ES MENOS
COSTOSO QUE HACER ESTAS TAREAS SOBRE EL ARCHIVO DE
DATOS DIRECTAMENTE (SIGUE SIENDO MAS PEQUEÑOS QUE EL
ARCHIVO DE DATOS)
 DESVENTAJAS:
• EL NUMERO DE DESPLAZAMIETOS (PARA BUSQUEDA
BINARIA EN DISCO)
• REACOMODO DEL INDICE DEBIDO A LA ADICION O
BORRADO DE REGISTROS.
• SOLUCIONES:
 ORGANIZACION POR DISPERSION (HASHING), PRIORIZA LA
VELOCIDAD DE ACCESO
 USO DE ARBOLES
 NIVELES DE INDICES: INDICES DE INDICES: PERMITEN
ALMACENAR INDICES MAS GRANDES.
INDICES SECUNDARIOS:
• NO SERIA NATURAL SOLICITAR UN DATO POR CLAVE
• EN SU LUGAR SE USA UN CAMPO MAS FACIL DE RECORDAR (EJ BUSCAR UNA
CACION POR TITULO O POR COMPOSITOR)
• ESTE CAMPO ES UN CAMPO QUE PERTENECE A UNA CLAVE SECUNDARIA CON LA
LLAVE PRIMAIA
• LAS CLAVES SECUNDARIAS SE PUEDEN REPETIR.
• ACCESO PRIMERO POR LA CLAVE SECUNDARIA (SE OBTIENE LA CLAVE
PRIMARIA) Y LUEGO POR LA LLAVE PRIMARIA (EN EL INDICE PRIMARIO)
• OPERACIONES:
• ELIMINACION DE REGISTROS: ASI EL INDICE PRIMARIO SIRVE COMO UNA
ESPECIE DE BUFFER DE PROTECCION QUE AISLA LOS INDICES SECUNDARIOS
DE LOS CAMBIOS DEL ARCHIVO DE DATOS.
 BENEFICIO: NO HAY REACOMODO POR CADA BORRADO.
 COSTO: SE SIGUE OCUPANDO ESPACIO. ESTO NO IMPLICA
PROBLEMA SI EL ARCHIVO ES POCO VOLATIL, PORQUE EN CAMBIO, SI
LO ES MUY VOLATIL, SE PODRIAN PROGRAMAR BORRADOS FISICOS DE
LOS INDICES SECUNDARIOS.
SI EL INDICE SECUNDARIO REFERENCIA DIRECTAMENTE AL ARCHIVO DE
DATOS, UN REACOMODAMIENTO FISICO IMPLICARIA REACOMODAR EL
INDICE PRIMARIO Y EN ESTE CASO SECUNDARIOS TAMBIEN (PUEDEN SER
VARIOS)
• ACTUALIZACION: SI LO QUE CAMBIA ES LA LLAVE SECUNDARIA, SE DEBE
REACOMODAR EL INDICE SECUNDARIO Y PUEDE SER RELATIVAMENTE
COSTOSO. EN CAMBIO, SI LO QUE CAMBIA ES LA LLAVE PRIMARIA, IMPLICA
QUE SE CAMBIE LA REFERENCIA EN EL REGISTRO DE INDICE SECUNDARIO, Y
EN EL CASO QUE EXISTAN REGISTROS REPETIDOS, SE DEBERA
RECLASIFICAR LOCALMENTE EN EL INDICE SECUNDARIO.
• CONSULTA: MEJORA EN GRAN MEDIDA EL TIEMPO DE RESPUESTAS.
• EL PROBLEMA QUE IMPLICA LA REPETICION DE INFORMACION. EL ARCHIVO DE
INDICES SE DEBE REACOMODAR CON CADA ADICION, AUNQUE SE INGRESE UNA
CLAVE SECUNDARIA YA EXISTENTE, DADO QUE EXISTE UN SEGUNDO ORDEN POR
LA CLAVE PRIMARIA. MISMA CLAVE, VARIAS OCURRENCIAS, EN DISTINTOS
REGISTROS HACE QUE SE DESPERDICIE ESPACIO Y HAY MENOR POSIBILIDAD QUE
EL INDICE QUEPA EN MEMORIA.
SOLUCIONES:
• ARREGLO: CLAVE+ VECTOR DE PUNTEROS CON OCURRENCIAS.
 AL AGREGAR UN NUEVO REGISTRO DE UNA CLAVE EXISTENTE NO
SE DEBE REACOMODAR NADA, SOLO REACOMODA EL VECTOR DE
OCURRENCIAS.
 AL AGREGAR UN NUEVO REGISTRO DE UNA CLAVE NUEVA, SE
GENERA UN ARREGLO CON LA CLAVE Y UN ELEMENTO EN EL VECTOR
DE PUNTEROS.
 PROBLEMA, LA ELECCION DEL TAMAÑO DEL VECTOR.
• TAMAÑO FIJO
• PUEDE HABER CASOS EN QUE SEA INSUFICIENTE.
• PUEDE HABER CASOS EN QUE SOBRE ESPACIO,
PROVOCANDO FRAGMENTACION INTERNA.
• MEJORA: CLAVE + LISTA DE PUNTEROS CON OCURRENCIAS
LISTAS INVERTIDAS: ARCHIVOS EN LOS QUE UNA CLAVE SECUNDARIA LLEVA A UN
CONJUNTO DE UNA O MAS CLAVES PRIMARIAS, ES UNA LISTA DE REFERENCIAS DE
CLAVES PRIMARIAS. DE ESTA FORMA NO SE PIERDE EL ESPACIO (YA QUE NO HAY
RESERVAS) Y SI SE AGREGA UN ELEMENTO A LA LISTA, NO ES NECESARIA UNA
REORGANIZACION COMPLETA.
• ORGANIZACION FISICA:
• ARCHIVOS SECUNDARIOS
• MARCAS O REFERENCIAS
• OPERACIONES:
• AGREGAR UN NUEVO CONSISTE EN AGREGAR CONCURRENCIAS EN LA
LISTA INVERTIDA.
• IDEM BORRAR
• MODIFICACIONES DEPENDIENDO EL CASO.
• VENTAJAS:
• EL UNICO REACOMODAMIENTO EN EL ARCHIVO INDICE SE PRODUCE AL
AGREGAR O CAMBIAR UN NOMBRE, AUNQUE IGUALMENTE ES MENOS
COSTOSO, YA QUE EL INDICE ES MAS PEQUEÑO.
• BORRAR O AÑADIR GRABACIONES PARA UN COMPOSITOR, SOLO IMPLICA
CAMBIAR EL ARCHIVO DE LISTAS
• COMO EL REACOMODAMIENTO ES A BAJO COSTO, SE PDRIA ALMACENAR
EL ARCHIVO INDICE EN MEMORIA SECUNDARIA, LIBERANDO RAM
• DESVENTAJA:
• EL ARCHIVO DE LISTAS ES CONVENIENTE QUE ESTE EN MEMORIA
PRINCIPAL, PORQUE PODRIA HABER MUCHOS DESPLAZAMIENTOS EN DISCO
Y ES COSTOSO SI HAY MUCHOS INDICES SECUNDARIOS.
ARBOLES
LOS PROBLEMAS DE USAR INDICES SON QUE A INDICES GRANDES, DEBE IRSE A
MEMORIA SECUNDARIA Y EL ACCESO ES LENTO, EN EL CASO DE UNA BUSQUEDA
BINARIA, SE REQUIEREN DEMASIADOS DESPLAZAMIENTOS Y ADEMAS ES
NECESARIO UN METODO PARA MANTENER LOS INDICES ORDENADOS.

LA ESTRUCTURA DE ARBOL PERMITE LOCALIZAR DE FORMA MAS RAPIDA


INFORMACION DE UN ARCHIVO (USANDO ESTA ESTRUCTURA PARA LOS INDICES)
• ES UNA ESTRUCTURA JERARQUICA NO LINEAL
• RELACIONES PADRE-HIJO ENTRE NODOS
• UN ARBOL SE CARACTERIZA POR ESTAR FORMADOS POR UNA SERIE DE NODOS
CONECTADOS POR UNA SERIE DE ARISTAS QUE VERIFICAN QUE:
O HAY UN UNICO NODO RAIZ
O CADA NODO, EXCEPTO LA RAIZ TIENE UN UNICO PADRE
O HAY UN UNICO CAMINO DESDE LA RAIZ HASTA CADA NODO.
• UN ARBOL DE TIPO BASE T ES:
O ESTRUCTURA VACIA, O
O UN NODO DE TIPO T CON UN NUMERO FINITO DE ESTRUCTURAS ARBOL
DE TIPO BASE T DISJUNTAS LLAMADAS SUBARBOLES
• TERMINOLOGIA BASICA:
O GRADO DE UN NODO: NUMERO DE DESCENDIENTES DIRECTOS
O GRADO DEL ARBOL: MAYOR GRADO DE SUS NODOS.
O ARBOL BINARIO: ARBOL DE GRADO 2, CADA NODO TIENE A LO SUMO
DOS NODOS DIRECTOS
O ARBOL MULTICAMINO: CADA NODO PUEDE TENER N DESCENDIENTES
DIRECTOS
O LISTA : ARBOL DEGENERADO DE GRADO 1.
O PROFUNDIDAD DE UN NODO: CANTIDAD DE PREDECESORES
O ALTURA DEL ARBOL: PROFUNDIDAD MAXIMA DE CUALQUIER NODO.
O CAMINO: EXISTE UN CAMINO DEL NODO X AL NODO Y, SI EXISTE UNA
SUCESION DE NODOS QUE PERMITEN LLEGAR DE X A Y

• ARBOLES BINARIOS
O ARBOL GRADO 2
O CADA NODO TIENE DE 0 A 2 DESCENDIENTES DIRECTOS (HIJO
IZQUIERDO Y DERECHO)
O APLICACION: EXPRESIONES ARITMETICAS, ARBOLES DE DECISION,
BUSQUEDA ABB
O EN ALGUNOS CASOS SE EXIGE QUE EL ARBOL SEA COMPLETO, ES DECIR
QUE TODO NODO INTERNO TENGA SUS DOS DESCENDIENTES.
O COMO SE ALMACENA?
• ARCHIVO CON REGISTRO DE LONGITUD FIJA
• LA INFORMACION EN EL ARCHIVO NO ESTA FISICAMENTE
ORDENADA
O INSERCION
• SOLO LIGAR AL NODO APROPIADO (NO REORGANIZAR)
• SE VA BUSCANDO EN PROFUNDIDAD HASTA DONDE DEBA
INSERTARSE COMPARANDO A IZQ Y DERECHA EN QUE LUGAR QUEDA
BIEN ORDENADO.
O ARBOL BALANCEADO: SI LA ALTURA DE LA TRAYECTORIA MAS CORTA
HACIA UNA HOJA NO DIFIERE DE LA TRAYECTORIA DE LA ALTURA MAS
GRANDE.
O INCONVENIENTE, LOS ARBOLES BINARIOS, SE DESBALANCEAN MUY
FACILMENTE, LAS BUSQUEDAS PUEDEN SER COSTOSAS. L A SOLUCION ES
QUE SE VAYA ORDENANDO A MEDIDA QUE RECIBE LAS CLAVES.
• ARBOLES AVL
O ARBOL BINARIO BALANCEADO EN ALTURA. L A DIFERENCIA MAXIMA DE
ALTURA ENTRE CUALQUIERA DE DOS SUBARBOLES QUE COMPARTEN LA RAIZ
ES 1.
• SE LLAMA ARBOL BALANCEADO EN ALTURA O ARBOL BA(1).
• LAS INSERCIONES Y ELIMINACIONES SE EFECTUAN CON UN
MINIMO DE ACCESO.
• MIEMBRO DE UNA CLASE MAS GENERAL DE ARBOLES
BALANCEADOS EN ALTURA BA(K): DONDE LA MAXIMA DIFERENCIA DE
ALTURA ES K.
• GARANTIZAN UN CIERTO NIVEL MINIMO DE DESEMPEÑO DE
BUSQUEDA.
• LA ESTRUCTURA DEBE SER RESPETADA, AL INSERTAR NUEVOS
NODOS, SE REALIZAN ROTACIONES RESTRINGIDAS EN UN AREA LOCAL
DEL ARBOL.
• COMO SON ARBOLES BINARIOS, CON MUCHOS NIVELES, SON MUY
PROFUNDOS.
• EN UN ARBOL BINARIO COMPLETAMENTE BALANCEADO EL PEOR
CASO DE BUSQUEDA PARA ENCONTRAR UNA CLAVE (CONSIDERANDO N
CLAVES POSIBLES) BUSCA EN LOG2(N+1) NIVELES DEL ARBOL.
• EN UN ARBOL AVL, EL PEOR CASO DE BUSQUEDA PODRIA
BUSCAR EN 1.44 LOG2(N+2) NIVELES DEL ARBOL.
• PARA 1.000.000 DE CLAVES, UN COMPLETAMENTE BALANCEADO
REQUIERE DESPLAZAMIENTO DE 20 NIVELES.
• EN UN ARBOL AVL EL NUM MAXIMO DE NIVELES A BUSCAR ES 28.
• ESTO ES BUENO PARA ALMACENAR EN MEMORIA PRINCIPAL.
• EN ALMACENAMIENTO SECUNDARIO ES DESEABLE A LO SUMO 5 O
6 DESPLAZAMIENTOS, 20 O 28 ES INACEPTABLE.
• VOLVIENDO A LOS DOS PROBLEMAS INICIALES,
 LA BUSQUEDA BINARIA REQUIERE DEMASIADOS
DESPLAZAMIENTOS
 MANTENER UN INDICE EN ORDEN ES COSTOSO:

LOS AVL PROPORCIONAN UNA SOLUCION ACEPTABLE AL SEGUNDO


PROBLEMA
• ARBOLES BINARIOS PAGINADOS:
O DESPLAZARSE EN MEMORIA SECUNDARIA TIENE UN COSTO DE TIEMPO
RELATIVAMENTE ALTO. UNA VEZ EN POSICION, LEER O ESCRIBIR UN
CONJUNTO DE BYTES CONTINUOS ES RAPIDO.
O LA COMBINACION DE DESPLAZAMIENTO LENTO + TRANSFERENCIA
RAPIDA CONDUCE A LA IDEA DE PAGINACION
O AL DIVIDIR UN ARBOL BINARIO EN PAGINAS Y DESPUES ALMACENAR
CADA PAGINA EN BLOQUES DE LOCALIDAD CONTIGUAS EN DISCO, SE PUEDE
REDUCIR EL NUMERO DE DESPLAZAMIENTOS PARA CUALQUIER BUSQUEDA.
O CONSISTE EN:
• DIVIDIR EL ARBOL BINARIO EN PAFINAS
• ALMACENAR CADA PAGINA EN UN BLOQUE DE DIRECCIONES
CONTIGUAS EN DISCO
o LA BUSQUEDA DE UN ARBOL BINARIO SE ACCEDE LOG2(N+1) SIENDO N
LA CANTIDAD DE CLAVES…. CON LOS PAGINADOS DEL MISMO ARBOL SE
TARDA LOGK+1(N+1) SIENDO K LA CANTIDAD DE CLAVES POR PAGINAS…
O QUE SUCEDERIA SI UTILIZARA PAGINAS GRANDES.
• PARA CADA ACCESO A UNA PAGINA, REQUIERE TRANSMITIR
MUCHOS DATOS, LA MAYORIA NO USADOS.
• HAY TIEMPO DE TRANSMISION ADICIONAL, PERO SE AHORRAN
MUCHOS DESPLAZAMIENTOS QUE CONSUMEN MAS TIEMPO QUE LAS
RETRANSMISIONES…
O PROBLEMAS:
• DIFICIL IMPLEMENTACION
• DIFICIL DE ELEGIR LA RAIZ
• DIFICIL DE MANTENER BALANCEADO
• LA IDEA DE AGRUPAR CLAVES EN PAGINAS ES MUY BUENA, PERO
NO SE HA ENCONTRADO LA FORMA DE AGRUPAR LAS CLAVES
CORRECTAMENTE.

• ARBOLES MULTICAMINO O N-ARIOS:


O ARBOL EN EL QUE CUALQUIER NODO PUEDE TENER CUALQUIER NUMERO
DE HIJOS.
O IMPLEMENTACIONES:
• HIJOS COMO ARREGLOS DE REFERENCIAS:DESAPROVECHA
MEMORIA SI EL NUMERO DE HIJOS ES MUY VARIABLE Y NO PUEDE
USARSE SI EL NUMERO DE HIJOS ES LIMITADO.
• HIJOS COMO LISTA ENLAZADA.

• ARBOLES B
O HASTA AHORA UNO DE LOS PROBLEMAS ERA LA ELECCION DE LA RAIZ
DEL ARBOL Y EL OTRO ERA MANTENERLO SIEMPRE BALANCEADO. LOS
ARBOLES B, SON CONSTRUIDOS DESDE LA BASE HACIA ARRIBA, LA RAIZ
EMERGE CON LA CONSTRUCCION.
O ARBOLES B BALANCEADOS. SON ARBOLES MULTICAMINO CON UNA
CONSTRUCCION ESPECIAL EN FORMA ASCENDENTE QUE PERMITE
MANTENERLO BALANCEADO A BAJO COSTO.
O PROPIEDADES DE UN ARBOL B DE ORDEN M:
• ORDEN: CANTIDAD MAXIMA DE PUNTEROS POR NODO
• CANTIDAD DE PUNTEROS ES IGUAL A LA CANTIDAD DE CLAVES +
1.
• NINGUN NODO TIENE MAS DE M HIJOS.
• CADA NODO (MENOS LA RAIZ Y LOS TERMINALES) TIENEN COMO
MINIMO M/2 HIJOS.
• LA RAIZ TIENE COMO MINIMO DOS HIJOS O NINGUNO.
• TODOS LOS NODOS TERMINALES ESTAN A IGUAL NIVEL
• NODOS NO TERMINALES NO K HIJOS CONTIENEN K-1 NODOS. LOS
NODOS TERMINALES TIENEN COMO MINIMO M/2 - 1 NODOS Y COMO
MAXIMO M-1 NODOS.
O ESTRUCTURA:
• ARCHIVO CON REGISTROS DE LONGITUD FIJA
• CADA REGISTRO TIENE UNA PAGINA O NODO
• EN PASCAL SERIA:
PAGINAAB = RECORD
CANT_CLAVES: INTEGER;
CLAVES: ARRAY[1..MAXLLAVES] OF CHAR;
HIJOS: ARRAY[1.MAXHIJOS] OF INTEGER;
END
O DEFINICION DE NODO ADYACENTE HERMANO: DOS NODOS SON
ADYACENTES HERMANOS SI TIENEN EL MISMO PADRE Y SON APUNTADOS POR
PUNTEROS ADYACENTES EN EL PADRE.
O OPERACIONES
• BUSQUEDA: COMIENZA BUSCANDO LA CLAVE EN EL NODO
ACTUAL, SI NO LA LOCALIZA, TOMA EL PUNTERO CORRESPONDIENTE
ENTRE LAS CLAVES EXISTENTES. SI NO ES PUNTERO NULO, SE TOMA ESE
NODO Y SE LLAMA RECURSIVAMENTE. SI ES UN PUNTERO NULO, EL
ELEMENTO NO SE ENCUENTRA EN EL ARBOL.
• INSERCION (CREACION): COMIENZA CON UNA BUSQUEDA QUE
LLEGA HASTA EL NIVEL HOJA, DESPUES DE ENCONTRAR EL LUGAR DE
INSERCION EN EL NIVEL HOJA, HACE EL TRABAJO DE INSERCION,
DIVISION Y PROMOCION CONTINUA EN FORMA ASCENDENTE DESDE
ABAJO. SI EL REGISTRO TIENE LUGAR EN EL NODO HJA ( O TERMINAL) SE
INSERTA. SI EN CAMBIO NO TUVIESE LUGAR, PRODUCE OVERFLOW, EL
NODO SE DIVIDE, SE REPARTEN LOS ELEMENTOS Y SE PRODUCE UNA
PROMOCION A UN NIVEL SUPERIOR, GENERANDOSE UNA NUEVA RAIZ.
• ELIMINACION. EL MEJOR CASO ES CUANDO EL BORRADO DE UN
ITEM NO PRODUCE UN UNDERFLOW, EN ESE CASO SOLO SE
REACOMODAN LOS NODOS INTERNAMENTE, EN CAMBIO EN EL PEOR
CASO, SE PRODUCE UN UNDERFLOW QUE IMPLICA QUE SE TENGA QUE
RECURRIR A DOS POSIBLES SOLUCIONES:
 REDISTRIBUCION: SE TRANSLADAN LAS CLAVES A UN
NODO ADYACENTE HERMANO (EN CASO QUE ESTE TENGA
SUFICIENTE ESPACIO)
 CONCATENACION: SI UN NODO ADYACENTE HERMANO
ESTA AL MINIMO, NO TIENE ESPACIO Y NO SE PUEDE REDISTRIBUIR,
SE CONCATENA CON UN NODO ADYACENTE DISMINUYENDO EL
NUMERO DE NODOS, Y EN ALGUNOS CASOS LA ALTURA DEL
ARBOL.
O LA REDISTRIBUCION PODRIA POSPONER LA CREACION DE PAGINAS
NUEVAS, PUEDEN CREARSE ARBOLES MAS EFICIENTES EN TERMINOS DE
UTILIZACION DE ESPACIO.
• ARBOLES B* (B ESTRELLA, B ASTERISCO O B ESPECIAL)
O LA CONDICION QUE LO DISTINGUE DEL B ES QUE CADA NODO (EXCEPTO
LA RAIZ) ESTA LLENO POR LO MENOS EN 2/3 PARTES
O PROPIEDADES (ARBOL ORDEN M)
• CADA PAGINA TIENE COMO MAXIMO M DESCENDIENTES
• CADA PAGINA, MENOS LA RAIZ Y LAS HOJAS, TIENEN AL MENSO
[(2M-1)/3] DESCENDIENTES
• LA RAIZ TIENE COMO MINIMO DOS HIJOS O NINGUNO.
• TODAS LAS PAGINAS QUE NO SON HOJA, SI TIENE K
DESCENDIENTES CONTIENE K-1 CLAVES.
• UNA PAGINA HOJA CONTIENE POR LO MENOS [(2M-1)/3]-1 CLAVES
Y NO MAS DE M-1.
O OPERACIONES:
• BUSQUEDA Y BORRADO SIMILAR A ARBOL B
• INSERCION. (DIVISION E INCORPORA REDISTRIBUCION)
 TRES CASOS POSIBLES:
• DERECHA: REDISTRIBUIR CON NODO ADYACENTE
HERMANO DE LA DERECHA ( O IZQUIERDA SI ES EL ULTIMO)
• IZQUIERDA O DERECHA: SI EL NODO DE LA
DERECHA ESTA LLENO O NO SE PUEDE REDISTRIBUIR, SE
BUSCA EL DE LA IZQUIERDA.
• IZQUIERDA Y DERECHA: BUSCA LLENAR LOS TRES
NODOS, ESTOS TENDRAN UN 2/3 PARTE LLENA.
• MANEJO DE PAGINAS EN BUFFERS
O EL OBJETIVO ES MINIMIZAR EL NUMERO DE ACCESOS A DISCO
O TRANSFERIR LA RAIZ A RAM AHORRA UN ACCESO ASEGURADO.
O ALMACENAR LA RAIZ Y LAS PAGINAS SOLICITADAS EN UN BUFFER DE
PAGINAS EN RAM
O TECNICAS DE PAGINADO: ESTRATEGIAS DE REEMPLAZO LRU (LEAST
RECENTLY USED)
• ARBOLES +
O ARCHIVOS SECUENCIALES INDIZADOS
• PERMITEN UNA MEJOR RECORRIDA POR ALGUN TIPO DE ORDEN.
• INDIZADO (ORDENADO POR ALGUNA CLAVE)
• SECUENCIAL (ACCEDE SECUENCIALMENTE AL ARCHIVO
DEVOLVIENDO LOS REGISTROS EN ORDEN DE LA CLAVE)
• HASTA AHORA DE LOS METODOS DISJUNTOS SE OPTA POR
RECUPERACION RAPIDA (ARBOL) Y RECUPERACION ORDENADA
(SECUENCIAL) PERO SE DEBE ENCONTRAR UNA SOLUCION QUE AGRUPE
AMBOS CASOS.
O LOS ARBOLES B+ SON UNA MEJORA SOBRE LOS ARBOLES B EN LOS QUE
SE CONSERVA LA PROPIEDAD DE ACCESO ALEATORIO RAPIDO PERO
PERMITIENDO UN RECORRIDO SECUENCIAL RAPIDO.
O EL ARBOL ESTA COMPUESTO POR DOS PARTES:
• INDICES (NODOS INTERIORES)
• SECUENCIA: PAGINAS HOJAS ENLAZADAS SECUENCIALMENTE EN
LAS QUE SE REPITEN LAS CLAVES ANTERIORES.
O TODAS LAS CLAVES SE ENCUENTRAN EN LAS HOJAS, DUPLICANDOSE EN
LA RAIZ Y NODOS INTERIORES, AQUELLAS NECESARIAS PARA DEFINIR LOS
CAMINOS DE LAS BUSQUEDAS)
O LAS HOJAS ESTAN VINCULADAS ENTRE SI, OBTENIENDOSE DE ESE MODO
UNA TRAYECTORIA SECUENCIAL PARA RECORRER LAS CLAVES DEL ARBOL.
O OCUPAN MAS ESPACIO QUE LOS ARBOLES B, YA QUE ALGUNAS CLAVES
SE ENCUENTRAN MAS DE UNA VEZ EN EL ARBOL.
O LAS CLAVES DE LA PAGINA RAIZ E INTERIORES SON USADAS
UNICAMENTE COMO INDICE PARA LAS BUSQUEDAS.
O PROPIEDADES:
• CADA PAGINA TIENE MAXIMO M DESCENDIENTES
• CADA PAGINA TIENE, MENOS LA RAIZ Y LAS HOJAS, ENTRE [M/2] Y
M HIJOS.
• LA RAIZ TIENE AL MENOS DOS DESCENDIENTES (O NINGUNO)
• TODAS LAS HOJAS APARECEN EN NIVEL IGUAL.
• UNA PAGINAQUE NO SEA HOJA, SI TIENE K DESCENDIENTES,
CONTIENE K-1 CLAVES.
• LOS NODOS TERMINALES REPRESENTAN UN CONJUNTO DE DATOS
Y SON LINKEADOS JUNTOS.
• LOS NODOS NO TERMINALES NO CONTIENEN DATOS, SINO
PUNTEROS A LOS DATOS (EN LAS HOJAS)
O OPERACIONES:
• BUSQUEDA: LA BUSQUEDA NO DEBE DETENERSE CUANDO SE
ENCUENTRE LA CLAVE EN LA RAIZ O NODO INTERIOR, SINO QUE DEBE
SEGUIR EN LA PAGINA APUNTADA POR LA RAMA DERECHA DE DICHA
CLAVE.
• INSERCION: EL PROCESO DE INSERCION ES SIMILAR A DE LOS
ARBOLES B, EXCEPTO CUANDO SE QUIERE INSERTAR UNA CLAVE EN
DONDE LA PAGINA SE ENCUENTRA LLENA, EN TAL CASO, ESTA SE DIVIDE
TAMBIEN EN OTRAS DOS, PERO AHORA LA PRIMERA CONTENDRA M/2
CLAVES Y LA SEGUNDA 1+M/2 Y LO QUE SUBIRA AL PADRE SERA UNA
COPIA DE LA CLAVE CENTRAL.
• ELIMINACION: ESTE PROCESO ES MAS SIMPLE QUE EN LOS
ARBOLES B PORQUE TODAS LAS CLAVES SE ENCUENTRAN EN LAS
HOJAS. SI AL ELIMINAR LA CLAVE, LA CANTIDAD DE CLAVES ES MAYOR O
IGUAL A M/2, EL PROCESO CONCLUYE (LAS CLAVES DE LA RAIZ O ODOS
INTERNOS NO SE MODIFICAN PORQUE SIGUEN SIENDO UN SEPARADOR
VALIDO ENTRE LAS CLAVES DE LAS PAGINAS DESCENDIENTES) PERO SI
AL ELIMINAR LA CLAVE, LA CANTIDAD DE CLAVES QUEDA MENOR A M/2,
ES NECESARIA UNA FUSION Y REDISTRIBUCION DE LAS MISMAS EN LA
HOJA Y EN LOS INDICES.
HASHING (DISPERSION)
HASHING
• DEFINICIONES
O TECNICA PARA GENERAR UNA DIRECCION BASE UNICA PARA UNA CLAVE
DADA. LA DISPERSION SE USA CUANDO SE REQUIERE ACCESO RAPIDO A UNA
CLAVE.
O TECNICA QUE CONVIERTE LA CLAVE DEL REGISTRO EN UN NUMERO
ALEATORIO, EL QUE SIRVE DESPUES PARA DETERMINAR DONDE SE
ALMACENA EL REGISTRO.
O TECNICA DE ALMACENAMIENTO Y RECUPERACION QUE USA UNA
FUNCION DE HASH PARA MAPEAR REGISTROS EN DIRECCION DE
ALMACENAMIENTO
• ATRIBUTOS:
O NO REQUIERE ALMACENAMIENTO ADICIONAL (INDICE)
O FACILITA LA INSERCION Y ELIMINACION RAPIDA DE REGISTROS
O ENCUENTRA REGISTROS CON MUY POCOS ACCESOS AL DISCO EN
PROMEDIO (GENERALMENTE, MENOS DE DOS)
• COSTO
O NO SE PUEDE USAR REGISTROS DE LONGITUD VARIABLE
O NO HAY ORDEN FISICO DE DATOS
O NO SE PERMITEN CLAVES DUPLICADAS
• PARA DETERMINAR UNA DIRECCION
O LA CLAVE SE CONVIERTE EN UN NUMERO CASI ALEATORIO
O EL NUMERO SE CONVIERTE EN UNA DIRECCION EN MEMORIA
O EL REGISTRO SE GUARDA EN ESA DIRECCION
O SI LA DIRECCION ESTA OCUPADA, HAY OVERFLOW Y SE TRATA DE UNA
FORMA ESPECIAL
• PARAMETROS QUE AFECTAN LA EFICIENCIA
O TAMAÑO DEL ESPACIO DE ALMACENAMIENTO
O DENSIDAD DELEMPAQUETAMIENTO
O FUNCION DE HASH
O METODO DE TRATAMIENTO DE DESBORDES
• FUNCION DE HASH
O CAJA NEGRA QUE A PARTIR DE UNA CLASE SE OBTIENE LA DIRECCION
DONDE DEBE ESTAR EL REGISTRO
O DIFERENCIA CON INDICES:
• DISPERSION: NO HAY RELACION APARENTE ENTRE CLAVE Y
DIRECCION
• DOS CLAVES DISTINTAS PUEDEN TRANSFORMARSE EN IGUALES
DIRECCIONES (COLISIONES), EN ESE CASO SON CLAVES SINONIMOS.
O COLISION:
• SITUACION EN LA QUE UN REGISTRO ES ASIGNADO A UNA
DIRECCION YA OCUPADA (NO TIENE SUFICIENTE ESPACIO PARA SER
ALMACENADO)
• A LAS CLAVES QUE POR DISPERSION SE CONVIERTEN EN LA
MISMA DIRECCION, SE LAS LLAMA SINONIMOS
• SE PRESENTAN COMO SOLUCIONES POR EJEMPLO, ALGORITMOS
DE DISPERSION SIN COLISIONES (PERFECTOS) QUE SON IMPOSIBLES DE
CONSEGUIR, O EL ALMACENAMIENTO DE LOS REGISTROS DE ALGUNA
FORMA DIFERENTE, ESPARCIR…
O SOLUCIONES PARA COLICIONES:
• ESPARCIR REGISTROS: BUSCAR METODOS QUE DISTRIBUYAN LOS
REGISTROS DE LA FORMA MAS ALEATORIA POSIBLE ENTRE LAS
DIRECCIONES DISPONIBLES.
• USAR MEMORIA ADICIONAL: DISTRIBUIR POCOS REGISTROS EN
MUCHAS DIRECCIONES PUEDE DISMINUIR LAS CHANCES DE OVERFLOW,
PERO DESPERDICIA MUCHO ESPACIO
• COLOCAR MAS DE UN REGISTRO POR DIRECCION:
 DIRECCIONES CON N CLAVES.
 MEJORAS NOTABLES
 LAS DIRECCIONES QUE PUEDEN ALMACENAR VARIOS
REGISTROS EN ESTA FORMA SON COMPARTIMENTOS.
O ALGORITMOS SIMPLES PARA DISPERSION:
• CONDICIONES:
 REPARTIR REGISTROS EN FORMA UNIFORME EN EL
ESPACIO DE DIRECCIONES DISPONIBLE.
 ALEATORIA (LAS CLAVES OSN INDEPENDIENTES, NO
INFLUYEN UNA SOBRE LA OTRA)
• TRES PASOS:
 REPRESENTAR LA LLAVE EN FORMA NUMERICA (EN CASO
QUE NO LO SEA)
 APLICAR FUNCION
 RELACIONAR EL NUMERO RESULTANTE CON EL ESPACIO
DISPONIBLE
O FUNCIONES DE DISPERSION
• CENTROS CUADRADOS: LA CLAVE SE MULTIPLICA POR SI MISMA Y
TOMANDO LOS DIGITOS CENTRALES AL CUADRADO, POSTERIORMENTE
SE AJUSTA AL ESPACIO DISPONIBLE
• DIVISION: LA CLAVE SE DIVIDE POR UN NUMERO
APROXIMADAMENTE IGUAL AL NUMERO DE DIRECCIONES (NUMERO
PRIMO, PUES TIENDE A DISTRIBUIR LOS RESIDUOS EN FORMA MAS
EFICIENTE)
• DESPLAZAMIENTO: LOS DIGITOS EXTERNOS DE AMBOS
EXTREMOS SE CORREN HACIA ADENTRO, SE SUMAN Y SE AJUSTA AL
ESPACIO DISPONIBLE.
• PLEGADO: LOS DIGITOS EXTERNOS SE PLIEGAN, SUMAN Y
ADAPTAN AL ESPACIO DE DIRECCIONES.
• ANALISIS DE DIGITOS: SE ANALIZAN LAS CLAVES PARA ELIMINAR
POSIBLES REPETICIONES EN LA MISMA
• CONVERSION DE RAIZ: LA BASE DEL NUMERO SE MODIFICA Y EN
LA SERIE DE DIGITOS RESULTANTE SE SUPRIMEN LOS DIGITOS DE
ORDEN MAYOR. EJ PARA DIRECCIONES 0-99, SE INGRESA LA CLAVE 453,
BASE11(453)=382, 382 MOD 99 = 85
• DIVISION POLINOMINCA: CADA DIGITO CLAVE SE TOMA COMO
COEFICIENTE DE POLINOMIO, SE DIVIDE POR POLINOMIO FIJO, EL
COEFICIENTE DEL RESTO SE TOMA COMO DIRECCION.
O LA MEJOR FORMA DE ESCOGER CUAL USAR ES TOMAR ALGUNAS CLAVES
Y APLICARLA A LOS DIFERENTES ALGORITMOS Y LUEGO ELEGIR EL QUE SE
COMPORTE DE MEJOR MANERA. POR LO GENERAL LOS QUE MEJOR SE
COMPORTAN SON EL DE DIVISION, O EN CASO DE LAS CLAVES MAS LARGAS
EL DE PLEGADO.
O TAMAÑO DE LOS COMPARTIMIENTOS DE MEMORIA:
• PUEDEN TENER MAS DE UN REGISTRO
• A MAYOR TAMAÑO
 MENOR COLISION
 MAYOR FRAGMENTACION
 BUSQUEDA MAS LENTA DENTRO DEL COMPARTIMIENTO.
• ES NECESARIO DECIDIR CUANTO ESPACIO SE ESTA DISPUESTO A
DESPERDICIAR PARA REDUCIR EL NUMERO DE COLISIONES. ES
DESEABLE TENER EL MENOR NUMERO DE COLISIONES POSIBLE PERO NO
A EXPENSAS, POR EJEMPLO DE QUE UN ARCHIVO USE DOS DISCOS EN
LUGAR DE UNO…
O DENSIDAD DE EMPAQUETAMIENTO: PROPORCION DE ESPACIO DEL
ARCHIVO ASIGNADO QUE EN REALIDAD ALMACENA REGISTROS.
DE = NUMERO DE REGISTROS EN ARCHIVO / CAPACIDAD TOTAL
ES LA MEDIDA DE LA CANTIDAD DE ESPACIO QUE SE USA EN EL ARCHIVO.
NO IMPORTA EL TAMAÑO REAL DEL ARCHIVO NI SU ESPACIO DE
DIRECCIONES. LO IMPORTANTE SON LOS TAMAÑOS RELATIVOS DE LOS DOS,
QUE ESTAN DADOS POR LA DENSIDAD DE EMPAQUETAMIENTO.
A MENOR DENSIDAD, TENDREMOS MENOS OVERFLOW, PERO MAYOR
DESPERDICIO DE ESPACIO.
O ESTIMACION DEL OVERFLOW:
• SEAN LOS SIGUIENTES DATOS:
N: NUMERO DE COMPARTIMENTOS; C: CAPACIDAD DE LOS
COMPARTIMENTOS; K: NUMERO DE REGISTROS EN EL ARCH.
DE = K / (C * N)
PROBABILIDAD DE QUE UN COMPARTIMENTO RECIBA Y REGISTROS
ESTA DEFINIDA POR UNA DISTRIBUCION DE PROBABILIDADES DE
POISSON DE Y
O EN CONCLUSION, SI LA DE ES DEL 50% Y CADA DURECCION PUEDE
ALMACENAR SOLO UN REGISTRO, PUEDE ESPERARSE QUE EL 21% DE LOS
REGISTROS SEAN ALMACENADOS EN UN LUGAR QUE NO SEA SU DIRECCION
BASE.
O UNA POSIBLE SOLUCION ES QUE CADA COMPARTIMENTO GUARDE MAS
DE UN REGISTRO.
• EN ESTAS CONDICIONES, PODEMOS DEFINIR QUE SI H(K1)=H(K2),
K1 <> K2, (ANTES DEFINICION DE COLISION) AHORA DECIMOS QUE
AMBOS DATOS SE ALBERGAN EN UN MISMO COMPARTIMENTO.
• REDEFINIMOS COLISION COMO EL MOMENTO EN QUE UN
COMPARTIMENTO QUEDA LLENO.
• APLICANDO POISON, VEMOS QUE A MAS CAPACIDAD DE LOS
COMPARTIMENTOS (Y POR LO TANTO MENOS DIRECCIONES EN
MEMORIA), LA SATURACION DECRECE. ENTONCES, COMO SE DETERMINA
EL TAMAÑO DE LOS COMPARTIMENTOS; EN PRIMER LUGAR DEPENDE
DEL SO, DEL TAMAÑO DEL BUFFER Y EL TIEMPO DE ACCESO. PUEDE
SUCEDER QUE SI EL TAMAÑO DEL COMPARTIMENTO, ELTIEMPO DE
RECUPERACION SEA MUCHO MAS LENTO (Y YA DEJARIA DE SER O(1))
O METODOS DE TRATAMIENTO DE COLISIONES.
• SATURACION PROGRESIVA: CUANDO SE COMPLETA UNA
DIRECCION DE MEMORIA, SE BUSCA EN LAS SIGUIENTES DIRECCIONES
EN SECUENCIA HASTA ENCONTRAR UNA VACIA.
LA BUSQUEDA COMENZARIA EN LA DIRECCION BASE Y CONTINUA
BUSCANDO EN LOCALIDADES SUCESIVAS HASTA ENCONTRARLO, PUEDE
HABER CIRCULARIDAD. SI SE LLEGARA A ENCONTRAR UNA DIRECCION
VACIA SE PUEDE SUPONER QUE LA CLAVE BUSCADA NO ESTA EN EL
ARCHIVO O SI EL ARCHIVO ESTA LLENO, LA BUSQUEDA VUELVE A
DONDE COMENZO.
EN CASO DE LA ELIMINACION, NO DEBE PERMITIRSE QUE EL ESPACIO
LIBERADO POR LA ELIMINACION OBSTACULICE LAS BUSQUEDAS
POSTERIORES Y AL MISMO TIEMPO QUE DEBE SER POSIBLE UTILIZAR EL
ESPACIO LIBERADO PARA ADICIONES POSTERIORES, EL PROBLEMA ES
QUE LA BUSQUEDA FINALIZA AL ENCONTRAR UNA DIRECCION VACIA,
POR ESO NO ES CONVENIENTE DEJAR DIRECCIONES VACIAS, QUE
TERMINEN LA BUSQUEDA POR SATURACION EN FORMA INAPROPIADA. ES
POR ESTO QUE SE NECESITA LIBERAR EL ESPACIO MARCANDOLO
SOLAMENTE DE ALGUNA FORMA, DE ESTA FORMA, EL ESPACIO
LIBERADO NO ROMPE LA SECUENCIA DE BUSQUEDAS, EL ESPACIO
DISPONIBLE PUEDE SER UTILIZADO POR ADICIONES POSTERIORES Y EN
CASO DE QUE EL SIGUIENTE REGISTRO SIGUIENTE ESTE VACIO, NO
SERIA NECESARIO MARCARLO.
ESTE METODO TIENDE A AGRUPAR EN ZONAS CONTIGUAS… LAS
BUSQUEDAS LARGAS CON DE QUE TIENDEN A 1. LA SOLUCION SERIA
ALMACENAR LOS REGISTROS DE OVERFLOW EN ZONAS NO
RELACIONADAS. LA GRAN VENTAJA DE ESTE METODO ES LA GRAN
SIMPLICIDAD QUE TIENE.
• DISPERSION DOBLE: CUANDO SUCEDE UNA COLISION SE APLICA
UNA SEGUNDA FUNCION DE DISPERSION A LA CLAVE PARA PRODUCIR
UN NUMERO, EL CUAL SE SUMA A LA DIRECCION ORIGINAL TANTAS
VECES COMO SEA NECESARIO HASTA ENCONTRAR UNA DIRECCION
VACIA (CON ESPACIO). ENTRE SUS CARACTERISTICAS, SE EVITA EL
ACUMULAMIENTO, LOS REGISTROS NO QUEDAN "LOCALES" SINO QUE
TIENDEN A ESPARCIRSE EN EL ARCHIVO, AUMENTA EL T.A.P. A LOS
REGISTROS, SE DEBERIA CONSEGUIR COMPARTIMENTOS DE
SATURACION CON DIRECCION AL MISMO CILINDRO DE DISCO, YA QUE EL
CAMBIO DE CILINDRO REQUIERE UN COSTOSO MOVIMIENTO DE LA
CABEZA LECTORA/GRABADORA.
• SATURACION PROGRESIVA ENCADENADA: INTENTA EVITAR LOS
PROBLEMAS POR ACUMULACION DE REGISTROS. FUNCIONA IGUAL QUE
LA SATURACION PROGRESIVA, EXCEPTO QUE LAS CLAVES SINONIMOS SE
ENLAZAN POR APUNTADORES (NO OCUPANDO NECESARIAMENTE
POSICIONES CONTIGUAS), CADA DIRECCION BASE CONTIENE UN
NUMERO QUE INDICA EL LUGAR DEL SIGUIENTE REGISTRO CON LA
MISMA DIRECCION BASE, EL SIGUIENTE REGISTRO CONTIENE A LA VEZ
UN PUNTERO AL SIGUIENTE REGISTRO CON LA MISMA DIRECCION BASE
Y ASI SUCESIVAMENTE. SI BIEN MEJORA LA CANTIDAD DE ACCESOS A
LOS REGISTROS, DEBE AGREGARSE UN CAMPO DE ENLACE A CADA
REGISTRO, POR LO CUAL REQUIERE MAS ESPACIO DE
ALMACENAMIENTO.
• SATURACION PROGRESIVA CON ENCADENAMIENTO EN AREAS
SEPARADAS: AL CONJUNTO DE DIRECCIONES BASE SE LE LLAMA AREA
PRINCIPAL DE DATOS, AL CONJUNTO DE DIRECCIONES EN SATURACION
SE LA LLAMA AREA DE SATURACION. CUANDO SE AGREGA UN REGISTRO
NUEVO SI HAY LUGAR EN DIRECCION BASE SE ALMACENA AHI, SINO SE
MUEVE AL ARCHIVO DE SATURACION (EN UN AREA SEPARADA) DONDE
SE AGREGA A LA LISTA ENLAZADA QUE COMIENZA EN LA DIRECCION
BASE. SE MEJORA EL TRATAMIENTO DE INSERCIONES Y ELIMINACIONES.
SI EL AREA DE SATURACION SEPARADA ESTA EN UN CILINDRO
DIFERENTE AL DE LA DIRECCION BASE, TODA BUSQUEDA DE REGISTRO
EN SATURACION IMPLLICARA UN MOVIMIENTO DE CABEZA MUY
COSTOSO. CONVIENE QUE SE UTILICE CUANDO LA DE SEA MAYOR A
UNO, ES DECIR QUE HAYA MAS REGISTROS QUE LAS DIRECCIONES BASE.
• HASH ASISTIDO POR TABLA . ES UNA VARIANTE DEL
ENCADENAMIENTO. TIENE UNA TABLA EN MEMORIA CON UNA ENTRADA
POR CADA COMPARTIMENTO DEL ARCHIVO. SI BIEN LAS INSERCIONES
SON LENTAS, SE GANA VELOCIDAD EN LASRECUPERACIONES, LAS
CLAVES SE CONVIERTEN EN DOS ELEMENTOS, UNA PARA LA DIRECCION
DE LOS COMPARTIMENTOS Y LA OTR ES LA SECUENCA DE K-BITS. EN LA
TABLA, EL VALOR MAXIMO DE SECUENCIA QUE OBTUVO EN EL
COMPARTIMENTO (COMIENZA EN EL INFINITO).
ES UN BUEN METODO DE RECUPERACION, UN ACCESO, SIRVE CUANDO
SE RECUPERA MAS QUE LO QUE SE INSERTA. EN EL CASO DE LAS
INSERCIONES, SI HAY COMPARTIMENTO CON LUGAR, QUEDA EL
ELEMENTO. EN EL CASO QUE EL COMPARTIMENTO ESTE LLENO, SE HACE
LA LISTA DE INSERCION..
O PARA UNA TECNICA BUENA, NECESITAMOS UN NUMERO DE DIRECCIONES
FIJAS VIRTUALMENTE IMPOSIBLE.
O EL ARCHIVO SE LLENA POR LO TANTO SATURACION EXCESIVA, REQUIERE
REDISPERSAR, UNA NUEVA FUNCION Y MUCHOS CAMBIOS.
O LA SOLUCION SERIA REORGANIZARA LAS TABLAS SIN MOVER MUCHOS
REGISTROS. EXISTEN TECNICAS QUE ASUMEN BLOQUES FISICOS UE PUEDEN
UTILIZARSE O LIBERARSE.
O CADA TECNNICA TIEEN SOLUCIONES QUE DERIVAN EN NUEVOS
PROBLEMAS.
• PARTIR EL COMPARTIMENTO CUANDO SE LLENA
• REACOMODAR REGISTROS ENTRE COMPARTIMENTO VIEJO Y
NUEVO
• MINIMIZAR ACCESOS A COMPARTIMENTOS DURANTE LA
RECUPERACION
• BORRAR REGISTROS DEL ARCHIVOS
O ALTERNATIVAS: HASH VIRTUAL, DINAMICO U EXTENSIBLE. HASH
EXTENSIBLE: ADAPTA EL RESULTADO DE LA FUNCION DE HASH DE ACUERDO
AL NUMERO DE REGISTROS QUE TENGA EL ARCHIVO Y DE LOS
COMPARTIMENTOS NECESARIOS PARA SU ALMACENAMIENTO. LA FUNCION
GENERA UNA SECUENCIA DE BITS (NORMALMENTE 32) Y EVITA MANTENER
AREAS DE DESBORDAMIENTO Y HACER BUSQUEDAS CON DOS LECTURAS.
• COMO TRABAJA? SE UTILIZAN SOLO LOS BITS NECESARIOS DE
ACUERDO A CADA INSTANCIA DEL ARCHIVO. LOS BITS TOMADOS
FORMAN LA DIRECCION DEL COMPARTIMIENTO QUE SE UTILIZARA. SI SE
INTENTARA INSERTA A UN COMPARTIMENTO LLENO, DEBEN REUBICARSE
TODOS LOS REGISTROS ALLI CONTENIDOS ENTRE EL COMPARTIMENTO
VIEJO Y EL NUEVO. PARA ELLO SE TOMA UN BIT MAS. LA TABLA TENDRA
TANTAS ENTRADAS COMO 2^I SIENDO I EL NUMERO DE BITS ACTUALES
PARA EL SISTEMA.
MODELADO DE DATOS
• SISTEMA DE INFORMACION: CONJUNTO DE ACTIVIDADES QUE REGULAN LA
DISTRIBUCION Y COMPARTIMIENTO DE LA INFORMACION Y EL ALMACENAMIENTO
DE LOS DATOS RELEVANTES PARA SU ADMINISTRACION
• BASE DE DATOS: CUALQUIER CONJUNTO "GRANDE"DE DATOS
ESTRUCTURADOS, ALMACENADOS EN UNA COMPUTADORA
O ESCENCIALES PARA LA SUPERVIVENCIA DE LA ORGANIZACION
O LOS DATOS ESTRUCTURADOS CONSTITUYEN UN RECURSO ESENCIAL.
• DBMS: PAQUETE DE SOFTWARE PARA LA GESTION DE LA BD, ESPECIALMENTE
PARA ALMACENAR, MANIPULAR Y RECUPERA DATOS EN UN COMPUTADOR.
• ABSTRACCION: PROCESO MENTAL APLICADO AL SELECCIONAR ALGUNAS
CARACTERISTICAS DE UN CONJUNTO DE OBJETOS Y EXCLUIR OTRAS
• DISEÑO DE LA BD. TRES FASES
O DISEÑO CONCEPTUAL:
• REPRESENTACION ABSTRACTA
• PROPOSITO: DESCRIBIR EL CONTENIDO DE INFORMACION DE LA
BD, MAS QUE LAS ESTRUCTURAS DE ALMACENAMIENTO.
• ESQUEMA CONCEPTUAL: DESCRIPCION DE ALTO NIVEL DE LA
ESTRUCTURA DE LA BD, INDEPENDIENTE DEL DBMS QUE LA MANIPULA.
• MODELO CONCEPTUAL: LENGUAJE USADO PARA DESCRIBIR
ESQUEMAS CONCEPTUALES
• ESPECIFICACION DE REQUERIMIENTOS + DISEÑO CONCEPTUAL ->
ESQUEMA CONCEPTUAL DE LA BD
• MECANISMOS DE ABSTRACCION :
 CLASIFICACION: DEFINE UN CONCEPTO COMO UNA CLASE
DE OBJETOS DE LA REALIDAD CON PROPIDADES COMUNES
(ES_MIEMBRO_DE)
• ARBOL DE UN NIVEL QUE TIENE COMO RAIZ LA
CLASE Y COMO HOJA LOS ELEMENTOS DE LA CLASE
• CADA ELEMENTO HOJA ES MIEMBRO DE CADA
ELEMENTO DE LA RAIZ
• CADA ELEMENTO PUEDE SER MIEMBRO DE VARIAS
CLASES.
LA CLASIFICACION ES EL PROCEDIMIENTO QUE SE UTILIZA CUANDO
PARTIENDO DE ELEMENTOS INDIVIDUALES DE INFORMACION SE
IDENTIFICAN TIPOS DE CAMPOS O ATRIBUTO.
 AGREGACION: DEFINE UNA CLASE NUEVA A PARTIR DE OTRAS
QUE REPRESENTEN SUS PARTES COMPONENTES (ES_PARTE_DE)
• ARBOL DE UN NIVEL EN EL CUAL TODOS LOS NODOS SON
CLASES (LA RAIZ REPRESENTA LA CLASE CREADA POR
AGREGACION DE LAS CLASES REPRESENTADAS POR LAS
HOJAS)
REUNE TIPOS DE CAMPOS RELACIONADOS EN GRUPOS, COMO POR
EJEMPLO TIPOS DE REGISTROS.
 GENERALIZACION: DEFINE UNA RELACION DE SUBCONJUNTO
ENTRE LOS ELEMENTOS DE 2 O + CLASES (ES_UN)
• SE REPRESENTA CON UN ARBOL DE UN NIVEL, EN EL QUE
TODOS LOS NODOS SON CLASES CON CLASE GENERICA
COMO RAIZ Y LAS CLASES SUBCONJUNTOS COMO HOJAS.
• TODAS LAS ABSTRACCIONES DEFINIDAS PARA LA CLASE
GENERICA SON HEREDADAS POR LAS CLASES SUBCONJUNT.
• PROPIEDADES DE COBERTURA:
 TOTAL, SI CADA ELEMENTO DE LA CLASE GENERICA
CORRESPONDE AL MENOS A UN ELEMENTO DELAS
CLASES SUBCONJUNTO
 PARCIAL, SI EXISTE ALGUN ELEMENTOO DE LACLASE
GENERICA QUE NO CORRESPONDE A NINGUN ELEMENTO
DE LAS CLASES SUBCONJUNTO
 EXCLUSIVA, SI CADA ELEMENTO DE LA CLASE
GENERICA CORRESPONDE A LO SUMO A UN ELEMENTO
DE LAS CLASES SUBCONJUNTO
 SUPERPUESTA, SI EXISTE ALGUN ELEMENTO DE LA
CLASE GENERICA QUE CORRESPONDE A LOS
ELEMENTOS DE DOS O MAS CLASES SUBCONJUNTO
DIFERENTES.
• MODELO DE DATOS
 CONCEPTOS QUE PUEDEN UTILIZARSE PARA
DESCRIBIR UN CONJUNTO DE DATOS Y OPERACIONES
PARA MANIPULARLOS
 DOS MODELOS
• CONCEPTUAL: INSTRUMENTO PARA
REPRESENTAR LA REALIDAD A UN NIVEL ALTO DE
ABSTRACCION
• CUALQIDADES QUE DEBE TENER:
• EXPRESIVIDAD, RICO ENC ONCEPTOS
-> POSIBILITA UNA REPRESENTACION
MAS EXTENSA DE LA REALIDAD
• SIMPLICIDAD, FACIL DE ENTENDER
• MINIMALIDAD, CADA CONCEPTO
TIENE SIGNIFICADO DISTINTO,, NINGUN
CONCEPTO PUEDE EXPRESARSE
MEDIANTE OTROS CONCEPTOS,.
• FORMALIDAD, CADA CONCEPTO
TIENE UNA SOLA INTERPRETACION
PRECISA Y BIEN DEFINIDA.

• MODELO LOGICO, APOYAN DESCRIPCIONES


DE DATOS PROCESABLES POR UNA COMPUTADORA
(MODELO JERARQUICO, EN RED Y RELACIONAL..

PROPIEDADES DE LAS REPRESENTACIONES GRAFICAS:


• COMPLECION GRAFICA, TODOS LOS
CONCEPTOS TIENEN REPRESENTACION GRAFICA
• FACILIDAD DE LECTURA, SI CADA CONCEPTO
SE REPRESENTA CON UN SIMBOLO GRAFICO
CLARAMENTE DISTINGUIBLES DEL RESTO.
MODELO DE ENTIDAD (INTER)RELACION: MODELO DE
DATOS MAS USADO PARA EL DISEÑO CONCEPTUAL DE
BD.
• PETER CHEN 1976 A PARTIR DE 1988
AMERICAN NATIONAL STANDARD INSTITUTE ANSI.
• TRES ELEMENTOS BASICOS:
• ENTIDADES: CLASES DE OBJETOS DE
LA REALIDAD
• INTERRELACIONES: AGREGACIONES
DE 2 O MAS ENTIDADES
• ATRIBUTOS: PROPIEDADES BASICAS
DE ENTIDADES O INTERRELACIONES.
• CARDINALIDAD DE ATRIBUTOS:
• MIN: NUMERO MINIMO DE VALORES
DE ATRIBUTOS ASOCIADOS CON DADA CASO
DE ENTIDAD O INTERRELACION
 CARD-MIN(A,E) = 0 SIGNIFICA
QUE ES UN ATRIBUTO OPCIONAL
 CARD-MIN(A,E) = 1 SIGNIFICA
QUE EL ATRIBUTO ES OBLIGATORIO
• MAX: NUMERO MAXIMO DE VALORES
DE ATRIBUTOS ASOCIADOS CON CADA CASO
DE ENTIDAD O INTERRELACION
 CARD-MAX(A,E) = 1 ES UN
ATRIBUTO MONOVALENTE
 CARD-MAX(A,E) > 1 ES UN
ATRIBUTO POLIVALENTE
• DOMINIO DE LOS ATRIBUTOS:
• CONJUNTO DE VALORES LEGITIMOS
PARA UN ATRIBUTO.
• SE ASEMEJAN A LAS DECLARACIONES
DE TIPO EN LOS LENGUAJES
CONVENCIONALES DE PROGRAMACION.
• OTROS ELEMENTOS:
• JERARQUIAS DE GENERALIZACION:
UNA ENTIDAD E ES UNA GENERALIZACION
ENTRE LAS ENTIDADDES E1, E2, … SI EN
CADA OBJETO EI ES TAMBIEN UN OBJETO DE
LA CLASE E
 PROPIEDADES DE COBERTURA:
• TOTAL O PARCIAL
• EXCLUSIVA O SUPERPUESTA
• EJEMPLOS
 SUBCONJUNTOS: CASO PARTICULAR
DE JERARQUIA DE GENERALIZACION
CON UNA SOLA ENTIDAD SUBCONJUNTO
CON COBERTURA PARCIAL Y EXCLUSIVA.
EJEMPLO.
 PROPIEDADES DE HERENCIA: TODAS
LAS PROPIEDADES DE LA ENTIDAD
GENERICA SON HEREDADAS POR LAS
ENTIDADES SUBCONJUNTO, CADA
ATRIBUTO, INTERRELACION O
GENERALIZACION DEFINIDO PARA LA
ENTIDAD GENERICA SERA HEREDADO
POR TODAS LAS ENTIDADES
SUBCONJUNTO.
 CADA ENTIDAD PUEDE PARTICIPAR EN
MULTIPLES GENERALIZACIONES (COMO
ENTIDAD GENERICA O ENTIDAD
SUBCONJUNTO)
 ATRIBUTOS COMPUESTOS: GRUPO DE
ATRIBUTOS QUE TIENEN AFINIDAD EN
CUANTO A SU SIGNIFICADO O A SU USO.
• CARDINALIDAD MAX Y MIN
(SIMILAR A LOS ATRIBUTOS
SIMPLES)
• IDENTIFICADORES. UN
IDENTIFICADOR DE UNA ENTIDAD E ES UN
GRUPO DE ATRIBUTOS O DE ENTIDADES
RELACIONADOS CON E QUE DETERMINAN EN
FORMA UNICA TODOS LOS CCASOS DE E
(CLAVES O CLAVES CANDIDATAS)
 LOS ATRIBUTOS QUE PUEDEN TENER
VALORES NULOS NO PUEDEN
PARTICIPAR DE UN IDENTIFICADOR
 INTERNOS O EXTERNOS (MIXTOS)
 SIMPLES O COMPUESTOS
AL FINAL DEL PROCESO DE DISEÑO SE
REQUIERE QUE CADA ENTIDAD SEA PROVISTA
DE AL MENOS UN IDENTIFICADOR.
• ENTIDADES FUERTES: ENTIDADES
QUE PUEDEN IDENTIFICARSE INTERNAMENTE
(TIENEN UNA CLAVE INTERNA)
• ENTIDADES DEBILES: ENTIDADES QUE
SOLO POSEEN IDENTIFICADORES EXTERNOS.
NECESITAN LA EXISTENCIA DE OTRA ENTIDAD
• EJEMPLO: ENTIDAD
PRESTAMO(#PRESTAMO, #CLIENTE) Y
ENTIDAD PAGO(#PAGO, FECHA,
IMPORTE). LA ENTIDAD PAGO ES DEBIL
YA QUE EL #PAGO SE PUEDE REPETIR
PARA DISTINTOS PRESTAMOS.
• EL IDENTIFICADOR DE UNA ENTIDAD
GENERICA ES IDENTIFICADOR DE LAS
ENTIDADES SUBCONJUNTO (HERENCIA)
• RESUMEN DE ABSTRACCIONES:
• CLASIFICACION
 ENTIDADES (CLASES DE OBJETOS DEL
MUNDO REAL CON PROPIEDADES
COMUNES)
 INTERRELACIONES (CLASE DE
HECHOS ATOMICOS QUE RELACIONAN
DOS O MAS ENTIDADES)
 ATRIBUTOS (CLASE DE VALORES QUE
REPRESENTAN PROPIEDADES ATOMICAS
DE E O I)
• AGREGACION
 ENTIDADES (AGREGACION DE
ATRIBUTOS)
 INTERRELACIONES (AGREGACIONES
DE ENTIDADES Y ATRIBUTOS)
 ATRIBUTOS COMPUESTOS
(AGREGACION DE ATRIBUTOS)
• GENERALIZACION
 ENTIDADES
 RELACIONES
• CUALIDADES
• POSITIVAS
 RIQUEZA DE CONCEPTOS
 MUY EXPRESIVO
 POTENTE PARA DESCRIBIR LA
REALIDAD
 TODO PUEDE LLEVARSE A
INTERRELACIONES BINARIAS PERO CON
COSTOS
 LOS PROBLEMAS PUEDEN
RESOLVERSE DE DISTINTAS FORMAS,
SIN AFECTAR LA MINIMALIDAD
 ESTA DEFINIDO FORMALMENTE
 ES GRAFICAMENTE COMPLETO
• NEGATIVAS
 ATENTA CONTRA LA SIMPLICIDAD Y
MINIMALIDAD
 NO ES MUY SENCILLO DE USAR
(CARDINALIDAD E IDENTIFICACION
IGUAL DE DIFICILES DE ENTENDER Y
USAR)
 RELACIONES N-ARIAS NO
CONVENIENTES EN ALGUNOS CASOS.
• CONCLUSION: EL MODELO DE E/R
REPRESENTA UN BUEN TERMINO MEDIO
ENTRE PODER DE EXPRESION, SIMPLICIDAD Y
MINIMALIDAD.
METODOLOGIAS DE DISEÑO CONCEPTUAL: SE
COMIENZA CON UNA VERSION PRELIMINAR DEL
ESQUEMA Y SE EFECTUA UNA SERIE DE
TRANSFORMACIONES DE ESQUEMAS HASTA ARRIBAR A
LA VERSION DEFINITIVA.
LOS TIPOS DE TRANSFORMACIONES USADAS EN EL
PROCESO DE DISEÑO SE CLASIFICAN EN:
• DESCENDENTES: CORRESPONDEN A
REFINAMIENTOS APLICADOS A UN ESQUEMA
INICIAL Y PRODUCEN UNA DESCRIPCION MAS
DETALLADA (ESQUEMA RESULTANTE)
• PRIMITIVAS: PROPIEDADES>
 TIENEN UNA ESTRUCTURA SIMPLE, EL
ESQUEMA INICIAL ES UN CONCEPTO
UNICO Y EL RESULTANTE SE COMPONE
DE UN CONJUNTO PEQUEÑO DE
CONCEPTOS.
 TODOS LOS NOMBRES SE REFINAN
DANDO LUGAR A NUEVOS NOMBRES
QUE DESCRIBEN EL CONCEPTO
ORIGINAL DE UN NIVEL DE
ABSTRACCION MAS BAJO.
 LAS CONEXIONES LOGICAS SE
HEREDAN POR UN SOLO CONCEPTO DEL
ESQUEMA RESULTANTE.
• PRIMITIVAS:
 T1: ENTIDAD -> ENTIDADES
RELACIONADAS
 T2: ENTIDAD -> GENERALIZACION
 T3: ENTIDAD -> ENTIDADES NO
RELACIONADAS
 T4: INTERRELACION ->
ITERRELACIONES PARALELAS
 T5: INTERRELACION -> ENTIDADES
CON INTERRELACIONES.
 T6: INTRODUCCION DE ATRIBUTOS
 T7: INTRODUCCION DE ATRIBUTOS
COMPUESTOS
 T8: REFINAMIENTO DE ATRIBUTOS
PARA PRODUCIR UN ATRIBUTO
COMPUESTO O UN CONJUNTO DE
ATRIBUTOS SIMPLES.
• ASCENDENTE: INTRODUCEN NUEVOS
CONCEPTOS Y PROPIEDADES QUE NO APARECEN
EN VERSIONES ANTERIORES DEL ESQUEMA.
• PRIMITIVAS: SE USAN EN EL DISEÑO
DE UN ESQUEMA, SIEMPRE QUE SE
DESCUBREN RASGOS DEL DOMINIO DE
APLICACION QUE NO FUERON CAPTADOS EN
NINGUN NIVEL DE ABSTRACCION EN LA
VERSION ANTERIOR DEL ESQUEMA
 B1: GENERACION DE ENTIDAD: EL
ANALISTA DESCUBRE UN NUEVO
CONCEPTO CON PROPIEDADES
ESPECIFICAS QUE NO APARECIA EN EL
ESQUEMA ANTERIOR.
 B2: GENERACION DE INTERRELACION
 B3: GENERACION DE
GENERALIZACION: SE DEBE
COMPROBAR SI LAS PROPIEDADES
DEBEN PASAR DE UNA ENTIDAD A OTRA
 B4: AGREGACION DE ATRIBUTOS: SE
GENERA UN NUEVO ATRIBUTO Y SE
CONECTA A UNA E O R DEFINIDA
ANTERIORMENTE
 B5 AGREGACION DE ATRIBUTO
COMPUESTO: SE GENERA UN NUEVO
ATRIBUTO COMPUESTO Y SE CONECTA A
UNA E O R DEFINIDA ANTERIORMENTE.
DEFINICION DE VISTAS: UNA VISTA ES UNA PERCEPCION
DE LOS REQUERIMIENTOS DE DATOS DE UNA
APLICACION
• EL OBJETIVO ES CREAR UN ESQUEMA
CONCEPTUAL PARTIENDO DE UNA DESCRIPCION
INFORMAL DE LOS REQUERIMIENTOS DEL USUARIO
• ACTIVIDADES
• ANALISIS DE LOS REQUERIMIENTOS
PARA CAPTAR EL SIGNIFICADO DE LOS
OBJETOS DE INTERES, SU AGRUPACION,
PROPIEDADES, ETC
• REPRESENTACION DE LOS OBJETOS,
CLASES Y PROPIEDADES USANDO
CONCEPTOS DE E/R
• FUENTE DE REQUERIMIENTOS
• DESCRIPCION EN LENGUAJE NATURAL
• FORMULARIOS
• SOFTWARE PRE-EXISTENTE
• REGLAMENTOS EN ORGANIZACIONES
• LEYES EXISTENTES

LAS TRES ABSTRACCIONES (CLASIFICACION, AGREGACION Y


GENERALIZACION) SON INDEPENDIENTES: NINGUNA DE ELLAS PUEDE
DESCRIBIRSE EN FUNCION DE OTRAS, Y CADA UNA DE ELLAS
PROPORCIONA UN MECANISMO DIFERENCIADO EN EL PROCESO DE
ESTRUCTURACION DE LA INFORMACION.
• PROPIEDADES DE LA CORRESPONDENCIA ENTRE CLASES:
• AGREGACION BINARIA: CORRESPONDENCIA ENTRE 2
CLASES.
• AGREGACION N-ARIA: CORRESPONDENCIA ENTRE 3 O MAS
CLASES.

PARA OBTENER UNA MEJORA EN LA CALIDAD DEL ESQUEMA


CONCEPTUAL, SE DEBERIAN EXAMINAR LAS CUALIDADES DEL ESQUEMA.
• COMPLECIÓN: UN ESQUEMA ES COMPLETO CUANDO REPRESENTA
TODAS LAS CARACTERISTICAS DEL DOMINIO DE APLICACION.
• MODOS DE COMPROBARSE
 VERIFICAR QUE LOS REQUERIMIENTOS ESTEN
REPRESENTADOS EN EL ESQUEMA
 VERIFICAR EN EL ESQUEMA QUE CADA CONCEPTO
SEA MENCIONADO EN LOS REQUERIMIENTOS.
• CORRECCION: UN ESQUEMA ES CORRECTO CUANDO USA CON
PROPIEDAD LOS CONCEPTOS ENTIDAD-INTERRELACION
• DOS TIPOS:
 SINTACTICA: CONCEPTOS ENTIDAD RELACION SE
USAN CORRECTAMENTE, POR EJEMPLO, LAS
GENERALIZACIONES SE DEFINEN ENTRE ENTIDADES
PERO NO ENTRE RELACIONES.
 SEMANTICA: CONCEPTOS SE USAN DE ACUERDO A
SU DEFINICION.
• ERRORES MAS FRECUENTES:
• USAR ATRIBUTOS EN LUGAR DE ENTIDADES
• OLVIDAR UNA GENERALIZACION
• OLVIDAR LA PROPIEDAD DE HERENCIA EN
LA GENERALIZACION
• USAR ENTIDADES EN LUGAR DE
INTERRELACIONES
• OLVIDAR UN IDENTIFICADOR DE UNA
ENTIDAD
• OMITIR CARDINALIDAD
• USAR UNA INTERRELACION CON NUMERO
ERRONEO DE ENTIDADES.
• MINIMALIDAD: CADA ASPECTO DE LOS REQUERIMIENTOS
APARECE UNA SOLA VEZ EN EL ESQUEMA. UN ESQUEMA ES MINIMO
SI NO SE PUEDE BORRAR DEL ESQUEMA UN CONCEPTO SIN
PERDER INFORMACION.
• EXPRESIVIDAD: REPRESENTA LOS REQUUERIMIENTOS DE MANERA
NATURAL Y SE PUEDE ENTENDER CON FACILIDAD, SIN NECESIDAD
DE EXPLICACIONES ADICIONALES.
• LEGIBILIDAD -> CRITERIOS ESTETICOS A RESPETAR:
• HACER DIAGRAMAS EN HOJAS CUADRICULADAS (CUADROS
Y ROMBOS DEL MISMO TAMAÑO, CONEXIONES
HORIZONTALES Y VERTICALES)
• EN LO POSIBLE, ESTRUCTURAS SIMETRICAS
• MINIMMIZAR EL NUMERO DE CRUCES.
• GENERALIZAR SOBRE LOS HIJOS.
• AUTOEXPLICACION: ESQUEMA SE EXPLICA A SI MISMO CUANDO
PUEDE REPRESENTAR UN GRAN NUMERO DE PROPIEDADES
USANDO EL MODELO CONCEPTUAL, SIN OTROS FORMALISMOS NI
ACLARACIONES.
• EXTENSIBILIDAD: UN ESQUEMA SE ADAPTA FACILMENTE A
REQUERIMIENTOS CAMBIANTES CUANDO PUEDE DESCOMPONERSE
EN PARTES, A FIN DE APLICAR LOS CAMBIOS EN CADA PARTE.
• NORMALIDAD: CONCEPTO DERIVADO DE LA TEORIA DE
NORMALIZACION (MODELO RELACIONAL). FORMAS NORMALES,
PURIFICAN ANOMALIAS DE DISEÑO.

• TRANSFORMACIONES DE ESQUEMAS: SE APLICANA UN ESQUEMA


DE ENTRADA S1 Y PRODUCEN UN ESQUEMA RESULTANTE S2. DOS
ESQUEMAS SON EQUIVALENTES SI POR CADA CONSULTA Q SOBRE S1,
EXISTE UNA CONSULTA Q' SOBRE S2 CON IGUAL RESPUESTA.
FINALMENTE SI A,B ESQUEMAS, A > B SI EXISTE ALGUNA CONSULTA Q
SOBRE A QUE NO TENGA UNA CONSULTA CORRESPONDIENTE SOBRE B,
PERO NO VICEVERSA.
• CLASIFICACION DE TRANSFORMACIONES.
• PRESERVARN LA INFORMACION: SIN CAMBIAR EL CONTENIDO DE
INFORMACION, PERO MEJORANDO LA ORGANIZACION DE
CONCEPTOS.
• CAMBIAN LA INFORMACION:
 AUMENTO DEL CONTENIDO DE INFORMACION (EJ,
AGREGAR UNA ENTIDAD)
 REDUCCION, SE ELIMINAN CONCEPTOS SUPERFLUOS NO
EXPRESADOS EN LOS REQUERIMIENTOS.
 NO COMPARABLE, CAMBIA UN NOMBRE POR OTRO.
• TRANSFORMACIONES PARA LA MINIMALIDAD:
OBJETIVO: ELIMINAR REDUNDANCIAS
• ELIMINAR "CICLO DE RELACIONES": R1, INTERRELACION ENTRE
DOS ENTIDADES, POSEE EL MISMO CONTENIDO QUE LA RUTA DE
INTERRELACIONES R2, R3,…, RN QUE CONECTA LOS MISMOS PARES
CASOS DE ENTIDADES QUE R1. NO TODOS LOS CICLOS GENERAN
REDUNDANCIA.
• ATRIBUTOS DERIVADOS: ATRIBUTOS QUE SE PUEDEN CALCULAR A
PARTIR DE OTROS (EJ, FECHA DE NACIMIENTO Y EDAD)
ES LA TAREA DEL DISEÑADOR DECIDIR SI ACEPTA REDUNDANCAS EN EL
ESQUEMA, SI ACEPTA DEBE QUEDAR EXPLICITO YA QUE PODRIA SER
FUENTE DE ANOMALIAS EN LA ADMINISTRACION DE LOS DATOS.
• TRANSFORMACIONES PARA EXPRESIVIDAD Y AUTOEXPLICACION.
• ELIMINAR SUBENTIDADES COLGANTES DE LA GENERALIZACION
• ELIMINAR ENTIDADES COLGANTES QUE POSSEEN POCOS
ATRIBUTOS.
• CREAR GENERALIZACION: CASO DE DOS ENTIDADES DISTINTAS
CON PROPIEDADES SIMILARES
• CREAR SUBCONJUNTOS APLICABLES A ENTIDADES CON
CARDINALIDAD MINIMA CERO.

O DISEÑO LOGICO:
• REPRESENTACION EN COMPUTADORA
• ESQUEMA CONCEPTUAL + DISEÑO LOGICO -> ESQUEMA LOGICO
DE LA BD
• ESQUEMA LOGICO: DESCRIPCION DE LA ESTRUCTURA DE LA BD
QUE PUEDE PROCESAR UN DBMS
• MODELO LOGICO: LENGUAJE USADO PARA ESPECIFICAR
ESQUEMAS LOGICOS. LOS MAS USADOS: RELACIONAL, DE REDES,
JERARQUICOS.
• DEPENDE DE LA CLASE DE MODELO DE DATOS USADO POR EL
DBMS, PERO NO DEL DBMS USADO (SE EFECTUA DE IGUAL FORMA PARA
TODOS LOS DBMS RELACIONALES PORQUE TODOS USAN EL MODELO
RELACIONAL).
• PASAJE DE ESQUEMA CONCEPTUAL A ESQUEMA LOGICO:
 DESICIONES A TOMAR:
• SOBRE DATOS DERIVADOS: TIENE COMO VENTAA
QUE NO SE NECESITA CALCULAR EL VALOR. REDUCE EL
NUMERO DE ACCESOS A LA BD. PERO TIENE LA DESVENTAJA
QUE EL PROCESAMIENTO ADICIONAL PARA MANTENER LOS
DATOS DERIVADOS Y SE REQUIERE MAS ESPACIOS EN EL
DISCO.
• ELIMINACION DE JERARQUIAS DE GENERALIZACION:
• LOS MODELOS LOGICOS NO PERMITEN
REPRESENTARLAS.
• SE DEBEN REPRESENTAR USANDO SOLO
ENTIDADES E INTERRELACIONES
• ELIMINACION DE ATRIBUTOS DE
CARDINALIDAD MAYOR QUE 1.
• SE DEBE CUIDAR DE INDICARLA HERENCIA
DE ATRIBUTOS Y SE DEBE CAPTAR LA INTERRELACION
IMPLICITA "ES_UN". EXISTEN TRES CASOS A TENER EN
CUENTA:
• CASO 1: INTEGRAR LA JERARQUIA DE
GENERALIZACION A UNA SOLA ENTIDAD UNIENDO
LOS ATRIBUTOS DE LAS SUBENTIDADES Y
AÑADIENDO ESTOS ATRIBUTOS A LA DE LA
SUPERENTIDAD. ES UNA SOLUCION SIMPLE, PERO
GENERA VALORES NULOS EN LOS ATRIBUTOS, ES
APLICABLE A CUALQUIER CASO DE JERARQUIA DE
GENERALIZACION.
• CASO 2: ELIMINAR LA SUPERNETIDAD
PERO RETENER LAS SUBENTIDADES. TIENE COMO
DESVENTAJA QUE SE DEBEN REPETIR LOS
ATRIBUTOS Y OPERACIONES DE LA SUPERENTIDAD,
ES DECIR QUE SE CREARIA REDUNDANCIA NO
DESEABLE. ES APLICABL EN EL CASO DE
COBERTURA TOTAL EXCLUSIVA Y ES MALA EN
COBERTURA SUPERPUESTA O PARCIAL.
• CASO 3: RETENER TODAS LAS
ENTIDADES Y ESTABLECER EXPLICITAMENTE LAS
INTERRELACIONES ENTRE LAS SUPERENTIDADES Y
SUBENTIDADES: ES EL CASO MAS GENERAL Y
APLICABLE, PROPORCIONA REDUNDANCIA
INHERENTE A NIVEL CONCEPTUAL, AL
REPRESENTAR LA RELACION "ES_UN" DE LA
JERARQUIA A TRAVES DE UNA INTERRELACION
EXPLICITA.
• PARTICION DE ENTIDADES: PARA ACCESO
SIMULTANEO CON FRECUENCIA (HORIZONTAL PARA
ENTIDADES; VERTICAL PARA ATRIBUTOS)
• PARTICION DE INTERRELACIONES: EN SITUACIONES
DE RELACIONES DE UNO A MUCHOS Y DE MUCHOS A
MUCHOS.
• FUSION DE ENTIDADES E INTERRELACIONES:
NORMALIZACION Y CARDINALIDAD.
 EL DISEÑO LOGICO EN EL MODELO RELACIONAL.
• RESTRICCIONES:
• DE CLAVE: ESPECIFICAN LAS CLAVES
CANDIDATAS DE CADA TABLA
• DE INTEGRIDAD DE ENTIDADES: NINGUN
VALOR DE CLAVE PRIMARIA PUEDE SER NULO.
• DE INTEGRIDAD REFERENCIALES: SE
ESPECIFICA ENTRE DOS RELACIONES.
• CORRESPONDENCIA E-I <=> MODELO
RELACIONAL.
• ELIMINACION DE IDENTIFICADORES
EXTERNOS, NO USADOS EN EL MODELO RELACIONAL
• ELIMINACION DE ATRIBUTOS COMPUESTOS
• CONSIDERAR TODOS SUS
COMPONENTES COMO ATRIBUTOS INDIVIDUALES
• CONSIDERAR EL ATRIBUTO
COMPUESTO ENTERO COMO UN ATRIBUTO.
• ELIMINACION DE ATRIBUTOS POLIVALENTES
• TRANSFORMAR CADA ENTIDAD EN UNA
RELACION.
• TRANSFORMACION DE INTERRELACIONES:
• UNO A UNO:
• INTEGRACION DE UNA
RELACION BINARIA (SE UNIFICA LA TABLA):
• MISMA CLAVE
PRIMARIA EN LAS DOS ENTIDADES
• CLAVE DISTINTA, SE
TOMA UNA COMO CLAVE.
• RELACIONES INDIVIDUALES
(UNA CON PARTICIPACION PARCIAL)
• RELACIONES INDIVIDUALES:
AMBAS CON PARTICIPACION PARCIAL
• UNO A MUCHOS:
• PARTICIPACION PARCIAL
• CON VALORES NULOS
• SIN VALORES NULOS
• PARTICIPACION TOTAL.
• MUCHOS A MUCHOS
• N-ARIAS
• RECURSIVAS.
• DEPENDENCIA FUNCIONAL: DADO UN ATRIBUTO B
DE UNA ENTIDAD O INTERRELACION, ESTE ES
FUNCIONALMENTE DEPENDIENTE DE OTRO A (A -> B), SI
PARA CUALQUIER VALOR DADO DEL ATRIBUTO A EXISTE UN
VALOR SIMPLE ASOCIADO EN EL ATRIBUTO B. SIEMPRE EXISTE
ENTRE LOS ATRIBUTOS NO CLAVE RESPECTO DEL CLAVE.
SI SE DA EL VALOR DE UN ATRIBUTO SE PUEDE OBTENER O
BUSCAR EL VALOR DE OTRO. EJ: SI SE CONOCE EL VALOR DEL
DNI SE PUEDE HALLAR EL NOMBRE DE UN CLIENTE. EN ESTE
CASO EL NOMBRE ES FUNCIONALMENTE DEPENDIENTE DEL
DNI. LAS CLAVES SON ATRIBUTOS QUE FORMAN
DEPENDENCIAS FUNCIONALES HACIA LOS NO CLAVES.
• ANOMALIAS DE ACTUALIZACION:
• INSERCION
• ELIMINACION
• ACTUALIZACION
• INTEGRIDAD REFERENCIAL
• QUE ES CLAVE? UN CONJUNTO DE ATRIBUTOS QUE
IDENTIFICA INEVOCAMENTE CADA ENTIDAD DEL
CONJUNTO DE ENTIDADES
• IDENTIFICADOR
• CLAVES
 PRIMARIAS
 CANDIDATAS
• TIPOS DE DEPENDENCIAS:
• PARCIAL: UN ATRIBUTO B (NO CLAVE)
DEPENDE DE UN SUBCONJUNTO DE A (CLAVE)
• TRANSITIVA: UN ATRIBUTO B (NO CLAVE)
DEPENDE DE OTRO C (CLAVE)
• BOYCE CODD: UN ATRIBUTO B (CLAVE O
PARTE DE CLAVE) DEPENDE DE UN ATRIBUTO NO
CLAVE.
• MULTIVALUADA: DADA UNA RELACION R CON
ATRIBUTOS A,B,C, DECIMOS QUE EXISTE UNA
DEPENDENCIA ENTRE A Y B MULTIVALUADA EN R ,
SI Y SOLO SI EL CONJUNTO DE VALORES DE B QUE
CONCUERDA CON EL PAR A,C EN R DEPENDE SOLO
DEL VALOR DE A PERO NO DEL C. UNA
DEPENDENCIA MULTIVALUADA EXISTE CUANDO UN
ATRIBURO PUEDE DETERMINAR MAS DE UN VALOR
PARA OTRO ATRIBUTO.
• NORMALIZACION:
• PROCESO FORMAL PARA DECIDIR QUE ATRIBUTOS DEBEN
AGRUPARSE EN UN ENTIDAD/RELACION.
• PROGRESIVA DETECCION Y ELIMMINACION DE DEPENDENCIAS NO
DESEADAS.
• EXISTEN POLITICAS PARTIDARIAS DE REALIZARLA SOBRE EL
MODELO ENTIDAD RELACION Y OTRAS QUE LO HACEN SOBRE EL
MODELO RELACIONAL.
• PROBLEMAS DE MALA NORMALIZACION (O NORMALIZACION
INEXISTENTE)
 ANOMALIAS DE ACTUALIZACION
 ANOMALIAS DE INSERCION
 ANOMALIAS DE BORRADO
• FORMAS NORMALES:
 PRIMERA FORMA NORMAL: TODOS LOS ATRIBUTOS TIENEN
CARDINALIDAD 0 O 1.
 SEGUNDA FORMA NORMAL: UNA TABLA ESTA 2NF SI ESTA
EN 1NF Y ADEMAS NO EXISTEN DEPENDENCIAS PARCIALES.
 TERCERA FORMA NORMAL: UNA TABLA ESTA EN 3NF SI
ESTA EN 2NF Y ADEMAS NO EXISTEN DEPENDENCIAS
TRANSITIVAS.
 FORMA NORMAL BOYCE CODD: UNA TABLA ESTA EN BCNF
SI ESTA EN 3NF Y NO EXISTEN DEPENDENCIAS DE BOYCE
CODD. OTRA DEFINICIO SERIA UE PARA TODASL ALS
DEPENDENCIAS DE LA FORMA X->Y; X->Y ES TRIVIAL (Y ESTA
INCLUIDO O ES IGUAL A X) O X ES SUPERCLAVE DE Y
(SUPERCLAVE, ES DECIR, CONJUNTO DE ATRIBUTOS QUE
INCLUYE LA CLAVE )
 CUARTA FORMA NORMAL: UNA TABLA ESTA EN 4NF SI
ESTA EN BCFN Y ADEMAS NO EXISTEN DEPENDENCIAS
MULTIVALUADAS.
 QUINTA FORMA NORMAL O FORMA DE DOMINIO CLAVE:
UNA TABLA ESTA EN 5FN SI CADA RESTRICCION ES UNA
CONSECUENCIA LOGICA DE LA DEFINICION DE LAS CLAVES Y
DOMINIOS.

O DISEÑO FISICO
• ES DONDE SE DETERMINA ESTRUCTURAS DE ALMACENAMIENTO
FISICO
• DESCRIBE LAS ESTRUCTURAS DE ALMACENAMIENTO Y METODOS
USADOS PARA TENER ACCESO EFECTIVO A LOS DATOS
• ESQUEMA LOGICO + DISEÑO FISICO -> ESQUEMA FISICO
• ESQUEMA FISICO: DESCRIPCION DE LA IMPLANTACION DE UNA BD
EN MEMORIA SECUNDARIA.
• SE ADAPTA A UN DBMS ESPECIFICO
• HAY UNA RETROALIMENTACION ENTRE EL DISEÑO FISICO Y EL
LOGICO (DESICIONES TOMADAS DURANTE EL DISEÑO FISICO PARA
MEJORAR EL RENDIMIENTO PUEDEN AFECTAR EL ESQUEMA LOGICO)
• COMPLETO EL DISEÑO FISICO, LOS ESQUEMAS LOGICO Y FISICO
SE EXPRESAN USANDO EL LENGUAJE DE DEFINICION DE DATOS DEL
DBMS -> NACE LA BD OPERACIONAL.

MODELADO DE DATOS
• SISTEMA DE INFORMACION: CONJUNTO DE ACTIVIDADES QUE REGULAN LA
DISTRIBUCION Y COMPARTIMIENTO DE LA INFORMACION Y EL ALMACENAMIENTO
DE LOS DATOS RELEVANTES PARA SU ADMINISTRACION
• BASE DE DATOS: CUALQUIER CONJUNTO "GRANDE"DE DATOS
ESTRUCTURADOS, ALMACENADOS EN UNA COMPUTADORA
O ESCENCIALES PARA LA SUPERVIVENCIA DE LA ORGANIZACION
O LOS DATOS ESTRUCTURADOS CONSTITUYEN UN RECURSO ESENCIAL.
• DBMS: PAQUETE DE SOFTWARE PARA LA GESTION DE LA BD, ESPECIALMENTE
PARA ALMACENAR, MANIPULAR Y RECUPERA DATOS EN UN COMPUTADOR.
• ABSTRACCION: PROCESO MENTAL APLICADO AL SELECCIONAR ALGUNAS
CARACTERISTICAS DE UN CONJUNTO DE OBJETOS Y EXCLUIR OTRAS
• DISEÑO DE LA BD. TRES FASES
O DISEÑO CONCEPTUAL:
• REPRESENTACION ABSTRACTA
• PROPOSITO: DESCRIBIR EL CONTENIDO DE INFORMACION DE LA
BD, MAS QUE LAS ESTRUCTURAS DE ALMACENAMIENTO.
• ESQUEMA CONCEPTUAL: DESCRIPCION DE ALTO NIVEL DE LA
ESTRUCTURA DE LA BD, INDEPENDIENTE DEL DBMS QUE LA MANIPULA.
• MODELO CONCEPTUAL: LENGUAJE USADO PARA DESCRIBIR
ESQUEMAS CONCEPTUALES
• ESPECIFICACION DE REQUERIMIENTOS + DISEÑO CONCEPTUAL ->
ESQUEMA CONCEPTUAL DE LA BD
• MECANISMOS DE ABSTRACCION :
 CLASIFICACION: DEFINE UN CONCEPTO COMO UNA CLASE
DE OBJETOS DE LA REALIDAD CON PROPIDADES COMUNES
(ES_MIEMBRO_DE)
• ARBOL DE UN NIVEL QUE TIENE COMO RAIZ LA
CLASE Y COMO HOJA LOS ELEMENTOS DE LA CLASE
• CADA ELEMENTO HOJA ES MIEMBRO DE CADA
ELEMENTO DE LA RAIZ
• CADA ELEMENTO PUEDE SER MIEMBRO DE VARIAS
CLASES.
LA CLASIFICACION ES EL PROCEDIMIENTO QUE SE UTILIZA CUANDO
PARTIENDO DE ELEMENTOS INDIVIDUALES DE INFORMACION SE
IDENTIFICAN TIPOS DE CAMPOS O ATRIBUTO.
 AGREGACION: DEFINE UNA CLASE NUEVA A PARTIR DE OTRAS
QUE REPRESENTEN SUS PARTES COMPONENTES (ES_PARTE_DE)
• ARBOL DE UN NIVEL EN EL CUAL TODOS LOS NODOS SON
CLASES (LA RAIZ REPRESENTA LA CLASE CREADA POR
AGREGACION DE LAS CLASES REPRESENTADAS POR LAS
HOJAS)
REUNE TIPOS DE CAMPOS RELACIONADOS EN GRUPOS, COMO POR
EJEMPLO TIPOS DE REGISTROS.
 GENERALIZACION: DEFINE UNA RELACION DE SUBCONJUNTO
ENTRE LOS ELEMENTOS DE 2 O + CLASES (ES_UN)
• SE REPRESENTA CON UN ARBOL DE UN NIVEL, EN EL QUE
TODOS LOS NODOS SON CLASES CON CLASE GENERICA
COMO RAIZ Y LAS CLASES SUBCONJUNTOS COMO HOJAS.
• TODAS LAS ABSTRACCIONES DEFINIDAS PARA LA CLASE
GENERICA SON HEREDADAS POR LAS CLASES SUBCONJUNT.
• PROPIEDADES DE COBERTURA:
 TOTAL, SI CADA ELEMENTO DE LA CLASE GENERICA
CORRESPONDE AL MENOS A UN ELEMENTO DELAS
CLASES SUBCONJUNTO
 PARCIAL, SI EXISTE ALGUN ELEMENTOO DE LACLASE
GENERICA QUE NO CORRESPONDE A NINGUN ELEMENTO
DE LAS CLASES SUBCONJUNTO
 EXCLUSIVA, SI CADA ELEMENTO DE LA CLASE
GENERICA CORRESPONDE A LO SUMO A UN ELEMENTO
DE LAS CLASES SUBCONJUNTO
 SUPERPUESTA, SI EXISTE ALGUN ELEMENTO DE LA
CLASE GENERICA QUE CORRESPONDE A LOS
ELEMENTOS DE DOS O MAS CLASES SUBCONJUNTO
DIFERENTES.
• MODELO DE DATOS
 CONCEPTOS QUE PUEDEN UTILIZARSE PARA
DESCRIBIR UN CONJUNTO DE DATOS Y OPERACIONES
PARA MANIPULARLOS
 DOS MODELOS
• CONCEPTUAL: INSTRUMENTO PARA
REPRESENTAR LA REALIDAD A UN NIVEL ALTO DE
ABSTRACCION
• CUALQIDADES QUE DEBE TENER:
• EXPRESIVIDAD, RICO ENC ONCEPTOS
-> POSIBILITA UNA REPRESENTACION
MAS EXTENSA DE LA REALIDAD
• SIMPLICIDAD, FACIL DE ENTENDER
• MINIMALIDAD, CADA CONCEPTO
TIENE SIGNIFICADO DISTINTO,, NINGUN
CONCEPTO PUEDE EXPRESARSE
MEDIANTE OTROS CONCEPTOS,.
• FORMALIDAD, CADA CONCEPTO
TIENE UNA SOLA INTERPRETACION
PRECISA Y BIEN DEFINIDA.

• MODELO LOGICO, APOYAN DESCRIPCIONES


DE DATOS PROCESABLES POR UNA COMPUTADORA
(MODELO JERARQUICO, EN RED Y RELACIONAL..

PROPIEDADES DE LAS REPRESENTACIONES GRAFICAS:


• COMPLECION GRAFICA, TODOS LOS
CONCEPTOS TIENEN REPRESENTACION GRAFICA
• FACILIDAD DE LECTURA, SI CADA CONCEPTO
SE REPRESENTA CON UN SIMBOLO GRAFICO
CLARAMENTE DISTINGUIBLES DEL RESTO.
MODELO DE ENTIDAD (INTER)RELACION: MODELO DE
DATOS MAS USADO PARA EL DISEÑO CONCEPTUAL DE
BD.
• PETER CHEN 1976 A PARTIR DE 1988
AMERICAN NATIONAL STANDARD INSTITUTE ANSI.
• TRES ELEMENTOS BASICOS:
• ENTIDADES: CLASES DE OBJETOS DE
LA REALIDAD
• INTERRELACIONES: AGREGACIONES
DE 2 O MAS ENTIDADES
• ATRIBUTOS: PROPIEDADES BASICAS
DE ENTIDADES O INTERRELACIONES.
• CARDINALIDAD DE ATRIBUTOS:
• MIN: NUMERO MINIMO DE VALORES
DE ATRIBUTOS ASOCIADOS CON DADA CASO
DE ENTIDAD O INTERRELACION
 CARD-MIN(A,E) = 0 SIGNIFICA
QUE ES UN ATRIBUTO OPCIONAL
 CARD-MIN(A,E) = 1 SIGNIFICA
QUE EL ATRIBUTO ES OBLIGATORIO
• MAX: NUMERO MAXIMO DE VALORES
DE ATRIBUTOS ASOCIADOS CON CADA CASO
DE ENTIDAD O INTERRELACION
 CARD-MAX(A,E) = 1 ES UN
ATRIBUTO MONOVALENTE
 CARD-MAX(A,E) > 1 ES UN
ATRIBUTO POLIVALENTE
• DOMINIO DE LOS ATRIBUTOS:
• CONJUNTO DE VALORES LEGITIMOS
PARA UN ATRIBUTO.
• SE ASEMEJAN A LAS DECLARACIONES
DE TIPO EN LOS LENGUAJES
CONVENCIONALES DE PROGRAMACION.
• OTROS ELEMENTOS:
• JERARQUIAS DE GENERALIZACION:
UNA ENTIDAD E ES UNA GENERALIZACION
ENTRE LAS ENTIDADDES E1, E2, … SI EN
CADA OBJETO EI ES TAMBIEN UN OBJETO DE
LA CLASE E
 PROPIEDADES DE COBERTURA:
• TOTAL O PARCIAL
• EXCLUSIVA O SUPERPUESTA
• EJEMPLOS
 SUBCONJUNTOS: CASO PARTICULAR
DE JERARQUIA DE GENERALIZACION
CON UNA SOLA ENTIDAD SUBCONJUNTO
CON COBERTURA PARCIAL Y EXCLUSIVA.
EJEMPLO.
 PROPIEDADES DE HERENCIA: TODAS
LAS PROPIEDADES DE LA ENTIDAD
GENERICA SON HEREDADAS POR LAS
ENTIDADES SUBCONJUNTO, CADA
ATRIBUTO, INTERRELACION O
GENERALIZACION DEFINIDO PARA LA
ENTIDAD GENERICA SERA HEREDADO
POR TODAS LAS ENTIDADES
SUBCONJUNTO.
 CADA ENTIDAD PUEDE PARTICIPAR EN
MULTIPLES GENERALIZACIONES (COMO
ENTIDAD GENERICA O ENTIDAD
SUBCONJUNTO)
 ATRIBUTOS COMPUESTOS: GRUPO DE
ATRIBUTOS QUE TIENEN AFINIDAD EN
CUANTO A SU SIGNIFICADO O A SU USO.
• CARDINALIDAD MAX Y MIN
(SIMILAR A LOS ATRIBUTOS
SIMPLES)
• IDENTIFICADORES. UN
IDENTIFICADOR DE UNA ENTIDAD E ES UN
GRUPO DE ATRIBUTOS O DE ENTIDADES
RELACIONADOS CON E QUE DETERMINAN EN
FORMA UNICA TODOS LOS CCASOS DE E
(CLAVES O CLAVES CANDIDATAS)
 LOS ATRIBUTOS QUE PUEDEN TENER
VALORES NULOS NO PUEDEN
PARTICIPAR DE UN IDENTIFICADOR
 INTERNOS O EXTERNOS (MIXTOS)
 SIMPLES O COMPUESTOS
AL FINAL DEL PROCESO DE DISEÑO SE
REQUIERE QUE CADA ENTIDAD SEA PROVISTA
DE AL MENOS UN IDENTIFICADOR.
• ENTIDADES FUERTES: ENTIDADES
QUE PUEDEN IDENTIFICARSE INTERNAMENTE
(TIENEN UNA CLAVE INTERNA)
• ENTIDADES DEBILES: ENTIDADES QUE
SOLO POSEEN IDENTIFICADORES EXTERNOS.
NECESITAN LA EXISTENCIA DE OTRA ENTIDAD
• EJEMPLO: ENTIDAD
PRESTAMO(#PRESTAMO, #CLIENTE) Y
ENTIDAD PAGO(#PAGO, FECHA,
IMPORTE). LA ENTIDAD PAGO ES DEBIL
YA QUE EL #PAGO SE PUEDE REPETIR
PARA DISTINTOS PRESTAMOS.
• EL IDENTIFICADOR DE UNA ENTIDAD
GENERICA ES IDENTIFICADOR DE LAS
ENTIDADES SUBCONJUNTO (HERENCIA)
• RESUMEN DE ABSTRACCIONES:
• CLASIFICACION
 ENTIDADES (CLASES DE OBJETOS DEL
MUNDO REAL CON PROPIEDADES
COMUNES)
 INTERRELACIONES (CLASE DE
HECHOS ATOMICOS QUE RELACIONAN
DOS O MAS ENTIDADES)
 ATRIBUTOS (CLASE DE VALORES QUE
REPRESENTAN PROPIEDADES ATOMICAS
DE E O I)
• AGREGACION
 ENTIDADES (AGREGACION DE
ATRIBUTOS)
 INTERRELACIONES (AGREGACIONES
DE ENTIDADES Y ATRIBUTOS)
 ATRIBUTOS COMPUESTOS
(AGREGACION DE ATRIBUTOS)
• GENERALIZACION
 ENTIDADES
 RELACIONES
• CUALIDADES
• POSITIVAS
 RIQUEZA DE CONCEPTOS
 MUY EXPRESIVO
 POTENTE PARA DESCRIBIR LA
REALIDAD
 TODO PUEDE LLEVARSE A
INTERRELACIONES BINARIAS PERO CON
COSTOS
 LOS PROBLEMAS PUEDEN
RESOLVERSE DE DISTINTAS FORMAS,
SIN AFECTAR LA MINIMALIDAD
 ESTA DEFINIDO FORMALMENTE
 ES GRAFICAMENTE COMPLETO
• NEGATIVAS
 ATENTA CONTRA LA SIMPLICIDAD Y
MINIMALIDAD
 NO ES MUY SENCILLO DE USAR
(CARDINALIDAD E IDENTIFICACION
IGUAL DE DIFICILES DE ENTENDER Y
USAR)
 RELACIONES N-ARIAS NO
CONVENIENTES EN ALGUNOS CASOS.
• CONCLUSION: EL MODELO DE E/R
REPRESENTA UN BUEN TERMINO MEDIO
ENTRE PODER DE EXPRESION, SIMPLICIDAD Y
MINIMALIDAD.
METODOLOGIAS DE DISEÑO CONCEPTUAL: SE
COMIENZA CON UNA VERSION PRELIMINAR DEL
ESQUEMA Y SE EFECTUA UNA SERIE DE
TRANSFORMACIONES DE ESQUEMAS HASTA ARRIBAR A
LA VERSION DEFINITIVA.
LOS TIPOS DE TRANSFORMACIONES USADAS EN EL
PROCESO DE DISEÑO SE CLASIFICAN EN:
• DESCENDENTES: CORRESPONDEN A
REFINAMIENTOS APLICADOS A UN ESQUEMA
INICIAL Y PRODUCEN UNA DESCRIPCION MAS
DETALLADA (ESQUEMA RESULTANTE)
• PRIMITIVAS: PROPIEDADES>
 TIENEN UNA ESTRUCTURA SIMPLE, EL
ESQUEMA INICIAL ES UN CONCEPTO
UNICO Y EL RESULTANTE SE COMPONE
DE UN CONJUNTO PEQUEÑO DE
CONCEPTOS.
 TODOS LOS NOMBRES SE REFINAN
DANDO LUGAR A NUEVOS NOMBRES
QUE DESCRIBEN EL CONCEPTO
ORIGINAL DE UN NIVEL DE
ABSTRACCION MAS BAJO.
 LAS CONEXIONES LOGICAS SE
HEREDAN POR UN SOLO CONCEPTO DEL
ESQUEMA RESULTANTE.
• PRIMITIVAS:
 T1: ENTIDAD -> ENTIDADES
RELACIONADAS
 T2: ENTIDAD -> GENERALIZACION
 T3: ENTIDAD -> ENTIDADES NO
RELACIONADAS
 T4: INTERRELACION ->
ITERRELACIONES PARALELAS
 T5: INTERRELACION -> ENTIDADES
CON INTERRELACIONES.
 T6: INTRODUCCION DE ATRIBUTOS
 T7: INTRODUCCION DE ATRIBUTOS
COMPUESTOS
 T8: REFINAMIENTO DE ATRIBUTOS
PARA PRODUCIR UN ATRIBUTO
COMPUESTO O UN CONJUNTO DE
ATRIBUTOS SIMPLES.
• ASCENDENTE: INTRODUCEN NUEVOS
CONCEPTOS Y PROPIEDADES QUE NO APARECEN
EN VERSIONES ANTERIORES DEL ESQUEMA.
• PRIMITIVAS: SE USAN EN EL DISEÑO
DE UN ESQUEMA, SIEMPRE QUE SE
DESCUBREN RASGOS DEL DOMINIO DE
APLICACION QUE NO FUERON CAPTADOS EN
NINGUN NIVEL DE ABSTRACCION EN LA
VERSION ANTERIOR DEL ESQUEMA
 B1: GENERACION DE ENTIDAD: EL
ANALISTA DESCUBRE UN NUEVO
CONCEPTO CON PROPIEDADES
ESPECIFICAS QUE NO APARECIA EN EL
ESQUEMA ANTERIOR.
 B2: GENERACION DE INTERRELACION
 B3: GENERACION DE
GENERALIZACION: SE DEBE
COMPROBAR SI LAS PROPIEDADES
DEBEN PASAR DE UNA ENTIDAD A OTRA
 B4: AGREGACION DE ATRIBUTOS: SE
GENERA UN NUEVO ATRIBUTO Y SE
CONECTA A UNA E O R DEFINIDA
ANTERIORMENTE
 B5 AGREGACION DE ATRIBUTO
COMPUESTO: SE GENERA UN NUEVO
ATRIBUTO COMPUESTO Y SE CONECTA A
UNA E O R DEFINIDA ANTERIORMENTE.
DEFINICION DE VISTAS: UNA VISTA ES UNA PERCEPCION
DE LOS REQUERIMIENTOS DE DATOS DE UNA
APLICACION
• EL OBJETIVO ES CREAR UN ESQUEMA
CONCEPTUAL PARTIENDO DE UNA DESCRIPCION
INFORMAL DE LOS REQUERIMIENTOS DEL USUARIO
• ACTIVIDADES
• ANALISIS DE LOS REQUERIMIENTOS
PARA CAPTAR EL SIGNIFICADO DE LOS
OBJETOS DE INTERES, SU AGRUPACION,
PROPIEDADES, ETC
• REPRESENTACION DE LOS OBJETOS,
CLASES Y PROPIEDADES USANDO
CONCEPTOS DE E/R
• FUENTE DE REQUERIMIENTOS
• DESCRIPCION EN LENGUAJE NATURAL
• FORMULARIOS
• SOFTWARE PRE-EXISTENTE
• REGLAMENTOS EN ORGANIZACIONES
• LEYES EXISTENTES

LAS TRES ABSTRACCIONES (CLASIFICACION, AGREGACION Y


GENERALIZACION) SON INDEPENDIENTES: NINGUNA DE ELLAS PUEDE
DESCRIBIRSE EN FUNCION DE OTRAS, Y CADA UNA DE ELLAS
PROPORCIONA UN MECANISMO DIFERENCIADO EN EL PROCESO DE
ESTRUCTURACION DE LA INFORMACION.
• PROPIEDADES DE LA CORRESPONDENCIA ENTRE CLASES:
• AGREGACION BINARIA: CORRESPONDENCIA ENTRE 2
CLASES.
• AGREGACION N-ARIA: CORRESPONDENCIA ENTRE 3 O MAS
CLASES.

PARA OBTENER UNA MEJORA EN LA CALIDAD DEL ESQUEMA


CONCEPTUAL, SE DEBERIAN EXAMINAR LAS CUALIDADES DEL ESQUEMA.
• COMPLECIÓN: UN ESQUEMA ES COMPLETO CUANDO REPRESENTA
TODAS LAS CARACTERISTICAS DEL DOMINIO DE APLICACION.
• MODOS DE COMPROBARSE
 VERIFICAR QUE LOS REQUERIMIENTOS ESTEN
REPRESENTADOS EN EL ESQUEMA
 VERIFICAR EN EL ESQUEMA QUE CADA CONCEPTO
SEA MENCIONADO EN LOS REQUERIMIENTOS.
• CORRECCION: UN ESQUEMA ES CORRECTO CUANDO USA CON
PROPIEDAD LOS CONCEPTOS ENTIDAD-INTERRELACION
• DOS TIPOS:
 SINTACTICA: CONCEPTOS ENTIDAD RELACION SE
USAN CORRECTAMENTE, POR EJEMPLO, LAS
GENERALIZACIONES SE DEFINEN ENTRE ENTIDADES
PERO NO ENTRE RELACIONES.
 SEMANTICA: CONCEPTOS SE USAN DE ACUERDO A
SU DEFINICION.
• ERRORES MAS FRECUENTES:
• USAR ATRIBUTOS EN LUGAR DE ENTIDADES
• OLVIDAR UNA GENERALIZACION
• OLVIDAR LA PROPIEDAD DE HERENCIA EN
LA GENERALIZACION
• USAR ENTIDADES EN LUGAR DE
INTERRELACIONES
• OLVIDAR UN IDENTIFICADOR DE UNA
ENTIDAD
• OMITIR CARDINALIDAD
• USAR UNA INTERRELACION CON NUMERO
ERRONEO DE ENTIDADES.
• MINIMALIDAD: CADA ASPECTO DE LOS REQUERIMIENTOS
APARECE UNA SOLA VEZ EN EL ESQUEMA. UN ESQUEMA ES MINIMO
SI NO SE PUEDE BORRAR DEL ESQUEMA UN CONCEPTO SIN
PERDER INFORMACION.
• EXPRESIVIDAD: REPRESENTA LOS REQUUERIMIENTOS DE MANERA
NATURAL Y SE PUEDE ENTENDER CON FACILIDAD, SIN NECESIDAD
DE EXPLICACIONES ADICIONALES.
• LEGIBILIDAD -> CRITERIOS ESTETICOS A RESPETAR:
• HACER DIAGRAMAS EN HOJAS CUADRICULADAS (CUADROS
Y ROMBOS DEL MISMO TAMAÑO, CONEXIONES
HORIZONTALES Y VERTICALES)
• EN LO POSIBLE, ESTRUCTURAS SIMETRICAS
• MINIMMIZAR EL NUMERO DE CRUCES.
• GENERALIZAR SOBRE LOS HIJOS.
• AUTOEXPLICACION: ESQUEMA SE EXPLICA A SI MISMO CUANDO
PUEDE REPRESENTAR UN GRAN NUMERO DE PROPIEDADES
USANDO EL MODELO CONCEPTUAL, SIN OTROS FORMALISMOS NI
ACLARACIONES.
• EXTENSIBILIDAD: UN ESQUEMA SE ADAPTA FACILMENTE A
REQUERIMIENTOS CAMBIANTES CUANDO PUEDE DESCOMPONERSE
EN PARTES, A FIN DE APLICAR LOS CAMBIOS EN CADA PARTE.
• NORMALIDAD: CONCEPTO DERIVADO DE LA TEORIA DE
NORMALIZACION (MODELO RELACIONAL). FORMAS NORMALES,
PURIFICAN ANOMALIAS DE DISEÑO.

• TRANSFORMACIONES DE ESQUEMAS: SE APLICANA UN ESQUEMA


DE ENTRADA S1 Y PRODUCEN UN ESQUEMA RESULTANTE S2. DOS
ESQUEMAS SON EQUIVALENTES SI POR CADA CONSULTA Q SOBRE S1,
EXISTE UNA CONSULTA Q' SOBRE S2 CON IGUAL RESPUESTA.
FINALMENTE SI A,B ESQUEMAS, A > B SI EXISTE ALGUNA CONSULTA Q
SOBRE A QUE NO TENGA UNA CONSULTA CORRESPONDIENTE SOBRE B,
PERO NO VICEVERSA.
• CLASIFICACION DE TRANSFORMACIONES.
• PRESERVARN LA INFORMACION: SIN CAMBIAR EL CONTENIDO DE
INFORMACION, PERO MEJORANDO LA ORGANIZACION DE
CONCEPTOS.
• CAMBIAN LA INFORMACION:
 AUMENTO DEL CONTENIDO DE INFORMACION (EJ,
AGREGAR UNA ENTIDAD)
 REDUCCION, SE ELIMINAN CONCEPTOS SUPERFLUOS NO
EXPRESADOS EN LOS REQUERIMIENTOS.
 NO COMPARABLE, CAMBIA UN NOMBRE POR OTRO.
• TRANSFORMACIONES PARA LA MINIMALIDAD:
OBJETIVO: ELIMINAR REDUNDANCIAS
• ELIMINAR "CICLO DE RELACIONES": R1, INTERRELACION ENTRE
DOS ENTIDADES, POSEE EL MISMO CONTENIDO QUE LA RUTA DE
INTERRELACIONES R2, R3,…, RN QUE CONECTA LOS MISMOS PARES
CASOS DE ENTIDADES QUE R1. NO TODOS LOS CICLOS GENERAN
REDUNDANCIA.
• ATRIBUTOS DERIVADOS: ATRIBUTOS QUE SE PUEDEN CALCULAR A
PARTIR DE OTROS (EJ, FECHA DE NACIMIENTO Y EDAD)
ES LA TAREA DEL DISEÑADOR DECIDIR SI ACEPTA REDUNDANCAS EN EL
ESQUEMA, SI ACEPTA DEBE QUEDAR EXPLICITO YA QUE PODRIA SER
FUENTE DE ANOMALIAS EN LA ADMINISTRACION DE LOS DATOS.
• TRANSFORMACIONES PARA EXPRESIVIDAD Y AUTOEXPLICACION.
• ELIMINAR SUBENTIDADES COLGANTES DE LA GENERALIZACION
• ELIMINAR ENTIDADES COLGANTES QUE POSSEEN POCOS
ATRIBUTOS.
• CREAR GENERALIZACION: CASO DE DOS ENTIDADES DISTINTAS
CON PROPIEDADES SIMILARES
• CREAR SUBCONJUNTOS APLICABLES A ENTIDADES CON
CARDINALIDAD MINIMA CERO.

O DISEÑO LOGICO:
• REPRESENTACION EN COMPUTADORA
• ESQUEMA CONCEPTUAL + DISEÑO LOGICO -> ESQUEMA LOGICO
DE LA BD
• ESQUEMA LOGICO: DESCRIPCION DE LA ESTRUCTURA DE LA BD
QUE PUEDE PROCESAR UN DBMS
• MODELO LOGICO: LENGUAJE USADO PARA ESPECIFICAR
ESQUEMAS LOGICOS. LOS MAS USADOS: RELACIONAL, DE REDES,
JERARQUICOS.
• DEPENDE DE LA CLASE DE MODELO DE DATOS USADO POR EL
DBMS, PERO NO DEL DBMS USADO (SE EFECTUA DE IGUAL FORMA PARA
TODOS LOS DBMS RELACIONALES PORQUE TODOS USAN EL MODELO
RELACIONAL).
• PASAJE DE ESQUEMA CONCEPTUAL A ESQUEMA LOGICO:
 DESICIONES A TOMAR:
• SOBRE DATOS DERIVADOS: TIENE COMO VENTAA
QUE NO SE NECESITA CALCULAR EL VALOR. REDUCE EL
NUMERO DE ACCESOS A LA BD. PERO TIENE LA DESVENTAJA
QUE EL PROCESAMIENTO ADICIONAL PARA MANTENER LOS
DATOS DERIVADOS Y SE REQUIERE MAS ESPACIOS EN EL
DISCO.
• ELIMINACION DE JERARQUIAS DE GENERALIZACION:
• LOS MODELOS LOGICOS NO PERMITEN
REPRESENTARLAS.
• SE DEBEN REPRESENTAR USANDO SOLO
ENTIDADES E INTERRELACIONES
• ELIMINACION DE ATRIBUTOS DE
CARDINALIDAD MAYOR QUE 1.
• SE DEBE CUIDAR DE INDICARLA HERENCIA
DE ATRIBUTOS Y SE DEBE CAPTAR LA INTERRELACION
IMPLICITA "ES_UN". EXISTEN TRES CASOS A TENER EN
CUENTA:
• CASO 1: INTEGRAR LA JERARQUIA DE
GENERALIZACION A UNA SOLA ENTIDAD UNIENDO
LOS ATRIBUTOS DE LAS SUBENTIDADES Y
AÑADIENDO ESTOS ATRIBUTOS A LA DE LA
SUPERENTIDAD. ES UNA SOLUCION SIMPLE, PERO
GENERA VALORES NULOS EN LOS ATRIBUTOS, ES
APLICABLE A CUALQUIER CASO DE JERARQUIA DE
GENERALIZACION.
• CASO 2: ELIMINAR LA SUPERNETIDAD
PERO RETENER LAS SUBENTIDADES. TIENE COMO
DESVENTAJA QUE SE DEBEN REPETIR LOS
ATRIBUTOS Y OPERACIONES DE LA SUPERENTIDAD,
ES DECIR QUE SE CREARIA REDUNDANCIA NO
DESEABLE. ES APLICABL EN EL CASO DE
COBERTURA TOTAL EXCLUSIVA Y ES MALA EN
COBERTURA SUPERPUESTA O PARCIAL.
• CASO 3: RETENER TODAS LAS
ENTIDADES Y ESTABLECER EXPLICITAMENTE LAS
INTERRELACIONES ENTRE LAS SUPERENTIDADES Y
SUBENTIDADES: ES EL CASO MAS GENERAL Y
APLICABLE, PROPORCIONA REDUNDANCIA
INHERENTE A NIVEL CONCEPTUAL, AL
REPRESENTAR LA RELACION "ES_UN" DE LA
JERARQUIA A TRAVES DE UNA INTERRELACION
EXPLICITA.
• PARTICION DE ENTIDADES: PARA ACCESO
SIMULTANEO CON FRECUENCIA (HORIZONTAL PARA
ENTIDADES; VERTICAL PARA ATRIBUTOS)
• PARTICION DE INTERRELACIONES: EN SITUACIONES
DE RELACIONES DE UNO A MUCHOS Y DE MUCHOS A
MUCHOS.
• FUSION DE ENTIDADES E INTERRELACIONES:
NORMALIZACION Y CARDINALIDAD.
 EL DISEÑO LOGICO EN EL MODELO RELACIONAL.
• RESTRICCIONES:
• DE CLAVE: ESPECIFICAN LAS CLAVES
CANDIDATAS DE CADA TABLA
• DE INTEGRIDAD DE ENTIDADES: NINGUN
VALOR DE CLAVE PRIMARIA PUEDE SER NULO.
• DE INTEGRIDAD REFERENCIALES: SE
ESPECIFICA ENTRE DOS RELACIONES.
• CORRESPONDENCIA E-I <=> MODELO
RELACIONAL.
• ELIMINACION DE IDENTIFICADORES
EXTERNOS, NO USADOS EN EL MODELO RELACIONAL
• ELIMINACION DE ATRIBUTOS COMPUESTOS
• CONSIDERAR TODOS SUS
COMPONENTES COMO ATRIBUTOS INDIVIDUALES
• CONSIDERAR EL ATRIBUTO
COMPUESTO ENTERO COMO UN ATRIBUTO.
• ELIMINACION DE ATRIBUTOS POLIVALENTES
• TRANSFORMAR CADA ENTIDAD EN UNA
RELACION.
• TRANSFORMACION DE INTERRELACIONES:
• UNO A UNO:
• INTEGRACION DE UNA
RELACION BINARIA (SE UNIFICA LA TABLA):
• MISMA CLAVE
PRIMARIA EN LAS DOS ENTIDADES
• CLAVE DISTINTA, SE
TOMA UNA COMO CLAVE.
• RELACIONES INDIVIDUALES
(UNA CON PARTICIPACION PARCIAL)
• RELACIONES INDIVIDUALES:
AMBAS CON PARTICIPACION PARCIAL
• UNO A MUCHOS:
• PARTICIPACION PARCIAL
• CON VALORES NULOS
• SIN VALORES NULOS
• PARTICIPACION TOTAL.
• MUCHOS A MUCHOS
• N-ARIAS
• RECURSIVAS.
• DEPENDENCIA FUNCIONAL: DADO UN ATRIBUTO B
DE UNA ENTIDAD O INTERRELACION, ESTE ES
FUNCIONALMENTE DEPENDIENTE DE OTRO A (A -> B), SI
PARA CUALQUIER VALOR DADO DEL ATRIBUTO A EXISTE UN
VALOR SIMPLE ASOCIADO EN EL ATRIBUTO B. SIEMPRE EXISTE
ENTRE LOS ATRIBUTOS NO CLAVE RESPECTO DEL CLAVE.
SI SE DA EL VALOR DE UN ATRIBUTO SE PUEDE OBTENER O
BUSCAR EL VALOR DE OTRO. EJ: SI SE CONOCE EL VALOR DEL
DNI SE PUEDE HALLAR EL NOMBRE DE UN CLIENTE. EN ESTE
CASO EL NOMBRE ES FUNCIONALMENTE DEPENDIENTE DEL
DNI. LAS CLAVES SON ATRIBUTOS QUE FORMAN
DEPENDENCIAS FUNCIONALES HACIA LOS NO CLAVES.
• ANOMALIAS DE ACTUALIZACION:
• INSERCION
• ELIMINACION
• ACTUALIZACION
• INTEGRIDAD REFERENCIAL
• QUE ES CLAVE? UN CONJUNTO DE ATRIBUTOS QUE
IDENTIFICA INEVOCAMENTE CADA ENTIDAD DEL
CONJUNTO DE ENTIDADES
• IDENTIFICADOR
• CLAVES
 PRIMARIAS
 CANDIDATAS
• TIPOS DE DEPENDENCIAS:
• PARCIAL: UN ATRIBUTO B (NO CLAVE)
DEPENDE DE UN SUBCONJUNTO DE A (CLAVE)
• TRANSITIVA: UN ATRIBUTO B (NO CLAVE)
DEPENDE DE OTRO C (CLAVE)
• BOYCE CODD: UN ATRIBUTO B (CLAVE O
PARTE DE CLAVE) DEPENDE DE UN ATRIBUTO NO
CLAVE.
• MULTIVALUADA: DADA UNA RELACION R CON
ATRIBUTOS A,B,C, DECIMOS QUE EXISTE UNA
DEPENDENCIA ENTRE A Y B MULTIVALUADA EN R ,
SI Y SOLO SI EL CONJUNTO DE VALORES DE B QUE
CONCUERDA CON EL PAR A,C EN R DEPENDE SOLO
DEL VALOR DE A PERO NO DEL C. UNA
DEPENDENCIA MULTIVALUADA EXISTE CUANDO UN
ATRIBURO PUEDE DETERMINAR MAS DE UN VALOR
PARA OTRO ATRIBUTO.
• NORMALIZACION:
• PROCESO FORMAL PARA DECIDIR QUE ATRIBUTOS DEBEN
AGRUPARSE EN UN ENTIDAD/RELACION.
• PROGRESIVA DETECCION Y ELIMMINACION DE DEPENDENCIAS NO
DESEADAS.
• EXISTEN POLITICAS PARTIDARIAS DE REALIZARLA SOBRE EL
MODELO ENTIDAD RELACION Y OTRAS QUE LO HACEN SOBRE EL
MODELO RELACIONAL.
• PROBLEMAS DE MALA NORMALIZACION (O NORMALIZACION
INEXISTENTE)
 ANOMALIAS DE ACTUALIZACION
 ANOMALIAS DE INSERCION
 ANOMALIAS DE BORRADO
• FORMAS NORMALES:
 PRIMERA FORMA NORMAL: TODOS LOS ATRIBUTOS TIENEN
CARDINALIDAD 0 O 1.
 SEGUNDA FORMA NORMAL: UNA TABLA ESTA 2NF SI ESTA
EN 1NF Y ADEMAS NO EXISTEN DEPENDENCIAS PARCIALES.
 TERCERA FORMA NORMAL: UNA TABLA ESTA EN 3NF SI
ESTA EN 2NF Y ADEMAS NO EXISTEN DEPENDENCIAS
TRANSITIVAS.
 FORMA NORMAL BOYCE CODD: UNA TABLA ESTA EN BCNF
SI ESTA EN 3NF Y NO EXISTEN DEPENDENCIAS DE BOYCE
CODD. OTRA DEFINICIO SERIA UE PARA TODASL ALS
DEPENDENCIAS DE LA FORMA X->Y; X->Y ES TRIVIAL (Y ESTA
INCLUIDO O ES IGUAL A X) O X ES SUPERCLAVE DE Y
(SUPERCLAVE, ES DECIR, CONJUNTO DE ATRIBUTOS QUE
INCLUYE LA CLAVE )
 CUARTA FORMA NORMAL: UNA TABLA ESTA EN 4NF SI
ESTA EN BCFN Y ADEMAS NO EXISTEN DEPENDENCIAS
MULTIVALUADAS.
 QUINTA FORMA NORMAL O FORMA DE DOMINIO CLAVE:
UNA TABLA ESTA EN 5FN SI CADA RESTRICCION ES UNA
CONSECUENCIA LOGICA DE LA DEFINICION DE LAS CLAVES Y
DOMINIOS.

O DISEÑO FISICO
• ES DONDE SE DETERMINA ESTRUCTURAS DE ALMACENAMIENTO
FISICO
• DESCRIBE LAS ESTRUCTURAS DE ALMACENAMIENTO Y METODOS
USADOS PARA TENER ACCESO EFECTIVO A LOS DATOS
• ESQUEMA LOGICO + DISEÑO FISICO -> ESQUEMA FISICO
• ESQUEMA FISICO: DESCRIPCION DE LA IMPLANTACION DE UNA BD
EN MEMORIA SECUNDARIA.
• SE ADAPTA A UN DBMS ESPECIFICO
• HAY UNA RETROALIMENTACION ENTRE EL DISEÑO FISICO Y EL
LOGICO (DESICIONES TOMADAS DURANTE EL DISEÑO FISICO PARA
MEJORAR EL RENDIMIENTO PUEDEN AFECTAR EL ESQUEMA LOGICO)
• COMPLETO EL DISEÑO FISICO, LOS ESQUEMAS LOGICO Y FISICO
SE EXPRESAN USANDO EL LENGUAJE DE DEFINICION DE DATOS DEL
DBMS -> NACE LA BD OPERACIONAL.

OPTIMIZACION DE CONSULTAS
COMPONENTES DEL "COSTO" DE EJECUCION DE UNA CONSULTA:
O COSTO DE ACCESO A ALMACENAMIENTO SECUNDARIO -> BUSCAR, LEER Y
ESCRIBIR BLOQUES DE DATOS QUE RESIDEN EN DISCO.
O COSTO DE ALMACENAMIENTO - > COSTO DE ALMACENAR ARCHIVOS
INTERMEDIO QUE GENERA UNA ESTRATEGIA DE EJECUCION
O COSTO DE COMPUTO -> COSTO DE REALIZAR OPERACIONES.
O COSTO DE COMUNICACION -> COSTO DE ENVIAR LA CONSULTA Y LOS
RESULTADOS (SI ES UN SISTEMA DISTRIBUIDO)
INTERPRETACION DE CONSULTAS
DADA UNA CONSULTA HAY VARIOS METODOS PARA LLEGAR A LA RESPUESTA.
• OPTIMIZACION LÓGICA: EXPRESIONES EQUIVALENTES:
• ALGEBRA RELACIONAL: PROCEDURAL, EXISTE UNA SECUENCIA DE
RESOLUCION -> SE PUEDE ENCONTRAR UNA EXPRESION MAS EFICIENTE DE
OTRA.
• OPERACIONES:
 SELECCION: HACERLA LO ANTES POSIBLE:
CAMBIAR ÐP1^P2(E) POR ÐP1(ÐP2(E)), ES DECIR, DESCOMPONER
LA CONDICION.
 LO MISMO PARA LA PROYECCION Y PARA EL PRODUCTO NATURAL.
• ESTIMACION DEL COSTO DE LAS CONSULTAS:
 LA ELECCION DE LA ESTRATEGIA IMPACTA CONTRA LAS
ESTADISTICAS.
• NUMERO DE TUPLAS EN LA RELACION (NR)
• TAMAÑO EN BYTES DE LA TUPLA (SR)
• NUMERO DE VALORES DISTINTOS EN LA RELACION R PARA UN
ATRIBUTO V(A,R)
 COSTO DE LAS CONSULTAS:
• PRODUCTO CARTESIANO: RXT
• # TUPLAS NR * NT
• # BYTES EN CADA TUPLA = SR + ST
• SELECCION ÐP(R)
• # TUPLAS = NR / V(A,R) SE SUPONE DISTRIBUCION
• # BYTES X TUPLAS = SR.
• OPTIMIZACION FISICA:
• GENERAR "BUENOS" INDICES
• COSTO DE ACCESO POR INDICES
 INDICE -> MAS RAPIDO, EXISTE ORDENAMIENTO.
 COSTO ADICIONAL -> ACCESO AL INDICE
 CALCULO DE TIEMPO: DEPENDE DE LA ORGANIZACION Y
CARACTERISTICAS.
• GENERAR "BUENOS"CLUSTERS (CRITERIOS PARA AGRUPAR
INFORMACION -> SE PUEDE "CLUSTERIZAR" POR TABLAS, ATRIBUTOS O
RELACIONADAS.
• PROCESADORES PARALELOS
• REDES: SEPARAR EL TRABAJO EN DISTINTAS COMPUTADORAS.
TRANSACCIONES
• TRANSACCION: SECUENCIA D EOPERACIONES QUE FORMAN UNA UNICA UNIDAD
LOGICA DE TRABAJO.
• UNA TRANSACCION SE HACE O NO SE HACE, NO SE PUEDE QUEDAR A MEDIAS.
O SI TERMINA, SUS EFECTOS QUEDAN EN LA BD
O SI SE ANULA, SUS EFECTOS NO QUEDAN EN LA BD
• PROPIEDADES ACID
O ATOMICIDAD: UNA TRANSACCION DEBE SER UNA UNIDAD ATOMICA DE
TRABAJO O TODAS LAS OPERACIONES DE LA TRANSACCION SE EJECUTAN O
NO LO HACEN NINGUNA DE ELLAS.
O CONSISTENCIA: LA EJECUCION AISLADA DE LA TRANSACCION CONSERVA
LA CONSISTENCIA DE LA BD. LLEVA LA BD DE UN ESTADO CONSISTENTE A
OTRO CONSISTENTE.
O AISLAMIENTO (ISOLATION): CADA TRANSACCION IGNORA EL RESTO DE
LAS TRANSACCIONES QUE SE EJECUTAN CONCURRENTEMENTE EN EL SISTEMA
ACTUA CADA UNA COMO UNICA.
o DURABILIDAD: UNA TRANSACCION TERMINADA CON EXITO REALIZA
CAMBIOS PERMANENTES EN LA BD. INCLUSO SI HAY FALLOS EN EL SISTEMA.
• ESTADOS DE UNA TRANSACCION:
O ACTIVA: ESTADO INICIAL, ESTADO NORMAL DURANTE LA EJECUCION.
O PARCIALMENTE COMETIDA: DESPUES DE EJECUTARSE LA ULTIMA
INSTRUCCION
O FALLADA: LUEGO DE DESCUBRIR QUE NO PUEDE SEGUIR LA EJECUCION
NORMAL.
O ABORTADA: DESPUES DE HABER RETROCEDIDO LA TRANSACCION Y
REESTABLECIDO LA BD AL ESTADO ANTERIOR AL COMIENZO DE LA
TRANSACCION
O COMETIDA: TRAS COMPLETARSE CON EXITO , SE HA COMETIDO
PARCIALMENTE Y SE GARANTIZA QUE NUNCA ABORTARA.

PARCIALMENTE COMETIDA COMETIDA

ACTIVA

FALLADA ABORTADA

• TRANSACCION ABORTADA, QUE HACER?


O REINICIAR LA TRANSACCION: CUALQUIER ERROR QUE NO DEPENDA DE
LA LOGICA DE LA TRANSACCION (HARDWARE, SOFTWARE)
O CANCELAR LA TRANSACCION: ERROR INTERNO LOGICO EN EL
PROGRAMA QUE EJECUTA LA TRANSACCION.
• UNA TRANSACCION QUE LLEGA AL ESTADO DE FALLO DESPUES QUE SE
DETERMINA QUE NO PUEDE SEGUIR CON SU EJECUCION NORMAL, DEBE
RETROCEDER, ESTO ES RETROTRAER LO HECHO.
• HAY QUE TENER CUIDADO CON LAS ESCRITURAS EXTERNAS (XEJ UNA
IMPRESORA) CUANDO PASA ALGO ASI NO PUEDE BORRARSE, PUESTO QUE PUEDE
HABER SIDO VISTA FUERA DEL SISTEMA DE BD. MUCHOS SISTEMAS PERMITEN QUE
TALES ESCRITURAS TENGAN LUGAR SOLO DESPUES QUE LA TRANSACCION LLEGUE
A ESTADO COMETIDA.
• PRIMER CLASIFICACION:
O CON PERDIDA DE INFORMACION
O SIN PERDIDA DE INFORMACION. NO PRESENTA GRAVES PROBLEMAS, YA
QUE LOS DATOS QUEDAN BIEN.
• TIPOS DE FALLOS CON PERDIDA:
O FALLO EN LA TRANSACCION: DOS ERRORES:
• LOGICOS: INTERNOS A LA TRANSACCION
• DEL SISTEMA: BLOQUEOS, DEADLOCK
O CAIDA DELSISTEMA: HARDWARE, SOFTWARE (SO, DBMS)
O FALLO DEL DISCO.
• ALGORITMOS DE TRATAMIENTO DE FALLOS:
O ACCIONES LLEVADAS A CABO DURANTE EL PROCESAMIENTO NORMAL DE
LA TRANSACCION QUE PERMITE LA RECUPERACION ANTE FALLOS
O ACCIONES LLEVADAS A CABO DESPUES DE OCURRIR EL FALLO PARA
RESTABLECER EL CONTENIDO DE LA BD A UN ESTADO QUE ASEGURE ACID
• ESTRUCTURA DE ALMACENAMIENTO:
O ALMACENAMIENTO VOLATIL: LA INFORMACION QUE RESIDE EN ESTE
ALMACENAMIENTO NO SUELE SOBREVIVIR A LAS CAIDAS DEL SISTEMA,
o ALMACENAMIENTO NO VOLATIL: LA INFORMACION QUE RESIDE AQUI
SOBREVIVE A LAS CAIDAS DEL SISTEMA (EJ. DISCOS Y CINTAS)
O ALMACENAMIENTO ESTABLE: TEORICAMENTE NUNCA SE PIERDE
INFORMACION: REPLICAR LA INFORMACION EN VARIOS MEDIOS NO VOLATILES
INDEPENDIENTES Y ACTUALIZAR CONTROLADAMENTEE PARA ASEGURAR QUE
SE MANTIENEN LOS DATOS ANTE CUALQUIER SITUACION.
• ANTE UN ERROR, COMO PROCEDER?
O REEJECUTAR: NO SIRVE PORQUE SE PERDERIA LA CONSISTENCIA
O NO REEJECUTAR: TAMPOCO SIRVE PORQUE TAMBIEN SE PERDERIA LA
CONSISTENCIA
O SOLUCION: INDICAR LAS MODIFICACIONES ANTES DE HACERLAS
EFECTIVAS, DE ESTA FORMA PUEDE RECUPERARSE.
• METODO DE RECUPERACION BASADO EN BITACORAS:
O REGISTRO HISTORICO: SECUENCOA DE ACTIVIDADES REALIZADAS
SOBRE LA BD.
O CONTENIDO DE LA BITACORA:
• <TI INICIADA> SE GRABA ANTES DE QUE EMPIECE A EJECUTAR LA
TRANSACCION I. INDICA QUE LA TRANSACCION COMIENZA A ESTAR
ACTIVA.
• <TI, E, VA, VN>
 IDENTIFICADOR DE LA TRANSACCION
 IDENTIFICADOR DEL ELEMENTO DE DATOS
 VALOR ANTERIOR
 VALOR NUEVO
• <TI COMMIT> INDICA QUE LA TRANSACCION ESTA PARCIALMENTE
COMETIDA
• <TI ABORT>
O LAS OPERACIONES SOBRE LA BD SE ALMACENAN ANTES EN LA
BITACORA
• MODIFICACION DIFERIDA DE LA BD: LA BASE DE DATOS SE
CAMBIA RECIEN CUANDO LA TRANSACCION PASA AL ESTADO DE
COMETIDA.
 CUANDO LA TRANSACCION ESTA PARCIALMENTE
COMETIDA, LA INFORMACION EN LA BITACORA SE USA PARA LAS
ESCRITURAS DIFERIDAS
 SI EL SISTEMA SE CAE ANTES QUE LA TRANSACCION
TERMINE SU EJECUCION, O SI LA TRANSACCION ABORTA, SE
IGNORA EL CONTENIDO DE LA BITACORA.
 EJECUCION DE UNA TRANSACCION
• ANTES DE EMPEZAR <TI STARTS>
• AL TERMINAR: <TI COMMITS>
• ESCRITURA DE LA BITACORA EN MEMORIA ESTABLE
• ESCRITURA DIFERIDA DE LAS MODIFICACIONES EN
LA BD
• ESTADO COMETIDO.
 ANTE UN FALLO Y LUEGO DE RECUPERARSE:
• REDO (TI) PARA TODO TI QUE TENGA UN START Y
UN COMMIT EN LA BITACORA
• SINO TIENE COMMIT, ENTONCES SE IGNORA, DADO
QUE NO LLEGO HACER ALGO EN LA BD.

• MODIFICACION INMEDIATA DE LA BD: ANTE UN CAMBIO, PRIMERO


SE GUARDA EN LA BITACORA Y LUEGO INMEDIATAMENTE SE LLEVA A LA
BD.
 LA ACTUALIZACION DE LA BD SE REALIZA MIENTRAS LA
TRANSACCION ESTA ACTIVA Y SE VA EJECUTANDO.
 SE NECESITA EL VALOR VIEJO, PUES LOS CAMBIOS SE FUERON
EFECTUAND.
 ANTE UN FALLO Y LUEGO DE RECUPERARSE:
• REDO(TI) PARA TODA TI QUE TENGA UN START Y UN
COMMIT EN LA BITACORA.
• UNDO(TI) PARA TODA TI QUE TENGA UN START Y NO UN
COMMIT EN LA BITACORA.
O TRANSACCION:
• CONDICION DE IDEMPOTENCIA: SIGNIFICA LA HABILIDAD PARA
REALIZAR UNA ACCION DETERMINADA VARIAS VECES Y AUN ASI
CONSEGUIR EL MISMO RESULTADO QUE SE OBTENDRIA SI SE REALIZACE
UNA SOLA VEZ.
O BUFFERS DE BITACORA:
• GRABAR EN DISCO CADA REGISTRO DE BITACORA INSUME GRAN
COSTO DE TIEMPO, POR LO TANTO SE UTILIZA BUFFERS. EL
PROCEDIMIENTO ES EL SIGUIENTE
 UNA TRANSACCION ESTA PARCIALMENTE COMETIDA
DESPUESDE GRABAR EN MEMORIA NO VOLATIL EL COMMIT DE LA
BITACORA.
 UN COMMIT DE LA BITACORA EN MEMORIA NO VOLATIL
IMPLICA QUE TODOS LOS REGISTROS ANTERIORES DE ESA
TRANSACCION YA ESTAN EN MEMORIA NO VOLATIL.
 ANTES DE GRABAR EN LA BD UN BLOQUE QUE ESTA EN
MEMORIA PRINCIPAL, DEBEN HABERSE GRABADO EN MEMORIA
ESTABLE TODOS LOS REGISTROS DE BITACORA QUE PERTENECENA
LOS DATOS DE ESE BLOQUE. SIEMPRE GRABA PRIMERO LA
BITACORA Y DESPUES LA BD.
O PUNTOS DE VERIFICACION
• ANTE UN FALLO QUE HACE: REDO, UNDO SEGUN EL CASO.
• REVISAR LA BITACORA: NO DESDE EL COMIENZO PORQUE ES MAS
PROBABLEQUE GRAN PORCENTAJE ESTE CORRECTO Y TERMINADO Y POR
LO TANTO LLEVARIA MUCHO TIEMPO.
• CHECKPOITS (MONOUSUARIO): SE AGREGARN PERIODICAMENTE
INDICANDO QUE HASTA ALLI, TODO SE EJECUTO BIEN. EL PROBLEMA ES
DETERMINAR QUE TAN PERIODICAMENTE HACER ESTOS CHECKPOINTS.
• DOBLE PAGINACION (PAGINACION EN LA SOMBRA)
O PASOS:
• LA BD SE DIVIDE EN UN NUMERO DETERMINAOD DE BLOQUES DE
LONG FIJA (PAGINAS)
• LAS PAGINAS SE NUMERAN
• PARA LOCALIZAR UNA PAGINA DADA EN DISCO, SE UTILIZA UNA
TABLA DE PAGINADO.
• SE MANTIENE EN MEMORIA VOLATIL UNA TABLA ACTUAL Y EN
ALMACENAMIENTO ESTABLE UNA TABLA DOBLE (SOMBRA)
• AL INICIO DE UNA TRANSACCION, AMBAS TABLAS SON IGUALES
• DURANTE LA TRANSACCION SOLO SE MODIFICA LA TABLA ACTUAL
• EN CASO DE FALLA, SE USA LA TABLA DOBLE PARA
RECUPERACION.
O IDEA: MANTENER DOS TABLAS DE PAGINAS DURANTE LA VIDA DE UNA
TRANSACCION.
O CUANDO SE REALIZA UNA TRANSACCION, SE GENERA UNA NUEVA
PAGINA APUNTADA POR LA TABLA ACTUAL
O LA TABLA DE PAGINAS DE SOMBRA MANTIENE UN PUNTERO A LA PAGINA
QUE CONTIENE EL ESTADO ANTERIOR DE LOS DATOS INVOLUCRADOS EN LA
TRANSACCION (PAGINA CON ESTADO ANTERIOR)
O ANTE LA CAIDA DE SISTEMA O FALLO DE UNA TRANSACCION, SE
RECUPERA EL ESTADO ANTERIOR DE LA BD DESDE LA PAGINA DE SOMBRA
O LA TABLA DE PAGINAS ACTUAL SE ESCRIBE EN ALMACENAMIENTO NO
VOLATIL CUANDO LA TRANSACCION PASA AL ESTADO DE COMETIDA. LA
PAGINA ACTUAL SE CONVIERTE EN NUEVA PAGINA DE SOMBRA Y SE EJECUTA
LA SIGUIENTE TRANSACCION.
O LA TABLA DE PAGINAS DE SOMBRA APUNTA SIEMPRE A LAS PAGINAS DE
LA BD CORRESPONDIENTES AL ESTADO ANTERIOR DE CUALQUIER
TRANSACCION QUE ESTUVIERA ACTIVA EN EL MOMENTO DE LA CAIDA DEL
SISTEMA.
O ASI NO ES NECESARIO DISPONER DE UNA OPERACION DESHACER
(ABORTS AUTOMATICOS, SE TIENEN LA DIRECCION DE LA PAGINA ANTERIOR
SIN LAS MODIFICACIONES).
O VENTAJAS
• MENOS ACCESOS A DISCO
• ELIMINA LA SOBRECARGA DE ESCRITURAS DEL LOG
• RECUPERACION MAS RAPIDA, NO EXISTE EL REDO O UNDO
O DESVENTAJAS:
• COMPLICADA EN UN AMBIENTE DISTRIBUIDO O CONCURRENTE
• SOBRECARGA: LA TECNICA DE PAGINACION ES POR CADA
TRANSACCION
• FRAGMENTACION DE LOS DATOS: CAMBIA LA UBICACION DE LOS
DATOS CONTINUAMENTEO
• GARBAGE COLLECTOR: ANTE UN FALLO QUEDA UNA PAGINA QUE
NO ES MAS REFERENCIADA.
TRANSACCIONES
• TRANSACCION: SECUENCIA D EOPERACIONES QUE FORMAN UNA UNICA UNIDAD
LOGICA DE TRABAJO.
• UNA TRANSACCION SE HACE O NO SE HACE, NO SE PUEDE QUEDAR A MEDIAS.
O SI TERMINA, SUS EFECTOS QUEDAN EN LA BD
O SI SE ANULA, SUS EFECTOS NO QUEDAN EN LA BD
• PROPIEDADES ACID
O ATOMICIDAD: UNA TRANSACCION DEBE SER UNA UNIDAD ATOMICA DE
TRABAJO O TODAS LAS OPERACIONES DE LA TRANSACCION SE EJECUTAN O
NO LO HACEN NINGUNA DE ELLAS.
O CONSISTENCIA: LA EJECUCION AISLADA DE LA TRANSACCION CONSERVA
LA CONSISTENCIA DE LA BD. LLEVA LA BD DE UN ESTADO CONSISTENTE A
OTRO CONSISTENTE.
O AISLAMIENTO (ISOLATION): CADA TRANSACCION IGNORA EL RESTO DE
LAS TRANSACCIONES QUE SE EJECUTAN CONCURRENTEMENTE EN EL SISTEMA
ACTUA CADA UNA COMO UNICA.
o DURABILIDAD: UNA TRANSACCION TERMINADA CON EXITO REALIZA
CAMBIOS PERMANENTES EN LA BD. INCLUSO SI HAY FALLOS EN EL SISTEMA.
• ESTADOS DE UNA TRANSACCION:
O ACTIVA: ESTADO INICIAL, ESTADO NORMAL DURANTE LA EJECUCION.
O PARCIALMENTE COMETIDA: DESPUES DE EJECUTARSE LA ULTIMA
INSTRUCCION
O FALLADA: LUEGO DE DESCUBRIR QUE NO PUEDE SEGUIR LA EJECUCION
NORMAL.
O ABORTADA: DESPUES DE HABER RETROCEDIDO LA TRANSACCION Y
REESTABLECIDO LA BD AL ESTADO ANTERIOR AL COMIENZO DE LA
TRANSACCION
O COMETIDA: TRAS COMPLETARSE CON EXITO , SE HA COMETIDO
PARCIALMENTE Y SE GARANTIZA QUE NUNCA ABORTARA.

PARCIALMENTE COMETIDA COMETIDA

ACTIVA

FALLADA ABORTADA

• TRANSACCION ABORTADA, QUE HACER?


O REINICIAR LA TRANSACCION: CUALQUIER ERROR QUE NO DEPENDA DE
LA LOGICA DE LA TRANSACCION (HARDWARE, SOFTWARE)
O CANCELAR LA TRANSACCION: ERROR INTERNO LOGICO EN EL
PROGRAMA QUE EJECUTA LA TRANSACCION.
• UNA TRANSACCION QUE LLEGA AL ESTADO DE FALLO DESPUES QUE SE
DETERMINA QUE NO PUEDE SEGUIR CON SU EJECUCION NORMAL, DEBE
RETROCEDER, ESTO ES RETROTRAER LO HECHO.
• HAY QUE TENER CUIDADO CON LAS ESCRITURAS EXTERNAS (XEJ UNA
IMPRESORA) CUANDO PASA ALGO ASI NO PUEDE BORRARSE, PUESTO QUE PUEDE
HABER SIDO VISTA FUERA DEL SISTEMA DE BD. MUCHOS SISTEMAS PERMITEN QUE
TALES ESCRITURAS TENGAN LUGAR SOLO DESPUES QUE LA TRANSACCION LLEGUE
A ESTADO COMETIDA.
• PRIMER CLASIFICACION:
O CON PERDIDA DE INFORMACION
O SIN PERDIDA DE INFORMACION. NO PRESENTA GRAVES PROBLEMAS, YA
QUE LOS DATOS QUEDAN BIEN.
• TIPOS DE FALLOS CON PERDIDA:
O FALLO EN LA TRANSACCION: DOS ERRORES:
• LOGICOS: INTERNOS A LA TRANSACCION
• DEL SISTEMA: BLOQUEOS, DEADLOCK
O CAIDA DELSISTEMA: HARDWARE, SOFTWARE (SO, DBMS)
O FALLO DEL DISCO.
• ALGORITMOS DE TRATAMIENTO DE FALLOS:
O ACCIONES LLEVADAS A CABO DURANTE EL PROCESAMIENTO NORMAL DE
LA TRANSACCION QUE PERMITE LA RECUPERACION ANTE FALLOS
O ACCIONES LLEVADAS A CABO DESPUES DE OCURRIR EL FALLO PARA
RESTABLECER EL CONTENIDO DE LA BD A UN ESTADO QUE ASEGURE ACID
• ESTRUCTURA DE ALMACENAMIENTO:
O ALMACENAMIENTO VOLATIL: LA INFORMACION QUE RESIDE EN ESTE
ALMACENAMIENTO NO SUELE SOBREVIVIR A LAS CAIDAS DEL SISTEMA,
o ALMACENAMIENTO NO VOLATIL: LA INFORMACION QUE RESIDE AQUI
SOBREVIVE A LAS CAIDAS DEL SISTEMA (EJ. DISCOS Y CINTAS)
O ALMACENAMIENTO ESTABLE: TEORICAMENTE NUNCA SE PIERDE
INFORMACION: REPLICAR LA INFORMACION EN VARIOS MEDIOS NO VOLATILES
INDEPENDIENTES Y ACTUALIZAR CONTROLADAMENTEE PARA ASEGURAR QUE
SE MANTIENEN LOS DATOS ANTE CUALQUIER SITUACION.
• ANTE UN ERROR, COMO PROCEDER?
O REEJECUTAR: NO SIRVE PORQUE SE PERDERIA LA CONSISTENCIA
O NO REEJECUTAR: TAMPOCO SIRVE PORQUE TAMBIEN SE PERDERIA LA
CONSISTENCIA
O SOLUCION: INDICAR LAS MODIFICACIONES ANTES DE HACERLAS
EFECTIVAS, DE ESTA FORMA PUEDE RECUPERARSE.
• METODO DE RECUPERACION BASADO EN BITACORAS:
O REGISTRO HISTORICO: SECUENCOA DE ACTIVIDADES REALIZADAS
SOBRE LA BD.
O CONTENIDO DE LA BITACORA:
• <TI INICIADA> SE GRABA ANTES DE QUE EMPIECE A EJECUTAR LA
TRANSACCION I. INDICA QUE LA TRANSACCION COMIENZA A ESTAR
ACTIVA.
• <TI, E, VA, VN>
 IDENTIFICADOR DE LA TRANSACCION
 IDENTIFICADOR DEL ELEMENTO DE DATOS
 VALOR ANTERIOR
 VALOR NUEVO
• <TI COMMIT> INDICA QUE LA TRANSACCION ESTA PARCIALMENTE
COMETIDA
• <TI ABORT>
O LAS OPERACIONES SOBRE LA BD SE ALMACENAN ANTES EN LA
BITACORA
• MODIFICACION DIFERIDA DE LA BD: LA BASE DE DATOS SE
CAMBIA RECIEN CUANDO LA TRANSACCION PASA AL ESTADO DE
COMETIDA.
 CUANDO LA TRANSACCION ESTA PARCIALMENTE
COMETIDA, LA INFORMACION EN LA BITACORA SE USA PARA LAS
ESCRITURAS DIFERIDAS
 SI EL SISTEMA SE CAE ANTES QUE LA TRANSACCION
TERMINE SU EJECUCION, O SI LA TRANSACCION ABORTA, SE
IGNORA EL CONTENIDO DE LA BITACORA.
 EJECUCION DE UNA TRANSACCION
• ANTES DE EMPEZAR <TI STARTS>
• AL TERMINAR: <TI COMMITS>
• ESCRITURA DE LA BITACORA EN MEMORIA ESTABLE
• ESCRITURA DIFERIDA DE LAS MODIFICACIONES EN
LA BD
• ESTADO COMETIDO.
 ANTE UN FALLO Y LUEGO DE RECUPERARSE:
• REDO (TI) PARA TODO TI QUE TENGA UN START Y
UN COMMIT EN LA BITACORA
• SINO TIENE COMMIT, ENTONCES SE IGNORA, DADO
QUE NO LLEGO HACER ALGO EN LA BD.

• MODIFICACION INMEDIATA DE LA BD: ANTE UN CAMBIO, PRIMERO


SE GUARDA EN LA BITACORA Y LUEGO INMEDIATAMENTE SE LLEVA A LA
BD.
 LA ACTUALIZACION DE LA BD SE REALIZA MIENTRAS LA
TRANSACCION ESTA ACTIVA Y SE VA EJECUTANDO.
 SE NECESITA EL VALOR VIEJO, PUES LOS CAMBIOS SE FUERON
EFECTUAND.
 ANTE UN FALLO Y LUEGO DE RECUPERARSE:
• REDO(TI) PARA TODA TI QUE TENGA UN START Y UN
COMMIT EN LA BITACORA.
• UNDO(TI) PARA TODA TI QUE TENGA UN START Y NO UN
COMMIT EN LA BITACORA.
O TRANSACCION:
• CONDICION DE IDEMPOTENCIA: SIGNIFICA LA HABILIDAD PARA
REALIZAR UNA ACCION DETERMINADA VARIAS VECES Y AUN ASI
CONSEGUIR EL MISMO RESULTADO QUE SE OBTENDRIA SI SE REALIZACE
UNA SOLA VEZ.
O BUFFERS DE BITACORA:
• GRABAR EN DISCO CADA REGISTRO DE BITACORA INSUME GRAN
COSTO DE TIEMPO, POR LO TANTO SE UTILIZA BUFFERS. EL
PROCEDIMIENTO ES EL SIGUIENTE
 UNA TRANSACCION ESTA PARCIALMENTE COMETIDA
DESPUESDE GRABAR EN MEMORIA NO VOLATIL EL COMMIT DE LA
BITACORA.
 UN COMMIT DE LA BITACORA EN MEMORIA NO VOLATIL
IMPLICA QUE TODOS LOS REGISTROS ANTERIORES DE ESA
TRANSACCION YA ESTAN EN MEMORIA NO VOLATIL.
 ANTES DE GRABAR EN LA BD UN BLOQUE QUE ESTA EN
MEMORIA PRINCIPAL, DEBEN HABERSE GRABADO EN MEMORIA
ESTABLE TODOS LOS REGISTROS DE BITACORA QUE PERTENECENA
LOS DATOS DE ESE BLOQUE. SIEMPRE GRABA PRIMERO LA
BITACORA Y DESPUES LA BD.
O PUNTOS DE VERIFICACION
• ANTE UN FALLO QUE HACE: REDO, UNDO SEGUN EL CASO.
• REVISAR LA BITACORA: NO DESDE EL COMIENZO PORQUE ES MAS
PROBABLEQUE GRAN PORCENTAJE ESTE CORRECTO Y TERMINADO Y POR
LO TANTO LLEVARIA MUCHO TIEMPO.
• CHECKPOITS (MONOUSUARIO): SE AGREGARN PERIODICAMENTE
INDICANDO QUE HASTA ALLI, TODO SE EJECUTO BIEN. EL PROBLEMA ES
DETERMINAR QUE TAN PERIODICAMENTE HACER ESTOS CHECKPOINTS.
• DOBLE PAGINACION (PAGINACION EN LA SOMBRA)
O PASOS:
• LA BD SE DIVIDE EN UN NUMERO DETERMINAOD DE BLOQUES DE
LONG FIJA (PAGINAS)
• LAS PAGINAS SE NUMERAN
• PARA LOCALIZAR UNA PAGINA DADA EN DISCO, SE UTILIZA UNA
TABLA DE PAGINADO.
• SE MANTIENE EN MEMORIA VOLATIL UNA TABLA ACTUAL Y EN
ALMACENAMIENTO ESTABLE UNA TABLA DOBLE (SOMBRA)
• AL INICIO DE UNA TRANSACCION, AMBAS TABLAS SON IGUALES
• DURANTE LA TRANSACCION SOLO SE MODIFICA LA TABLA ACTUAL
• EN CASO DE FALLA, SE USA LA TABLA DOBLE PARA
RECUPERACION.
O IDEA: MANTENER DOS TABLAS DE PAGINAS DURANTE LA VIDA DE UNA
TRANSACCION.
O CUANDO SE REALIZA UNA TRANSACCION, SE GENERA UNA NUEVA
PAGINA APUNTADA POR LA TABLA ACTUAL
O LA TABLA DE PAGINAS DE SOMBRA MANTIENE UN PUNTERO A LA PAGINA
QUE CONTIENE EL ESTADO ANTERIOR DE LOS DATOS INVOLUCRADOS EN LA
TRANSACCION (PAGINA CON ESTADO ANTERIOR)
O ANTE LA CAIDA DE SISTEMA O FALLO DE UNA TRANSACCION, SE
RECUPERA EL ESTADO ANTERIOR DE LA BD DESDE LA PAGINA DE SOMBRA
O LA TABLA DE PAGINAS ACTUAL SE ESCRIBE EN ALMACENAMIENTO NO
VOLATIL CUANDO LA TRANSACCION PASA AL ESTADO DE COMETIDA. LA
PAGINA ACTUAL SE CONVIERTE EN NUEVA PAGINA DE SOMBRA Y SE EJECUTA
LA SIGUIENTE TRANSACCION.
O LA TABLA DE PAGINAS DE SOMBRA APUNTA SIEMPRE A LAS PAGINAS DE
LA BD CORRESPONDIENTES AL ESTADO ANTERIOR DE CUALQUIER
TRANSACCION QUE ESTUVIERA ACTIVA EN EL MOMENTO DE LA CAIDA DEL
SISTEMA.
O ASI NO ES NECESARIO DISPONER DE UNA OPERACION DESHACER
(ABORTS AUTOMATICOS, SE TIENEN LA DIRECCION DE LA PAGINA ANTERIOR
SIN LAS MODIFICACIONES).
O VENTAJAS
• MENOS ACCESOS A DISCO
• ELIMINA LA SOBRECARGA DE ESCRITURAS DEL LOG
• RECUPERACION MAS RAPIDA, NO EXISTE EL REDO O UNDO
O DESVENTAJAS:
• COMPLICADA EN UN AMBIENTE DISTRIBUIDO O CONCURRENTE
• SOBRECARGA: LA TECNICA DE PAGINACION ES POR CADA
TRANSACCION
• FRAGMENTACION DE LOS DATOS: CAMBIA LA UBICACION DE LOS
DATOS CONTINUAMENTEO
• GARBAGE COLLECTOR: ANTE UN FALLO QUEDA UNA PAGINA QUE
NO ES MAS REFERENCIADA.
ESTADISTICAS Y APLICACIONES
BASE DE DATOS ESTADISTICAS.
O ES AQUELLA QUE PERMITE CONSUTAS QUE PROPORCIONEN INFORMACION
GENERAL (POR EJEMPLO, SUMA DE PROMEDIOS) PERO NO CONSULTAS QUE
PROPORCIONEN INFORMACION INDIVIDUAL.
O POR EJEMPLO, SE PERMITIRIA CONSULTAR EL SUELDO PROMEDIO DE LOS
PROGRAMADORES, PERO NO CUAL ES EL SALARIO DE UN PROGRAMADOR EN
PARTICULAR.
NUEVAS APLICACIONES EN BD
• HASTA AHORA MODELOS DE DATOS CON:
• UNIFORMIDAD DE DATOS (ESTRUCTURA Y TAMAÑO)
• ORIENTACION DE REGISTROS (LONGITUD FIJA)
• ELEMENTOS DE DATOS DE TAMAÑO PEQUEÑO
• CAMPOS ATOMICOS (1FN)
• NUEVAS CARACTERISTICAS QUE DEBEMOS REFLEJAR: CAD, CASE, BD
MULTIMEDIALES.
• SE NECESITA
• TIPOS DE DATOS COMPLEJOS
• ENCAPSULAMIENTO DE DATOS Y TAD
• NUEVOS METODOS DE INDEXACION Y CONSULTA.
• APLICACIONES
• SISTEMAS DE AYUDA A LAS DESICIONES
 DATA MINING
• EXISTE UNA GRAN ACUMULACION DE DATOS
• LA TENDENCIA ES SEGUIR ACUMULANDO DATOS Y EN
FORMA CRECIENTE:
• DESARROLLO MASIVO DE SISTEMA DE ALTOS
VOLUMENES DE TRANSACCIONES
• CONCEPTO DE INFORMACION CORPORATIVA:
"ACTIVO CORPORATIVO"
• IMPOSIBILIDAD DE PROCESAMIENTO MANUAL DE LOS
DATOS.
• GRANDES FUENTES DE DATOS: BD CIENTIFICAS, DW,
INTERNET.
• LA TECNOLOGIA ACTUAL FACILITA LA RECOLECCION Y
ACUMULACION DE DATOS
• EL ANALISIS TIENDE A SER LENTO Y COSTOSO
• EXISTE LA SOSPECHA QUE PUEDEN HABER VETAS DE
INFORMACION SUTIL, OCULTA EN LAS MASAS DE DATOS SIN
ANALIZAR O POCO ANALIZADOS.
• DEFINICION
• EXTRACCION NO TRIVIAL DE INFORMACION
IMPLICITA PREVIAMENTE DESCONOCIDA Y POTENCIALMENTE
UTIL DE LA BD
• ES LA EXPLORACION Y ANALISIS POR MEDIOS
AUTOMATICOS O SEMIAUTOMATICOS DE GRANDES
CANTIDADES DE DATOS CON EL FIN DE DESCUBRIR REGLAS
Y PADRONES SIGNIFICATIVOS
• LOS DATOS OCULTAN DESVIACIONES, TENDENCIAS,
ANOMALIAS QUE SE DESCUBREN CON REGLAS DE
INDUCCION, REDES NEURONALES, ETC.
• PORQUE DATAMINING:
• LOS DATOS ESTAN Y MAS SE ESTAN PRODUCIENDO
• LOS DATOS SE ESTAN ALMACENANDO
• EXISTE LA POTENCIA COMPUTACIONAL
• HAY FUERTE PRESION COMPETITIVA
• EXISTEN PRODUCTOS DE SOFTWARE DE DM
DISPONIBLES COMERCIALMENTE
• KDD, KNOWLEDGE DISCOVERY IN DATABASES, OTRO
NOMBRE PARA DM
• IMPORTANCIA DE DATA MINING
• APLICACIONES EXITOSAS EN AREAS COMO
MARKETING, PLANEAMIENTO FINANCIERO, DETECCION Y
PREVENCION DE FRAUDES, CIENTIFICAS, ETC.
• OBJETIVOS:
• PREDICCION: PUEDE MOSTRAR EL MODO EN EL
QUE ACTUARAN EN EL FUTURO CIERTOS ATRIBUTOS
DENTRO DE LOS DATOS.
• IDENTIFICACION: LOS PATRONES DE DATOS
PUEDEN UTILIZARSE PARA IDENTIFICAR LA EXISTENCIA DE
UN ARTICULO, EVENTO O ACTIVIDAD.
• CLASIFICACION: PUEDE DIVIDIR LOS DATOS DE
MODO QUE DIFERENTES CLASES O CATEGORIAS PUEDAN
SER IDENTIFICADAS BASANDOSE EN COMBINACIONES DE
PARAMETROS.
• OPTIMIZACION: LA UTILIZACION DE RECURSOS
LIMITADOS COMO EL TIEMPO, ESPACIO, DINERO O
MATERIALES Y MAXIMIZAR LAS VARIABLES DE SALIDA
• PROCESO DE DM
• COMPRENDER EL DOMINIO
• PREPARAR LAS BDS
• DESCUBRIR PATRONES (DATA MINING)
• POSTPROCESAR LOS PATRONES DESCUBIERTOS.
• DISPONER LOS RESULTADOS PARA SU USO.
• TIPOS DE CONOCIMIENTO DESCUBIERTO DURANTE DM:
• REGLAS DE ASOCIACION: COMUNES ENTRE LA
PRESENCIA DE UN CONJUNTO DE ELEMENTOS CON OTRO
RANGO DE VALORES PARA OTRO CONJUNTO DE VARIABLES.
EJ, SI COMPRA ZAPATOS, PUEDE COMPRARSE CARTERA.
• JERARQUIAS DE CLASIFICACION: PARTIR DE UN
CONJUNTO DE EVENTOS EXISTENTES PARA CREAR UNA
JERARQUIA DE CLASES. EJ, UNA POBLACION PUEDE
DIVIDIRSE EN CINCO NIVELES DE MERITO.
• PATRONES SECUENCIALES: PERSIGUE UNA
SECUENCIA DE ACCIONES O EVENTOS. EJ. PATRONES DE
OCURRENCIA DE EVENTOS VINCULADOS DONDE UNO
DETERMINA AL OTRO.
• PATRONES EN SERIE DE TIEMPO: DETECTAR LAS
SIMILITUDES EN LAS POSICIONES DE SERIE DE TIEMPO.
• CATEGORIZACION Y SEGMENTACION: UN
CONJUNTO DE EVENTOS PUEDE SER SEGMENTADO EN
GRUPOS DE ELEMENTOS SIMILARES. EJ. SERIE DE DATOS
SOBRE ENFERMEDADES QUE PUEDE DIVIDIRSE EN GRUPOS
BASADOS EN SIMILITUD DE EFECTOS SECUNDARIOS.
• VENTAJAS:
• AYUDA A SOPORTAR EL PROCESO DE TOMA DE
DESICIONES
• IDENTIFICACION DE NUEVAS OPORTUNIDADES EN
EL MERCADO
• ESTRUCTURAS CORPORATIVAS FLEXIBLES:
DISTINTOS DEPARTAMENTOS EN UNA ORGANIZACION
COMPARTEN LA MISMA INFORMACION
• GENERACION DE INFORMES CRITICOS SIN COSTO
DE TIEMPO
• FORMATO DE DATOS CONSISTENTE
• SERVIR DE PLATAFORMA EFECTIVA DE MEZCLADO
DE DATOS DESDE VARIAS APLICACIONES CORRIENTES.
• REDUCCION DE COSTOS GLOBALES PARA LA
ORGANIZACION.
 DATA MARTS
• SATISFACEN NECESIDADES ESPECIFICAS DE UN AREA,
PUEDE SER UN SUBCONJUNTO DE UN DW
• PUEDEN COEXISTIR VARIOS DM DENTRO DE UNA
EMPRESA, CADA AREA DE LA MISMA PUEDE TENER UNO.
 DATA WAREHOUSE
• UNA BD QUE CONTIENE LOS DATOS HISTORICOS
PRODUCIDOS POR LOS SISTEMAS INFORMATICOS DE LAS
EMPRESAS.
• SON DATOS ADMINISTRADOS QUE ESTAN SITUADOS
FUERA Y DESPUES DE LOS SISTEMAS OPERACIONALES.
• SE REMITE AL ADECUADO MANEJO DE LA INFORMACION
HISTORICA GENERADA POR UNA ORGANIZACION A FIN QUE ESTA
PUEDA OTORGARLE A SUS EJECUTIVOS LAS HERRAMIENTAS
ADECUADAS PARA EL PROCESO DE TOMA DE DESICIONES.
• DW, UN TEMA DE NEGOCIOS
• CUANDO LAS NECESIDADES DEL MERCADO Y LOS
PROGRESOS TECNOLOGICOS CONVEGEN, SE DAN LOS
CAMBIOS MAS IMPORTANTES EN LAS PRACTICAS DE
NEGOCIO.
• ANTECEDENTES
• EVOLUCION DE LAS CLASES DE
APLICACIONES EN LAS ORGANIZACIONES
• EVOLUCION DE LA TECNOLOGIA DE SOFT Y
HARD
• CAMBIOS EN LA NATURALIZA DE LOS
NEGOCIOS (GLOBALIZACION)
• CASOS QUE SE PRESENTAN
• TENEMOS MONTAÑAS DE DATOS PERO NO
TENEMOS ACCESOS A ELLOS
• TODOS SABEN QUE ALGUNOS DATOS NO
SON CONFIABLES
• SOOLO MOSTRAR LO QUE ES IMPORTANTE.
• NADA ENLOQUECE MAS A LOS GERENTES QUE DOS
PERSONAS PRESENTANDO EL MISMO RESULTADO DE
NEGOCIOS PERO CON NUMEROS DISTINTOS.
• OBJETIVOS:
• BRINDAR ACCESO A LOS DATOS (EFICIENTE, FACIL,
CONSISTENTE, CONFIABLE)
• BRINDAR SOPORTE A LA TOMA DE DESICIONES,
POR EJEMPLO PERMITIENDO REALIZAR PREDICCIONES DE
OPERACIONES FUTURAS DE UN MODO RACIONAL.
• ENCONTRAR RELACIONES ENTRE LOS DATOS
PRODUCIDOS POR DIFERENTES AREAS, DETERMINANDO
PATRONES QUE PERMITAN PREDECIR FUTUROS SUCESOS.
• IDENTIFICAR NUEVAS OPORTUNIDADES DE
NEGOCIO.
• MONITOREAR LAS OPERACIONES ACTUALES DE
NEGOCIO Y COMPARARLAS CON LAS OPERACIONES
EFECTUADAS PREVIAMENTE.
• AUMENTO DE LA PRODUCTIVIDAD
• POSIBILIDAD DE SEPARAR Y COMBINAR LOS DATOS
POR MEDIO DE TODA POSIBLE MEDIDA EN EL NEGOCIO.
POR EJEMPLO PARA ANALISIS DEL PROBLEMA EN TERMINOS
DE DIMENSIONES
• REDUCCION DE LOS COSTOS DE GESTION DE
INFORMACION.
• SI EL DW NO LOGRA TRANSFORMAR LOS DATOS EN
INFORMACION PARA HACERLA ACCESIBLE A LOS USUARIOS EN UN
TIEMPO LO SUFICIENTEMENTE RAPIDO COMO PARA MARCAR UNA
DIFERENCIA, NO SIRVE.

. MUNDO OPERACIONAL MUNDO ANALITICO DW


TRANSACCIONAL

EN CUANTO MANTIENEN LA EMPRESA BRINDAN LO NECESARIO


A OBJETIVOS EN OPERACION. ABMC, PARA EL PLANEAMIENTO Y
DISEÑO DE BD Y TOMA DE DESICIONES.
PROCESOS SOLO MODELO DE DATOS.

EN CUANTO NECESIDAD DE
A NECESIDAD DE FLEXIBILIDAD Y ALCANCE
REQUISITOS PERFORMANCE AMPLIO

EN CUANTO SON PARA PROPOSITO SON PARA PROPOSITO


A DATOS OPERACIONAL, DATOS ANALITICO, DATOS NO
ALMACENAD VOLATILES, SE VOLATILES, PUEDEN
OS MODIFICAN, CONTIENEN MANTENERSE POR TIEMPO
DATOS DE PERIODOS INDEFINIDO. NO IMPLICA
ACOTADOS DE TIEMPO MAS COSTO. LOS DATOS
POR CUESTIONES DE SE HALLAN EXPRESADOS
PERFORMANCE EN TERMINOS SIMPLES DE
LOS DATOS ESTAN NEGOCIO
ENCRIPTADOS POR
RESTRICCIONES DEL
LENGUAJE O BD
(NORMALIZACIONES)

EN CUANTO LOS DATOS GIRAN LOS DATOS GIRAN


A LOS DATOS ALREDEDOR DE ALREDEDOR DE LOS
QUE APLICACIONES Y SUJETOS DE LA EMPRESA,
ALMACENAN PROCESOS ESTAN FUERTEMENTE
NO SIEMPRE ESTAN INTEGRADOS PARA QUE EL
INTEGRADOS AUNQUE ANALISIS TENGA SENTIDO.
DEBERIAN. LOS DATOS LOS DATOS PUEDEN NO
DEBERIAN ESTAR ESTAR NORMALIZADOS, ES
NORMALIZADOS. CONVENIENTE. TODA
GENERALMENTE NO HAY ESTRUCTURA CLAVE
NECESIDAD DE HACER CONTIENE UN ELEMENTO
REFERENCIA AL TIEMPO DE TIEMPO. PUEDE TENER
EN LAS ESTRUCTURAS DATOS EXTERNOS
CLAVE (MERCADO, TENDENCIA)

EN CUANTO LAS TRANSACCIONES TRANSACCIONES DIFICILES


A ESTAN PREDEFINIDAS. DE PREDECIR, NUNCA SE
OPERACIONE TIENEN USO HABITUAL, SABE QUE SE PEDIRA.
SY OPERACIONES: ABM. OPERACIONES: CARGA
TRANSACCIO QUERYS TRADICIONALES: INICIAL Y ACCESO A DATOS
NES SQL (NO MODIFICACIONES).
ANALISIS MULTIMEDIAL
PARA CONSULTAS.
• ALGUNAS DEFINICIONES:
• ES UN AMBIENTE ESTRUCTURADO Y EXTENSIBLE
DISEÑADO PARA EL ANALISIS DE DATOS NO VOLATILES,
TRANSFORMADOS LOGICA YY FISICAMENTE DESDE VARIAS
APLICACIONES FUENTES PARA ALINEARSE CON LA
ESTRUCTURA DE NEGOCIO, ACTUALIZANDO Y
MANTENIENDO POR UN PERIODO DE TIEMPO LARGO,
EXPRESANDO EN TERMINOS DE NEGOCIO SIMPLES Y
RESUMIDO PARA UN ANALISIS RAPIDO.
• ES UNA COLECCION DE DATOS ORIENTADA A SUJETOS,
INTEGRADA, VARIANTE EN EL TIEMPO, NO VOLATIL PARA
SOPORTAR EL PROCESO DE TOMA DE DESICIONES.
• ES UN PROCESO Y NO UN PRODUCTO. ES UNA TECNICA DE
ENSAMBLAR Y GESTIONAR ADECUADAMENTE LOS DATOS
PROCEDENTES DE DISTINTAS FUENTES CON EL OBJETO DE
TENER UNA VISION UNICA DE LOS MISMOS PARA TODA LA
EMPRESA.
• COMPONENTES:
• BD DE DATOS FUENTES (PRODUCCION)
• BD CON DATOS RESUMIDOS (DW)
• INTERFASES DE ACCESO (CONSULTAS, REPORTES,
ANALISIS MULTIMEDIAL, DATAMINING)
• ELEMENTOS QUE PARTICIPAN EN LA CONSTRUCCION DE UN
DW
• RECURSOS HUMANOS
• METODOLOGIAS DE TRABAJO
• HERRAMIENTAS DE HARDWARE Y SOFTWARE
• INFRAESTRUCTURA DE LA ORGANIZACION EN GENERAL.
• ETAPAS DE DISEÑO DE UN DW
• ANALISIS
• NECESIDADES CLARAS, SIN ABIGUEDADES,, DE LA
ORGANIZACION QUE JUSTIFICAN LA CREACION
• AREAS INVOLUCRADAS Y EL PERSONAL
INTERVINIENTE
• EVALUACION DE HERRAMIENTAS Y ARQUITECTURA
TECNOLOGICA.
• DISEÑO DEL MODELO DE DATOS
• CADA AREA PUEDE MANIPULAR LA INFORMACION DE
MANERA DIFERENTE Y CON EQUIPAMIENTO DIFERENTE.
• SE DEBEN COMPATIBILIZAR LOS MODELOS DE CADA
AREA
• SELECCION Y EXTRACCION DE DATOS
• INFORMACION TRANSACCIONAL (INDICA
OPERATIVIDAD) -> NO SE INCLUYE
• ACTUALIZACION DE DATOS VS EXTRACCION
• PERFORMANCE CAE SI SE COMPITE CON
TRANSACCIONES EN LINEA
• CREACION DE VISTAS (ESPACIO ADICIONAL VS
MEJOR TIEMPO DE ACCESO)
• LIMPIEZA Y TRANSFORMACION
• CALIDAD DE DATOS DE FUENTES DIFERENTES -> SE
REALIZA UN MUESTREO DE VERIFICACION
• TECNICAS DE LIMPIEZA (ERRORES INHERENTES EN
LOS SISTEMA SE "LIMPIAN" AL TRANSFORMAR,
ERRORES DE VALIDACION DE DOMINIOS, TIPEOS
INCORRECTOS DIFICILES DE DETECTAR Y CORREGIR.
• DATA SCRUBBING: PROCESO DE FILTRADO,
DECODIFICACION Y TRADUCCION DE DATOS FUENTES
PARA CREAR DATOS VALIDADOS.
• HOMOGENIZAR TIPOS DE DATOS
• VALORES POR DEFECTO INTELIGENTES
• PERIODOS DE TIEMPO COMPLETOS
• CREACION DE METADATOS:
• PROVEEN INFORMACION SOBRE LOS DATOS A
ALMACENAR EN EL DW
• INCLUYEN DOMINIOS, REGLAS DE VALIDACION, DE
DERIVACION.
• CARGA:
• PREPROCESAMIENTO ADICIONAL (CHEQUEOS DE
RESTRICCIONES DE INTEGRIDAD, CLASIFICACIONES,
ETC)
• SE AGREGAN CHECKPOINTS (ANTE UNA FALLA SE
COMIENZA DESDE EL ULTIMO CHECKPOINT)
• DEBIDO A LA CANTIDAD DE INFORMACION A
TRANSFERIR, SE DEBERIA PODER PARALELIZAR LA
CARGA.
• ACTUALIZACION:
• ESTABLECER LA PREIORICIDAD
• CUMPLIMIENTO DE ETAPAS DEFINIDAS CON LOS
NUEVOS DATOS A AGREGAR AL DW
DATA MARS DATA WAREHOUSE

ENFOCADO A UNA SOLA AREA CONTIENE INFORMACION DE


TODA LA ORGANIZACION

MENOR COSTO MAYOR COSTO


PUEDEN EXISTIR MAS DE UN DM EXISTE SOLO UNO EN TODA LA
ORGANIZACION

FACIL DE ENTENDER Y ACCEDER MAS COMPLEJO

MEJOR TIEMPO DE ACCESO Y MENOR PERFORMANCE


RESPUESTA

A MAYOR NUMERO DE DM, NO EXISTE DUPLICACION DE


ADMINISTRACION MAS COSTOSA DATOS.

CONCLUSIONES:
• LA NECESIDAD DE SISTEMAS DE INFORMACION QUE PERMITAN
GENERAR CONSULTAS, REPORTES Y ANALISIS PARA LA TOMA DE
DECISIONES ES CADA DIA MAS APREMIANTE PARA LAS EMPRESAS QUE
QUIEREN COMPETIR EXITOSAMENTE EN EL MERCADO
• LA IMPLANTACION DE UN DW SURGE COMO LA SOLUCION A LAS
NECESIDADES ANTES MENCIONADAS
• NO SIEMPRE EN LAS ORGANIZACIONES EXISTE UNA CONCIENCIA
REAL DE LA POTENCIALIDAD QUE TIENE ENCUBIERTA EN LOS DATOS
TRANSACCIONALES GENERADOS COTIDIANAMENTE.
• SE DEBE TENER EN CUENTA QUE UN DW NO ES UN PRODUCTO
QUE SE COMPRA, DEBE SER PLANIFICADO CUIDADOSAMENTE DE
ACUERDO A CADA ORGANIZACION Y CONSTRUIDO A TAL EFECTO.
• LAS ORGANIZACIONES DE TECNOLOGIA INFORMATICA PUEDEN O
NO TENER TODAS LAS CUALIDADES TECNICAS NECESARIAS, PERO NO
IMPLEMENTARAN UN PROYECTO DE DW EXITOSO SIN QUE LOGREN
QUE LA UNIDAD DE NEGOCIOS SE INVOLUCRE.
• CUANDO SE DISEÑA UN DW HAY QUE TENER EN LARO QUE SE
ESTA CONVIRTIENDO LA INFORMACION GENERADA EN FORMA
COTIDIANA EN CONOCIMIENTO PARA LA ORGANIZACION.
• PENSAR EN UN DW COMO UNA SIMPLE LIBERACION DE LOS
DATOS CORPORATIVOS SERIA UN ERROR, EL VALOR REAL DE UN DW
RECIEN SE DESCUBRE CUANDO LO UTILIZA ALGUIEN QUE PUEDE
ENCONTRAR DETALLES IMPORTANTES EN LOS DATOS Y MARCAR LAS
DIFERENCIAS.

• BASES DE DATOS ESPACIALES (GIS)


 SE EMPLEAN PARA RECOGER, MODELAR ,ALMACENAR Y ANALIZAR
INFORMACION QUE DESCRIBE LAS PROPIEDADES FISICAS DEL MUNDO
GEOGRAFICO.
 ABARCA DOS TIPOS DE DATOS:
• DATOS ESPACIALES (MAPAS, IMAGENES DIGITALES, FRONTERAS,
CARRETERAS, ETC)
• DATOS NO ESPACIALES (CENSOS, DATOS ECONOMICOS, ETC)
 TRES CATEGORIAS DE GIS
• APLICACIONES CARTOGRAFICAS
• POR EJEMPLO DE RIEGO, ANALISIS DEL REDINIEMTO DE
COSECHAS, PLANIFICACION Y GESTION DE INSTALACIONES,
ESTUDIOS DEL PISAJE, ANALISIS DE ESTRUCTURA DE
TRAFICO.
• APLICACIONES DE MODELADO DIGITAL DE TERRENOS
• EJEMPLO, EVALUACION DE INGENIERIA CIVIL Y MILITAR,
ANALISIS DE SUELO, CONTROL DE INUNDACIONES, ETC.
• APLICACIONES DE OBJETOS CARTOGRAFICOS
• SISTEMAS DE NAVEGACION, ANALISIS DEL MERCADO
GEOGRAFICO, ANALISIS ECONOMICO DE PRODUCTOS Y
SERVICIOS PARA EL CONSUMIDOR.
• BASES DE DATOS MULTIMEDIA.
 ALMACENAN DATOS DE IMAGEN, SONIDO Y VIDEO
 LA BD DEBE PERMITIR OBJETOS GRANDES, DADO QUE LOS
VIDEOS PUEDEN OCUPAR GB
 EN CIERTAS APLICACIONES, SE REQUIERE RECUPERACION
BASADA EN LA SEMEJANZA.
• EJ, EN UNA BD QUE ALMACENE HUELLAS DACTILARES SE
PROPORCIONE LA IMAGEN DE UNA HUELLA DIGITAL PARA
CONSULTA Y QUE SE DEBAN RECUPERAR LAS HUELLAS
PARECIDAS (NO UTILIZA LOS INDICES TRADICIONALES)
 LA RECUPERACIN DE ALGUNOS TIPOS DE DATOS (EJ SONIDO Y
VIDEO, DATOS DE MEDIOS CONTINUOS) DEBE SER A VELOCIDAD
CONSTANTE.
• BASES DE DATOS PORTATILES: BD DE LA NUEVA GENERACION DE
SISTEMAS INFORMATICOS PORTATILES, COMO LAS COMPUTADORAS
PORTATILES, CONECTADAS A LAS ESTACIONES BASE MEDIANTE REDES DE
COMUNICACIONES DIGITALES DE RADIO. LA CAPACIDAD DE
ALMACENAMIENTO ES LIMITADA Y NECESITAN OPERAR MIENTRAS ESTEN
DESCONECTADAS DE LA RED.
• RECUPERACION DE LA INFORMACION: EN PARALELO CON EL
CRECIMIENTO DE SISTEMAS DE BD, LOS SI HAN CRECIDO TAMBIEN, ESTE
ASPECTO TIENE QUE VER BASICAMENTE CON LA RECUPERACION DE
INFORMACION TEXTUAL (TIPO ISIS, UTILIZA BD TEXTUALES)
• RECUPERACION DE LA INFORMACION DISTRIBUIDA (USANDO INTERNET)
ARQUITECTURAS DE SISTEMAS DE BD
INTRODUCCION:
• LA CONEXION EN RED DE VARIAS COMPUTADORAS PERMITE QUE
ALGUNAS TAREAS SE EJECUTEN ENEL SERVIDOR Y OTRAS EN LOS CLIENTES,
ES DECIR, SISTEMAS DE BASE DE DATOS CLIENTE-SERVIDOR.
• LA NECESIDAD DE PROCESAMIENTO PARALELO DE CONSULTAS HA
CONDUCIDO AL DESARROLLO DE LOS SISTEMAS DE BD PARALELOS
• PARA ADMINISTRAR DATOS DISTRIBUIDOS GEOGRAFICAMENTE O
ADMINISTRATIVAMENTE, SE HAN DESARROLLADO SISTEMAS DE BD
DISTRIBUIDOS.
SISTEMAS CENTRALIZADOS
• SE EJECUTAN EN UNA SOLA COMPUTADORA SIN INTERACTUAR CON
OTROS SISTEMAS
• SISTEMAS DE COMPUTO DE PROPOSITO GENERAL, ALGUNAS CPU Y UN
NUMERO DE DISPOSITIVOS QUE ESTAN CONECTADOS A TRAVEZ DE UN BUS
COMUN QUE PROVEEN ACCESO A MEMORIA COMPARTIDA.
• SISTEMAS MONOUSUARIO: UN UNICO USUARIO CON SO QUE PERMITE
SOLO UN USUARIO
• SISTEMAS MULTIUSUARIO: VARIOS USUARIOS A LA VEZ USANDO
TERMINALES (SISTEMAS MAINFRAMES)
• NO TIENEN CONTROL DE CONCURRENCIA
• LAS FACILIDADES DE RECUPERACIONEN ESTOS SISTEMAS NO ADMITEN O
NO USAN SQL, PROPORCIONAN UN LENGUAJE DE CONSULTA MUY SIMPLE
SISTEMAS CLIENTE/SERVIDOR:
• SERVIDORES SATISFACEN REQUERIMIENTOS GENERADOS POR LOS
CLIENTES
• FUNCIONALIDAD DE BD DIVIDIDA EN :
• BACKEND: MANEJA ACCESO A ESTRUCTURAS, EVALUACION Y
OPTIMIZACION DE CONSULTAS, CONTROL DE CONCURRENCIA Y
RECUPERACION (SISTEMA SUBYACENTE)
• FRONTEND: CONSISTE DE HERRAMIENTAS COMO FORMULARIOS
GENERADOS DE REPORTES, INTERFACES, ETC
• LA INTERFACE ENTRE AMBAS SE LOGRA CON SQL O CON UNA
APLICACION
VENTAJAS DE REEMPLAZAR MAINFRAMES CON REDES DE WORKSTATIONS O PC:
• MEJOR FUNCIONALIDAD POR EL COSTO
• FLEXIBILIDAD EN LA UBICACION DE RECURSOS Y FACILIDADES EN LA
EXPANSION
• MEJORES INTERFACES DE USUARIO
• FACILIDAD DE MANTENIMIENTO.
SERVIDORES PUEDEN SER CATEGORIZADOS EN DOS GRUPOS
• SERVERS DE TRANSACCION: UTILIZADOS EN SISTEMAS RELACIONALES
• LOS CLIENTES ENVIAN REQUERIMIENTOS AL SERVIDOR DONDE SE
EJECUTAN LAS TRANSACCIONES Y LOS RESULTADOS SE ENVIAN
NUEVAMENTE AL CLIENTE.
• LOS REQUERIMIENTOS SE HACEN EN SQL Y SE COMUNICAN VIA
RPC
• ODBC (OPEN DATA BASE CONECTIVITY) ES LA API ESTANDAR DE
MICROSOFT PARA LA CONECCION DE SERVERS, ENVIO DE PEDIDOS SQL
Y RECEPCION DE RESULTADOS.
• SERVERS DE DATOS: USADOS POR EJEMPLO EN SISTEMAS DE BB OO
• USADAS EN LAN CON CONEXIONES MUY RAPIDAS ENTRE
CLIENTES Y SERVIDORES
• LAS MAQUINAS CLIENTES SON COMPARABLES AL SERVIDOR EN
CUANTO A PODER DE PROCESAMIENTO Y EJECUTAN TAREAS DE
COMPUTO INTENSIVO.
• SE ENVIAN LOS DATOS AL CLIENTE Y ES ESTE EL QUE REALIZA LA
OPERACION, LUEGO ENVIA NUEVAMENTE LOS RESULTADOS AL
SERVIDOR.
• SE REQUIERE FUNCIONALIDAD BACKEND COMPLETA EN LOS
CLIENTES
SISTEMAS PARALELOS
Ο MEJORAN LA VELOCIDAD DE PROCESAMIENTO Y E/S MEDIANTE LA
UTILIZACION DE CPU Y DISCOS EN PARALELO.
Ο MULTIPLES PROCESADORES Y MULTIPLES DISCOS CONECTADOS A
TRAVEZ DE UNA RED DE ALTA VELOCIDAD.
Ο SE UTILIZAN EN APLICACIONES QUE HAN DE MANEJAR BD MUY
GRANDES DEL ORDEN DE TERABYTES O QUE TIENEN QUE PROCESAR MILES
DE TRANSACCIONES POR SEGUNDO (LOS SISTEMAS CENTRALIZADOS O
CLIENTES-SERVIDOR NO LO SOPORTAN).
Ο DOS CONCEPTOS: MAQUINAS PARALELAS
• DE GRANO GRUESO: UN PEQUEÑO NUMERO DE PROCESADORES
POTENTES
• DE GRANO FINO: UN GRAN NUMERO PROCESADORES PEQUEÑOS
(SOPORTAN MAYOR GRADO DE PARALELISMO)
Ο DOS CONCEPTOS PARA MEDIR PERFORMANCE
• THROUGHPUT, PRODUCTIVIDAD: NUMERO DE TAREAS QUE
PUEDEN SER COMPLETADAS EN UN INTERVALO DE TIEMPO.
• TIEMPO DE RESPUESTA: EN CONTESTAR UNA TAREA
SISTEMAS DISTRIBUIDOS
Ο LOS DATOS SE UBICAN EN MULTIPLES MAQUINAS (SITIO O NODOS)
Ο UNA RED DE ALTA VELOCIDAD INTERCONECTA LAS MAQUINAS
Ο LOS DATOS SON COMPARTIDOS POR USUARIO Y MULTIPLES MAQUINAS
• TRANSACCIONES DE DOS TIPOS
O LOCALES: SOLO ACCEDEN A DATOS DE SU PROPIO NODO
O GLOBALES: ACCEDEN A DATOS DE OTRAS LOCALIDADES/NODOS.
• COMPROMISOS;
O COMPARTIR DATOS, SE DEBE PODER ACCEDER A LOS DATOS DE
CUALQUIER NODO
O AUTONOMIA: CADA SITIO TIENE EL CONTROL DE SU INFORMACION
O DISPONIBILIDAD: LOS DATOS PUEDEN SER REPLICADOS EN VARIOS
LUGARES Y EL SISTEMA PUEDE FUNCIONAR AUN SI UN SITIO FALLA.
• DESVENTAJAS:
O COSTO DE DESARROLLO DEL SOFTWARE (COMPLEJIDAD INHERENTE A
GARANTIZAR LA COORDINACION ENTRE NODOS)
O MAYOR POSIBIIDAD DE BUGS
O MAYOR SOBRECARGA DE PROCESAMIENTO
O MAS VULNERABLE.
• SISTEMAS DISTRIBUIDOS VS SISTEMAS PARALELOS
O PROCESADORES POCO ACOPLADOS
O NO COMPARTEN COMPONENTES FISICOS
O INDEPENDENCIA DE DB DE CADA NODO O LOCALIDAD.
• ALMACENAMIENTO DE DATOS DISTRIBUIDO
O REPLICACION
• DISPONIBILIDAD (ASPECTO POSITIVO)
• AUMENTO DE PARALELISMO EN CONSULTAS (ASPECTO POSITIVO
• AUMENTO DE LA SOBRECARGA EN ACTUALIZACIONES (ASPECTO
NEGATIVO)
• DISEÑO DE BDD, REGLAS DE DATE
O AUTONOMIA LOCAL:
• LOS NODOS O LOCALIDADES DEBEN SER INDEPENDIENTES ENTRE
ELLOS.
• CARACTERISTICAS:
 TIENEN SU PROPIO DBMS
 DBMS CONTROLA TODOS LOS ASPECTOS LIGADOS A EL
 LAS OPERACIONES DE ACCESO A DATOS LOCALES
UTILIZAN SOLO RECURSOS LOCALES.
 HAY COOPERACION ENTRE LOS NODOS PARA EL ACCESO
DISTRIBUIDO DE DATOS.
O NO ES NECESARIO UN SITIO CENTRAL
• TODOS LOS SITIOS DEBBEN SER TRATADOS COMOIGUALES
• DE EXISTIR UN SITIO CENTRAL, SERIA CUELLO DE BOTELLA
• DE EXISTIR UN SITIO CENTRAL, EL SISTEMA SERIA VULNERABLE,
PORQUE UNA FALLA HARIA FALLAR TODO EL SISTEMA
• PARA EL PROTOCOLO DE COMMIT DE DOS FASES SE NECESITA
SITIO CENTRAL, PERO SOLO DURANTE LA EJECUCION DE UNA
TRANSACCION.
O OPERACION CONTINUA
• UN SISTEMA DE BDD NO REQUIERE ESTAR NUNCA FUERA DE
SERVICIO
• DEBE PROPORCIONAR MAYOR CONFIABILIDAD Y MAYOR
DISPONIBILIDAD
• SE REQUIERE
 SOPORTE PARA BACKUPS ONLINE TOTAL O INCREMENTAL
 SOPORTE PARA RECUPERACIONES RAPIDAS DE BD
 SOPORTE DE DBMS TOLERANTE A FALLOS
O INDEPENDENCIA DE UBICACION DE DATOS:
• LOS USUARIOS Y LAS APLICACIONES NO TIENEN QUE CONOCER
LA UBICACION FISICA DE LOS DATOS. ACTUAN COMO SI FUESEN
LOCALES A ELLOS
• SIN TRANSPARENCIA LOCAL DEBERIAN DISTINGUIRSE LOS DATOS
LOCALES COMO DE LOS REMOTOS.
• SIMPLIFICA LOS PROGRAMAS DE USUARIO.
• PUNTO CRITICO: DICCIONARIO DE DATOS
 USUARIOS Y APLICACIONES SE REFIEREN A LOS DATOS
MEDIANTE ALIAS.
 EL DICCIONARIO DEBE MANTENER UNA TABLA CON LOS
ELEMENTOS DE DATOS, SUS ALIAS Y SUS UBICACIONES
 UN DDBMS DEBE MANTENER Y UTILIZAR EL DICCIONARIO,
AUN CUANDO LOS DATOS SE MUEVEN ENTRE LOCALIDADES
 EL DICCIONARIO DEBE ESTAR REPLICADO EN LAS
LOCALIDADES Y LAS REPLICAS DEBEN MANTENERSE
ACTUALIZADAS.
O INDEPENDENCIA DE FRAGMENTACION DE DATOS:
• FRAGMENTACION:
 HORIZONTAL A NIVEL FILA
 VERTICAL A NIVEL COLUMNA
 MIXTA
• LA FRAGMENTACION ES NECESARIA POR RAZONES DE
RENDIMIENTO
• LOS USUARIOS DEBEN COMPORTARSE COMO SI LOS DATOS NO
ESTUVIERAN FRAGMENTADOS.
• LOS DATOS PUEDEN ESTAR ALMACENADOS EN LA UBICACION
DONDE SON USADOS MAS FRECUENTEMENTE PARA QUE LA MAYORIA DE
LAS OPERACIONES SEAN LOCALES Y SE REDUZCA EL TRAFICO DE LA
RED.
O INDEPENDENCIA DE LA REPLICACION DE DAOTS
• MEJOR RENDIMIENTO: LAS APLICACIONES OPERAN SOBRE COPIAS
LOCALES EN VEZ DE COMUNICARSE CON SITIOS REMOTOS.
• MEJOR DISPONIBILIDAD: UN OBJETO REPLICADO ESTA DISPONIBLE
MIENTRAS HAYA AL MENOS UNA COPIA
• DESVENTAJA: PROPAGAR LAS ACTUALIZACIONES.
• EL USUARIO DEBE COMPORTARSE COMO SI LOS DATOS NO
ESTUVIERAN REPLICADOS.
O PROCESAMIENTO DE CONSULTAS DISTRIBUIDAS
• LA PERFORMANCE DE UNA CONSULTA DEBE SER INDEPENDIENTE
DEL SITIO DONDE SE REALIZA LA CONSULTA
• SE DEBE MAXIMIZAR LA OPTIMIZACION DE CONSULTAS.
O ADMINISTRACION DE TRANSACCIONES DISTRIBUIDAS.
• DEBE MANTENERSE LA ATOMICIDAD DE LAS TRANSACCIONES
• CONTROL DE RECUPERACION DE INFORMACION
• CONTROL DE CONCURRENCIA
• PROTOCOLOS UTILIZADOS PARA PRESERVAR LA ATOMICIDAD:
DOS FASES O TRES FASES MAS CONOCIDOS.
O INDEPENDENCIA DE HARDWARE
• ES NECESARIO TENER LA POSIBILIDAD DE EJECUTAR EL MISMO
DBMS EN DIFERENTES PLATAFORMAS DE HW
O INDEPENDENCIA DEL SO
• ES NECESARIO TENER LA POSIBILIDAD DE EJECUTAR EL MISMO
DBMS EN DIFERENTES SO
O INDEPENDENCIA DE RED
O INDEPENDENCIA DEL DBMS
• TODOS LOS DBMS EN SITIOS DISTINTOS DEBEN SOPORTAR LA
MISMA INTERFACE
• DENOMINACION DE ELEMENTOS
O COMO ASEGURAR NOMBRE UNICOS ENTRE LOCALIDADES
• ASIGNADOR DE NOMBRES CENTRAL
 CONTRADICE LAS REGLAS DE DATE
 CUELLO DE BOTELLA INSEGURIDAD ANTE CAIDAS
• CADA LOCALIDAD AGREGA COMO PREFIJO SU NOMBRE
• PROCESAMIENTO DE CONSULTAS.
O ASPECTOS
• COSTOS DE TRANSMISION DE DATOS POR LA RED
• GANANCIA POTENCIAL ANTE LA POSIBILIDAD DE UTILIZAR
PARALELISMO EN LA CONSULTA.
• EXISTEN DIVERSAS POSIBILIDADES PARA EL DESARROLLO DE LAS
CONSULTAS EN BDD, EL DESARROLLO DE LAS MISMAS DEPENDE DE LA
UBICACION DE LOS DATOS Y DEL TIPO DE CONSULTA
• TRANSACCIONES DISTRIBUIDAS
O EL COORDINADOR ACTUA COMO CENTRO DURANTE LA VIDA DE LA
TRANSACCION
O DEBEN PRESERVAR ACID
O SE COMPLICA CON TRANSACCIONES GLOBALES, EL FALLO PUEDE ESTAR
EN VARIOS LUGARES
o CUANDO UNA TRANSACCION SE GENERA Y SE DETERMINA QUE ES
GLOBAL SE SUBDIVIDE Y CADA COPIA ES GESTIONADA EN CADA LOCALIDAD.
ESTO PRESERVA LA AUTONOMIA.
• ARQUITECTURAS DEL SISTEMA
O GESTOR DE TRANSACCIONES: ENCARGADO LOCAL DE LA TRANSACCION.
PRESERVA LA AUTONOMIA DE CADA LOCALIDAD (UNA TRANSACCION ES
GESTIONADA EN CADA LOCALIDAD POR EL GESTOR DE LA MISMA).
o COORDINADOR DE TRANSACCIONES: COORDINA LA EJECUCION DE LA
TRANSACCION GENERADA LOCALMENTE. ACTUA COMO CENTRO DURANTE LA
VIDA DE LA TRANSACCION.
O RESPONSABILIDAD DEL GESTOR
• CONSERVAR REGISTRO HISTORICO CON FIN DE RECUPERACION
• PARTICIPAR EN EL ESQUEMA DE CONTROL DE CONCURRENCIA DE
LA TRANNSACCION DE ESA LOCALIDAD
O RESPONSABILIDAD DEL COORDINADOR
• INICIAR LA EJECUCION DE LA TRANSACCION
• DIVIDIR LA TRANSACCION EN SUBTRANSACCIONES Y DIVIDIR
ESTAS PARA SU EJECUCION
• COORDINAR LA TERMINACON DE LA TRANSACCION ENTRE TODAS
LAS LOCALIDADES PARTICIPANTES.
O FALLOS DEL SISTEMA
• FALLO DE UNA LOCALIDAD
• PERDIDA DE MENSAJES
• FALLO DEL ENLACE DE COMUNICACIONES
• DIVISION O PARTICIONAMIENTO DE LA RED
O TOPOLOGIAS DE RED
• DIVERSOS TIPOS
• CARACTERISTICAS
 COSTO DE INSTALACION
 COSTO DE COMUNICACIONES
 DISPONIBILIDAD
O ROBUSTEZ: DEBE DETECTAR LOS FALLOS, VOLVER A CONFIGURAR EL
SISTEMA Y RECUPERARSE CUANDO SE REPARE EL ENLACE
• PASOS ANTE UN FALLO
 SI LOCALIDAD TIENE DATOS REPLICADOS, ACTUALIZAR EL
CATALOGO PARA NO ACCEDER A ELLA
 SI HABIA TRANSACCIONES ACTIVAS EN ESA LOCALIDAD,
ABORTARLAS.
 SI LA LOCALIDAD ES UN SERVIDOR CENTRAL DE UNA
TRANSACCION, OBRAR DE ACUERDO AL PROTOCOLO QUE
VEREMOS MAS ADELANTE
O PROTOCOLOS DE COMPROMISO
• ASEGURAN LA ATOMICIDAD DE LAS TRANSACCIONES EN
ENTORNOS DISTRIBUIDOS.
• ALTERNATIVAS:
 DOS FASES
• UN NODO COORDINADOR INICIA EL PROTOCOLO
PARA UNA TRANSACCION. EL RESTO DE LOS NODOS SE
DENOMINAN PARTICIPANTES
• UNA TRANSACCION NO COMPROMETE EN NINGUN
NODO HASTA QUE TODOS LOS PARTICIPANTES ESTAN
PREPARADOS.
• EL COORDINADOR ENVIA UN MENSAGE "PREPARE"
A LOS PARTICIPANTES
• CADA PARTICIPANTE RESPONDE AL COORDINADOR
UN VOTO (+ O -)
• SI EL COORDINADOR RECIBE UN VOTO NEGATIVO,
ABORTA LATRANSACCION Y SE LO COMUNICA A LTODOS LOS
PARTICIPANTES
• SI EL COORDINADOR RECIBE TODOS LOS VOTOS Y
SON POSITIVOS, REGISTRA EL COMPROMISO Y SE LO
COMUNICA A TODOS LOS PARTICIPANTES.
• LOS PARTICIPANTES REGISTRAN LA DECISION, LA
APLICAN Y ENVIAN UN "DONE" AL COORDINADOR
• EL COORDINADOR DA POR FINALIZADA LA
TRANSACCION CUANDO RECIBIO EL "DONE"DE TODOS LOS
PARTICIPANTES.
• FALLOS:
• DESDE EL PUNTO DE VISTA DEL
COORDINADOR:
• AL COORDINADOR NO LE LLEGAN
TODAS LAS RESPUESTAS AL "PREPARE", ABORTA
UNILATERALMENTE LA TRANSACCION
• NO LE LLEGAN LOS MENSAJES DEL
"DONE" LOS SIGUE PIDIENDO POR UN TIEMPO.
• DESDE EL PUNTO DE VISTA DEL
PARTICIPANTE
• NO RECIBE EL PREPARE. ABORTA LA
TRANSACCION. SI DESPUES RECIBE ESTE MENSAGE
CONTESTA NEGATIVAMENTE O LO IGNORA.
• SI NO RECIBE EL RESULTADO LUEGO
DE EMITIR SU VOTO POSITIVO, SE BLOQUEA.
• PRINCIPAL DESVENTAJA: EL COORDINADOR RECIBIO
TODOS LOS VOTOS POSITIVOS Y SE CAE ANTES DE ENVIAR EL
RESULTADO A LOS PARTICIPANTES
 TRES FASES
 OPTIMISTA
 PESIMISTA
 UNA FASE

Vous aimerez peut-être aussi