- Cover
- CONTENIDO BREVE
- TABLA DE CONTENIDO
- PARTE I CONCEPTOS DE BASES DE DATOS
- Viñeta de negocio: La revolución relacional
- CAPÍTULO 1 Sistemas de bases de datos
- 1.1 ¿Por qué bases de datos?
- 1.2 Datos vs. información
- 1.3 Introducción a las bases de datos
- 1.3.1 Función y ventajas del DBMS
- 1.3.2 Tipos de bases de datos
- 1.4 ¿Por qué es importante el diseño de bases de datos?
- 1.5 Evolución del procesamiento de datos de un sistema de archivos
- 1.5.1 Sistemas de archivos manuales
- 1.5.2 Sistemas de archivos computarizados
- 1.5.3 El sistema de archivos revisitado: modernas herramientas de productividad para el usuario final
- 1.6 Problemas con el procesamiento de datos del sistema de archivos
- 1.6.1 Dependencia estructural y de datos
- 1.6.2 Redundancia de datos
- 1.6.3 Falta de capacidad para diseñar y modelar datos
- 1.7 Sistemas de bases de datos
- 1.7.1 El ambiente de un sistema de bases de datos
- 1.7.2 Funciones de un DBMS
- 1.7.3 Administración del sistema de bases de datos: un cambio en enfoque
- Resumen
- Términos clave
- Preguntas de repaso
- Problemas
- CAPÍTULO 2 Modelos de datos
- 2.1 Modelado de datos y modelos de datos
- 2.2 La importancia de modelos de datos
- 2.3 Elementos básicos de un modelo de datos
- 2.4 Reglas de negocios
- 2.4.1 Descubrimiento de las reglas de negocios
- 2.4.2 Conversión de reglas de negocios en componentes de modelo de datos
- 2.4.3 Dar nombre a convenciones
- 2.5 La evolución de los modelos de datos
- 2.5.1 Modelos jerárquico y de red
- 2.5.2 El modelo relacional
- 2.5.3 El modelo entidad-relación
- 2.5.4 El modelo orientado a objetos (OO)
- 2.5.5 Modelos más recientes de datos: objeto/relacional y XML
- 2.5.6 El futuro de modelos de datos
- 2.5.7 Modelos de datos: un resumen
- 2.6 Grados de abstracción de datos
- 2.6.1 El modelo externo
- 2.6.2 El modelo conceptual
- 2.6.3 El modelo interno
- 2.6.4 El modelo físico
- Resumen
- Términos clave
- Preguntas de repaso
- Problemas
- PARTE II CONCEPTOS DE DISEÑO
- Viñeta de negocio: Iniciativa de BP para modelar datos
- Capítulo 3 El modelo de bases de datos relacional
- 3.1 Una vista lógica de los datos
- 3.1.1 Tablas y sus características
- 3.2 Llaves
- 3.3 Reglas de integridad
- 3.4 Operadores de conjunto relacionales
- 3.5 El diccionario de datos y el catálogo del sistema
- 3.6 Relaciones dentro de la base de datos relacional
- 3.6.1 La relación 1:M
- 3.6.2 La relación 1:1
- 3.6.3 La relación M:N
- 3.7 Repaso de redundancia de datos
- 3.8 Índices
- 3.9 Las reglas Codd para una base de datos relacional
- Resumen
- Términos clave
- Preguntas de repaso
- Problemas
- Capítulo 4 Modelado entidad-relación (ER)
- 4.1 El modelo entidad-relación (ERM)
- 4.1.1 Entidades
- 4.1.2 Atributos
- 4.1.3 Relaciones
- 4.1.4 Conectividad y cardinalidad
- 4.1.5 Dependencia de existencia
- 4.1.6 Fuerza de relación
- 4.1.7 Entidades débiles
- 4.1.8 Participación de relación
- 4.1.9 Grado de relación
- 4.1.10 Relaciones recursivas
- 4.1.11 Entidades asociativas (compuestas)
- 4.2 Desarrollo de un diagrama ER
- 4.3 Desafíos de diseño de bases de datos: objetivos en conflicto
- Resumen
- Términos clave
- Preguntas de repaso
- Problemas
- Casos
- Capítulo 5 Modelado avanzado de datos
- 5.1 El modelo de entidad de relación extendido
- 5.1.1 Supertipos y subtipos de entidad
- 5.1.2 Jerarquía de especialización
- 5.1.3 Herencia
- 5.1.4 Discriminador de subtipo
- 5.1.5 Restricciones disjuntas y traslapadas
- 5.1.6 Restricción de plenitud
- 5.1.7 Especialización y generalización
- 5.2 Agrupación de entidad
- 5.3 Integridad de entidad: seleccionar llaves primarias
- 5.3.1 Llaves naturales y llaves primarias
- 5.3.2 Guías de llave primaria
- 5.3.3 Cuándo usar llaves primarias compuestas
- 5.3.4 Cuándo usar llaves primarias sustitutas
- 5.4 Casos de diseño: un diseño flexible de bases de datos
- 5.4.1 Caso de diseño #1: implementación de relaciones 1:1
- 5.4.2 Caso de diseño #2: mantener la historia de datos variables en el tiempo
- 5.4.3 Caso de diseño #3: trampas de abanico
- 5.4.4 Caso de diseño #4: relaciones redundantes
- Resumen
- Términos clave
- Preguntas de repaso
- Problemas
- Casos
- Capítulo 6 Normalización de tablas de bases de datos
- 6.1 Tablas de bases de datos y normalización
- 6.2 Necesidad de normalización
- 6.3 El proceso de normalización
- 6.3.1 Conversión a la primera forma normal
- 6.3.2 Conversión a la segunda forma normal
- 6.3.3 Conversión a la tercera forma normal
- 6.4 Mejoramiento del diseño
- 6.5 Consideraciones de llave sustituta
- 6.6 Formas normales de nivel superior
- 6.6.1 La forma normal de Boyce-Codd (BCNF)
- 6.6.2 Cuarta forma normal (4NF)
- 6.7 Normalización y diseño de bases de datos
- 6.8 Desnormalización
- 6.9 Lista de verificación de modelado de datos
- Resumen
- Términos clave
- Preguntas de repaso
- Problemas
- PARTE III: DISEÑO E IMPLEMENTACIÓN AVANZADOS
- Viñeta de negocio: Los beneficios de la inteligencia de negocios (BI)
- CAPÍTULO 7 Introducción AL LENGUAJE DE CONSULTA ESTRUCTURADO (SQL)
- 7.1 Introducción al SQL
- 7.2 Comandos para definición de datos
- 7.2.1 El modelo de base de datos
- 7.2.2 Creación de la base de datos
- 7.2.3 El esquema de base de datos
- 7.2.4 Tipos de datos
- 7.2.5 Creación de estructuras de tabla
- 7.2.6 Restricciones de SQL
- 7.2.7 Índices de SQL
- 7.3 Comandos para manipulación de datos
- 7.3.1 Adición de renglones a tablas
- 7.3.2 Guardar cambios en tabla
- 7.3.3 Lista de renglones en tabla
- 7.3.4 Actualización de renglones de tabla
- 7.3.5 Restablecimiento del contenido de una tabla
- 7.3.6 Eliminación de renglones de una tabla
- 7.3.7 Inserción de renglones en una tabla con una subconsulta SELECT
- 7.4 Consultas con SELECT
- 7.4.1 Selección de renglones con restricciones condicionales
- 7.4.2 Operadores aritméticos: la regla de precedencia
- 7.4.3 Operadores lógicos: AND, OR y NOT
- 7.4.4 Operadores especiales
- 7.5 Comandos adicionales para definición de datos
- 7.5.1 Cambio de tipo de datos de una columna
- 7.5.2 Cambio de las características de datos de una columna
- 7.5.3 Adición de una columna
- 7.5.4 Eliminación de una columna
- 7.5.5 Actualizaciones avanzadas de datos
- 7.5.6 Copia de partes de tablas
- 7.5.7 Adición de designaciones de las llaves primaria y foránea
- 7.5.8 Eliminar una tabla de la base de datos
- 7.6 Palabras clave adicionales de selección de consulta
- 7.6.1 Cómo ordenar una lista
- 7.6.2 Enumeración de valores únicos
- 7.6.3 Funciones agregadas
- 7.6.4 Agrupamiento de datos
- 7.7 Tablas virtuales: creación de una vista
- 7.8 Reunión de tablas de la base de datos
- 7.8.1 Reuniones de tablas con un alias
- 7.8.2 Reuniones recursivas
- 7.8.3 Reuniones externas
- Resumen
- Términos clave
- Preguntas de repaso
- Problemas
- Casos
- CAPÍTULO 8 SQL Avanzado
- 8.1 Operadores relacionales de conjunto
- 8.1.1 UNION
- 8.1.2 UNION ALL
- 8.1.3 INTERSECT
- 8.1.4 MINUS
- 8.1.5 Sintaxis alternativas
- 8.2 Operadores de reunión en SQL
- 8.2.1 Reunión en cruz
- 8.1.2 Reunión natural
- 8.1.3 Cláusula en una reunión USING
- 8.1.4 Cláusula JOIN ON
- 8.1.5 Reuniones exteriores
- 8.3 Subconsultas y consultas correlacionadas
- 8.3.1 Subconsultas WHERE
- 8.3.2 Subconsultas IN
- 8.3.3 Subconsultas HAVING
- 8.3.4 Operadores de subconsulta de renglones múltiples: ANY y ALL
- 8.3.5 Subconsultas FROM
- 8.3.6 Subconsultas de lista de atributos
- 8.3.7 Subconsultas correlacionadas
- 8.4 Funciones de SQL
- 8.4.1 Funciones de fecha y hora
- 8.4.2 Funciones numéricas
- 8.4.3 Funciones en cadena
- 8.4.4 Funciones de conversión
- 8.5 Secuencias en Oracle
- 8.6 Vistas actualizables
- 8.7 SQL procedimental
- 8.7.1 Disparadores
- 8.7.2 Procedimientos almacenados
- 8.7.3 Procesamiento de PL/SQL con cursores
- 8.7.4 Funciones almacenadas PL/SQL
- 8.8 SQL incrustado
- Resumen
- Términos clave
- Preguntas de repaso
- Problemas
- Casos
- CAPÍTULO 9 Diseño de bases de datos
- 9.1 El sistema de información
- 9.2 El ciclo de vida para desarrollo de sistemas
- 9.2.1 Planeación
- 9.2.2 Análisis
- 9.2.3 Diseño detallado de sistemas
- 9.2.4 Implementación
- 9.2.5 Mantenimiento
- 9.3 Ciclo vital de una base de datos (DBLC)
- 9.3.1 Estudio inicial de la base de datos
- 9.3.2 Diseño de la base de datos
- 9.3.3 Implementación y carga
- 9.3.4 Prueba y evaluación
- 9.3.5 Operación
- 9.3.6 Mantenimiento y evolución
- 9.4 Diseño conceptual
- 9.4.1 Análisis y necesidades de datos
- 9.4.2 Modelado y normalización entidad-relación
- 9.4.3 Revisión del modelo de datos
- 9.4.4 Diseño de una base de datos distribuida
- 9.5 Selección del software de DBMS
- 9.6 Diseño lógico
- 9.6.1 Asignar el modelo conceptual al modelo lógico
- 9.6.2 Validación del modelo lógico mediante normalización
- 9.6.3 Validación de restricciones de integridad del modelo lógico
- 9.6.4 Validación del modelo lógico contra necesidades del usuario
- 9.7 Diseño físico
- 9.7.1 Definición de la organización del almacenamiento de los datos
- 9.7.2 Definición de medidas de integridad y seguridad
- 9.7.3 Determinación de medidas de operación
- 9.8 Estrategias de diseño de una base de datos
- 9.9 Diseño centralizado vs. descentralizado
- Resumen
- Términos clave
- Preguntas de repaso
- Problemas
- PARTE IV CONCEPTOS AVANZADOS DE BASES DE DATOS
- Viñeta de negocio: combate a la explosión de datos
- CAPÍTULO 10 Administración de transacciones y control de concurrencia
- 10.1 ¿Qué es una transacción?
- 10.1.1 Evaluación de los resultados de una transacción
- 10.1.2 Propiedades de una transacción
- 10.1.3 Administración de transacciones con SQL
- 10.1.4 Bitácora de transacción
- 10.2 Control de concurrencia
- 10.2.1 Actualizaciones perdidas
- 10.2.2 Datos no registrados
- 10.2.3 Recuperaciones inconsistentes
- 10.2.4 El planificador
- 10.3 Control de concurrencia con métodos de bloqueo
- 10.3.1 Granularidad de bloqueo
- 10.3.2 Tipos de bloqueo
- 10.3.3 Bloqueo a dos fases para asegurar la seriación
- 10.3.4 Interbloqueos
- 10.4 Control de concurrencia con métodos de estampas de tiempo
- 10.4.1 Esquemas de esperar/morir y herir/esperar
- 10.5 Control de concurrencia con métodos optimistas
- 10.6 Administración de la recuperación de una base de datos
- 10.6.1 Recuperación de transacción
- Resumen
- Términos clave
- Preguntas de repaso
- Problemas
- CAPÍTULO 11 Afinación del desempeño de bases de datos y optimización de consultas
- 11.1 Conceptos sobre afinación del desempeño de bases de datos
- 11.1.1 Afinación de desempeño: cliente y servidor
- 11.1.2 Arquitectura del DBMS
- 11.1.3 Estadísticas de la base de datos
- 11.2 Procesamiento de las consultas
- 11.2.1 Fase de análisis del SQL
- 11.2.2 Fase de ejecución de SQL
- 11.2.3 Fase de cambio de SQL
- 11.2.4 Cuellos de botella en el procesamiento de una consulta
- 11.3 Índices y optimización de consulta
- 11.4 Opciones del optimizador
- 11.4.1 Uso de sugerencias para afectar las opciones del optimizador
- 11.5 Afinación del desempeño de SQL
- 11.5.1 Selectividad de índice
- 11.5.2 Expresiones condicionales
- 11.6 Formulación de consulta
- 11.7 Afinación del desempeño de un DBMS
- 11.8 Ejemplo de optimización de consulta
- Resumen
- Términos clave
- Preguntas de repaso
- Problemas
- CAPÍTULO 12 Sistemas para administración de bases de datos distribuidas
- 12.1 La evolución de los sistemas de administración de una base de datos distribuida
- 12.2 Ventajas y desventajas de un DDBMS
- 12.3 Procesamiento distribuido y bases de datos distribuidas
- 12.4 Características de los sistemas de administración de bases de datos distribuidas
- 12.5 Componentes de un DDBMS
- 12.6 Niveles de datos y distribución de procesos
- 12.6.1 Procesamiento de un solo sitio, datos de un solo sitio (SPSD)
- 12.6.2 Procesamiento en múltiples sitios, datos en un sitio (MPSD)
- 12.6.3 Procesamiento en múltiples sitios, datos en sitios múltiples (MPMD)
- 12.7 Características de transparencia de las bases de datos distribuidas
- 12.8 Transparencia de distribución
- 12.9 Transparencia de transacción
- 12.9.1 Selecciones y transacciones distribuidas
- 12.9.2 Control de concurrencia distribuida
- 12.9.3 Protocolo de registro de dos fases
- 12.10 Transparencia de desempeño y optimización de consulta
- 12.11 Diseño de una base de datos distribuida
- 12.11.1 Fragmentación de datos
- 12.11.2 Réplica de datos
- 12.11.3 Asignación de datos
- 12.12 Cliente/servidor vs. DDBMS
- 12.13 Los doce mandamientos de C. J. Date para bases de datos distribuidas
- Resumen
- Términos clave
- Preguntas de repaso
- Problemas
- CAPÍTULO 13 Inteligencia de negocios y almacenes de datos
- 13.1 Necesidad del análisis de datos
- 13.2 Inteligencia de negocios
- 13.3 Arquitectura de la inteligencia de negocios
- 13.4 Datos para soporte de decisiones
- 13.4.1 Datos operacionales vs. datos para soporte de decisiones
- 13.4.2 Requisitos de la base de datos para soporte de decisiones
- 13.5 El almacén de datos
- 13.5.1 Doce reglas que definen un almacén de base de datos
- 13.5.2 Estilos arquitectónicos para soporte de decisiones
- 13.6 Procesamiento analítico en línea
- 13.6.1 Técnicas multidimensionales para análisis de datos
- 13.6.2 Soporte avanzado para una base de datos
- 13.6.3 Interfaz fácil de usar para usuario final
- 13.6.4 Arquitectura cliente/servidor
- 13.6.5 Arquitectura OLAP
- 13.6.6 OLAP relacional
- 13.6.7 OLAP multidimensional
- 13.6.8 OLAP relacional vs. multidimensional
- 13.7 Esquemas en estrella
- 13.7.1 Hechos
- 13.7.2 Dimensiones
- 13.7.3 Atributos
- 13.7.4 Jerarquías de atributos
- 13.7.5 Representación de esquema en estrella
- 13.7.6 Técnicas para mejorar el desempeño en el esquema en estrella
- 13.8 Implementación de un almacén de datos
- 13.8.1 El almacén de datos como marco activo para soporte de decisiones
- 13.8.2 Un esfuerzo de toda compañía que requiere la participación del usuario
- 13.8.3 Satisfación la trilogía: datos, análisis y usuarios
- 13.8.4 Aplicación de procedimientos para diseño de una base de datos
- 13.9 Minería de datos
- 13.10 Extensiones de SQL para OLAP
- 13.10.1 La extensión ROLLUP
- 13.10.2 La extensión CUBE
- 13.10.3 Vistas materializadas
- Resumen
- Términos clave
- Preguntas de repaso
- Problemas
- PARTE V BASES DE DATO SE INTERNET
- Viñeta de negocio: KBB transforma con innovadores servicios en la web
- CAPÍTULO 14 Conectividad de bases de datos y tecnologías web
- 14.1 Conectividad de una base de datos
- 14.1.1 Conectividad SQL nativa
- 14.1.2 ODBC, DAO y RDO
- 14.1.3 OLE-DB
- 14.1.4 ADO.NET
- 14.1.5 Conectividad de base de datos Java (JDBC)
- 14.2 Bases de datos en internet
- 14.2.1 Middleware de la web a la base de datos: extensiones en el lado del servidor
- 14.2.2 Interfaces del servidor web
- 14.2.3 El navegador web
- 14.2.4 Extensiones de lado cliente
- 14.2.5 Servidores de aplicación web
- 14.3 Lenguaje de marcas extensible
- 14.3.1 Definiciones de tipo de documento y esquemas de XML
- 14.3.2 Presentación XML
- 14.3.3 Aplicaciones de XML
- 14.4 Servicios de datos de SQL
- Resumen
- Términos clave
- Preguntas de repaso
- Problemas
- PARTE VI ADMINISTRACIÓN DE BASES DE DATOS
- Viñeta de negocio: La creciente amenaza de inyección de SQL
- CAPÍTULO 15 ADMINISTRACIÓN Y SEGURIDAD DE BASES DE DATOS
- 15.1 Datos como activo corporativo
- 15.2 Necesidad de una base de datos y función de ésta en una organización
- 15.3 Introducción de una base de datos: consideraciones especiales
- 15.4 La evolución de la función de administración de una base de datos
- 15.5 Componente humano del ambiente de una base de datos
- 15.5.1 Función administrativa del DBA
- 15.5.2 Función técnica del DBA
- 15.6 Seguridad
- 15.6.1 Políticas de seguridad
- 15.6.2 Vulnerabilidades de seguridad
- 15.6.3 Seguridad de la base de datos
- 15.7 Herramientas para administración de una base de datos
- 15.7.1 EL diccionario de datos
- 15.7.2 Herramientas CASE
- 15.8 Desarrollo de una estrategia de administración de datos
- 15.9 El DBA en el trabajo: uso de Oracle para administración de bases de datos
- 15.9.1 Herramientas de Oracle para administración de base de datos
- 15.9.2 Inicio de sesión por default
- 15.9.3 Para asegurar un inicio automático de RDBMS
- 15.9.4 Creación de espacios de tabla y archivos de datos
- 15.9.5 Administración de objetos de base de datos: tablas, vistas, disparadores y procedimientos
- 15.9.6 Administración de usuarios y establecimiento de seguridad
- 15.9.7 Ajuste de los parámetros de inicialización de la base de datos
- Resumen
- Términos clave
- Preguntas de repaso
- GLOSARIO
- ÍNDICE