Sistemas de Bases de Datos

412

Click here to load reader

Transcript of Sistemas de Bases de Datos

  • ThomasM. ConnollyCarolynE. Begg

    PEARSON

    AddisonWesley

  • SistemasdebasesdedatosUN ENFOQUE PRCTICO PARA DISEO, IMPLEMENTACIN y GESTIN

    Cuartaedicin

    THOMAS M. CONNOLLYCAROLYN E. BEGG

    University01Paisley

    Traduccin

    Vuelapluma

    MadrideMxicoe SantafdeBogoteBuenosAireseCaracaseLimaMontevideoeSanJuaneSanJoseSantiagoeSaoPaulo

    ReadingeMassachusettseHarloweEngland

  • Datos de catalogacinbibliogrfica

    SISTEMAS DE BASES DE DATOSConnolly, T. M.; Begg, C. E.

    Pearson Educacin S.A., Madrid, 2005

    ISBN: 84-7829-075-3

    Materia: Informtica, 681.3

    Formato: 195x 250mm. Pginas: 1320

    Todoslos derechosreservados.Queda prohibida, salvo excepcin previstaen la Ley, cualquier forma de reproduccin,distribucin,comunicacin pblica y transformacinde esta obra sin contar conautorizacin de los titularesde propiedad intelectual.La infraccinde los derechosmencionados puede ser constitutivade delito contra la propiedad intelectual(arts. 270 y sgts. Cdigo Penal).

    DERECHOS RESERVADOS

    2005porPEARSON EDUCACIN S.A.RiberadelLoira, 2828042Madrid

    SISTEMAS DE BASES DE DATOSConnolly,T. M.; Begg,C. E.

    ISBN: 84-7829-075-3

    DepsitoLegal:M-30.815-2005ADDISON WESLEY esun selloeditorialautorizadodePEARSON EDUCACIN S.A.

    PearsonEducationLimited 1995,2005This translationofDATABASE SYSTEMS -APRACTICALAPPROACH TO DESIGN,IMPLEMENTATION AND MANAGEMENT 04Edition is publishedby arrangementwithPearsonEducationLimited,UnitedKingdom

    EquipoeditorialEditor:Miguel Martn-RomoTcnicoeditorial:MartaCaicoya

    EquipodeproduccinDirector:JosA. ClaresTcnico:TiniCardoso

    Diseodecubierta:EquipodediseodePearsonEducacinS.A.

    Impresopor:GrficasRgar

    IMPRESO EN ESPAA - PRlNTED IN SPAIN

    Estelibro ha sidoimpresoconpapely tintasecolgicos

  • \Prefacio .

    Parte 1 Introduccin .

    Contenido

    XXXIII

    1

    Captulo 1 Introduccin a las bases de datos 3

    1.1 Introduccin 4

    1.2 Sistemas tradicionales basados en archivos 6

    1.2.1 La tcnica basada en archivos .... 7

    1.2.2 Limitaciones de la tcnica basada en archivos 11

    1.3 Sistemas de bases de datos 13

    1.3.1 La base de datos 14

    1.3.2 Sistema de gestin de base de datos (SGBD) 15

    1.3.3 Programa de aplicacin 16

    1.3.4 Componentes de un entorno SGBD 17

    1.3.5 Diseo de bases de datos: un cambio en el paradigma 19

    1.4 Papeles en un entorno de base de datos 20

    1.4.1 Administradores de datos y de la base de datos 20

    1.4.2 Diseadores de bases de datos 20

    1.4.3 Desarrolladores de aplicaciones 21

    1.4.4 Usuarios finales 21

    1.5 Historia de los sistemas de gestin de bases de datos 22

    1.6 Ventajas y desventajas de los SGBD 24

    Resumen 28

    Cuestionesde repaso 29

    Ejercicios 30

    Captulo 2 El entorno de la base de datos 31

    2.1 La arquitectura en tres niveles de ANSI-SPARC 32

    2.1.1 Nivel externo 33

    2.1.2 Nivel conceptual 33

    2.1.3 Nivel interno 34

    2.1.4 Esquemas, asignaciones e instancias 34

  • XII Sistemasde basesde datos

    2.1.5 Independenciade los datos 36

    2.2 Lenguajesde basede datos 37

    2.2.1 El lenguajede definicinde datos (DDL) 37

    2.2.2 El lenguajede manipulacinde datos (DML) 37

    2.2.3 Lenguajesde cuartageneracin(4GL) -.-.- 39

    2.3 Modelosde datosy modeladoconceptual 40

    2.3.1 Modelosde datos basadosen objetos 41

    2.3.2 Modelosde datos basadosen registros 41

    2.3.3 Modelosde datosfsicos 43

    2.3.4 Modeladoconceptual 43

    2.4 Funcionesde un SGBD 44

    2.5 Componentesde un SGBD 48

    2.6 Arquitecturasde SGBD multiusuario 51

    2.6.1 Teleprocesamiento 51

    2.6.2 Arquitecturade servidorde archivos 51

    2.6.3 Arquitecturacliente-servidortradicionalen dos niveles 52

    2.6.4 Arquitecturacliente-servidoren tres niveles 55

    2.6.5 Monitoresde procesamientode transacciones 56

    Resumen 57

    Cuestiones de repaso 59

    Ejercicios 59

    Parte 2 El modelo relacional y los lenguajesrelacionales 61Captulo 3 Introduccin a las bases de datos 63

    3.1 Brevehistoriadel modelorelacional 64

    3.2 Terminologa 65

    3.2.1 Estructurasde datos relacionales 65

    3.2.2 Relacionesmatemticas 68

    3.2.3 Relacionesen unabasede datos 68

    3.2.4 Propiedadesde las relaciones 69

    3.2.5 Clavesrelacionales 70

    3.2.6 Representacinde esquemasde basede datos relacional 72

    3.3 Restriccionesde integridad 72

    3.3.1 Valoresnulos 72

    3.3.2 Integridadde entidad 74

    3.3.3 Integridadreferencial 74

    3.3.4 Restriccionesgenerales 753.4 Vistas 75

    3.4.1 Terminologa 75

    3.4.2 Propsitode las vistas 76

    3.4.3 Actualizacinde las vistas 76

  • Contenido XIII

    Resumen 77

    Cuestiones de repaso 77

    Ejercicios 78

    Captulo 4 lgebra relacional y clculo relacional _._._ 794.1 El lgebra relacional 80

    4.1 .1 Operaciones unarias 80

    4.1.2 Operaciones de conjuntos 82

    4.1.3 Operaciones de combinacin .. 86

    4.1.4 Operacin de divisin 89

    4.1.5 Operaciones de agregacin y de agrupamiento 90

    4.1.6 Resumen de las operaciones de lgebra relacional 92

    4.2 El clculo relacional 93

    4.2.1 Clculo relacional de tuplas . 93

    4.2.2 Clculo relacional de dominios 96

    4.3 Otros lenguajes 98

    Resumen 98

    Cuestiones de repaso 99Ejercicios 99

    Captulo 5 SQL: manipulacin de datos 101

    5.1 Introduccin a SOL 102

    5.1.1 Objetivos de SOL 102

    5.1.2 Historia de SOL 103

    5.1.3 Importancia de SOL 104

    5.1.4 Terminologa 105

    5.2 Escritura de comandos SOL 105

    5.3 Manipulacin de datos 106

    5.3.1 Consultas simples 107

    5.3.2 Ordenacin de los resultados (clusula ORDER BY) 114

    5.3.3 Utilizacin de las funciones de agregacin de SOL 116

    5.3.4 Agrupacin de resultados (clusula GROUP BY) 118

    5.3.5 Subconsultas 121

    5.3.6 ANY Y ALL 123

    5.3.7 Consultas multitabla 125

    5.3.8 EXISTS y NOT EXISTS 130

    5.3.9 Combinacin de tablas de resultados (UNION, INTERSECT,

    EXCEPT) 131

    5.3.10 Actualizaciones de la base de datos 134

    Resumen 138

    Cuestiones de repaso 139

    Ejercicios 139

  • XIV Sistemasde basesde datos

    6.4 Vistas

    6.4.1 Creacin de una vista (CREA TE VIEW) .

    6.4.2. Eliminacin de una vista (DROP VIEW)

    6.4.3 Resolucin de vistas .

    6.4.4 Restricciones de las vistas .

    6.4.5 Actualizacin de vistas .

    6.4.6 WITH CHECK OPTION .

    6.4.7 Ventajas y desventajas de las vistas .

    6.4.8 Materializacin de vistas .

    6.5 Transacciones .

    6.5.1 Restricciones de integridad inmediatas e inferidas .

    6.6 Control de acceso discrecional .

    6.6.1 Concesin de privilegios a otros usuarios (GRANTI .

    6.6.2 Revocacin de privilegios de los usuarios (REVOKE) .

    Resumen .

    Cuestiones de repaso .

    Ejercicios .

    Captulo 6 SOL: definicin de datos ~.

    6.1 Tipos de datos SOL de ISO .

    6.1.1 Identificadores SOL .

    6.1.2 Tipos de datos SOL escalares .

    6.1.3 Datos numricos exactos .

    6.2 Caractersticas de mejora de la integridad .

    6.2.1 Datos requeridos .

    6.2.2 Restricciones de dominio .

    6.2.3 Integridad de entidades .

    6.2.4 Integridad referencial .

    6.2.5 Restricciones generales .

    6.3 Definicin de datos .

    6.3.1 Creacin de una base de datos .

    6.3.2 Creacin de una tabla (CREATE TABLE) .

    6.3.3 Modificacin de la definicin de una tabla (ALTER TABLE) .

    6.3.4 Eliminacin de una tabla (DROP TABLE) .

    6.3.5 Creacin de un ndice (CREATE INDEX) .

    6.3.6 Eliminacin de un ndice (DROP INDEX) .

    Captulo 7

    7.1

    7.2

    OSE

    Introduccin a las consultas en Microsoft Of?ce Access .

    Diseo de consultas de seleccin mediante OBE .

    7.2.1 Especificacin de criterios .

    7.2.2 Creacin de consultas multitabla .

    141142

    142

    143

    144

    147

    147

    147

    149

    149

    150

    151

    151

    152

    155

    156

    157

    158

    158

    158

    161

    161

    162

    163

    164

    165

    167

    168

    169

    169

    171

    172

    174

    175

    175

    179

    180

    182

    182

    186

  • Contenido

    7.2.3 Clculo de totales .

    7.3 Utilizacin de consultas avanzadas

    7.3.1 Consultas paramtricas

    7.3.2 Consulta matricial ...

    7.3.3 Consultas de localizacin de duplicados

    7.3.4 Consulta de localizacin de no correspondencias

    7.3.5 Consultas de autobsqueda .

    7.4 Modificacin del contenido de las tablas mediante consultas de accin

    7.4.1 Consultas de accin para creacin de tablas

    7.4.2 Consulta de accin de borrado .

    7.4.3 Consulta de accin de actualizacin

    7.4.4 Consulta de accin de adicin .

    Ejercicios " .

    Captulo 8 Bases de datos comerciales: Office Access y Oracle .8.1 Microsoft Office Access 2003

    8.1.1 Objetos .

    8.1.2 Arquitectura de Microsoft Of?ce Access

    8.1.3 Definicin de tablas .

    8.1.4 Definicin de relaciones y de integridad referencial .

    8.1.5 Definicin de restricciones generales .

    8.1.6 Formularios .

    8.1.7 Informes .

    8.1.8 Macros .

    8.1 .9 Dependencias entre objetos .

    8.2 Oracle9i .

    8.2.1 Objetos .

    8.2.2 Arquitectura de Oracle

    8.2.3 Definicin de tablas ....

    8.2.4 Definicin de restricciones generales

    8.2.5 PL/SQL .

    8.2.6 Subprogramas, procedimientos almacenados, funciones y paquetes

    8.2.7 Disparadores .

    8.2.8 Oracle Internet Developer Suite

    8.2.9 Otras funcionalidades de Oracle

    8.2.10 Oracle10g .

    Resumen .

    Cuestionesde repaso .

    Parte 3 Tcnicas de anlisis y diseo de bases de datos ....

    Captulo 9 Planificacin, diseo y administracin de bases de datos .

    xv

    186

    188

    189

    190

    192

    194

    195

    195

    195

    199

    199

    199

    202

    205205

    206

    206

    208

    213

    213

    215

    217

    218

    221

    221

    223

    224

    230

    233

    233

    239

    240

    244

    248

    248

    252

    253

    255

    257

  • Contenido XVII

    10.4 Ejemplode utilizacinde tcnicasde determinacinde hechos 293

    10.4.1 El caso de estudiode DreamHome: panormica 293

    10.4.2 El caso de estudiode DreamHome: planificacinde la basede datos 298

    10.4.3 El caso de estudiode DreamHome: definicindel sistema 302

    10.4.4 El caso de estudiode DreamHome: recopilaciny anlisisderequisitos 303

    10.4.5 El caso de estudiode DreamHome: diseode la basede datos .. 311

    Resumen 311

    Cuestiones de repaso 311

    Ejercicios 312

    Captulo 11 Modelado entidad-relacin 313

    11.1 Tipos de entidad 314

    11.2 Tipos de relacin 316

    11.2.1 Gradode un tipo de relacin 318

    11.2.2 Relacinrecursiva 318

    11.3 Atributos 319

    11.3.1 Atributossimplesy compuestos 320

    11.3.2 Atributosunivaluadosy multivaluados 321

    11.3.3 Atributosderivados 321

    11.3.4 Claves 322

    11.4 Tipos de entidadfuertesy dbiles 323

    11.5 Atributo~delas relaciones 32411.6 Restriccionesestructurales 324

    11.6.1 Relacionesuno a uno (1:1) 325

    11.6.2 Relacionesuno a muchos(1:*) 326

    11.6.3 Relacionesmuchosa muchos(*:*) 328

    11.6.4 Multiplicidadpararelacionescomplejas 329

    .11.6.5 Restriccionesde cardinalidady de participacin 330

    11.7 Problemascon los modelosER 331

    11.7.1 Trampasmultiplicativas 331

    11.7.2 Trampasde corte 333

    Resumen 334

    Cuestiones de repaso 336

    Ejercicios 336

    Captulo 12 Modelado entidad-relacin avanzado 339

    12.1 Especializacin/Generalizacin 340

    12.1.1 Superclasesy subclases 340

    12.1.2 Relacionessuperclasey subclase 340

    12.1.3 Herenciade atributo 341

  • XVIII Sistemasde basesde datos

    12.1.4 Proceso de especializacin 342

    12.1.5 Proceso de generalizacin 342

    12.1.6 Restricciones a la especializacin/generalizacin 344

    12.1.7 Utilizacin de las tcnicas de especializacin/generalizacin paramodelar la vista Branch del caso de estudio DreamHome 346

    12.2 Agregacin 350

    12.3 Composicin 350

    Resumen 352

    Cuestiones de repaso 352

    Ejercicios 352

    Captulo 1313.1

    13.2

    13.3

    13.4

    13.5

    13.6

    13.7

    13.8

    13.9

    Normalizacin .

    El propsito de la normalizacin .

    Cmo ayuda la normalizacin al diseo de bases de datos

    Redundancia de los datos y anomalas de actualizacin

    13.3.1 Anomalas de insercin

    13.3.2 Anomalas de borrado .

    13.3.3 Anomalas de modificacin .

    Dependencias funcionales .

    13.4.1 Caractersticas de las dependencias funcionales.

    13.4.2 Identificacin de dependencias funcionales ....

    13.4.3 Identificacin de la clave primaria de una relacin utilizando

    las dependencias funcionales

    El proceso de normalizaclPn .

    Primera forma normal (1NF) .

    Segunda forma normal (2NF)

    Tercera forma normal (3NF) .

    Definiciones generales de las formas 2NF y 3NF .

    Resumen .

    Cuestiones de r@paso .

    Ejercicios .

    353354

    354

    355

    356

    357

    357

    358

    358

    362

    364

    365

    367

    370

    372

    374

    375

    376

    376

    Captulo 14 Normalizacin avanzada .

    14.1 Ms aspectos relativos a las dependencias funcionales

    14.1.1 Reglas de inferencia para dependencias funcionales

    14.1.2 Conjuntos mnimos de dependencias funcionales

    14.2 Forma normal de Boyce-Codd (BCNF) .

    14.2.1 Definicin de la forma normal de Boyce-Codd

    14.3 Revisin del proceso de normalizacin hasta BCNF

    14.4 Cuarta forma normal (4NF) .

    14.4.1 Dependencia multivaluada .

    14.4.2 Definicin de cuarta forma normal .

    379

    380

    380

    382

    383

    383

    385

    391

    391

    392

  • Contenido XIX

    14.5 Quinta forma normal (5NF) 393

    14.5.1 Dependencia de combinacin sin prdidas 393

    14.5.2 Definicin de quinta forma normal 393

    Resumen 395

    Cuestiones de repaso 395

    Ejercicios _.. 395

    Parte 4 Metodologa . 397

    Captulo 15 Metodologa: diseo conceptual de la base de datos 399

    15.1 Introduccin a la metodologa de diseo de bases de datos 400

    15.1.1 Qu es una metodologa de diseo? 400

    15.1.2 Diseo conceptual, lgico y fsico de una base datos 400

    15.1.3 Factores crticos en el diseo de una base de datos 401

    15.2 Panormica de la metodologa de diseo de la base de datos 401

    15.3 Metodologa de diseo conceptual de la base de datos 404

    Resumen 41 7

    Cuestiones de repaso 418

    Ejercicios 4 19

    Captulo 16 Metodologa: diseo lgico de bases de datos para elmodelo relacional . 421

    16.1 Metodologa de diseo lgico de bases de datos para el modelorelacional 422

    .".

    Paso 2 Construir y validar el modelo lgico de datos 422

    Resumen 447

    Cuestiones de repaso 448Ejercicios 449

    Captulo 17 Metodologa: diseo fsico de bases de datos relacionales 451

    17.l Comparacin del diseo lgico y el diseo fsico de bases de datos 452

    17.2 Panormica de la metodologa de diseo fsico de bases de datos 452

    17.3 Metodologa de diseo fsico de bases de datos relacionales 454

    Resumen 471

    Cuestiones de repaso 471Ejercicios 472

    Captulo 18 Metodologa: monitorizacin y optimizacin del sistema final 473

    18.1 Desnormalizacin e introduccin de redundancia controlada 473

    18.2 Monitorizacin del sistema para mejorar el rendimiento 485

    Resumen 489

    Cuestiones de repaso 489

    Ejercicios 490

  • XX Sistemas de bases de datos

    Parte 5 Problemas fundamentales en las bases de datos

    Captulo 19 Seguridad .

    19.1 Seguridad de la base de datos .

    19.1.1 Amenazas .

    19.2 Contramedidas: controles informatizados .

    19.2.1 Autorizacin .

    19.2.2 Controles de acceso .

    19.2.3 Vistas .

    19.2.4 Copia de seguridad y recuperacin .

    19.2.5 Integridad .

    19.2.6 Cifrado .

    19.2.7 RAID (Redundant Array of Independent Disks) .

    19.3 Seguridad en el SGBD de Microsoft Office Access .

    19.4 Seguridad en el SGBD de Oracle .

    19.5 Seguridad de un SGBD en entornos web .' .

    19.5.1 Servidores proxy .

    19.5.2 Cortafuegos .

    19.5.3 Algoritmos de compendio de mensajes y firmas digitales .

    19.5.4 Certificados digitales .

    19.5.5 Kerberos .

    19.5.6 Secure Sockets Layer y Secure HTTP .

    19.5.7 Secure Electronic Transactions y Secure Transaction T echnology .

    19.5.8 Seguridad Java .

    19.5.9 Seguridad ActiveX .

    Resumen .

    Cuestiones de repaso .

    Ejercicios .

    Captulo 20 Gestin de transacciones .

    20.1 Soporte de transacciones .

    20.1.1 Propiedades de las transacciones

    20.1.2 Arquitectura de la base de datos

    20.2 Control de concurrencia .

    20.2.1 La necesidad del control de concurrencia

    20.2.2 Serializabilidad y recuperabilidad

    20.2.3 Mtodos de bloqueo .

    20.2.4 Interbloqueos .

    20.2.5 Mtodos de marca temporal .

    20.2.6 Ordenacin de marcas temporales multiversin

    20.2.7 Tcnicas optimistas .

    491

    493494

    495

    495

    497

    499

    501

    501

    502

    502

    503

    504

    508

    512

    512

    513

    514

    514

    514

    515

    515

    516

    518

    518

    519

    520

    521

    522

    524

    524

    525

    525

    528

    535

    541

    544

    547

    548

  • Contenido XXI

    20.2.8 Granularidad de los elementos de datos

    20.3 Recuperacin de la base de datos .....

    20.3.1 La necesidad de la recuperacin .

    20.3.2 Transacciones y recuperacin .

    20.3.3 Funcionalidades de recuperacin .

    20.3.4 Tcnicas de recuperacin .

    20.3.5 Recuperacin en un SGBD distribuida .20.4 Modelos avanzados de transacciones .

    20.4.1 Modelo de transacciones anidadas .

    20.4.2 Sagas .20.4.3 Modelo de transacciones multinivel ..

    20.4.4 Reestructuracin dinmica .

    20.4.5 Modelos de flujo de trabajo .

    20.5 Control de concurrencia y recuperacin en Oracle20.5.1 Niveles de aislamiento en Oracle .

    20.5.2 Coherencia de lectura multiversin .

    20.5.3 Deteccin interbloqueos .

    20.5.4 Copia de seguridad y recuperacin .Resumen .

    Cuestiones de repaso .

    Ejercicios .

    549

    552

    552

    553

    555

    558

    560

    561

    562

    564

    564

    565

    566

    567

    567

    568

    569

    569

    570

    571572

    21.5 Numeracin de las estrategias de ejecucin alternativas .

    21.5.1 Pipelining .21.5.2 rboles lineales .

    21.5.3 Operadores fsicos y estrategias de ejecucin

    21.5.4 Reduccin del espacio de bsqueda .

    583588

    589

    589

    590596

    603

    605

    606

    606

    607

    608

    609

    575

    576

    579

    583

    Procesamiento de consultas .

    Panormica del procesamiento de consultas .

    Descomposicin de consultas .

    Mtodo heurstico de optimizacin de consultas .

    21.3.1 Reglas de transformacin para las operaciones del lgebrarelacional .

    21.3.2 Estrategias de procesamiento heurstico .

    21.4 Estimacin de costes para las operaciones del lgebra relacional21.4.1 Estadsticas de la base de datos .

    21.4.2 Operacin de seleccin (S =

  • XXII Sistemasde basesde datos

    21.5.5 Enumeracin de rboles de profundidad izquierda. 610

    21.5.6 Optimizacin semntica de consultas 611

    21 .5.7 Tcnicas alternativas de optimizacin de consultas 612

    21.5.8 Optimizacin distribuida de consultas 612

    21.6 Optimizacin de consultas en Oracle 613

    21.6.1 Optimizacin basada en reglas y basada en costes. 613

    21.6.2 Histogramas 616

    21.6.3 Visualizacin del plan de ejecucin 618

    Resumen 619

    Cuestiones de repaso 620

    Ejercicios 621

    Parte 6 Bases de datos distribuidas y replicacin . 623

    Captulo 22 Bases de datos distribuidas: conceptos y diseo 625

    22.1 Introduccin 626

    22.1.1 Conceptos 626

    22.1.2 Ventajas y desventajas de los SGBDD 630

    22.1.3 Sistemas SGBDD homogneos y heterogneos 633

    22.2 Panormica de la comunicacin por red 635

    22.3 Funciones y arquitectura de un SGBDD 639

    22.3.1 Funciones de un SGBDD 639

    22.3.2 Arquitectura de referencia para un SGBDD 639

    22.3.3 Arquitectura de re,f.erenciapara un MDBS federado 641

    22.3.4 Componentes de un SGBDD 642

    22.4 Diseo de bases de datos relacionales distribuidas 643

    22.4.1 Asignacin de los datos 644

    22.4.2 Fragmentacin 645

    22.5 Transparencia en un SGBDD 653

    22.5.1 Transparencia de distribucin 653

    22.5.2 Transparencia de transaccin 655

    22.5.3 Transparencia de rendimiento 658

    22.5.4 Transparencia de SGBD 660

    22.5.5 Resumen de los conceptos de transparencia en un SGBDD 661

    22.6 Las doce reglas de Date para un SGBDD 661

    Resumen 662

    Cuestiones de repaso 664

    Ejercicios 664

    Captulo 23 Bases de datos distribuidas: conceptos avanzados 667

    23.1 Gestin de transacciones distribuidas 668

    23.2 Control de concurrencia distribuido 668

  • Contenido

    23.2.1 Objetivos .

    23.2.2 Serializabilidad distribuida .

    23.2.3 Protocolos de bloqueo .

    23.2.4 Protocolos de marcado temporal

    23.3 Gestin distribuida de interbloqueos ....

    23.4 Recuperacin de bases de datos distribuidas

    23.4.1 Fallos en un entorno distribuido ....

    23.4.2 Cmo afectan los fallos a la recuperacin ..

    23.4.3 Confirmacin en dos fases (2PC)

    23.4.4 Confirmacin en tres fases (3PC)

    23.4.5 Particionamiento de la red .

    23.5 El modelo X/Open de procesamiento distribuido de transacciones

    23.6 Optimizacin de consultas distribuidas .

    23.6.1 Localizacin de los datos

    23.6.2 Combinaciones distribuidas

    23.6.3 Optimizacin global .

    23.7 Distribucin en Oracle .

    23.7.1 Funcionalidad del SGBDD de Oracle

    Resumen .

    Cuestiones de repaso.

    Ejercicios .

    Captulo 24 Replicacin y bases de datos mviles .-24.1 Introduccin a la replicacin de bases de datos .

    24.2 Beneficios de la replicacin de base de datos .

    24.3 Aplicaciones de la replicacin .

    24.4 Componentes bsicos de la replicacin de bases de datos

    24.5 Entornos de replicacin de bases de datos .

    24.5.1 Replicacin sncrona y asncrona

    24.5.2 Propiedad de los datos .

    24.6 Servidores de replicacin .

    24.6.1 Funcionalidad del servidor de replicacin

    24.6.2 Problemas de implementacin .

    24.7 Introduccin a las bases de datos mviles

    24.7.1 Sistemas SGBD mviles .

    24.8 Replicacin en Oracle .

    24.8.1 Funcionalidad de replicacin de Oracle

    Resumen .

    Cuestiones de repaso .

    Ejercicios .

    XXIII

    669

    669

    670

    672

    673

    676

    676

    677

    678

    683

    687

    688

    691

    692

    695

    696

    700

    700

    705706

    706

    709

    710

    710

    711

    712

    712

    712

    713

    716

    717

    717

    720

    721

    722

    722

    726

    726

    727

  • XXIV Sistemasde basesde datos

    Parte 7 Bases de datos orientadasa objetos 729

    Resumen .

    Cuestiones de repaso .

    Ejercicios .

    Captulo 26 Bases de datos orientadas a objetos: conceptos .

    26.1 Introduccin a los modelos de datos orientados a objetos y a los SGBDOO

    26.1.1 Definicin de un SGBD orientado a objetos

    26.1.2 Modelos de datos funcionales .

    26.1.3 Lenguajes de programacin persistentes

    26.1.4 El Manifiesto de los sistemas de base de datos orientados

    a objetos .

    26.1.5 Estrategias alternativas para el desarrollo de un SGBDOO .

    26.2 Perspectivas de los SGBDOO .

    26.2.1 Tcnicas de transformacin de punteros

    755

    755

    758

    759

    760

    777

    780

    780

    782

    731

    732

    736

    740

    740

    741

    742

    744

    745

    746

    748

    749

    749

    750

    750

    752

    753

    754

    765

    766

    767

    768

    769

    770

    770

    771

    776

    Introduccin a los SGBD orientados a objetos

    Aplicaciones avanzadas de bases de datos

    Debilidades de los SGBDR .

    Conceptos de orientacin a objetos .

    25.3.1 Abstraccin, encapsulacin y ocultacin de la informacin .

    25.3.2 Objetos y atributos .

    25.3.3 Identidad de los objetos ..

    25.3.4 Mtodos y mensajes

    25.3.5 Clases .

    25.3.6 Subclases, superclases y herencia

    25.3.7 Anulacin y sobrecarga .

    25.3.8 Polimorfismo y enlace dinmico .

    25.3.9 Objetos complejos .

    25.4 Almacenamiento de objetos en una base de datos relacional' .

    25.4.1 Asignacin de las clases a relaciones .

    25.4.2 Acceso a los objetos en la base de datos relacional

    25.5 Sistemas de bases de datos de nueva generacin ..

    25.6 Diseo de bases de datos orientadas a objetos ....

    25.6.1 Comparacin del modelado de datos orientado a objetos

    y del modelado de datos conceptual .

    25.6.2 Relaciones e integridad referencial ..

    25.6.3 Diseo comportamental .

    25.7 Anlisis y diseo orientados a objetos con UML ..

    25.7.1 Diagramas UML .

    25.7.2 Utilizacin de UML en la metodologa de diseo de bases dedatos .

    Captulo 25

    25.1

    25.2

    25.3

  • Contenido

    26.2.2 Acceso a un objeto .26.3 Persistencia .

    26.3.1 Esquemasde persistencia .

    26.3.2 Persistenciaortogonal .26.4 Cuestionesrelativasa los SGBDOO

    26.4.1 Transacciones .

    26.4.2 Versiones .

    26.4.3 Evolucinde los esquemas .

    26.4.4 Arquitectura .

    26.4.5 Bancosde pruebas .

    26.5 Ventajasy desventajasde los SGBDOO

    26.5.1 Ventajas .

    26.5.2 Desventajas .

    Resumen .

    Cuestiones de repaso .

    Ejercicios : .

    Captulo 27 Bases de datos orientadas a objetos: estndares ysistemas .

    27.1 ObjectManagementGroup _ .27.1.1 Preliminares .

    27.1.2 La arquitecturaCORBA .

    27.1.3 Otrasespecificacionesde OMG .

    27.1.4 Arquitecturabasadaen modelos ...

    27.2 Estndarde objetosde datos ODMG 3.0, 1999 .

    27.2.1 ObjectDataManagementGroup .

    27.2.2 El modelode objetos .

    27.2.3 El lenguajede definicinde objetos .

    27.2.4 El lenguajede consultade objetos .

    27.2.5 Otraspartesdel estndarODMG .

    27.2.6 Correspondenciaentreel diseoconceptualy el diseolgico(orientadoa objetos) .

    27.3 ObjectStore .

    27.3.1 Arquitectura .

    27.3.2 Desarrollode unaaplicacinObjectStore .

    27.3.3 Definicinde datos en ObjectStore .

    27.3.4 Manipulacinde datos en ObjectStore .Resumen .

    Cuestiones de repaso .

    Ejercicios .

    Captulo 28 Bases de datos objeto-relacionales .

    28.1 Introduccina los sistemasde basesde datos objeto-relacionales .

    xxv

    785

    787

    787

    788

    790

    790

    790

    791

    794

    796

    799

    799

    800

    802803804

    805806

    806

    809

    810

    812

    813

    815

    815

    823

    826

    832

    834

    835

    835

    837

    839

    842

    845846

    846

    847

    848

  • XXVI Sistemasde basesde datos

    28.2 Los manifiestos de las bases de datos de tercera generacin .

    28.2.1 El manifiesto de los sistemas de bases de datos de tercera

    generacin .

    28.2.2 El Tercer manifiesto .

    28.3 Postgres: un SGBDOR pionero

    28.3.1 Objetivos de Postgres .

    28.3.2 Tipos abstractos de datos

    28.3.3 Relaciones y herencia .....

    28.3.4 Identidad de los objetos .

    28.4 SQL: 1999 y SQL:2003 .

    28.4.1 Tipos de filas .

    28.4.2 Tipos definidos por el usuario .

    28.4.3 Subtipos y supertipos .....

    28.4.4 Rutinas definidas por el usuario

    28.4.5 Polimorfismo .

    28.4.6 Tipos de referencia e identidad de los objetos

    28.4.7 Creacin de tablas

    28.4.8 Consulta de datos .

    28.4.9 Tipos de coleccin

    28.4.10 Vistas tipadas .

    28.4.11 Mdulos almacenados persistentes

    28.4.12 Disparadores .

    28.4.13 Objetos de gran tamao

    28.4.14 Recursin ":" .

    28.5 Procesamiento y optimizacin de consultas

    28.5.1 Nuevos tipos de ndices .

    28.6 Extensiones orientadas a objetos en Oracle ..

    28.6.1 Tipos de datos definidos por el usuario

    28.6.2 Manipulacin de tablas de objetos

    28.6.3 Vistas de objetos ....

    28.6.4 Privilegios .....

    28.7 Comparacin de los SGBDOR y los SGBDOO

    Resumen .

    Cuestiones de repaso .

    Ejercicios .

    Parte 8 Las bases de datos y la World Wide Web .

    Captulo 29 Tecnologa web y sistemas de gestin de bases de datos .

    29.1 Introduccin a Internet y a la Web .

    29.1 .1 Intranets y Extranets .

    29.1.2 Comercio electrnico y e-Business .

    851

    851

    852

    854

    854

    854

    855

    856

    856

    857

    858

    861

    863

    864

    865

    865

    868

    869

    872

    873

    874

    877

    879

    880

    883

    884

    884

    889

    890

    891

    891

    892

    893

    893

    895

    897

    898

    899

    900

  • Contenido

    29.2 La Web .

    29.2.1 HTTP .

    29.2.2 HTML .

    29.2.3 Direcciones URL .

    29.2.4 Pginas web estticas y dinmicas .

    29.2.5 Servicios web .

    29.2.6 Requisitos para la integracin web-SGBD .

    29.2.7 Ventajas y desventajas de la integracin web-SGBD .

    29.2.8 Tcnicas para la integracin de los SGBD y la Web .

    29.3 Lenguajes script .

    29.3.1 JavaScript y JScript .

    29.3.2 VBScript .

    29.3.3 Perl y PHP .

    29.4 Common Gateway Interface .

    29.4.1 Paso de informacin al script CGI .

    29.4.2 Ventajas y desventajas de CGI .

    29.5 Cookies HTTP .

    29.6 Extensiones del servidor web .

    29.6.1 Comparacin de CGI y de las extensiones de servidor .

    29.7 Java .

    29.7.1 JDBC .

    29.7.2 SQLJ .

    29.7.3 Comparacin de JDBC y SQLJ .-29.7.4 Persistencia gestionada por el contenedor (CMP) .

    29.7.5 Objetos de datos Java (JDO) .

    29.7.6 Servlets Java .

    29.7.7 Pginas JavaServer .

    29.7.8 Servicios web Java .

    29.8 Plataforma web de Microsoft .

    29.8.1 Acceso universal a datos .

    29.8.2 ASP y ADO .

    29.8.3 Servicios de datos remotos .

    29.8.4 Comparacin de ASP y JSP .

    29.8.5 Microsoft .NET .

    29.8.6 Servicios web de Microsoft .

    29.8.7 Microsoft Office Access y generacin de pginas web .

    29.9 Plataforma Internet de Oracle .

    29.9.1 Oracle Application Server (OracleAS) .

    Resumen .

    Cuestiones de repaso .

    Ejercicios .

    XXVII

    901

    902

    904

    904

    906

    907

    907

    908

    912

    913

    913

    914

    915

    915

    917

    918

    919

    920

    921

    921

    925930

    930

    931

    935

    939

    940

    940

    941

    943

    943

    946

    947

    948

    951

    951

    952

    953

    958

    960

    960

  • XXVIII Sistemasde basesde datos

    Captulo 30 Datos semiestructurados y XML 963

    30.1 Datos semiestructurados 964

    30.1.1 Modelo de intercambio de objetos (OEM) 966

    30.1.2 Lore y Lorel 966

    30.2 Introduccin a XML 970

    30.2.1 Panormica de XML 972

    30.2.2 Definiciones de tipos de documentos (DTD) 975

    30.3 Tecnologas relacionadas con XML 978

    30.3.1 Interfaces DOM y SAX 978

    30.3.2 Namespaces 979

    30.3.3 XSL y XSL T 979

    30.3.4 XPath (XML Path Language) 980

    30.3.5 XPointer (XML Pointer Language) 981

    30.3.6 XLink (XML Linking Language) 981

    30.3.7 XHTML 982

    30.3.8 Simple Object Access Protocol (SOAP) 982

    30.3.9 Web Services Description Language (WSDL) 983

    30.3.10 Universal Discovery, Description y Integration (UDDI) 983

    30.4 XML Schema 985

    30.4.1 RDF (Resource Description Framework) 992

    30.5 Lenguajes de consulta para XML 993

    30.5.1 Extensin de Lore y Lorel para tratar datos XML 994...

    30.5.2 XML Query Working Group 995

    30.5.3 XQuery - un lenguaje de consulta para XML 996

    30.5.4 XML Information Set 1006

    30.5.5 XQuery 1.0 and XPath 2.0 Data Model 1007

    30.5.6 Semntica formal 1012

    30.6 Bases de datos y XML 1019

    30.6.1 Almacenamiento de XML en bases de datos 1019

    30.6.2 XML y SQL 1021

    30.6.3 Bases de datos XML nativas 1027

    30.7 XML en Oracle 1028

    Resumen 1031

    Cuestiones de repaso 1033

    Ejercicios 1034

    Parte 9 Inteligencia empresarial 1035

    Captulo 31 Conceptos de almacenes de datos .

    31.1 Introduccin a los almacenes de datos .

    31.1.1 Evolucin de los almacenes de datos .

    1037

    1038

    1038

  • Contenido

    31.1.2 Conceptos de almacenes de datos .

    31.1.3 Ventajas de los almacenes de datos

    31.1.4 Comparacin de los sistemas Ol TP Y los almacenes de datos

    31.1.5 Problemas de los almacenes de datos .

    31.2 Arquitectura de un almacn de datos .

    31.2.1 Datos operacionales .

    31.2.2 Repositorio de datos operacionales ..

    31.2.3 Gestordecarga .

    31.2.4 Gestor del almacn de datos ..

    31.2.5 Gestor de consultas .

    31 .2.6 Datos detallados .

    31.2.7 Datos poco resumidos y muy resumidos

    31.2.8 Datos de archivo/copia de seguridad ...

    31.2.9 Metadatos .

    31.2.10 Herramientas de acceso para usarios finales

    31 .3 Flujos de datos en un almacn de datos .

    31.3.1 Flujo de entrada .

    31 .3.2 Flujo ascendente

    31 .3.3 Flujo descendente

    31.3.4 Flujo de salida .

    31.3.5 Metaflujo .

    31.4 Herramientas y tecnologas de almacn de datos .

    31.4.1 Herramientas de extraccin, limpieza y transformacin

    31.4.2 Sistemas SGBD para almacenes de datos .

    31.4.3 Metadatos de un almacn de datos ....

    31.4.4 Herramientas de administracin y gestin

    31 .5 Mercados de datos .

    .31 .5.1 Razones para crear un mercado de datos .

    31.5.2 Cuestiones fundamentales en los mercados de datos

    31.6 Almacenes de datos en Oracle .

    31.6.1 Oracle9i .

    Resumen .

    Cuestiones de repaso .

    Ejercicios .

    Captulo 32 Diseo de almacenes de datos .

    32.1 Diseo de la base de datos para un almacn de datos .

    32.2 Modelado de la dimensionalidad .

    32.2.1 Comparacin de los modelos DM y ER

    32.3 Metodologa de diseo de bases de datos para almacenes dedatos .

    XXIX

    1038

    1040

    1042

    1043

    1044

    1044

    1045

    1045

    1045

    1045

    1045

    1046

    1046

    1046

    1046

    1048

    1049

    1049

    1050

    1050

    1051

    1051

    1051

    1052

    1054

    1056

    1056

    1058

    1058

    1060

    1060

    1062

    1064

    1065

    10671067

    1068

    1071

    1072

  • XXX Sistemasde basesde datos

    32.4 Criterios para verificar la dimensionalidad de un almacn dedatos .

    32.5 Diseo de almacenes de datos con Oracle .

    32.5.1 Componentes de Oracle Warehouse Builder .

    32.5.2 Utilizacin de Oracle Warehouse Builder .

    Resumen .

    Cuestiones de repaso.

    Ejercicios .

    Captulo 33 OlAP .33.1 Procesamiento analtico en lnea .

    33.1 1 Bateras de prueba OlAP .

    33.2 Aplicaciones OlAP .

    33.2.1 Beneficios de OlAP .

    33.3 Representacin de datos multidimensionales .

    33.4 Herramientas OlAP .

    33.4.1 Reglas de Codd para las herramientas OlAP .

    33.4.2 Categoras de herramientas OlAP .

    33.5 Extensiones OlAP al estndar SOL .

    33.5.1 Capacidades de agrupacin ampliadas .

    33.5.2 Operadores OlAP elementales .

    33.6 Aplicaciones OlAP en Oracle .

    33.6.1 Entorno OlAP de Oracle .-33.6.2 Plataforma para aplicaciones de inteligencia empresarial .

    33.6.3 Base de datos Oracle9i .

    33.6.4 Oracle OlAP .

    33.6.5 Prestaciones .

    33.6.6 Gestin del sistema .

    33.6.7 Requisitqs del sistema .

    Resumen .

    Cuestiones de repaso .

    Ejercicios .

    Captulo 34 Minera de datos .

    34.1 Minera de datos .

    34.2 Tcnicas de minera de datos .

    34.2.1 Modelado predictivo .

    34.2.2 Segmentacin de la base de datos .

    34.2.3 Anlisis de enlaces .

    34.2.4 Deteccin de desviaciones .

    34.3 El proceso de minera de datos .

    34.3.1 El modelo CRISP-DM .

    1081

    1081

    1081

    1082

    1086

    1087

    1087

    1089

    1090

    1090

    1091

    1092

    1093

    1095

    1095

    1097

    1100

    1101

    1105

    1107

    1107

    1108

    1108

    1110

    1111

    1111

    1112

    1112

    1112

    1113

    1115

    1115

    1117

    1117

    1119

    1120

    1120

    1120

    1121

  • Contenido XXXI

    3404 Herramientas de minera de datos .

    34.5 Minera de datos y almacenes de datos .

    34.6 Oracle Data Mining (ODM) .

    34.6.1 Capacidades de minera de datos .

    34.6.2 Soporte para aplicaciones de minera de datos.

    34.6.3 Predicciones y asociaciones ",'

    34.604 Entorno de Oracle Data Mining .

    Resumen .

    Cuestionesde repaso , .

    Ejercicios .

    Apndices

    A Especificacin de requisitos de usuario para el caso deestudio de DreamHome .

    A.l Vistas de usuario Branch de DreamHome .

    A.l .1 Requisitos de datos .

    A.l.2 Requisitos de transacciones (ejemplos)

    A.2 Vistas de usuario Staff para DreamHome

    A.2.1 Requisitos de datos .

    A.2.2 Requisitos de transacciones (ejemplo) .

    B Otros casos de estudio .

    B.l Caso de estudio UniversityAccommodationOrrice .

    13.1.1 Requisitos de datos .

    B.l.2 Transacciones de consulta (ejemplos)

    B.2 Caso de estudio EasyDriveSchool or Motoring

    B.2.1 Requisitos de datos .

    B.2.2 Transacciones de consulta (ejemplos) .

    B.3 El caso de estudio WellmeadowsHospital.

    B.3.1 Requisitos de datos .

    B.3.2 Requisitos de transacciones (ejemplo) .

    e Organizaciones de archivos e ndices .C.l Conceptos bsicos .

    C.2 Archivos desordenados .

    C.3 Archivos ordenados " .

    CA Archivos hash .

    CA.l Hashdinmico .

    CA.2 Limitaciones de las tcnicas hash .

    C.5 ndices .

    C.5.1 Tipos de ndices .

    C.5.2 Archivos secuenciales indexados .

    1123

    1124

    1124

    1124

    1125

    1125

    1125

    1126

    1127

    1127

    1129

    1131

    1131

    1131

    1132

    1133

    1133

    1134

    1137

    1137

    1137

    1139

    1140

    1140

    1140

    1141

    1141

    1147

    1149

    1150

    1151

    1151

    1153

    1155

    1156

    1157

    1157

    1158

  • XXXII Sistemasde basesde datos

    C.5.3 ndices secundarios .

    C.5.4 ndices multinivel

    C.5.5rbolesB+ .

    C.5.6 ndices de mapa de bits

    C.5.7 ndices de combinacin .....

    C.6 Tablas agrupadas y no agrupadas ..

    C.6.1 Clsteres indexados .

    C.6.2 Clsteres hash .

    C.7 Directrices para seleccionar la organizacin de los archivos

    Resumen del Apndice .

    O Cundo es relacional un SGBD?

    E SOL procedimental .

    E.1 SOL embebido .

    E.1 .1 Instrucciones SOL embebidas simples ..

    E.1.2 rea de comunicaciones de SOL

    E.1.3 Variables del lenguaje host ....

    E.1.4 Extraccin de datos mediante SOL embebido y cursores

    E.1.5 Utilizacin de cursores para modificar los datos

    E.1.6 Estndar ISO para el SOL embebido

    E.2 SOL dinmico .

    E.3 El estndar ODBC (Open Database Connectivity) .

    E.3.1 La arquitectura ODBC .

    E.3.2 Niveles de~umplimiento ODBC ..

    Resumen del Apndice .

    Cuestiones de repaso .

    Ejercicios .

    F Notaciones alternativas para modelado ER .

    F.1 Modelad9 ER utilizando la notacin Chen .

    F.2 Modelado ER utilizando la notacin en pie de cuervo .

    G Resumen de la metodologa de diseo de bases de datosrelacionales .

    1159

    1160

    1160

    1162

    1164

    1165

    1165

    1166

    1167

    1170

    1173

    1177

    1178

    1178

    1179

    1182

    1183

    1186

    1188

    1189

    1190

    1191

    1192

    1195

    1195

    1196

    1197

    1197

    1197

    1203

    Referencias 1209

    Lecturas adicionales 1223

    ndice 1237

  • Prefacio

    Introduccin

    La historiade investigacinensistemasdebasesdedatosen los ltimos30 aoses la deunainvestigacindeexcepcionalproductividad,quehahechoquelos sistemasdebasesdedatosseanprobablementeel des-arrollomsimportanteenel campodela ingenieradelsoftware.Las basesdedatosconstituyenahorael fun-damentode todos los sistemasde informaciny han cambiadode manerafundamentalla forma en quemuchasorganizacionesoperan.En particular,los desarrollosrelativosa estatecnologaen los ltimosaoshanproducidosistemasquesonmuchomspotentesy msintuitivosdeutilizar,lo queha hechoquehayasistemasdebasesdedatosa disposicindeun nmerocadavezmayordeusuarios.Desafortunadamente,laaparentesimplicidaddeestossistemashahechoquealgunosusuarioscreenbasesdedatosy aplicacionessinlos necesariosconocimientoscomoparaconstruirun sistemaefectivoy eficiente.De aquprovienela 'crisisdelsoftware'o, comoalgunasvecessela denomina,la 'depresindelsoftware'quepareceafectaratodoslosdesarrollosenestecampo.

    El estmulooriginalparala escrituradeestelibroprovienedeltrabajode los autoresdentrodelsectordelastecnologasde la informacin,dondehanestadoproporcionandoserviciosdeconsultorasobreel diseodebasesdedatosparanuevossistemassoftwarey, enmuchasocasiones,resolviendolosproblemasdelossis-temasexistentes.Adems,el trabajoacadmicode los autoreslespermitientrarencontactoconproblemassimilaresexperimentadosporotrosusuariosdistintos,losestudiantes.Los objetivosdeestelibroson,porello,proporcionarun textoquepresentala teorarelativaa lasbasesdedatosde la formamsclaraposibley, enconcreto,proporcionarunametodologadeldiseodebasesdedatosquepuedaserutilizadaporlectorestantotcnicoscomono tcnicos.

    La metodologapresentadaenestelibroparasistemasdegestindebasesdedatosrelacionales(SGBDR)(el sistemaactualmentepredominanteparalasaplicacionesdecarcterempresarial)hasidoprobadaa 10 largodelos aosenentornastantoempresarialescomoacadmicos.Estcompuestadetresfasesprincipales:dise-o conceptual,lgicoy fisico de la basededatos.La primerafasecomienzaconla produccindeun mode-lo conceptualde losdatosqueseaindependientedetodaslasconsideracionesfisicas.Estemodeloserefinaacontinuacinen la segundafase,paraobtenerunmodelolgico de los datosdondeseeliminenlasestructu-rasquenopuedanrepresentarseen lossistemasrelacionales.En la tercerafase,el modelolgicode los datossetraduceaun diseofisicoadecuadoal SGBD elegido.La fasedediseofisico consideralasestructurasdealmacenamientoy mtodosdeaccesorequeridosparaun accesoseguroy eficientea la basededatosconte-nidaenel almacenamientosecundario.

    La metodologadecadaunadelasfasessepresentaenformadeunaseriedepasos.Parael diseadorinex-perto,recomendamosquelospasossesiganenel ordendescrito,proporcionndosedirectricesquele ayuda-rndurantetodoesteproceso.Parael diseadormsexperimentado,la metodologapuedesermenospres-criptiva,actuandomscomoun marcodetrabajoo listadecomprobacin.Paraayudara queel lectorpuedautilizarla metodologay comprenderlosaspectosmsimportantes,hemosdescritoestametodologautilizan-do un ejemplorealista,basadoenun casodeestudiointegrado,DreamHome.Adems,enel ApndiceB seproporcionancasosdeestudioadicionalesparaquelos lectorespuedanaplicarla metodologapor s mismos.

  • XXXIV Sistemasde basesde datos

    UML (Unified Modeling Language)Cadavezms,lasempresasestnestandarizandola formademodelarlosdatos,seleccionandounatcnicademodeladodedatosconcretay utilizndolaentodossusproyectosdedesarrollodebasesdedatos.Un mode-lo dedatosdealtonivelmuypopularqueseutilizaenel diseoconceptual/lgicodebasesdedatos,y queesel queempleamosenestelibro,estbasadoen losconceptosdelmodeloentidad-relacin(ER). Actualmenteno hayningunanotacinestndarparalos modelosER, en la mayorade los libros dedicadosal diseodebasesdedatosparaservidoresSGBD relacionalestiendena usarunadedosnotacionesconvencionales:

    lanotacinChen,compuestaporrectngulosquerepresentanentidadesy rombos querepresentanrela-ciones,conlneasqueenlazanlos rectngulosy los rombos;o

    la notacinenpie decuervo,quedenuevoconstaderectngulosquerepresentanlasentidadesy l-neasentrelas entidadesquerepresentanrelaciones,con un smbolodepie de cuervoenuno de losextremosde la lneapararepresentarlasrelacionesunoamuchos.

    Ambasnotacionessonsoportadaspor lasherramientasCASE actuales.Sin embargo,puedenresultarbastan-teengorrosasdeutilizary algodifcilesdeexplicar.Con anterioridada estaedicin,utilizbamosla notacinde Chen; sin embargo,despusde procesarun completocuestionarioque fue elaboradopor PearsonEducation,vimosquehabaun consensogeneralenquelanotacindeberacambiarse,parautilizarel ltimolenguajede modeladoorientadoa objetos,denominadoUML (Unified Modeling Language).UML esunanotacinquecombinaelementosde lastrestendenciasprincipalesdediseoorientadoa objetos:el modela-doOMT deRumbaugh,el anlisisy diseoorientadoaobjetosdeBoochy la tcnicaObjectorydeJacobson.

    Hay tresrazonesprincipalesparaadoptarunanotacindistinta:(1)UML seestconvirtiendoenunestn-dardel sector;por ejemplo,OMG (ObjectManagementGroup)ha adoptadoUML comonotacinestndarparalosmtodosdelos objetos;(2)UML esmsclaroy fcil deutilizar;(3)UML estsiendoahoraadopta-doenel mundoacadmicoparaensearanlisisy diseoorientadosa objetos,y la utilizacindeUML en losmdulosdebasededatosproporcionaunamayorsinergia.Por tanto,enesteedicinhemosadoptadola nota-cindediagramasdeclasesdeUML. Estamosconvencidosdequeel lectorencontrarestanotacinmsfcildeentendery deutilizar.AntesdehacerestatransicinaUML, losautoreshemosdedicadounaconsiderablecantidaddetiempoaexperimentarconUML ya comprobarsuadecuacinal diseodebasesdedatos,habien-do concluidoestetrabajocon la publicacinde un libro a travsdePearsonEducationllamadoDatabaseSolutions:A Step-by-StepGuidetoBuildingDatabases.Dicho libroutilizalametodologadediseoy dedes-arrollodebasesdedatosendoscasosdeestudio,unoparael SGBD MicrosoftOfficeAccessy otroutilizan-do Oraclecomobasededatosobjetivo.Este libro contienetambinmuchosotroscasosdeestudioconsolu-cionesdeejemplo.

    Novedades en la cuarta edicin

    La cuartaedicindel librohasidorevisadaparamejorarla legibilidad,paraactualizaro ampliarel tratamien-

    to dedeterminadostemasy paraincluirotrostemasnuevos.Los cambiosprincipalesenla cuartaedici~ Un tratamientomsampliodeltemadelanormalizacin(el captulooriginalhasidodivididoendos).

    Una metodologasimplificadaparael diseodebasesdedatosutilizandola notacinUML paralosdiagramasER.

    Una nuevaseccinsobreel usodeotraspartesdeUML dentrodelanlisisy el diseo,cubriendolostemasdelos casosdeuso,diagramasdesecuencia,diagramasdecolaboracin,diagramasdeestadosy diagramasdeactividad.

    Una nuevaseccindedicadaa la enumeracindeestrategiasdeejecucindentrodelprocesodeopti-mizacindeconsultas,paraservidoresSGBD tantocentralizadoscomodistribuidos.

    Tratamientode las especificacionesOMG, incluyendoCWM (CommonWarehouseMetamodel)yMDA (Model DrivenArchitecture).

    Actualizacindel captulodebasesde datosobjeto-relacionales,paraincluir informacinacercadelnuevoestndarSQL:2003.

  • Prefacio XXXV

    Un tratamientoampliadode la integracinde los SGBD con la Web, incluyendolos temasde CMP(Container-ManagedPersistence),IDO (JavaDataObjects)y ADO.NET.

    Un tratamientoampliadode XML, SOAP, WSDL, UDDI, XQuery 1.0y XPath 2.0 (incluyendoelmodelodedatosrevisadoy la semnticaformal),el estndarSQL:2003SQL/XML, el almacenamien-to deinformacinXML enbasesdedatosrelacionalesy el temadelasbasesdedatosXML nativas.

    Un tratamientoampliadodeOLAP y dela mineradedatos,incluyendolafuncionalidaddeSQL:2003y el modeloCRISP-DM.

    Actualizacindel tratamientode Oracle9i(panormicade Oracle1Og) y deMicrosoft Office Access2003.

    Recursoswebadicionales,incluyendoun captuloampliadodedicadoa la organizacindearchivosya las estructurasde almacenamiento,una implementacinweb completadel caso de estudiodeDreamHome,unaguadeusuarioparaOracley msejemplosparael apndicededicadoa la integra-cin desistemasSGBD y la Web.

    Audiencia objetivo

    Este libro estpensadocomotextoparaun cursodeunoa dossemestressobregestino diseodebasesdedatos,a nivel introductorio,normalo avanzado.Dichoscursossonnormalmenteincluidosen los currcularelacionadosconlos sistemasdeinformacin,conlastecnologasdela informacino con la informtica.

    El librotambinpudeutilizarsecomotextodereferenciaporpartede losprofesionalesdelastecnologasde la informacincomoporejemploanalistasdesistemas,diseadores,programadoresdeaplicaciones,pro-gramadoresde sistemas,administradoresde basesde datosy personasinteresadasen general.Debido alampliousoactualdelos sistemasdebasesdedatos,estetipo deprofesionalesinteresadospuedeestartraba-jando encualquierempresadondesenecesiteemplearunabasededatos.

    Resultaratil paralos estudiantesdisponerde ciertosconocimientossobreorganizacindearchivosyestructurasdedatos,por lo quehemosincluidodichainformacinenelApndiceC comopreparacinparael Captulo 17dedicadoal diseofsico de basesdedatosy el Captulo21, dedicadoal procesamientodeconsultas.Lo idealesqueestosconocimientoslos hubieraadquiridoel lectoren algncursoanterior,peroencasodeno serposible,elApndiceC puederepasarseal comienzodelcurso,inmediatamentedespusdelCaptulo l.

    Tambinconvienetenerunosciertosconocimientossobrealgnlenguajedeprogramacindealtonivel,comoC, parapodercomprenderelApndiceE dedicadoal SQL embebidoy al SQL dinmico,y la Seccin27.3,dedicadaa ObjectStore.

    Caractersticas distintivas

    (1)Una metodologapasoa pasofcil deutilizarparael diseoconceptualy lgico de basesde datos,basadaenel ampliamenteaceptadomodeloentidad-relacin,utilizndosela normalizacintcnicade

    validacin.Hay un casodeestudiointegradoquemuestracmoutilizarla metodologa.

    (2) Unametodologapasoapasofcil deutilizarparael diseofsico debasededatos,quecubreeltta-blecimientode la correspondenciaentreel diseolgico y la implementacinfsica, la selecci'n deorganizacionesde archivoe ndicesapropiadospara las aplicacionesy la utilizacindetcnic deintroduccinderedundanciacontrolada.De nuevo,hayun casodeestudiointegradoquemuestrautilizarla metodologa.

    (3) Hay captulosindependientesquemuestrancmoencajael diseodela basededatosdentrodelciclodedesarrollode lossistemasdebasededatos,cmopuedenutilizarselastcnicadedeterminacindehechosparaidentificarlosrequisitosdelsistemay cmoencajaUML dentrodeestametodologa.

    (4)Unapresentacinclaray fcil deentender,condefinicionesclaramenteresaltadas,conunaexposicinpreliminarde los objetivosdelcaptuloy conun resumendecadacaptulo.Seproporcionanentodoslos captulosnumerososejemplosy diagramasparailustrarlos conceptos.A lo largodetodoel libro

  • XXXVI Sistemasde basesde datos

    hayun casodeestudiorealistaintegrado,pudindoseutilizarotroscasosdeestudioadicionalescomoproyectosparalos estudiantes.

    (5)Un tratamientocompletode los msrecientesestndaresformalesy deJacto: SQL (StructuredQueryLanguage),QBE (Query-By-Example)y el estndarODMG (ObjectDataManagementGroup)parabasesdedatosorientadasa objetos.

    (6)Trescaptulosdetipotutorialsobreel estndarSQL, quecubrentantoel SQL interactivocomoel SQLembebido.

    (7)Un captulodenivel introductorioquecubredosde los SGBD comercialesmspopulares:MicrosoftOffice Accessy Oracle.Muchos de los captulossubsiguientesproporcionaninformacinsobreelmodoenqueMicrosoftOfficeAccessy Oraclesoportanlos mecanismosanalizados.

    (8)Un tratamientocompletodelos conceptosy problemasrelativosa los SGBD distribuidosy los servi-doresdereplicacin.

    (9)Una introduccincompletaa los conceptosy cuestionesrelativosa los SGBD basadosen objetos,incluyendounarevisindelestndarODML y untutorialsobrelasfuncionalidadesdegestindeobje-tos incluidasenla ltimaversindel estndarSQL, SQL:2003.

    (10) Un tratamientocompletode la utilizacinde la Web comoplataformaparaaplicacionesde basededatos,conmuchosejemplosdecdigoqueexplicancmoaccederabasesdedatosatravsdelaWeb.En particular,secubreel temadela persistenciapresentandotecnologastalescomoCMP (Container-ManagedPersistence),JDO (Java Data Objects),JDBC, SQLJ, ADO (ActiveX Data Objects),ADO.NET y PSP (OraclePL/SQL Pages).

    (11) Una introduccina losdatossemiestructuradosy a surelacinconXML y untratamientocompletodeXML y sustecnologasrelacionadas.En particular,sepresentanXML Schema,XQuery y el modelodedatosy la semnticaformaldeXQuery.Tambinseanalizala integraci~ndeXML conlasbasesdedatosy seexaminanlasextensionesaadidasa SQL:2003parapermitirlapublicacindedatosXML.

    (12) Una introduccincompletaal temade los almacenesde datos,el procesamientoanalticoen lnea(OLAP, OnlineAnalyticalProcessing)y la mineradedatos.

    (13) Una introduccincompletaal modeladCMiedimensionalidadparael diseode basesde datosparaalmacenesde datos.Se utilizaun casode estudiointegradoparademostrarunametodologaparaeldiseodealmacenesdedatos.

    (14) Un tratamientode los conceptosde implementacinde los sistemasSGBD, incluyendoel controldeconcurrenciay recuperacin,la seguridady el procesamientoy optimizacindeconsultas.

    Pedagoga

    Antesdecomenzara escribirel libro,unodelos objetivosquenosplanteamoseraqueel textofuerafcil deseguiry comprenderparalos profesores,independientementedesuformaciny experiencia.Segnla expe-rienciade los autoresen la utilizacinde librosdetexto,queerabastanteconsiderableantesdeacometerunproyectodeestetipo,y teniendotambinencuentala opininde los colegas,clientesy estudiantes,vimosquehabadistintascaractersticasquea los lectoreslesgustabano lesdisgustaban.Teniendoencuentaestoscomentarios,decidimosadoptarel siguienteestiloy la siguienteestructuraparael libro:

    Un conjuntodeobjetivos,claramenteidentificadosal principiodecadacaptulo.

    Cadaconceptoimportantequesepresentasedefiney seresaltaclaramente,utilizandoun tipode letradiferentea la delrestodel texto.

    Seutilizandiagramaspor todoel textoparaampliary clarificarlos conceptos.

    Sedecidiadoptarunaorientacinmuyprctica:conestefin, cadacaptulocontienemuchosejemplosresueltosqueilustranlos conceptospresentados.

    Un resumenal finaldecadacaptulo,enel quesecubrenlosprincipalesconceptosquesehanpresen-

    tadot7o:----

  • Prefacio XXXVII

    ~ Un conjuntodecuestionesderepaso,cuyasrespuestasseencuentradentrodelpropiotexto.

    Un conjuntodeejerciciosquelosprofesorespuedenutilizarparaverificarquelosestudianteshancom-prendidoel captulo,pudiendoencontrarselasrespuestasenla Gua delProfesorqueacompaaaestelibro.

    Gua del profesorUn suplementomuycompletoquecontienenumerososrecursosdeayudaparala imparticindelmaterialcon-tenidoenestelibro;estaguapuedesolicitarseaPearsonEducation.La gua incluye: .

    Estructurasdecurso.Se incluyensugerenciasrelativasa los captulosquepuedenincluirseendiver-sostiposdecursos.

    Sugerenciaspedaggicas.Incluyensugerenciassobrelecturasrecomendadas,consejospedaggicoseideassobreproyectosquelos estudiantespuedenacometery queestnrelacionadosconel contenidodedistintoscaptulos.

    Soluciones.Seproporcionanrespuestasdeejemploparatodaslascuestionesderepasoy ejercicios.

    Preguntasdeexamen.Preguntasde examensimilaresa las cuestionesy ejerciciosdel final de cadacaptulo,consuscorrespondientessoluciones.

    Plantillasdetransparencia.Un conjuntodetransparenciaselectrnicasquecontienenlospuntosprin-cipalesde cadacaptulo,con ilustracionesmsgrandesy tablasextradasdel texto,queayudarnalprofesora ligar lasexplicacionesy lasdiscusionesde la claseconel materialcontenidoenel libro.

    Una GuadelUsuarioparaMicrosoftOfficeAccess2003,parael trabajode losestudiantesenellabo-ratorio.

    Una Gua delUsuarioparaOracle9i,parael trabajode los estudiantesenel laboratorio.

    Un captuloampliadosobreorganizacionesdearchivosy estructurasdealmacenamiento.

    Una implementacinwebdelcasodeestudiodeDreamHome.

    El lectorinteresadopuedeencontrarinformacinadicionalsobrela GuadelProfesory el libroenel sitiowebdePearsonEducationen:

    .".

    http://www.booksites.net/connbegg

    Organizacin del libro

    Parte 1 IntroduccinLa Parte1del libro sirvecomointroduccinal temadelos sistemasdebasesdedatosy el diseodebasesdedatos.

    El Captulo 1 introducelosconceptosde la gestindebasededatos,examinandolosproblemasquepresen-tabanlosprecursoresdelos sistemasdebasededatos,quesonlos sistemasbasadosenarchivos,y lasventa-jas ofrecidaspor la utilizacindeunabasededatos.El Captulo 2 examinael entornode unabasede datos,analizandolas ventajasqueofrecela arquitecturaANSI-SPARC entresniveles,introduciendolos modelosdedatosmspopularesy resaltandolas funcionesquedebeproporcionarunSGB multi-usuario.El captuloexaminatambinlaarquitecturasoftwaresubyacen-tedelosSGBD, pudiendoomitirseestaexposicinenloscursosintroductoriosdedicadosa lagestindebasesdedatos.

    Parte 2 El modelo relacional y los lenguajes relacionalesLa Parte2 del librosirvecomointroduccinal modelorelacionaly a los lenguajesrelacionales,especialmen-te el lgebrarelacionaly el clculorelacional,QBE (Query-By-Example)y SQL (StructuredQuery Lan-

  • XXXVIII Sistemasde basesde datos

    guage).Esta parteexaminatambindos sistemascomercialesmuy populares:Microsoft Office Access yOracle.

    El Captulo 3 introducelos conceptossubyacentesal modelorelacional,queeselmodelodedatosmspopu-lar en la actualidady el que msa menudose elige paraaplicacionesestndarde carcterempresaria!.Despusdepresentarlaterminologay mostrarlarelacinexistenteconlasrelacionesmatemticas,seexpli-cael temadelasreglasdeintegridadrelacionales,dela integridaddeentidadesy dela integridadreferencia!.El captuloconcluyecon unapanormicadel temade las vistas,del quesehablamsextensamenteen elCaptulo6.

    El Captulo 4 presentael lgebrarelacionaly el clculorelacionalcon unaseriede ejemplosparailustrartodaslasoperaciones.Puedeomitirseenun cursointroductoriosobregestindebasesdedatos.Sin embar-go,el lgebrarelacionalesnecesariaparacomprenderlos temasdeprocesamientodeconsultasdel Captulo21 y de la fragmentacinen los SGBD distribuidosdelCaptulo22.Adems,los aspectoscomparativosdellgebraprocedimentaly el clculo no procedimentalresultande utilidadpara el estudiode SQL en losCaptulos5 y 6, aunqueno sonestrictamenteesenciales.El Captulo 5 presentalas instruccionesde manipulacinde datosdel estndarSQL: SELECT, INSERT,UPDATE y DELE TE. El captulosepresentacomountutorial,dandounaseriedeejemplosresueltosqueilus-tranlos conceptosprincipalesrelacionadosconestasinstrucciones.El Captulo 6 cubrelasprincipalesfuncionalidadesde definicindedatosdel estndarSQL. De nuevo,elcaptulosepresentaenformadetutoria!.El captuloanalizalostiposdedatosSQL y lasinstruccionesdedefi-nicindedatos,lascaractersticasdemejoradeintegridady lascaractersticasmsavanzadasenlas instruc-cionesde definicinde datos,incluyendolas instruccionesde control de accesoGRANT y REVOKE.Tambinseexaminanlasvistasy semuestracmopuedencrearseenSQL.

    El Captulo 7 es otro captuloprcticoqueexaminael lenguajede consultainteractivoQBE (Query-By-Example),quetienela reputacindeserunadelasformasmssencillasmediantela quelos usuariosnotc-nicospuedenaccedera la informacincontenidaen unabasededatos.QBE se ilustrautilizandoMicrosoftOfficeAccess.

    El Captulo 8 completala segundapartedellib!;9proporcionandounaintroduccina dosde los SGBD rela-cionalescomercialesmspopulares,MicrosoftOfficeAccessy Oracle.En los siguientescaptulosdel libroseexaminacmoimplementanestossistemasdiversasfuncionalidadesdebasededatos,comola seguridady el procesamientodeconsultas.

    Parte 3 Tcnicas de anlisis y diseo de bases de datosLa Parte3 del libro explicalastcnicasprincipalesdelanlisisy el diseodebasesdedatosy cmopuedenaplicarsedeunaformaprctica.

    El Captulo 9 presentaunapanormicade lasetapasprincipalesdel ciclo de desarrollodeaplicacionesdebasededatos.En particular,enfatizala importanciadeldiseodebasededatosy muestracmopuededes-componerseel procesoentresfases:diseoconceptual,lgicoy fsico dela basededatos.Tambindescribecmoafectael diseode la aplicacin(el enfoquefuncional) al diseode la basede datos(el enfoquededatos).Una etapacrucialenel ciclo dedesarrollode lasaplicacionesdebasededatoses la seleccindeunSGBD apropiado.Estecaptuloexplicael procesodeseleccindeun SGBD y proporcionaalgunasdirectri-cesy recomendaciones.El captuloconcluyeconun anlisisdela importanciadela administracindedatosy de la administracindebasesdedatos.

    El Captulo 10explicacundopuedeutilizarel desarrolladorlastcnicasdedeterminacindehechosy qutiposdehechosdebecapturarse.El captulodescribelastcnicasmscomnmenteutilizadasparala determi-nacindehechose identificalasventajasy desventajasdecadauna.El captulotambinilustrael modoenquepuedenusarseestastcnicasdurantelas etapasinicialesdel desarrollodeaplicacionesdebasededatos,utilizandocomoilustracinel casodeestudiodeDreamHome.

    Los Captulos 11y 12cubrenlos conceptosdelmodeloentidad-relacin(ER) y delmodeloentidad-relacinavanzado(EER), quepermiteun modeladodedatosmsavanzadoutilizandosubclasesy superclasesy tc-

  • Prefacio XXXIX

    nicasdecategorizacin.El modeloEER esun modelodedatosconceptualdealtonivelmuypopulary cons-tituyeunatcnicafundamentaldela metodologadeldiseobasesdedatosqueaqusepresenta.Tambinseintroduceel temadela utilizacindeUML parala representacindediagramasER.Los Captulos 13y 14examinanlos conceptossubyacentesa la normalizacin,queesotratcnicaimportan-teutilizadaen la metodologadediseolgicodebasesdedatos.Empleandounaseriedeejemplosresueltosextradosdelcasodeestudiointegrado,seilustracmopasarundiseodeunaformanormalaotray semues-tranlasventajasdedisponerdeundiseolgicodela basededatosqueseadapteadeterminadasformasnor-males,hastala quintaformanorma!.

    Parte 4 MetodologaEstapartedel libro cubreunametodologaparael diseodebasesdedatos.La metodologaestdivididaentrespartes,quecubrenel diseoconceptual,lgicoy fisico dela basededatos.Cadapartedela metodologaseilustrautilizandoel casodeestudiodeDreamHome.

    El Captulo 15presentaunametodologapasoa pasoparael diseoconceptualdebasesdedatos.Muestracmodescomponerel diseoenreasmsmanejablesbasadasenlasvistasindividualesy proporcionaacon-tinuacindirectricesparala identificacindeentidades,atributos,relacionesy claves.El Captulo 16presentaunametodologapasoa pasoparael diseolgicodebasesdedatosbasadasenelmodelolgicorelaciona!.Semuestracmoestablecerla correspondenciaentreun modeloconceptualdelosdatosy unmodelolgicode losdatosy comovalidarel modelodeacuerdoconlastransaccionesrequeridas,utilizandola tcnicadela normalizacin.Paralasaplicacionesdebasededatosconmltiplesvistasdeusua-rio, estecaptulomuestracmocombinarlosmodelosdedatosresultantesenun modelodedatosglobalquerepresentetodaslasvistasdela partede la organizacinqueseestmodelando.Los Captulos 17y 18presentanunametodologapasoa pasoparael diseofsico debasesdedatosrela-cionales.Muestracmotraducirel modelolgico de los datosobtenidoduranteel diseolgico de la basede datosa un diseofisico basadoenun sistemarelaciona!.La metodologacontemplala cuestinde lasprestacionesdela implementacinresultante,proporcionandodirectricesparala seleccindeorganizacionesde archivosy estructurasde>'almacenamiento,y explicandocuandodebeintroducirseredundanciacontro-lada.

    Parte 5 Problemas fundamentales en las bases de datos

    La Parte5 del libro examinacuatrotemasespecficosque los autoresconsiderannecesariosparacualquiercursomodernodedicadoa la gestindebasesdedatos.

    El Captulo 19analizael temadela seguridaden lasbasesdedatos,no sloenel contextode la seguridaddel SGBD sinotambinenel dela seguridaddelentornodelSGBD. Se ilustracmoproporcionarseguridadconMicrosoftOfficeAccessy Oracle.El captuloexaminatambinlos problemasdeseguridadquepuedensurgirenun entornoweby presentaalgunastcnicasdedicadasa prevenirestosproblemas.El Captulo 20 seconcentraentresfuncionesquetodosistemadegestindebasesdedatosdebeproporcio-nar:la gestindetransacciones,el controldeconcurrenciay la recuperacin.Estasfuncionestratandegaran-tizar quela basededatosseaviabley permanezcaenun estadocoherentecuandomltiplesusuariosestnaccediendoa la basededatos,y enpresenciadefallostantode loscomponenteshardwarecomosoftware.Elcaptulotambinexplicalos modelosavanzadosdetransaccionesqueresultanmsapropiadosparalastrans-accionesde largaduracin.Se concluyeel captuloexaminandoel temade la gestinde transaccionesenOracle.

    El Captulo 21 examinalascuestionesdelprocesamientoy optimizacindeconsultas.En el captulosepre-sentanlasdostcnicasprincipalesdeoptimizacindeconsultas:utilizacindereglasheursticasqueordenenlasoperacionesdela consulta,y otratcnicaquecomparadiferentesestrategiasbasndoseensuscostesrela-tivosy seleccionaaquellaqueminimizaelusoderecursos.El captuloconcluyeexaminandoelprocesamien~to deconsultasenOracle.

  • XL Sistemasde basesde datos

    Parte 6 Bases de datos distribuidas y replicacin

    La Parte6 dellibro examinalosSGBD distribuidosy losSGBD basadosenobjeto.La tecnologadesistemasdegestindebasesdedatosdistribuidas(SGBDD) constituyeunodelos desarrollosprincipalesen la actua-lidaddentrodelreade los sistemasdebasededatos.Los captulosanterioresdel libro secentranenlos sis-temasdebasesdedatoscentralizados,esdecir,sistemasconunanicabasededatoslgicaubicadaenunaplataformabajocontroldeunnicoSGBD.

    El Captulo 22 explicalos conceptosy problemasde los SGBD distribuidos,en losquelos usuariospuedenaccedera la basededatossituadaensupropiaplataformay tambina los datosalmacenadosenotrossitiosremotos.

    E! Captulo 23 examinavariosconceptosavanzadosasociadoscon los SGBD distribuidos.En particular,seconcentranlos protocolosasociadoscon la gestindetransaccionesdistribuidas,el controldeconcurrencia,la gestinde interbloqueosy la recuperacinde la basededatos.El captuloexaminatambinel protocoloDTP (DistributedTransactionProcessing)deX/Open.Se concluyeel captuloexaminandola cuestinde ladistribucindedatosenOracle.

    El Captulo 24presentalos servidoresdereplicacincomoalternativaa los SGBD distribuidosy examinalos problemasasociadosconlasbasesdedatosmviles.En el captuloseanalizantambinlas funcionalida-desdereplicacindedatosdeOracle.

    Parte 7 Bases de datos orientadas a objetos

    Los captulosanterioresdel libro secentranenel modelorelacionaly en lossistemasrelacionales.La justifi-cacinesquetalessistemassonactualmenteel tipodeSGBD predominanteparalasaplicacionestradiciona-lesdebasededatosenel mbitoempresaria!.Sin embargo,los sistemasrelacionalesno carecendedesven-tajas,y losSGBD basadosenobjetosconstituyenunode losprincipalesdesarrollosenel readelos sistemasdebasededatos,tratandoprecisamentederesolverdichasdesventajas.Los Captulos25-28examinanestatecnologaconun ciertogradodedetalle.

    El Captulo 25 sirvecomointroduccina los SGJ3Dbasadosenobjetosy examinaenprimerlugarlos tiposde aplicacionesavanzadasde basede datosqueestncomenzandoa surgir,explicandolas desventajasdelmodelodedatosrelacionalquehacenquestenoresulteadecuadoparadichostiposdeaplicaciones.El cap-tulopresentaa continuacinlos conceptosprincipalesde la orientacina objetosy analizalosproblemasdealmacenarobjetosenunabasededatosrelaciona!.

    El Captulo 26 examinalos SGBD orientadosa objetos(SGBDOO) y comienzaproporcionandounaintro-duccina losmodelosdedatosorientadosaobjetosy a los lenguajesdeprogramacinpersistente.El captu-lo explicala diferenciaentreel modelodealmacenamientoendosnivelesutilizadopor los SGBD tradiciona-lesy elmodelodealmacenamientoenminiconivelutilizadopor losSGBDOO, explicandocmoafectaestoal accesoa los datos.Tambinseanalizanlasdistintastcnicasparaproporcionarpersistenciaenlos lengua-jes deprogramaciny lasdistintasalternativasparatransformacindepunteros,examinandolas cuestionesdela gestindeversiones,la evolucindelesquemay delasarquitecturasde los SGBDOO. El captulocon-cluyemostrandobrevementecmopuedeemplearsela metodologapresentadaenlaParte4 del libroparalasbasesdedatosorientadasa objetos.

    El Captulo 27contemplaelmodelodeobjetospropuestoporODMG (ObjectDataManagementGroup),quese ha convertidoen un estndardeJacto paralos SGBDOO. El captulotambinexaminaObjectStore,unSGBDOO comercial

    El Captulo 28analizalosSGBD objeto-relacionales,proporcionandounapanormicadetalladadelascarac-tersticasdegestindeobjetosquesehanaadidoa la nuevaversindel estndarSQL, SQL:2003.El cap-tulo tambinexplicacmoesnecesarioampliarel procesamientoy la optimizacindeconsultasparagestio-nardemaneraeficientela extensibilidadde los tiposdedatos.El captuloconcluyeexaminandoalgunasdelascaractersticasobjeto-relacionalesdeOracle.

  • Prefacio XLI

    Parte 8 las bases de datos y la World Wide WebLa Parte8 dellibrotratadeltemadela integracindelosSGBD enlosentornosweb,ascomosobrelosdatossemiestructuradosy surelacinconXML, los lenguajesdeconsultaXML y la integracindeXML con lasbasesdedatos.

    El Captulo 29examinala integracindelos SGBD enlosentornosweb.Despusdeproporcionarunabreveintroduccina Internety a la tecnologaweb,el captuloexaminala adecuacinde la Webcomoplataformadeaplicacindebasesdedatosy explicalasventajasy desventajasdeestatcnica.A continuacinsepresen-tandiversasalternativasparala integracinde los SGBD en los entornos web, incluyendolos lenguajesdescript,COI, lasextensionesdeservidor,Java,ADO y ADO.NET y la plataformaInternetdeOracle.

    El Captulo 30examinaeltemadelosdatossemiestructuradosy explicael lenguajeXML y porquestelen-guajeseestconvirtiendoenun estndarcadavez msaceptadoparala representacinde datosy el inter-cambiodedatosa travsdela Web.El captuloexplicaa continuacinunaseriedetecnologasrelacionadasconXML, comolos espaciosdenombres,XSL, XPath, XPointer,XLink, SOAP, WSDL y UDDI. TambinexaminacmopuedeutilizarseXML Schemaparadefinirel modelodecontenidodeun documentoXML yel modoenqueRDF (ResourceDescriptionFramework)proporcionaun marcodetrabajoparael intercam-bio demetadatos.En el captuloseexaminanlos lenguajesdeconsultaparaXML, centrndoseenparticularenXQuery,propuestoporW3C. Tambinseexaminanlasextensionesaadidasa SQL:2003parapermitirlapublicacindedatosXML y, concarctermsgeneral,la integracindeXML con lasbasesdedatosconelfin dealmacenarenstasinformacinXML.

    Parte 9 Inteligencia empresarialLa partefinaldel librotratael temadelos almacenesdedatos,el procesamientoanalticoen lnea(OLAP) yla mineradedatos.

    El Captulo 31presentalos almacenesdedatos,lo queson,cmohanevolucionadoy culessonlos poten-cialesbeneficiosy problemasasociadosconestetipodesistemas.En el captuloseexaminanla arquitectura,los componentesprincipalesy lasherramientasy tecnologasasociadasconunalmacndedatos.El captuloexplicatambinlosmercados.,.dedatosy los problemasrelativosal desarrolloy gestindeestetipo desiste-mas.Se concluyeel captulodescribiendolas funcionalidadesde almacnde datosproporcionadaspor elSGBD deOracle.

    El Captulo 32 proporcionaunatcnicaparael diseode la basededatosdeun almacn/mercadodedatosdiseadoparasoportarlosprocesosdetomadedecisiones.El captulodescribelos conceptosbsicosasocia-dosconel modeladodedimensionalidady comparaestatcnicacon el modeladoentidad-relacin(ER) tra-dicional.Tambindescribee ilustraunametodologapasoapasoparael diseodealmacenesdedatos,utili-zandoejemplosresueltostomadosde la versinampliadadel casode estudiodeDreamHome.El captuloconcluyedescribiendocmodisearun almacndedatosutilizandoOracleWarehouseBuilder.

    El Captulo 33 describeel temadelprocesamientoanalticoen lnea(OLAP, OnlineAnalyticalProcessing).Explica lo queesOLAP y lasprincipalescaractersticasdelasaplicacionesOLAP. En el captulosseanalizacmopuedenrepresentarsedatosmultidimensionalesy las principalescategorasde herramientasOLAP.TambinseexplicanlasextensionesOLAP al estndarSQL y el modoenqueOraclesoportalastecnologasOLAP.

    El Captulo 34 describeel temadela mineradedatos.Seexplicalo quesla mineradedatosy lasprinci-palescaractersticasdelasaplicacionesdemineradedatos.El captulodescribelascaractersticasfundamen-talesdelasoperacionesdemineradedatosy lastcnicasasociadas.Tambinsedescribeel procesodemine-ra dedatosy lasprincipalescaractersticasdelasherramientasdemineradedatos,y enespecialel soportequeOracleprestaa estetipodetecnologas.

    ApndicesEl ApndiceA proporcionaunadescripcindeDreamHome,un casodeestudioqueseutilizaampliamenteentodoel libro.

  • XLII Sistemasde basesde datos

    Parte 1

    Parte 3

    1 Introduccin a lasbases de datos

    2 El entorno de lasbases de datos

    9 Planificacin, diseoy administracin debases de datos

    12 ModeladoEntidad-Relacinavanzado

    10 Tcnicas dedeterminacinde hechos

    Parte 4

    18 Metodologia:monitorizacin yoptimizacin delsistema final

    17 Metodologa: diseofisico de bases dedatos relaciona les

    16 Metodologia: dseolgico de bases dedatos para el modelorelacional

    14 Normalizacinavanzada

    15 Metodologa: diseoconceptual de labase de datos

    21 Procesamientode consultas

    26 Bases de datos

    orientadas a objetos:conceptos

    32 Diseo de almacenesde datos

    23 Bases de datos

    distribuidas: conceptosavanzados

    30 Datos semiestructurados

    yXMl

    24 Replicacin y basesde datos mviles

    20 Gestin detransacciones

    27 Bases de datos

    orientadas a objetos:estndares y sistemas

    330lAP

    19 Seguridad

    34 Mineria de datos

    28 Bases de datos

    objeto-relaciona les

    Parte 5

    Parte 6

    Parte 7

    Parte 8

    Parte 9

    Figura P.1. Organizacin lgica del libro y formas recomendadas de lectura/imparticin.

  • Prefacio XLIII

    El ApndiceB proporcionatrescasosdeestudioadicionales,quepuedenutilizarsecomoproyectosde losestudiantes.

    El Apndiceeproporcionainfonnacindereferenciasobreorganizacindearchivosy estructurasdealma-cenamiento,informacinqueesnecesariaparacomprenderla metodologadediseofisico debasesdedatospresentadaenel Captulo17y el temadelprocesamientodeconsultasdel Captulo21.El ApndiceD describelas 12reglasdeCoddparaun SGBD relacional,lascualesformanunacomparativacon la quepuedenidentificarselosproductosSGBD relacionales 'reales'.El ApndiceE examinala cuestindelSQL embebidoy el SQL dinmico,conprogramasdeejemploenlen-guajeC. El captulotambinexaminael estndarODBC (OpenDatabaseConnectivity),quesehaconsolida-docomounestndardeJacto del sectorparael accesoa basesdedatosSQL heterogneas.

    El ApndiceF describedosnotacionesalternativasdemodeladodedatosquepuedenemplearseen lugardeUML, quesonla notacindeCheny la notacinenpie decuervo.El ApndiceG resumelospasosdela metodologapresentadaenlos Captulos15-18parael diseoconcep-tual,lgicoy fisico de la basededatos.El ApndiceH (vaseel sitio web deacompaamiento)explicacmoestimarlos requisitosde espaciodediscoparaunabasededatosOracIe.El Apndice1(vaseel sitiowebdeacompaamiento)proporcionaalgunasscriptwebparacomplementarelCaptulo29,dedicadoa la integracindelos SGBD y la Web.

    En laFiguraP.1seilustrala organizacinlgicadel libroy lasformasdelecturae imparticinrecomendadas.

    Correcciones y sugerenciasYa queun libro detextodeestetamaoestanvulnerablea los errores,desacuerdos,omisionesy confusio-nes,solicitamosal lectorsuopininparafuturasreimpresionesy ediciones.Los comentarios,las correccio-nesy lassugerenciasconstructivasdebenenviarsea PearsonEducationo por correoelectrnicoa:

    thomas.connoUy@paisl~.ac.uk

  • XLIV Sistemasde basesde datos

    AgradecimientosEstelibro esel resultadodemuchosaosdetrabajoporpartedelos autoresenempresas,en la investigaciny enel mundoacadmico.Resultapor tantodificil enumeraratodaslaspersonasquenoshanayudadodirec-tao indirectamenteennuestrosesfuerzos.Talo cualideapuedehaberparecidoinsignificanteenel momentoenquela omosporprimeravezy, sin embargo,habrtenidoun efectodegranimportanciaposteriormente.Pedimosdenuevodisculpasa todosaquellosa los queno mencionamosaqu.Sin embargo,nuestragratitudy nuestrasdisculpasvandirigidasenprimerlugaranuestrasfamilias,quea lo largodelos aoshansidorele-gadase inclusoignoradasdurantelaspocasdemayortrabajo.

    A continuacin,parala primeraedicin,queremosdarlasgraciasanuestroseditoresDr SimonPlumtreey Nicky Jaeger,por su ayuda,apoyoy profesionalidaddurantela redaccindel libro; y a nuestroeditordeproduccindel libro Martin Tytlery al editordecopiaLionel Browne.Tambinqueremosdarlas graciasalosrevisoresdela primeraedicin,quecontribuyeronconsuscomentarios,sugerenciasy consejos.En parti-cular, queremosmencionara: William H. Gwinn, Instructor,TexasTech University;Adrian Lamer, DeMontfort University,Leicester;ProfesorAndrew McGettrick,Universityof Strathclyde;Dennis McLeod,ProfesordeInformtica,Universityof SouthernCalifornia;JosephineDeGuzmanMendoza,Profesorasocia-do,CaliforniaStateUniversity;JeffNaughton,ProfesorA. B. Schwarzkopf,UniversityofOklahoma;JunpingSun,Profesorayudante,Nova SoutheasternUniversity;DonovanYoung,Profesorasociado,GeorgiaTech;DrBarry Eaglestone,Catedrticoen Informtica,Universityof Bradford;John Wade,IBM. TambinqueremosdarlasgraciasaAnne Strachanporsu contribucina la primeraedicin.

    Parala segundaedicin,queremosdarprimerolasgraciasa Sally Mortimore,nuestroeditor,y a MartinKlopstocky DylanReisenbergerdelequipodeproduccin.Tambinqueremosagradecera losrevisoresdelasegundaedicin,quecontribuyeroncon suscomentarios,sugerenciasy consejos.En particular,queremosmencionara:StephanoCeri,PolitecnicodiMilano; LarsGillberg,Mid SwedenUniversity,Oestersund;DawnJutIa,StMary'sUniversity,Halifax,Canad;Julie McCann,City University,Londres;MunindarSingh,NorthCarolina StateUniversity;Hugh Darwen,Hursely,Reino Unido; ClaudeDelobel,Pars, Francia;DennisMurray,Reading,ReinoUnido; y denuestropropiodepartamentoa John Kawalay al Dr PeterKnaggs.

    Paralaterceray cuartaediciones,queremosdarprimerolasgraciasaKateBrewin,nuestroeditor,aStuartHay,Kay Holmany Mary Lince delequipodeproducciny a los editoresdecopia RobertChaundyy RuthFreestoneKing. Tambinqueremosagradecera los revisoresde la segundaedicin,quecontribuyeronconsuscomentarios,sugerenciasy consejos.En particular,queremosmencionara:RichardCooper,UniversityofGlasgow, Reino Unido; Emma Eliason, University of Orebro, Suecia; Sari Hakkarainen,StockholmUniversity y the Royal Instituteof Technology;Nenad Jukic, Loyola University Chicago, EE.UU; JanParedaens,Universityof Antwerp,Blgica; StephenPriest,Daniel WebsterCollege,EE.UU. Hay muchosotrosquesiguensiendoparanosotrosannimosy a los quequeremosdarlasgraciaspor el tiempoquehaninvertidoenla lecturadelmanuscrito..

    Tambinqueremosdarlas graciasa MaIcolm Bronte-Stewartpor el conceptodeDreamHome,a MoiraO'Donnell por garantizarla precisindedel casodeestudioWellmeadowsHospital, aAlistair McMonnies,RichardBeebyy PaulineRobertsonpor suayudaconel materialparael sitioweby un agradecimientoespe-ciala la secretariadeThomas,LyndonneMacLeody a la secretariadeCarolyn,June Blackburn,por suayuday soportea lo largode los aos.

    ThomasM. ConnollyCarolynE. Begg

    Glasgow,Marzo de2004

  • Prefacio XLV

    Agradecimientos del editorQueremosdarlasgraciasa lassiguientesorganizacionespor supermisoparareproducirmaterialincluidoenel libro:

    TheMcGraw-Hill Companies,Inc.,New York por laFigura19.11,reproducidadeBYTE Magazine,Junio1997.Reproducidaconpermiso. by The McGraw-Hill Companies,Inc., New York, NY USA. Todos losderechosreservados;las Figuras27.4y 27.5 sondiagramasde CommonWarehouseMetamodel(CWM)Specification,Marzo 2003,Versin 1.1, Volumen 1, formaI/03-03-02.Reimpresocon permiso.ObjectManagement,Inc. OMG 2003;capturasdepantallareimpresasconpermisodeMicrosoftCorporation.

    En algunoscasosnohemospodidodeterminarlospropietariosdedeterminadomaterial,y agradeceramoscualquierinformacinquenospermitahacerlo.

  • XLVI Caractersticasdel libro

    Captulo

    Cap;I\.I.' Inll'Oducciadoialalknocab:>oatb.enan:hi>'O

    El Slg,urlCadodclltmullO'bucdelbl05'

    F.Jsop1lflCadodd ltrnuno 'siSlemadc pio6ndebasc$dc-"(SGBD)

    tufuncioncltipocu de un SGBO Los componcnlClpo-incipalcadel enlOrTlOSGBO

    El personal,mphcadoen cl cntOflWlSGllD Lani,toriadcldesar",llodclosSGllD

    La-'enlajasydesvenlajasdelosSGBD

    L.ahJSlOI;adelalnv~":lCiocnli>lcm:os"'bases"'ulla.

    La anlllilCc!UCddel scrv,""'dc atrh",,,,llCllC. 1"""lanr.1.'re. tlcsvelOlajasJ'rincip;11cs:

    11)lby unagr.1Ocanlldadde u:lflCOde rctI.

    21Sc n:qu~ una ropia compleradel SGBO en cadaCeo.np"nen'co.El dicnlc (nrvcl Il ~ pnnc'{IlIh\"oClltCre.lcm",dearehivo "",nu,1lconlos queto.xlosnosolrosesl:uno'Ol'Cf"IKL"lybuscamosentl.de pnnc'pio a fin. 1l:lSlae.\COIllrarla mfoonaciodeseada,Ahcmalivamc:me.rUOCe-siW'l1Of,esallD3lCCnarlo5oClllI3lCrIos.Sincmbarxo.Jossi$lL-masmanuaJesdearrlu>'OdejandeliCr~nlrsc-'dotenc:mosqueestablcccrrcfef'Cllciaor;~opn:a:sarlamfonnaci(lnCOOll"""''''lo6documcnoos.Por:eJCOllplo.UDlIagenciainmoblharialIpicapodadisp;lnerdearduvo..".,.sopancadaiNnucblcquedcsccvcnOe.-oiw. pan cadapo:ucial comJ'W1lCbo i'"l"ihno y pu;Ilcadamocmbrode supenonaI. P1CD5CeneleoormeesfPCIIDq""f>Crequcnapal1lrcspondcrala~"guimtcscuo:s.1OnC$

    .Qut vi~iccndasde 1= domutoriO$haydisponiblespara la \'Cnt.:Ique .enganjan:liny ga"'Je1

    ".QuaraJ1amcmQ;e.iSle~paraalquilar. mel101de 5 km del ccmrode la eiuda.d?

    eu"1 esel preciomedjode alquiler Ix"a un pi

  • Caractersticasdel libro XLVII

    ClIpitulo1 Int,od CCinllIUb"sesdedlltos 29 C.pltulo21 PrOC:.llImie todeco ul1.s 621

    nndice :ndario~el,,";bulOtype""Room.

    Ejercicios

    211j I)Q,cnlla cmo funOona el a1gonunode rrovarnaci6n dl'wl1lc~ del optimLZadorde consu!"'" deS) .onR

    211.CaleuIc.ICOGI"lkwll'C.CSltll '!-;a,;euadasendEJC1Ilplo21.1.,1.l'Cla.cin_l .lOOOOmpllli.., _ uene.soo '''>las, 100.

    (b) SELECTII~.g _

    rHOMRaatn'._IlcnIol;sjg:";c"I~~,Id;oes

    un fr>dice!'Q.,h sir;dcohvrdnmicP\{(]whre los.uibUlo.deduve ptinc'p;ll, roomNoIhotelNcen Room:

    "" frldiccnismoo"'squridad."'lepidad.oooooIdc:CllI'Il:UlTl:n(qyC\lQlRJldcn.:upmlCin."'.--un~IC(d) prop3ffi3de3plltJl.la, p,-;ne,p~lcscar:\CJen'Micasdcl~nrnqlledc basedcdalo,;y MlllprclMCOllla 1cnicubasada cu archivos.

    1.1. p,por~"'''~euMroeJC'''plosdesi'ICm"sdcba$er:o,dacoonal.y .jecu.", die.ro;U.gia """" e~lr.lC:flos d:Yll$llOl-

    P\oc$IOl/I'C hay mucha..lrllnsform:lCioncsCllhade .Iu') lIi,"

  • XLVIII Caractersticas del libro

    Cklpter 1- RebtionallVloflelTutora}

    Whal kind of dala model is lhe relatonal.model?

    (11.) Explain lhe followingtelIllSinlhecomextoflherelalionaldrdalTlOdel

    Rtla.tion

    Attnbute00""'"

    T"p"DegretCardinality

    (b) UsetheSuwliers-Pattsdalabt.Setoprovideexamp]sofe&:h(&eeAppendixloflhislulorisl)

    (a) Explain lhe followin(; lenns in lhe COBen ofthe relatioMl. dala model

    CandidaleKey

    PrinwyKeyForeignKey

    (b) UselheSuppliers-PMlsdalahasetoprovidee=plesofeach

    Tutorialessobrecaptulosseleccionados

    Aet;"!l.'PI-l

    Practise using the Microsoft Access help facilities. Search [(Ir help or ask questions 00 the

    following tapies: creatng tables, data types, primal)' key, referential integrity, data valdationand the web publsher wizard.

    OneIJU! a Dntabase

    A Microsoft Access database is a collecton of objects, not just a single table of data. Oue

    dalabase fiJe contains the tables as well as queries, forros, reports and other objects that he!pyou use the information in the database

    When you f1rstoad Access, theMicrosoft Access dia!og box is displayed, as shown in FigurePl~1

    ManualdelaboratorioparaAccess

  • Parte

    Introduccin

    Captulo1 Introduccina lasbasesdedatos

    Captulo2 El entornode la basededatos

  • Introduccin a las bases

    de datos

    Objetivos del captulo:

    En estecaptuloaprender:

    Algunosusoscomunesde los sstemasdebasesdedatos.

    Las caracterstcasde los sistemasbasadosenarchivos.

    Los problemasasociadosa la tcnicabasadaenarchivo.

    El significadodeltrmino'basededatos'.

    El significadodeltrmino'sistemadegestindebasesdedatos'(SGBD).

    Las funcionestpicasdeun SGBD.

    Los componentesprincipalesdelentornoSGBD.

    El personalimplicadoenel entornoSGBD. La historiadel desarrollodelos SGBD.

    Las ventajasy desventajasdelos SGBD.

    La historiadela investigacinensistemasdebasesdedatosesdeunaexcepcionalproductividady hateni-do un impactoeconmicoextraordinario.Con apenas20 aosde antiguedadcomocampode investiga-cin cientfica,la investigacinenbasesdedatoshapermitidoel surgimientodeunaindustriade los ser-vicios de informacinqueslo en los EstadosUnidos facturaunos 10.000millonesdedlarespor ao.Los diversoslogrosenla investigacinrelativaa lasbasesdedatoshanpermitidorealizaravancesfunda-mentalesenlossistemasdecomunicaciones,transportey logstica,gestinfinanciera,sistemasdegestindel conocimiento,accesibilidada la literaturatcnicay unamiradade otrasaplicacionestantocivilescomomilitares.Tambinhanservidocomobaseparapermitirunprogresoconsiderableendiversoscam-posbsicosdela ciencia,desdela informticaa la biologa.

    (Silberschatzel al., 1990,1996)

    Esta citaesttomadade unaconferenciasobresistemasde basesde datoscelebradaa principiosde ladcadade 1990y quetuvosu continuacinen otraconferenciaposterioren 1996,y nossirvecomomoti-vacinparael estudiodel temadeestelibro: los sistemasde basesde datos.Desdela celebracindeestasconferencias,la importanciadelos sistemasdebasesdedatosseha incrementadotodavams,consignifica-tivos desarrollosen lo querespectaa la capacidaddel hardware,a la funcionalidaddestey a las comuni-caciones,incluyendola aparicinde Internet,del comercioelectrnico,de los sistemasde inteligenciaempresarial,delascomunicacionesmvilesy dela informticareticular.Los sistemasdebasesdedatosson,posiblemente,el desarrollomsimportanteenel campodela ingenieradel softwarey lasbasesdedatosfor-manahorael marcodetrabajofundamentalde los sistemasdeformacin,habiendocambiadodeformasig-

  • 4 Sistemasde basesde datos

    nificativalamaneraenquemuchasorganizacionesoperan.La tecnologadebasesdedatosconstituyeun readeenormeintersen la quetrabajay, desdesu aparicin,haactuadodecatalizadorparamuchosdesarrollosimportantesen ingenieradel software.La conferenciaa la quealudimospusodemanifiestoquelos desarro-llos ensistemasdebasesdedatosno habanterminado,al contrariodelo quealgunaspersonasopinaban.Dehecho,parafraseandounaantiguafrasepronunciadaporunpoltico,puedequesloestemosalfinal delprin-cipio delos desarrollos.Las aplicacionesqueserprecisosoportarenel futurotienenun gradodecompleji-dadtantomsaltoquenosveremosabocadosa rehacermuchosde los algoritmos queactualmenteseutili-zan,comoporejemplolos algoritmosparael almacenamientoy accesoa archivosy parala optimizacindeconsultas.El desarrollodeestosalgoritmos originaleshatenidosignificativasramificacionesenla ingenieradelsoftwarey el desarrollodenuevosalgoritmos tendr,sinningunaduda,efectossimilares.En esteprimercaptulovamosaproporcionarunaintroduccina los sistemasdebasesdedatos.

    Estructura del captuloEn la Seccin1.1vamosa examinaralgunasdelasaplicacionesdelos sistemasdebasesdedatosquepode-mosencontrarennuestravidacotidiana,perodelasquequiznoseamosconscientes.En lasSecciones1.2y1.3 compararemosla antiguatcnicabasadaen archivospara la informatizacinde sistemasde archivosmanualesconla tcnicamoderna,muchomsadecuada,queseapoyaenlasbasesdedatos.En la SeccinlAhablaremosde los cuatrotiposdepapelesquejueganlaspersonasenun entornodebasesdedatos,esdecir:administradoresdedatosy debasesdedatos,diseadoresdebasesdedatos,desarrolladoresdeaplicacionesy usuariosfinales.En la Seccin1.5proporcionamosunabrevehistoriade los sistemasdebasesdedatos,lacualestseguida,enla Seccin1.6,porun anlisisde lasventajasy desventajasde los sistemasdebasesdedatos.

    A lo largodel libro, ilustraremoslos conceptosutilizandoun casodeestudiobasadoenunaempresafic-ticia de gestininmobiliariadenominadaDreamHome.Proporcionamosuna descripcindetalladade estecasodeestudioen la Seccin1004Y enelApndiceA. En elApndiceB sepresentanotroscasosdeestudioquepretendenproporcionarmsproyectosdecarcterrealistaconlosquepuedapracticael lector.Al finaldemuchoscaptulosseincluyenejerciciosbasadosenestoscasosdeestudio.

    1.1 Introduccin

    Lasbasesdedatosformanhoyendaunaparteintegrantedenuestravidacotidiana,hastatalpuntoquemuchasvecesnosomosconscientesdeestarusandounabasededatos.Paracomenzarnuestrasexplicacionessobrelasbasesdedatos,vamosaexaminarenestase