Modelado de datos IV – El diccionario de datos



Una vez que ya tenemos normalizado nuestro Modelo de base de datos, tenemos que añadir las especificaciones de los campos en el diccionario de datos, el cual le indicara al administrador cómo crear las tablas y al programador los detalles sobre cómo guardará la información.

 No hay un formato único para el diccionario de datos, pero si hay datos esenciales que debemos colocar como:

  • Nombre del campo 
  • Tipo de dato
  • Longitud del campo
  • Tipo de Índice
Se pueden incluir datos adicionales que se consideren importantes, como el si el campo será autoincremental, si admite valores nulos o si admite un rango de valores en particular.
 
Ahora lo que haremos será ir tabla por tabla llenando los datos de una tabla como esta 
El tipo de dato, lo tomaremos de la lista de tipos de datos que nuestro SGBD soporte y lo asignaremos claro está de acuerdo a la naturaleza de los datos que guardara el campo.
 
La importancia del tipo de dato radica no sólo en el espacio de almacenamiento, también determina el tipo de operaciones que podremos hacer desde las consultas SQL
 
La longitud por su parte si hablamos de un campo de tipos Text o sus derivados, será en base a la cantidad de caracteres que deberá almacenar como máximo dicho campo, sin exceder el límite especificado por el SGBD para ese tipo de dato, ahora que si hablamos de tipos numéricos, esta longitud está dada por el SGBD, y es referente al número de bytes que se reservan para almacenar el dato, lo cual da, por supuesto un número máximo. Dado esto es importante tener siempre una lista de los tamaños que usa dicho SGBD, como la siguiente.
 
 En el caso del índice, la mayoría de los SGBD soporta al menos 3 tipos de índices, por lo que vamos a describirlos.
  • Principal: Se emplea para los campos que serán llave primaria y como sabemos, no admite valores nulos, ni repetidos, solo un campo puede ser llave primaria o en su caso, la combinación de varios campos, pero no pueden haber dos campos independientes siendo llave primaria en la misma tabla.
  • Único: Se emplea para campos que son llave candidata, es decir cumplen con los requisitos para ser llave primaria, pero no se emplean para dicho propósito, de estos si pueden haber varios.
  • Normal: Se emplea en campos que si pueden admitir valores nulos y duplicados, permiten acelerar la búsqueda de datos dentro de ese campo.
Para asígnar un tipo de índice debemos de fijarnos en el Modelo relacional con las siguientes pautas
  • Los campos llave serán índices principal
  • Las llaves foráneas serán índice normal
  • Si un campo no se emplea para establecer una relación con otra tabla, pero sabemos que se empleará para buscar datos o como referencia para la búsqueda, se le hará índice normal.
  • Las llaves alternas o candidatas serán índice único.
Si se dan cuenta nos hemos ampliado mucho en los índices, el motivo de ello es que determinan la velocidad y rendimiento de la base de datos, solo por dar un ejemplo, en un sistema en el que hay que relacionar dos tablas, la primera con 20000 registros y la segunda con 150 registros, una consulta que las vincule para buscar información con índices creados tomará 1 a 2 segundos, pero en tablas sin índices se agotará el tiempo de espera de la conexión y no obtendremos datos, probablemente en 2 horas.
 
Hay SGBD que emplean otros tipos de índices o usan un índice llamado «Full Text» para los campos de tipo texto, por lo que debemos estar atentos a los detalles de implementación de los índices y de los tipos de datos.
 
Ya para terminar los dejamos con el video de este artículo
 
 
 
Anuncio publicitario

¿Qué estas pensando?

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Salir /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Salir /  Cambiar )

Conectando a %s

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.