ebook img

Fundamentos de bases de datos PDF

673 Pages·2015·10.111 MB·Spanish
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Fundamentos de bases de datos

Fundamentos de bases de datos Sexta edición Abraham Silberschatz Universidad de Yale Henry F. Korth Universidad de Lehigh S. Sudarshan Instituto Tecnológico Indio, Bombay Revisión técnica Jesús Sánchez Allende Universidad Alfonso X El Sabio (Madrid) MADRID - BOGOTÁ - BUENOS AIRES - CARACAS - GUATEMALA - LISBOA MÉXICO - NUEVA YORK - PANAMÁ - SAN JUAN - SANTIAGO - SÃO PAULO AUCKLAND - HAMBURGO - LONDRES - MILÁN - MONTREAL - NUEVA DELHI - PARÍS SAN FRANCISCO - SÍDNEY - SINGAPUR - ST. LOUIS - TOKIO - TORONTO Traducción: Pilar Moreno Díaz Fundamentos de bases de datos, sexta edición No está permitida la reproducción total o parcial de este libro, ni su tratamiento informático, ni la transmisión por 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. Diríjase a CEDRO (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de esta obra. Derechos reservados © 2014, respecto a la sexta edición en español, por: McGraw-Hill/Interamericana de España, S.L. Edificio Valrealty, 1.a planta Basauri, 17 28023 Aravaca (Madrid) Traducido de la sexta edición en inglés de DATABASE SYSTEM CONCEPTS, by Silberschatz, Abraham, 6th ed. © 2011 by The McGraw-Hill Companies, Inc. Todos los derechos reservados. ISBN: 978-0-07-352332-3 ISBN: 978-84-481-9033-0 Depósito legal: M-12103-2014 Editora: Cristina Sánchez Sáinz-Trápaga Director Gerente Universidad y Profesional: Norberto Rosas Gómez Director General España y Portugal: Álvaro García Tejeda Diseño de cubierta: Cian Network Composición: www.dfrente.es Impresión: XXX IMPRESO EN ESPAÑA- PRINTED IN SPAIN En memoria de mi padre, Joseph Silberschatz, de mi madre, Vera Silberschatz, y de mis abuelos, Stepha y Aaron Rosenblum. Avi Silberschatz A mi esposa, Joan, mis hijos, Abigail y Joseph, y mis padres, Henry y Frances. Hank Korth A mi esposa, Sita, mis hijos, Madhur y Advaith, y mi madre, Indira. S. Sudarshan Contenidos Capítulo 1. Introducción 1.1. Aplicaciones de los sistemas de bases de datos 1 1.11. Bases de datos específicas 12 1.2. Propósito de los sistemas de bases de datos 2 1.12. Usuarios y administradores de bases de datos 13 1.3. Visión de los datos 3 1.13. Historia de los sistemas de bases de datos 13 1.4. Lenguajes de bases de datos 5 1.14. Resumen 15 1.5. Bases de datos relacionales 6 Términos de repaso 15 1.6. Diseño de bases de datos 7 Ejercicios prácticos 16 1.7. Almacenamiento de datos y consultas 9 Ejercicios 16 1.8. Gestión de transacciones 10 Herramientas 16 1.9. Arquitectura de las bases de datos 10 Notas bibliográficas 16 1.10. Minería y análisis de datos 12 Parte 1. Bases de datos relacionales Capítulo 2. Introducción al modelo relacional 2.1. La estructura de las bases de datos relacionales 19 2.7. Resumen 25 2.2. Esquema de la base de datos 20 Términos de repaso 25 2.3. Claves 21 Ejercicios prácticos 25 2.4. Diagramas de esquema 23 Ejercicios 26 2.5. Lenguajes de consulta relacional 23 Notas bibliográficas 26 2.6. Operaciones relacionales 23 Capítulo 3. Introducción a SQL 3.1. Introducción al lenguaje de consultas SQL 27 3.9. Modificación de la base de datos 43 3.2. Definición de datos de SQL 27 3.10. Resumen 46 3.3. Estructura básica de las consultas SQL 29 Términos de repaso 46 3.4. Operaciones básicas adicionales 34 Ejercicios prácticos 46 3.5. Operaciones sobre conjuntos 36 Ejercicios 48 3.6. Valores nulos 37 Herramientas 49 3.7. Funciones de agregación 38 Notas bibliográficas 49 3.8. Subconsultas anidadas 40 Capítulo 4. SQL intermedio 4.1. Expresiones de reunión 51 4.7. Resumen 67 4.2. Vistas 55 Términos de repaso 68 4.3. Transacciones 57 Ejercicios prácticos 68 4.4. Restricciones de integridad 58 Ejercicios 69 4.5. Tipos de datos y esquemas de SQL 61 Notas bibliográficas 69 4.6. Autorización 64 vi Contenidos Capítulo 5. SQL avanzado 5.1. Acceso a SQL desde lenguajes de programación 71 5.7. Resumen 93 5.2. Funciones y procedimientos 77 Términos de repaso 93 5.3. Disparadores 80 Ejercicios prácticos 93 5.4. Consultas recursivas ** 83 Ejercicios 94 5.5. Características de agregación avanzadas ** 85 Notas bibliográficas 95 5.6. OLAP** 88 Herramientas 96 Capítulo 6. Lenguajes formales de consulta relacional 6.1. El álgebra relacional 97 Términos de repaso 111 6.2. El cálculo relacional de tuplas 107 Ejercicios prácticos 111 6.3. El cálculo relacional de dominios 109 Ejercicios 112 6.4. Resumen 110 Notas bibliográficas 113 Parte 2. Diseño de bases de datos Capítulo 7. Diseño de bases de datos y el modelo E-R 7.1. Visión general del proceso de diseño 117 7.9. Notaciones alternativas para el modelado 7.2. El modelo entidad-relación 118 de datos 137 7.3. Restricciones 121 7.10. Otros aspectos del diseño de bases de datos 140 7.4. Eliminar atributos redundantes de un conjunto 7.11. Resumen 142 de entidades 123 Términos de repaso 142 7.5. Diagramas entidad-relación 124 Ejercicios prácticos 143 7.6. Reducción a esquemas relacionales 128 Ejercicios 144 7.7. Aspectos del diseño entidad-relación 131 Herramientas 145 7.8. Características del modelo E-R extendido 133 Notas bibliográficas 145 Capítulo 8. Diseño de bases de datos y el modelo E-R 8.1. Características de los buenos 8.7. Más formas normales 161 diseños relacionales 147 8.8. Proceso de diseño de la base de datos 162 8.2. Dominios atómicos y la primera forma normal 149 8.9. Modelado de datos temporales 163 8.3. Descomposición mediante dependencias 8.10. Resumen 165 funcionales 149 Términos de repaso 165 8.4. Teoría de las dependencias funcionales 153 Ejercicios prácticos 166 8.5. Algoritmos de descomposición 157 Ejercicios 167 8.6. Descomposición mediante dependencias Notas bibliográficas 168 multivaloradas 160 Capítulo 9. Diseño y desarrollo de aplicaciones 9.1. Interfaces de usuario y programas 9.8. Cifrado y sus aplicaciones 185 de aplicación 169 9.9. Resumen 188 9.2. Fundamentos de la web 170 Términos de repaso 189 9.3. Servlets y JSP 173 Ejercicios prácticos 189 9.4. Arquitecturas de aplicación 176 Ejercicios 190 9.5. Desarrollo rápido de aplicaciones 179 Sugerencias de proyectos 191 9.6. Rendimiento de la aplicación 181 Herramientas 192 9.7. Seguridad de las aplicaciones 181 Notas bibliográficas 192 Contenidos vii Parte 3. Almacenamiento de datos y consultas Capítulo 10. Almacenamiento y estructura de archivos 10.1. Visión general de los medios físicos 10.7. Almacenamiento con diccionarios de datos 210 de almacenamiento 195 10.8. Memoria intermedia de la base de datos 211 10.2. Discos magnéticos y almacenamiento flash 196 10.9. Resumen 213 10.3. RAID 200 Términos de repaso 213 10.4. Almacenamiento terciario 205 Ejercicios prácticos 214 10.5. Organización de los archivos 206 Ejercicios 215 10.6. Organización de los registros en archivos 208 Notas bibliográficas 215 Capítulo 11. Indexación y asociación 11.1. Conceptos básicos 217 11.9. Índices de mapas de bits 242 11.2. Índices ordenados 217 11.10. Definición de índices en SQL 243 11.3. Archivos de índices de árboles B+ 222 11.11. Resumen 244 11.4. Extensiones de los árboles B+ 230 Términos de repaso 245 11.5. Accesos bajo varias claves 233 Ejercicios prácticos 245 11.6. Asociación estática 234 Ejercicios 246 11.7. Asociación dinámica 237 Notas bibliográficas 247 11.8. Comparación entre la indexación ordenada y la asociación 241 Capítulo 12. Procesamiento de consultas 12.1. Descripción general 249 12.7. Evaluación de expresiones 262 12.2. Medidas del coste de una consulta 250 12.8. Resumen 265 12.3. Operación selección 251 Términos de repaso 265 12.4. Ordenación 253 Ejercicios prácticos 266 12.5. Operación reunión 254 Ejercicios 267 12.6. Otras operaciones 261 Notas bibliográficas 267 Capítulo 13. Optimización de consultas 13.1. Visión general 269 13.7. Resumen 286 13.2. Transformación de expresiones relacionales 271 Términos de repaso 286 13.3. Estimación de las estadísticas Ejercicios prácticos 287 de los resultados de las expresiones 274 Ejercicios 288 13.4. Elección de los planes de evaluación 278 Notas bibliográficas 289 13.5. Vistas materializadas 282 ** 13.6. Temas avanzados de optimización de consultas 284 ** Parte 4. Gestión de transacciones Capítulo 14. Transacciones 14.1. Concepto de transacción 293 14.9. Implementación de niveles de aislamiento 302 14.2. Un modelo simple de transacciones 294 14.10. Transacciones como sentencias de SQL 304 14.3. Estructura de almacenamiento 295 14.11. Resumen 305 14.4. Atomicidad y durabilidad de las transacciones 295 Términos de repaso 306 14.5. Aislamiento de transacciones 297 Ejercicios prácticos 306 14.6. Secuencialidad 299 Ejercicios 307 14.7. Aislamiento y atomicidad de transacciones 301 Notas bibliográficas 307 14.8. Niveles de aislamiento de transacciones 302 viii Contenidos Capítulo 15. Control de concurrencia 15.1. Protocolos basados en el bloqueo 309 15.9. Niveles débiles de consistencia en la práctica 326 15.2. Tratamiento de interbloqueos 314 15.10. Concurrencia en las estructuras de índices** 328 15.3. Granularidad múltiple 316 15.11. Resumen 330 15.4. Protocolos basados en marcas temporales 318 Términos de repaso 331 15.5. Protocolos basados en validación 320 Ejercicios prácticos 332 15.6. Esquemas multiversión 321 Ejercicios 333 15.7. Aislamiento de instantáneas 322 Notas bibliográficas 334 15.8. Operaciones para insertar y borrar, y lectura de predicados 324 Capítulo 16. Sistema de recuperación 16.1. Clasificación de los fallos 335 16.8. ARIES 349 ** 16.2. Almacenamiento 335 16.9. Sistemas remotos de copias de seguridad 352 16.3. Recuperación y atomicidad 337 16.10. Resumen 353 16.4. Algoritmo de recuperación 341 Términos de repaso 354 16.5. Gestión de memoria intermedia 343 Ejercicios prácticos 355 16.6. Fallo con pérdida de almacenamiento no volátil 345 Ejercicios 356 16.7. Liberación rápida de bloqueos Notas bibliográficas 357 y operaciones de deshacer lógicas 345 Parte 5. Arquitectura de sistemas Capítulo 17. Arquitecturas de los sistemas de bases de datos 17.1. Arquitecturas centralizadas y cliente-servidor 361 17.6. Resumen 372 17.2. Arquitecturas de sistemas servidores 363 Términos de repaso 372 17.3. Sistemas paralelos 365 Ejercicios prácticos 373 17.4. Sistemas distribuidos 368 Ejercicios 373 17.5. Tipos de redes 370 Notas bibliográficas 374 Capítulo 18. Bases de datos paralelas 18.1. Introducción 375 18.8. Diseño de sistemas paralelos 383 18.2. Paralelismo de E/S 375 18.9. Paralelismo en procesadores multinúcleo 383 18.3. Paralelismo entre consultas 377 18.10. Resumen 384 18.4. Paralelismo en consultas 377 Términos de repaso 385 18.5. Paralelismo en operaciones 378 Ejercicios prácticos 385 18.6. Paralelismo entre operaciones 382 Ejercicios 386 18.7. Optimización de consultas 382 Notas bibliográficas 387 Capítulo 19. Bases de datos distribuidas 19.1. Bases de datos homogéneas y heterogéneas 389 19.8. Bases de datos distribuidas heterogéneas 403 19.2. Almacenamiento distribuido de datos 389 19.9. Bases de datos en la nube 405 19.3. Transacciones distribuidas 391 19.10. Sistemas de directorio 409 19.4. Protocolos de compromiso 392 19.11. Resumen 412 19.5. Control de concurrencia Términos de repaso 413 en las bases de datos distribuidas 395 Ejercicios prácticos 414 19.6. Disponibilidad 398 Ejercicios 415 19.7. Procesamiento distribuido de consultas 402 Notas bibliográficas 415 Contenidos ix Parte 6. Almacenes de datos, minería de datos y recuperación de la información Capítulo 20. Almacenes de datos y minería de datos 20.1. Sistemas de ayuda a la toma de decisiones 419 20.8. Otros tipos de minería 429 20.2. Almacenes de datos 420 20.9. Resumen 429 20.3. Minería de datos 422 Términos de repaso 430 20.4. Clasificación 422 Ejercicios prácticos 430 20.5. Reglas de asociación 427 Ejercicios 431 20.6. Otros tipos de asociación 428 Herramientas 431 20.7. Agrupamiento 428 Notas bibliográficas 431 Capítulo 21. Recuperación de información 21.1. Descripción general 433 21.9. Directorios y categorías 442 21.2. Clasificación por relevancia según los términos 434 21.10. Resumen 444 21.3. Relevancia según los hipervínculos 435 Términos de repaso 444 21.4. Sinónimos, homónimos y ontologías 438 Ejercicios prácticos 445 21.5. Creación de índices de documentos 439 Ejercicios 445 21.6. Medida de la efectividad de la recuperación 439 Herramientas 445 21.7. Robots de búsqueda e indexación en web 440 Notas bibliográficas 446 21.8. Recuperación de información: más allá de la clasificación de las páginas 441 Parte 7. Bases de datos especiales Capítulo 22. Bases de datos orientadas a objetos 22.1. Descripción general 449 22.9. Correspondencia entre el modelo relacional 22.2. Tipos de datos complejos 449 y el orientado a objetos 461 22.3. Tipos estructurados y herencia en SQL 451 22.10. Sistemas orientados a objetos 22.4. Herencia de tablas 452 y sistemas relacionales orientados a objetos 461 22.5. Tipos array y multiconjunto en SQL 453 22.11. Resumen 462 22.6. Identidad de los objetos y tipos de referencia Términos de repaso 462 en SQL 455 Ejercicios prácticos 463 22.7. Implementación Ejercicios 463 de las características O-R 456 Herramientas 464 22.8. Lenguajes de programación persistentes 457 Notas bibliográficas 464 Capítulo 23. XML 23.1. Motivación 465 23.7. Aplicaciones XML 479 23.2. Estructura de los datos XML 467 23.8. Resumen 481 23.3. Esquema de documentos XML 469 Términos de repaso 481 23.4. Consulta y transformación 472 Ejercicios prácticos 482 23.5. La interfaz de programación Ejercicios 483 de aplicaciones de XML 476 Herramientas 483 23.6. Almacenamiento de datos XML 476 Notas bibliográficas 484

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.