sábado, 13 de febrero de 2010

Libros: Data Modeling con SQL Server

El proceso de cómo almacenar información sobre la estructura lógica que va a representar una base de datos es lo que se conoce como Data Modeling. Puede verse como aquellos fundamentos que permiten pasar del planteamiento de un modelo abstracto que cubra unas necesidades reales, a su mapeo o implementación sobre una estructura de memoria.

En el libro “A Developer's guide to Data Modeling for SQL Server” (de Eric Johnson y Joshua Jones) se pone de manifiesto cómo a menudo la improvisación y la comodidad a la hora de desarrollar una base de datos, o bien al involucrarse en un cambio de plataforma, da resultados desastrosos. Se incide por ello en la idea de que el diseño de una base de datos debería ser independiente siempre de la plataforma sobre la que se va a implementar, precisamente por esas necesidades que pueden plantearse de cambio de soporte. Esto es algo bastante común dados los cada vez más cortos periodos de renovación exigidos en muchos sistemas. Y es en todo ese respaldo teórico que representa el Data Modeling donde está la clave para llegar a una base de datos con un diseño sólido.

El libro se divide en cuatro secciones que abarcan todo el proceso de diseño. En un principio se tratan de introducir los motivos por los que darle la debida importancia a ese proceso es vital: consistencia de los datos, escalabilidad, fácil manejo de los datos a posteriori o mejoras en el funcionamiento del sistema. Para lograrlos son necesarias ciertas bases teóricas que se explican detalladamente a continuación, abarcando elementos físicos y lógicos necesarios así como la normalización del modelo de datos.

La siguiente sección trata de cómo llevar una necesidad dentro del ámbito empresarial o institucional a la práctica, en forma del producto a desarrollar. En este proceso es muy importante tener un punto de partida que interpretar después. Por ello, para poder definir qué queremos hacer, se especifican diferentes formas de recolección de información, algunas desde el mismo escenario en el que se generan los datos a almacenar: entrevistas, observación, casos de estudio o experiencias previas.

El siguiente paso es plantear el modelo lógico que va a ser implementado, utilizando diagramas y definiendo las entidades, relaciones o atributos que correspondan. En este punto se dedica un capítulo a mencionar problemas que suelen surgir debido a decisiones previas erróneas que salen a relucir al definir la estructura lógica y también cómo solventarlos. En el último punto se lleva el modelo lógico a lo que el texto denomina modelo físico, es decir, reflejar el trabajo anterior sobre la plataforma elegida, en este caso SQL Server. Y aquí será necesario asignar nombres a los objetos de la base de datos siguiendo unas determinadas directrices, creando todos los índices necesarios.

Por último se revisa el nivel de abstracción, con el objetivo de ocultar al usuario detalles de la implementación que no le afectan y proporcionar flexibilidad y extensibilidad a la solución, además de representar una capa adicional de seguridad. En los anexos se ponen ejemplos bastante ilustrativos y se hace mención a normas usuales en la nomenclatura de SQL Server.

Hasta aquí se ha hablado de muchos aspectos generales de SQL Server, pero no se habían mencionado las directrices a seguir cuando se pretende implementar una base de datos. Para aquellos formados en el trabajo con ellas, la mayoría de ideas que se exponen les resultarán familiares, y en general en este libro se tiene un manual de operación de gran utilidad para adoptar buenos hábitos a la hora realizar este tipo de desarrollos. Y esto, la organización y los buenos hábitos, son fundamentales para obtener un producto final de calidad, sobre el que trabajar en adelante con comodidad.

No hay comentarios:

Publicar un comentario