Necesitar un libro de diseño de base de datos [cerrado]

23

Estoy diseñando una base de datos y tiene muchas relaciones entre mis tablas y necesito un libro que enseñe muy bien el diseño de la base de datos. Estoy buscando un libro donde las relaciones de tabla simples y complejas se hayan cubierto ampliamente y tal vez casos de estudio en el libro.

Gandalf
fuente

Respuestas:

9

Vale la pena leer SQL Antipatterns para obtener algunas sugerencias sobre lo que no debe hacer y por qué no (y bajo qué circunstancias esas reglas pueden ignorarse legítimamente).

David Spillett
fuente
5

Es importante distinguir entre los niveles de diseño conceptual, lógico y físico.

Nivel conceptual

Dos recursos excelentes y complementarios son:

  1. Patrones de modelos empresariales de David Hay . Este libro presenta los patrones básicos que se encuentran en la mayoría de las empresas y proporciona instrucciones maravillosas sobre cómo pensar con claridad sobre cómo modelar el mundo. Se centra principalmente en descubrir tipos de entidad y relaciones.
  2. Fabian Pascal's paper Business Modeling for Database Design . Este documento es el primero de la serie de bases de datos prácticas de Fabian y es el compañero perfecto del libro de David, ya que se centra principalmente en el descubrimiento y la clasificación de todas las diversas reglas comerciales y cómo se asignarán a las restricciones en un diseño de base de datos lógica.

Nivel lógico

El modelo relacional se distingue de todos los demás modelos de datos en que es un modelo lógico que describe una estructura lógica con la cual presentar datos (la relación), un conjunto de operadores para manipular esa estructura lógica (el álgebra relacional) y un conjunto de las reglas de integridad de datos para garantizar que los datos almacenados en un DBMS sean una representación del mundo real tan fiel como sea posible. Tres excelentes recursos para aprender sobre el diseño de bases de datos lógicas son:

  1. Fabian Pascal's Practical Database Foundation Series (como se mencionó anteriormente). Los artículos restantes de esta serie proporcionan una introducción concisa y fácil de entender a las diversas partes del diseño de bases de datos lógicas. El don de Fabian es su habilidad para destilar temas muy complejos correctamente en un lenguaje que el resto de nosotros pueda entender.
  2. Toon Koppelaars y Matemáticas aplicadas de Lex deHaan para profesionales de bases de datos . Este maravilloso libro presenta una metodología sólida para el diseño de bases de datos lógicas arraigadas en la teoría de conjuntos y la lógica. Presenta los fundamentos y luego también cómo aplicarlos para crear una base de datos completamente funcional en Oracle.
  3. Teoría relacional de CJ Date para profesionales de la informática . El cuerpo de trabajo de CJ Date es enorme y uno puede beneficiarse de todo. Este libro en particular es una revisión reciente (2013) que reemplaza a trabajos anteriores que realmente presenta los conceptos básicos del modelo de base de datos relacional.

Nivel fisico

El nivel físico es el único.lugar donde viven el rendimiento, las estructuras de almacenamiento en disco y memoria, y la escalabilidad. No me especializo en esta área, pero puedo decir que dominar este nivel es principalmente un esfuerzo para dominar el DBMS con el que está trabajando. El DBMS es un software tan sofisticado que te estás engañando a ti mismo si crees que puedes dominar todo, y mucho menos dominar más de uno. Por esta razón, recomendaría seguir con los niveles conceptuales y lógicos y crear un diseño de base de datos lógico sólido, y luego trabajar con un DBA realmente bueno que se especialice en el DBMS objetivo para desarrollar el diseño físico. Sin embargo, una fuente realmente buena para el diseño físico que presenta los temas y opciones fundamentales comunes a la mayoría de los DBMS es Sam Lightstone, Toby Teorey y el diseño de la base de datos física de Tom Nadeau .

Todd Everett
fuente
1

Antes de sumergirse en la literatura, puede encontrar útil este documento:

All for One, One for All por CJ Date

El objetivo [de este trabajo] es precisar la naturaleza exacta de las relaciones uno a uno, muchos a uno, uno a muchos y muchos a muchos. En particular, trata de llegar a definiciones precisas para estos conceptos [porque] una encuesta de la literatura ciertamente revela confusión y falta de pensamiento sistemático en esta área

un día cuando
fuente