Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Introducción - Bases de Datos, Apuntes de Informática

Bases de Datos; sistema de recopilación y almacenamiento masivo de datos.

Tipo: Apuntes

Antes del 2010

Subido el 30/11/2023

belen-2ed
belen-2ed 🇪🇨

1 documento

1 / 787

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
FUNDAMENTOS DE BASES DE DATOS
Cuarta edición
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48
pf49
pf4a
pf4b
pf4c
pf4d
pf4e
pf4f
pf50
pf51
pf52
pf53
pf54
pf55
pf56
pf57
pf58
pf59
pf5a
pf5b
pf5c
pf5d
pf5e
pf5f
pf60
pf61
pf62
pf63
pf64

Vista previa parcial del texto

¡Descarga Introducción - Bases de Datos y más Apuntes en PDF de Informática solo en Docsity!

FUNDAMENTOS DE BASES DE DATOS

Cuarta edición

FUNDAMENTOS DE BASES DE DATOS. Cuarta edición

No está permitida la reproducción total o parcial de este libro, ni su tratamiento infor- mático, ni la transmisión de ninguna forma o por cualquier medio, ya sea electrónico, mecánico, por fotocopia, por registro u otros métodos, sin el permiso previo y por escrito de los titulares del Copyright.

DERECHOS RESERVADOS © 2002, respecto a la cuarta edición en español, por McGRAW-HILL/INTERAMERICANA DE ESPAÑA, S. A. U. Edificio Valrealty, 1.aplanta Basauri, 17 28023 Aravaca (Madrid)

Traducido de la cuarta edición en inglés de Database System Concepts

Copyright © MMI, por McGraw-Hill Inc. ISBN: 0-07-228363- ISBN: 84-481-3654- Depósito legal: M.

Editora: Concepción Fernández Madrid Editora de mesa: Susana Santos Prieto Cubierta: DIMA Compuesto en FER Impreso en:

IMPRESO EN ESPAÑA - PRINTED IN SPAIN

En memoria de mi padre, Joseph Silberschatz

y de mis abuelos Stepha y Aaron Resenblum.

Avi Silberschatz

A mi esposa, Joan,

mis hijos, Abigail y Joseph,

y mis padres, Henry y Frances

Hank Korth

A mi esposa, Sita,

mi hijo, Madhur,

y mi madre, Indira.

S. Sudarshan

VII

PREFACIO, XVII

CAPÍTULO 1 INTRODUCCIÓN, 1

PARTE PRIMERA: MODELOS DE DATOS

CAPÍTULO 2 MODELO ENTIDAD-RELACIÓN, 19 CAPÍTULO 3 EL MODELO RELACIONAL, 53

PARTE SEGUNDA: BASES DE DATOS RELACIONALES

CAPÍTULO 4 SQL, 87 CAPÍTULO 5 OTROS LENGUAJES RELACIONALES, 119 CAPÍTULO 6 INTEGRIDAD Y SEGURIDAD, 141 CAPÍTULO 7 DISEÑO DE BASES DE DATOS RELACIONALES, 161

PARTE TERCERA: BASES DE DATOS BASADAS EN OBJETOS Y XML

CAPÍTULO 8 BASES DE DATOS ORIENTADAS A OBJETOS, 193 CAPÍTULO 9 BASES DE DATOS RELACIONALES ORIENTADAS A OBJETOS, 211 CAPÍTULO 10 XML, 227

PARTE CUARTA: ALMACENAMIENTO DE DATOS Y CONSULTAS

CAPÍTULO 11 ALMACENAMIENTO Y ESTRUCTURA DE ARCHIVOS, 249 CAPÍTULO 12 INDEXACIÓN Y ASOCIACIÓN, 283 CAPÍTULO 13 PROCESAMIENTO DE CONSULTAS, 319 CAPÍTULO 14 OPTIMIZACIÓN DE CONSULTAS, 343

PARTE QUINTA: GESTIÓN DE TRANSACCIONES

CAPÍTULO 15 TRANSACCIONES, 367 CAPÍTULO 16 CONTROL DE CONCURRENCIA, 383 CAPÍTULO 17 SISTEMA DE RECUPERACIÓN, 413

PARTE SEXTA: ARQUITECTURA DE LOS SISTEMAS DE BASES DE DATOS

CAPÍTULO 18 ARQUITECTURAS DE LOS SISTEMAS DE BASES DE DATOS, 445 CAPÍTULO 19 BASES DE DATOS DISTRIBUIDAS, 463 CAPÍTULO 20 BASES DE DATOS PARALELAS, 493

PARTE SÉPTIMA: OTROS TEMAS

CAPÍTULO 21 DESARROLLO DE APLICACIONES Y ADMINISTRACIÓN, 511 CAPÍTULO 22 CONSULTAS AVANZADAS Y RECUPERACIÓN DE INFORMACIÓN, 537 CAPÍTULO 23 TIPOS DE DATOS AUTOMÁTICOS Y NUEVAS APLICACIONES, 569 CAPÍTULO 24 PROCESAMIENTO AVANZADO DE TRANSACCIONES, 589 CAPÍTULO 25 ORACLE, 611

PARTE OCTAVA: ESTUDIO DE CASOS

CAPÍTULO 26 DB2 DE IBM, 629 CAPÍTULO 27 SQL SERVER DE MICROSOFT, 645

BIBLIOGRAFÍA, 673 DICCIONARIO BILINGÜE, 695 ÍNDICE, 771

CONTENIDO BREVE

PARTE SEGUNDA: BASES DE DATOS RELACIONALES

XI

PARTE TERCERA: BASES DE DATOS BASADAS EN OBJETOS Y XML
PARTE QUINTA: GESTIÓN DE TRANSACIONES
PARTE SEXTA: ARQUITECTURA DE LOS SISTEMAS DE BASES DE DATOS

XVI

PARTE OCTAVA: ESTUDIO DE CASOS
  • 1.1. APLICACIONES DE LOS SISTEMAS DE BASES DE DATOS, CAPÍTULO 1: INTRODUCCIÓN
  • 1.2. SISTEMAS DE BASES DE DATOS FRENTE A SISTEMAS DE ARCHIVOS,
  • 1.3. VISIÓN DE LOS DATOS,
  • 1.4. MODELOS DE LOS DATOS,
  • 1.5 LENGUAJES DE BASES DE DATOS,
  • 1.6. USUARIOS Y ADMINISTRADORES DE LA BASE DE DATOS,
  • 1.7. GESTIÓN DE TRANSACCIONES,
  • 1.8. ESTRUCTURA DE UN SISTEMA DE BASES DE DATOS,
  • 1.9. ARQUITECTURAS DE APLICACIONES,
  • 1.10. HISTORIA DE LOS SISTEMAS DE BASES DE DATOS,
  • 1.11. RESUMEN,
  • TÉRMINOS DE REPASO,
  • EJERCICIOS,
  • NOTAS BIBLIOGRÁFICAS,
  • HERRAMIENTAS,
    • 2.1. CONCEPTOS BÁSICOS, CAPÍTULO 2: MODELO ENTIDAD-RELACIÓN
    • 2.2. RESTRICCIONES,
    • 2.3. CLAVES,
    • 2.4. CUESTIONES DE DISEÑO,
    • 2.5. DIAGRAMA ENTIDAD-RELACIÓN,
    • 2.6. CONJUNTOS DE ENTIDADES DÉBILES,
    • 2.7. CARACTERÍSTICAS DEL MODELO E-R EXTENDIDO,
    • 2.8. DISEÑO DE UN ESQUEMA DE BASE DE DATOS E-R,
    • 2.9. REDUCCIÓN DE UN ESQUEMA E-R A TABLAS,
  • 2.10. EL LENGUAJE DE MODELADO UNIFICADO UML,
  • 2.11. RESUMEN,
  • TÉRMINOS DE REPASO,
  • EJERCICIOS,
  • NOTAS BIBLIOGRÁFICAS,
  • HERRAMIENTAS,
    • 3.1. LA ESTRUCTURA DE LAS BASES DE DATOS RELACIONALES, CAPÍTULO 3: EL MODELO RELACIONAL
    • 3.2. EL ÁLGEBRA RELACIONAL,
    • 3.3. OPERACIONES DEL ÁLGEBRA RELACIONAL EXTENDIDA,
    • 3.4. MODIFICACIÓN DE LA BASE DE DATOS,
    • 3.5. VISTAS,
    • 3.6. EL CÁLCULO RELACIONAL DE TUPLAS,
    • 3.7. EL CÁLCULO RELACIONAL DE DOMINIOS, X
    • 3.8. RESUMEN,
  • TÉRMINOS DE REPASO,
  • EJERCICIOS,
  • NOTAS BIBLIOGRÁFICAS,
    • 4.1. INTRODUCCIÓN, CAPÍTULO 4: SQL
    • 4.2. ESTRUCTURA BÁSICA,
    • 4.3. OPERACIONES SOBRE CONJUNTOS,
    • 4.4. FUNCIONES DE AGREGACIÓN,
    • 4.5. VALORES NULOS,
    • 4.6. SUBCONSULTAS ANIDADAS,
    • 4.7. VISTAS,
    • 4.8. CONSULTAS COMPLEJAS,
    • 4.9. MODIFICACIÓN DE LA BASE DE DATOS,
  • 4.10. REUNIÓN DE RELACIONES,
  • 4.11. LENGUAJE DE DEFINICIÓN DE DATOS,
  • 4.12. SQL INCORPORADO,
  • 4.13. SQL DINÁMICO,
  • 4.14. OTRAS CARACTERÍSTICAS DE SQL,
  • 4.15. RESUMEN,
  • TÉRMINOS DE REPASO,
  • EJERCICIOS,
  • NOTAS BIBLIOGRÁFICAS,
    • 5.1. QUERY-BY-EXAMPLE, CAPÍTULO 5: OTROS LENGUAJES RELACIONALES
    • 5.2. DATALOG,
    • 5.3. INTERFACES DE USUARIO Y HERRAMIENTAS,
    • 5.4. RESUMEN,
  • TÉRMINOS DE REPASO,
  • EJERCICIOS,
  • NOTAS BIBLIOGRÁFICAS,
  • HERRAMIENTAS,
    • 6.1. RESTRICCIONES DE LOS DOMINIOS, CAPÍTULO 6: INTEGRIDAD Y SEGURIDAD
    • 6.2. INTEGRIDAD REFERENCIAL,
    • 6.3. ASERTOS,
    • 6.4. DISPARADORES,
    • 6.5. SEGURIDAD Y AUTORIZACIÓN,
    • 6.6. AUTORIZACIÓN EN SQL,
    • 6.7. CIFRADO Y AUTENTICACIÓN,
    • 6.8. RESUMEN,
  • TÉRMINOS DE REPASO,
  • EJERCICIOS,
  • NOTAS BIBLIOGRÁFICAS,
    • 7.1. PRIMERA FORMA NORMAL, CAPÍTULO 7: DISEÑO DE BASES DE DATOS RELACIONALES
    • 7.2. DIFICULTADES EN EL DISEÑO DE BASES DE DATOS RELACIONALES,
    • 7.3. DEPENDENCIAS FUNCIONALES,
    • 7.4. DESCOMPOSICIÓN,
    • 7.5. PROPIEDADES DESEABLES DE LA DESCOMPOSICIÓN,
    • 7.6. FORMA NORMAL DE BOYCE-CODD,
    • 7.7. TERCERA FORMA NORMAL,
    • 7.8. CUARTA FORMA NORMAL,
    • 7.9. OTRAS FORMAS NORMALES,
  • 7.10. PROCESO GENERAL DEL DISEÑO DE BASES DE DATOS,
  • 7.11. RESUMEN,
  • TÉRMINOS DE REPASO,
  • EJERCICIOS,
  • NOTAS BIBLIOGRÁFICAS,
    • 8.1. NECESIDADES DE LOS DE TIPOS DE DATOS COMPLEJOS, CAPÍTULO 8: BASES DE DATOS ORIENTADAS A OBJETOS
    • 8.2. EL MODELO DE DATOS ORIENTADO A OBJETOS,
    • 8.3. LENGUAJES ORIENTADOS A OBJETOS,
    • 8.4. LENGUAJES DE PROGRAMACIÓN PERSISTENTE,
    • 8.5. SISTEMAS C++ PERSISTENTES,
    • 8.6. SISTEMAS JAVA PERSISTENTES,
    • 8.7. RESUMEN,
  • TÉRMINOS DE REPASO,
  • EJERCICIOS,
  • NOTAS BIBLIOGRÁFICAS,
    • 9.1. RELACIONES ANIDADAS, CAPÍTULO 9: BASES DE DATOS RELACIONALES ORIENTADAS A OBJETOS
    • 9.2. TIPOS COMPLEJOS,
    • 9.3. HERENCIA,
    • 9.4. TIPOS DE REFERENCIA,
    • 9.5. CONSULTAS CON TIPOS COMPLEJOS,
    • 9.6. FUNCIONES Y PROCEDIMIENTOS,
      • DE DATOS RELACIONALES ORIENTADAS A OBJETOS, 9.7. COMPARACIÓN ENTRE LAS BASES DE DATOS ORIENTADAS A OBJETOS Y LAS BASES
    • 9.8. RESUMEN,
  • TÉRMINOS DE REPASO,
  • EJERCICIOS,
  • NOTAS BIBLIOGRÁFICAS,
  • HERRAMIENTAS,
    • 10.1. ANTECEDENTES, CAPÍTULO 10: XML
    • 10.2. ESTRUCTURA DE LOS DATOS XML,
    • 10.3. ESQUEMA DE LOS DOCUMENTOS XML,
    • 10.4. CONSULTA Y TRANSFORMACIÓN,
    • 10.5. LA INTERFAZ DE PROGRAMACIÓN DE APLICACIONES, XII
    • 10.6. ALMACENAMIENTO DE DATOS XML,
    • 10.7. APLICACIONES XML,
    • 10.8. RESUMEN,
  • TÉRMINOS DE REPASO,
  • EJERCICIOS,
  • NOTAS BIBLIOGRÁFICAS,
  • HERRMIENTAS,
    • 11.1. VISIÓN GENERAL DE LOS MEDIOS FÍSICOS DE ALMACENAMIENTO, CAPÍTULO 11: ALMACENAMIENTO Y ESTRUCTURA DE ARCHIVOS
    • 11.2. DISCOS MAGNÉTICOS,
    • 11.3. RAID,
    • 11.4. ALMACENAMIENTO TERCIARIO,
    • 11.5. ACCESO AL ALMACENAMIENTO,
    • 11.6. ORGANIZACIÓN DE LOS ARCHIVOS,
    • 11.7. ORGANIZACIÓN DE LOS REGISTROS EN ARCHIVOS,
    • 11.8. ALMACENAMIENTO CON DICCIONARIOS DE DATOS,
    • 11.9. ALMACENAMIENTO PARA LAS BASES DE DATOS ORIENTADAS A OBJETOS,
  • 11.10. RESUMEN,
  • TÉRMINOS DE REPASO,
  • EJERCICIOS,
  • NOTAS BIBLIOGRÁFICAS,
    • 12.1. CONCEPTOS BÁSICOS, CAPÍTULO 12: INDEXACIÓN Y ASOCIACIÓN
    • 12.2. ÍNDICES ORDENADOS,
    • 12.3. ARCHIVOS DE ÍNDICES DE ÁRBOL B +,
    • 12.4. ARCHIVOS CON ÍNDICES DE ÁRBOL B,
    • 12.5. ASOCIACIÓN ESTÁTICA,
    • 12.6. ASOCIACIÓN DINÁMICA,
    • 12.7. COMPARACIÓN DE LA INDEXACIÓN ORDENADA Y LA ASOCIACIÓN,
    • 12.8. DEFINICIÓN DE ÍNDICES EN SQL,
    • 12.9. ACCESOS MULTICLAVE,
  • 12.10. RESUMEN,
  • TÉRMINOS DE REPASO,
  • EJERCICIOS,
  • NOTAS BIBLIOGRÁFICAS,
    • 13.1. VISIÓN GENERAL, CAPÍTULO 13: PROCESAMIENTO DE CONSULTAS
    • 13.2. MEDIDAS DEL COSTE DE UNA CONSULTA,
    • 13.3. OPERACIÓN SELECCIÓN,
    • 13.4. ORDENACIÓN,
    • 13.5. OPERACIÓN REUNIÓN,
    • 13.6. OTRAS OPERACIONES,
    • 13.7. EVALUACIÓN DE EXPRESIONES,
    • 13.8. RESUMEN,
  • TÉRMINOS DE REPASO, XIII
  • EJERCICIOS,
  • NOTAS BIBLIOGRÁFICAS,
    • 14.1. VISIÓN GENERAL, CAPÍTULO 14: OPTIMIZACIÓN DE CONSULTAS
    • 14.2. ESTIMACIÓN DE LAS ESTADÍSTICAS DE LOS RESULTADOS DE LAS EXPRESIONES,
    • 14.3. TRANSFORMACIÓN DE EXPRESIONES RELACIONALES,
    • 14.4. ELECCIÓN DE LOS PLANES DE EVALUACIÓN,
    • 14.5. VISTAS MATERIALIZADAS,
    • 14.6. RESUMEN,
  • TÉRMINOS DE REPASO,
  • EJERCICIOS,
  • NOTAS BIBLIOGRÁFICAS,
    • 15.1. CONCEPTO DE TRANSACCIÓN, CAPÍTULO 15: TRANSACCIONES
    • 15.2. ESTADOS DE UNA TRANSACCIÓN,
    • 15.3. IMPLEMENTACIÓN DE LA ATOMICIDAD Y LA DURABILIDAD,
    • 15.4. EJECUCIONES CONCURRENTES,
    • 15.5. SECUENCIALIDAD,
    • 15.6. RECUPERABILIDAD,
    • 15.7. IMPLEMENTACIÓN DEL AISLAMIENTO,
    • 15.8. DEFINICIÓN DE TRANSACCIONES EN SQL,
    • 15.9. COMPROBACIÓN DE LA SECUENCIALIDAD,
  • 15.10. RESUMEN,
  • TÉRMINOS DE REPASO,
  • EJERCICIOS,
  • NOTAS BIBLIOGRÁFICAS,
    • 16.1. PROTOCOLOS BASADOS EN EL BLOQUEO, CAPÍTULO 16: CONTROL DE CONCURRENCIA
    • 16.2. PROTOCOLOS BASADOS EN MARCAS TEMPORALES,
    • 16.3. PROTOCOLOS BASADOS EN VALIDACIÓN,
    • 16.4. GRANULARIDAD MÚLTIPLE,
    • 16.5. ESQUEMAS MULTIVERSIÓN,
    • 16.6. TRATAMIENTO DE INTERBLOQUEOS,
    • 16.7. OPERACIONES PARA INSERTAR Y BORRAR,
    • 16.8. NIVELES DÉBILES DE CONSISTENCIA,
    • 16.9. CONCURRENCIA EN ESTRUCTURAS DE ÍNDICE,
  • 16.10. RESUMEN,
  • TÉRMINOS DE REPASO,
  • EJERCICIOS,
  • NOTAS BIBLIOGRÁFICAS,
    • 17.1. CLASIFICACIÓN DE LOS FALLOS, CAPÍTULO 17: SISTEMA DE RECUPERACIÓN
    • 17.2. ESTRUCTURA DEL ALMACENAMIENTO,
    • 17.3. RECUPERACIÓN Y ATOMICIDAD,
    • 17.4. RECUPERACIÓN BASADA EN EL REGISTRO HISTÓRICO, XIV
    • 17.5. PAGINACIÓN EN LA SOMBRA,
    • 17.6. TRANSACCIONES CONCURRENTES Y RECUPERACIÓN,
    • 17.7. GESTIÓN DE LA MEMORIA INTERMEDIA,
    • 17.8. FALLO CON PÉRDIDA DE ALMACENAMIENTO NO VOLÁTIL,
    • 17.9. TÉCNICAS AVANZADAS DE RECUPERACIÓN,
  • 17.10. SISTEMAS REMOTOS DE COPIAS DE SEGURIDAD,
  • 17.11. RESUMEN,
  • TÉRMINOS DE REPASO,
  • EJERCICIOS,
  • NOTAS BIBLIOGRÁFICAS,
    • 18.1. ARQUITECTURAS CENTRALIZADAS Y CLIENTE-SERVIDOR, CAPÍTULO 18: ARQUITECTURAS DE LOS SISTEMAS DE BASES DE DATOS
    • 18.2. ARQUITECTURAS DE SISTEMAS SERVIDORES,
    • 18.3. SISTEMAS PARALELOS,
    • 18.4. SISTEMAS DISTRIBUIDOS,
    • 18.5. TIPOS DE REDES,
    • 18.6. RESUMEN,
  • TÉRMINOS DE REPASO,
  • EJERCICIOS,
  • NOTAS BIBLIOGRÁFICAS,
    • 19.1. BASES DE DATOS HOMOGÉNEAS Y HETEROGÉNEAS, CAPÍTULO 19: BASES DE DATOS DISTRIBUIDAS
    • 19.2. ALMACENAMIENTO DISTRIBUIDO DE DATOS,
    • 19.3. TRANSACCIONES DISTRIBUIDAS,
    • 19.4. PROTOCOLOS DE COMPROMISO,
    • 19.5. CONTROL DE LA CONCURRENCIA EN LAS BASES DE DATOS DISTRIBUIDAS,
    • 19.6. DISPONIBILIDAD,
    • 19.7. PROCESAMIENTO DISTRIBUIDO DE CONSULTAS,
    • 19.8. BASES DE DATOS DISTRIBUIDAS HETEROGÉNEAS,
    • 19.9. SISTEMAS DE DIRECTORIO,
  • 19.10. RESUMEN,
  • TÉRMINOS DE REPASO,
  • EJERCICIOS,
  • NOTAS BIBLIOGRÁFICAS,
    • 20.1. INTRODUCCIÓN, CAPÍTULO 20: BASES DE DATOS PARALELAS
    • 20.2. PARALELISMO DE E/S,
    • 20.3. PARALELISMO ENTRE CONSULTAS,
    • 20.4. PARALELISMO EN CONSULTAS,
    • 20.5. PARALELISMO EN OPERACIONES,
    • 20.6. PARALELISMO ENTRE OPERACIONES,
    • 20.7. DISEÑO DE SISTEMAS PARALELOS,
    • 20.8. RESUMEN,
  • TÉRMINOS DE REPASO,
  • EJERCICIOS, XV
  • NOTAS BIBLIOGRÁFICAS,
    • 21.1. INTERFACES WEB PARA BASES DE DATOS, CAPÍTULO 21: DESARROLLO DE APLICACIONES Y ADMINISTRACIÓN
    • 21.2. AJUSTE DEL RENDIMIENTO,
    • 21.3. PRUEBAS DE RENDIMIENTO,
    • 21.4. NORMALIZACIÓN,
    • 21.5. COMERCIO ELECTRÓNICO,
    • 21.6. SISTEMAS HEREDADOS,
    • 21.7. RESUMEN,
  • TÉRMINOS DE REPASO,
  • EJERCICIOS,
  • SUGERENCIAS DE PROYECTOS,
  • NOTAS BIBLIOGRÁFICAS,
  • HERRAMIENTAS,
    • 22.1. SISTEMAS DE AYUDA A LA TOMA DE DECISIONES, CAPÍTULO 22: CONSULTAS AVANZADAS Y RECUPERACIÓN DE INFORMACIÓN
    • 22.2. ANÁLISIS DE DATOS Y OLAP,
    • 22.3. RECOPILACIÓN DE DATOS,
    • 22.4. ALMACENAMIENTO DE DATOS,
    • 22.5. SISTEMAS DE RECUPERACIÓN DE LA INFORMACIÓN,
    • 22.6. RESUMEN,
  • TÉRMINOS DE REPASO,
  • EJERCICIOS,
  • NOTAS BIBLIOGRÁFICAS,
  • HERRAMIENTAS,
    • 23.1. MOTIVACIÓN, CAPÍTULO 23: TIPOS DE DATOS AUTOMÁTICOS Y NUEVAS APLICACIONES
    • 23.2. EL TIEMPO EN LAS BASES DE DATOS,
    • 23.3. DATOS ESPACIALES Y GEOGRÁFICOS,
    • 23.4. BASES DE DATOS MULTIMEDIA,
    • 23.5. COMPUTADORAS PORTÁTILES Y BASES DE DATOS PERSONALES,
    • 23.6. RESUMEN,
  • TÉRMINOS DE REPASO,
  • EJERCICIOS,
  • NOTAS BIBLIOGRÁFICAS,
    • 24.1. MONITORES DE PROCESAMIENTO DE TRANSACCIONES, CAPÍTULO 24: PROCESAMIENTO AVANZADO DE TRANSACCIONES
    • 24.2. FLUJOS DE TRABAJO DE TRANSACCIONES,
    • 24.3. BASES DE DATOS EN MEMORIA PRINCIPAL,
    • 24.4. SISTEMAS DE TRANSACCIONES DE TIEMPO REAL,
    • 24.5. TRANSACCIONES DE LARGA DURACIÓN,
    • 24.6. GESTIÓN DE TRANSACCIONES EN VARIAS BASES DE DATOS,
    • 24.7. RESUMEN,
  • TÉRMINOS DE REPASO,
  • EJERCICIOS,
  • NOTAS BIBLIOGRÁFICAS, - 25.1. HERRAMIENTAS PARA EL DISEÑO DE BASES DE DATOS Y LA CONSULTA, CAPÍTULO 25: ORACLE - 25.2. VARIACIONES Y EXTENSIONES DE SQL, - 25.3. ALMACENAMIENTO E INDEXACIÓN, - 25.4. PROCESAMIENTO Y OPTIMIZACIÓN DE CONSULTAS, - 25.5. CONTROL DE CONCURRENCIA Y RECUPERACIÓN, - 25.6. ARQUITECTURA DEL SISTEMA, - 25.7. RÉPLICAS, DISTRIBUCIÓN Y DATOS EXTERNOS, - 25.8. HERRAMIENTAS DE GESTIÓN DE BASES DE DATOS,
    • NOTAS BIBLIOGRÁFICAS,
      • 26.1. HERRAMIENTAS PARA EL DISEÑO DE BASES DE DATOS Y LA CONSULTA, CAPÍTULO 26: DB2 DE IBM
      • 26.2. VARIACIONES Y EXTENSIONES DE SQL,
      • 26.3. ALMACENAMIENTO E INDEXACIÓN,
      • 26.4. PROCESAMIENTO Y OPTIMIZACIÓN DE CONSULTAS,
      • 26.5. CONTROL DE CONCURRENCIA Y RECUPERACIÓN,
      • 26.6. ARQUITECTURA DEL SISTEMA,
      • 26.7. RÉPLICAS, DISTRIBUCIÓN Y DATOS EXTERNOS,
      • 26.8. HERRAMIENTAS DE ADMINISTRACIÓN DE BASES DE DATOS,
      • 26.9. RESUMEN,
    • NOTAS BIBLIOGRÁFICAS,
      • 27.1. HERRAMIENTAS PARA EL DISEÑO Y CONSULTA DE BASES DE DATOS, CAPÍTULO 27: SQL SERVER DE MICROSOFT
      • 27.2. VARIACIONES Y EXTENSIONES DE SQL,
      • 27.3. ALMACENAMIENTO E INDEXACIÓN,
      • 27.4. PROCESAMIENTO Y OPTIMIZACIÓN DE CONSULTAS,
      • 27.5. CONCURRENCIA Y RECUPERACIÓN,
      • 27.6. ARQUITECTURA DEL SISTEMA,
      • 27.7. ACCESO A DATOS,
      • 27.8. DISTRIBUCIÓN Y RÉPLICAS,
      • 27.9. CONSULTAS DE TEXTO COMPLETO SOBRE DATOS RELACIONALES,
    • 27.10. ALMACENES DE DATOS Y SERVICIOS DE ANÁLISIS,
    • 27.11. XML Y SOPORTE DE WEB,
    • 27.12. RESUMEN,
    • NOTAS BIBLIOGRÁFICAS,
  • BIBLIOGRAFÍA,
  • DICCIONARIO BILINGÜE,
  • ÍNDICE,

XVII

ACERCA DEL AUTOR

L

A gestión de bases de datos ha evolucionado desde una aplicación informática especia- lizada hasta una parte esencial de un entorno informático moderno y, como resultado, el conocimiento acerca de los sistemas de bases de datos se ha convertido en una parte esencial en la enseñanza de la informática. En este libro se presentan los conceptos fundamen- tales de la administración de bases de datos. Estos conceptos incluyen aspectos de diseño de bases de datos, lenguajes de bases de datos e implementación de sistemas de bases de datos. Este libro está orientado a un primer curso de bases de datos para niveles técnicos y supe- riores. Además del material básico para un primer curso, el texto también contiene temas que pueden usarse como complemento del curso o como material introductorio de un curso avan- zado. En este libro se asume que se dispone de los conocimientos elementales sobre estructuras de datos básicas, organización de computadoras y un lenguaje de programación de alto nivel (tipo Pascal). Los conceptos se presentan usando descripciones intuitivas, muchas de las cuales están basadas en el ejemplo propuesto de una empresa bancaria. Se tratan los resultados teóricos importantes, pero se omiten las demostraciones formales. Las notas bibliográficas contienen referencias a artículos de investigación en los que los resultados se presentaron y probaron, y también referencias a material para otras lecturas. En lugar de demostraciones, se usan figuras y ejemplos para sugerir por qué se espera que los resultados en cuestión sean ciertos. Los conceptos fundamentales y algoritmos tratados en este libro se basan habitualmente en los que se usan en la actualidad en sistemas de bases de datos existentes, comerciales o expe- rimentales. Nuestro deseo es presentar estos conceptos y algoritmos como un conjunto general que no esté ligado a un sistema de bases de datos particular. En la Parte 8 se discuten detalles de sistemas de bases de datos comerciales. En esta cuarta edición de Fundamentos de bases de datos se ha mantenido el estilo global de las primeras tres ediciones, a la vez que se ha tenido en cuenta la evolución de la gestión de bases de datos. Se han añadido varios capítulos nuevos para tratar nuevas tecnologías. Cada capítulo se ha corregido y la mayoría se ha modificado ampliamente. Se describirán los cam- bios con detalle en breve.

ORGANIZACIÓN

El texto está organizado en ocho partes principales más dos apéndices:

- Visión general (Capítulo 1). En el Capítulo 1 se proporciona una visión general de la natu- raleza y propósito de los sistemas de bases de datos. Se explica cómo se ha desarrollado el concepto de sistema de bases de datos, cuáles son las características usuales de los sistemas de bases de datos, lo que proporciona al usuario un sistema de bases de datos y cómo un sis- tema de bases de datos se comunica con los sistemas operativos. También se introduce una aplicación de bases de datos de ejemplo: una empresa bancaria que consta de muchas sucur- sales. Este ejemplo se usa a lo largo de todo el libro. Este capítulo es histórico, explicativo y motivador por naturaleza. - Modelos de datos (Capítulos 2 y 3). En el Capítulo 2 se presenta el modelo entidad-relación. Este modelo proporciona una visión de alto nivel de los resultados de un diseño de base de datos y de los problemas que se encuentran en la captura de la semántica de las aplicaciones realistas que contienen las restricciones de un modelo de datos. El Capítulo 3 se centra en el modelo de datos relacional, tratando la relevancia del álgebra relacional y el cálculo rela- cional. - Bases de datos relacionales (Capítulos 4 al 7). El Capítulo 4 se centra en el lenguaje rela- cional orientado al usuario de mayor influencia: SQL. El Capítulo 5 cubre otros dos lengua- jes relacionales, QBE y Datalog. En estos dos capítulos se describe la manipulación de datos: consultas, actualizaciones, inserciones y borrados. Los algoritmos y las cuestiones de diseño

PREFACIO

XIX

técnicas de consulta, incluyendo sistemas de ayuda a la toma de decisiones y recuperación de la información. Los temas tratados en el área de la ayuda a la toma de decisiones incluyen las técnicas de procesamiento analítico interactivo (OLAP, Online Analytical Processing), el soporte de SQL:1999 para OLAP, recopilación de datos y almacenes de datos. El capítulo también describe técnicas de recuperación de información para la consulta de datos textua- les, incluyendo técnicas basadas en hipervínculos usadas en los motores de búsqueda Web. El Capítulo 23 trata tipos de datos avanzados y nuevas aplicaciones, incluyendo datos tem- porales, datos espaciales y geográficos, datos multimedia, y aspectos de la gestión de las bases de datos móviles y personales. Finalmente, el Capítulo 24 trata el procesamiento avanzado de transacciones. Se estudian los monitores de procesamiento de transacciones, los sistemas de transacciones de alto rendimiento, los sistemas de transacciones de tiempo real, y los flu- jos de datos transaccionales.

- Estudios de casos (Capítulos 25 al 27). En esta parte presentamos estudios de casos de tres sistemas de bases de datos comerciales: Oracle, IBM DB2 y Microsoft SQL Server. Estos capítulos esbozan características únicas de cada uno de los productos y describen su estruc- tura interna. Proporcionan una gran cantidad de información interesante sobre los productos respectivos, y ayudan a ver cómo las diferentes técnicas de implementación descritas en las partes anteriores se usan en sistemas reales. También se tratan aspectos prácticos en el diseño de sistemas reales. - Apéndices en línea. Aunque la mayoría de las aplicaciones de bases de datos modernas usen, bien el modelo relacional o bien el modelo orientado a objetos, los modelos de datos de redes y jerárquico están en uso todavía. En beneficio de los lectores que deseen aprender estos modelos de datos se proporcionan apéndices que describen los modelos de redes y jerárquico, en los Apéndices A y B, respectivamente. Los apéndices sólo están disponibles en Internet (http://www.bell-labs.com/topic/books/db-book). El Apéndice C describe el diseño avanzado de bases de datos relacionales, incluyendo la teoría de dependencias multivaloradas ¿Multivaluadas?, las dependencias de reunión y las formas normales de proyección-reunión y dominio-clave. Este apéndice es útil para quienes deseen el tratamiento del diseño de bases de datos relacionales en más detalle, y para profe- sores que deseen explicarlo en sus asignaturas. Este apéndice está también sólo disponible en Internet, en la página Web del libro.

LA CUARTA EDICIÓN

La producción de esta cuarta edición se ha guiado por muchos comentarios y sugerencias refe- ridos a las ediciones anteriores, junto con las propias observaciones en la enseñanza en el IIT de Bombay, y por el análisis de las direcciones que la tecnología de bases de datos está tomando. El procedimiento básico fue reescribir el material en cada capítulo, actualizando el material más antiguo, añadiendo discusiones en desarrollos recientes en la tecnología de bases de datos, y mejorando las descripciones de los temas que los estudiantes encontraron difíciles de com- prender. Cada capítulo tiene ahora una lista de términos de repaso, que pueden ayudar a asi- milar los temas clave tratados en cada capítulo. Se ha añadido también una nueva sección al final de la mayoría de los capítulos que proporciona información sobre herramientas software referidas al tema del capítulo. También se han añadido nuevos ejercicios y se han actualizado las referencias. Se ha incluido un nuevo capítulo que trata XML, y tres capítulos de estudio de los sistemas de bases de datos comerciales líderes: Oracle, IBM DB2 y Microsoft SQL Server. Los capítulos se han organizado en varias partes y se han reorganizado los contenidos de varios de ellos. En beneficio de aquellos lectores familiarizados con la tercera edición se expli- can a continuación los principales cambios.

- Modelo entidad-relación. Se ha mejorado el tratamiento del modelo entidad-relación (E-R). Se han añadido nuevos ejemplos y algunos se han cambiado para dar una mejor intuición al lector. Se ha incluido un resumen de notaciones E-R alternativas, junto con un nuevo apar- tado sobre UML. - Bases de datos relacionales. El tratamiento de SQL en el Capítulo 4 ahora se refiere al están- dar SQL:1999, que se aprobó después de la publicación de la tercera edición de este libro. El

PREFACIO

XX

tratamiento de SQL se ha ampliado significativamente para incluir la cláusula with , para un tratamiento ampliado de SQL incorporado y el tratamiento de ODBC y JDBC, cuyo uso ha aumentado notablemente en los últimos años. La parte del capítulo 5 dedicada a Quel se ha eli- minado, ya que no se usa ampliamente debido al poco uso que actualmente se hace de este lenguaje. El tratamiento de QBE se ha revisado para eliminar algunas ambigüedades y para añadir el tratamiento de la versión de QBE usada en la base de datos Microsoft Access. El Capítulo 6 trata ahora de las restricciones de integridad y de la seguridad. El tratamiento de la seguridad, ubicado en la edición anterior en el Capítulo 19, se ha trasladado al Capítu- lo 6. El Capítulo 6 también trata los disparadores. El Capítulo 7 aborda el diseño de las bases de datos relacionales y las formas normales. La discusión de las dependencias funcionales, ubicada en la edición anterior en el Capítulo 6, se ha trasladado al Capítulo 7. El Capítulo 7 se ha remodelado significativamente, proporcionando varios algoritmos para las dependen- cias funcionales y un tratamiento extendido del proceso general del diseño de bases de datos. Los axiomas para la inferencia de las dependencias multivaloradas, las formas normales FNRP y FNCD se han trasladado al apéndice.

- Bases de datos basadas en objetos. Se ha mejorado el tratamiento de la orientación a obje- tos del Capítulo 8, y se ha actualizado la discusión de ODMG. Se ha actualizado el trata- miento de las bases de datos relacionales orientadas a objetos del Capítulo 9 y, en particular, el estándar SQL:1999, reemplaza a SQL extendido usado en la tercera edición. - XML. El Capítulo 10, que trata XML, es un nuevo capítulo de la cuarta edición. - Almacenamiento, indexación y procesamiento de consultas. Se ha actualizado el trata- miento del almacenamiento y de las estructuras de archivos del Capítulo 11; este fue el Capí- tulo 10 en la tercera edición. Muchas características de las unidades de disco y de otros mecanismos de almacenamiento han cambiado en gran medida con el paso de los años, y su tratamiento se ha actualizado correspondientemente. El tratamiento de RAID se ha actuali- zado para reflejar las tendencias tecnológicas. El tratamiento de diccionarios de datos (catá- logos) se ha extendido. El Capítulo 12, sobre indexación, incluye ahora el estudio de los índices de mapa de bits; este capítulo fue el Capítulo 11 en la tercera edición. El algoritmo de inserción en árboles B+ se ha simplificado y se ha proporcionado un pseudocódigo para su examen. La asociación dividida se ha eliminado, ya que no tiene un uso significativo. El tratamiento del procesamiento de consultas se ha reorganizado, con el capítulo anterior (Capítulo 12 en la tercera edición) dividido en dos capítulos, uno sobre procesamiento de consultas (Capítulo 13) y otro sobre optimización de consultas (Capítulo 14). Todos los deta- lles referidos a la estimación de costes y a la optimización de consultas se han trasladado al Capítulo 14, permitiendo al Capítulo 13 centrarse en los algoritmos de procesamiento de con- sultas. Se han eliminado varias fórmulas detalladas (y tediosas) para el cálculo del número exacto de operaciones de E/S para diferentes operaciones. El Capítulo 14 se presenta ahora con un pseudocódigo para la optimización de algoritmos, y nuevos apartados sobre la opti- mización de subconsultas anidadas y sobre vistas materializadas. - Procesamiento de transacciones. El Capítulo 15, que proporciona una introducción a las transacciones, se ha actualizado; este capítulo era el Capítulo 13 en la tercera edición. Se han eliminado los tests de secuenciabilidad. El Capítulo 16, sobre el control de concurrencia, incluye un nuevo apartado sobre la imple- mentación de los gestores de bloqueo, y otro sobre los niveles débiles de consistencia, que estaban en el Capítulo 20 de la tercera edición. Se ha ampliado el control de concurrencia de estructuras de índices, proporcionando detalles del protocolo cangrejo, que es una alterna- tiva más simple al protocolo de enlace B, y el bloqueo de siguiente clave para evitar el pro- blema fantasma. El Capítulo 17, que trata sobre recuperación, incluye ahora un estudio del algoritmo de recuperación ARIES. Este capítulo trata ahora los sistemas de copia de seguri- dad remota para proporcionar una alta disponibilidad a pesar de los fallos, característica cada vez más importante en las aplicaciones «24×7». Como en la tercera edición, esta organización permite a los profesores elegir entre con- ceptos de procesamiento de transacciones introductorios únicamente (cubiertos sólo en el Capítulo 15) u ofrecer un conocimiento detallado (basado en los Capítulos 15 al 17). - Arquitecturas de sistemas de bases de datos. El Capítulo 18, que proporciona una visión general de las arquitecturas de sistemas de bases de datos, se ha actualizado para tratar la tec- nología actual; esto se encontraba en el Capítulo 16 de la tercera edición. El orden del capí-

PREFACIO