Ver Mensaje Individual
  #2 (permalink)  
Antiguo 24/01/2011, 12:35
Avatar de huesos52
huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 10 meses
Puntos: 360
Respuesta: Agregar campo que no quede al final de la tabla - PostgreSQL

Hola guillermo

Se que en mysql es posible pero en postgresql no.
No se si esto sea una desventaja o una ventaja para postgresql. Este tipo de operaciones DDL puede afectar bastante la performance de una base de datos.
Te pongo un ejemplo.... el almacenamiento de información de postgresql se hace en una unidad llamada bloque. El tamaño de bloque puede ser configurado por el administrador. Cuando tienes una tabla con un millon de registros y le añades un campo, la información que está en el otro campo, no podrá ser guardada consecutivamente con la información de bloques restante de la tabla. Esta se almacena en bloques lejanos dejando un pequeño identificador que enlace con la información de la tabla. Esto en lecturas a disco de una gran cantidad de datos, puede afectar seriamente el rendimiento de la base de datos. Una tarea de administración para corregir este problema, es recrear nuevamente la tabla, para que los datos se almacenen adecuadamente en los bloques y su acceso a disco se optimice.

Otra cosa que debes tener en cuenta es que las tareas DDL (Data Definition Language) no deben estar enlazadas a una tarea automatizada por un software. Si tu desde la aplicación das la opción de crear campos adicionales, borrarlos o modificarlos, lo que estas haciendo es fragmentar severamente la información de tu base de datos. Esto trae muchos problemas en la administración de la misma.

Es solo un consejo.

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming