digamos que tengo una columna en mi mesa define lo siguiente:¿Cuánto espacio de disco se necesita para almacenar un valor NULL utilizando postgresql DB?
"MyColumn" smallint NULL
Almacenamiento de un valor como 0, 1 o alguna otra cosa debe necesitan 2 bytes (1). ¿Pero cuánto espacio se necesita si configuro "MyColumn" en NULL? Necesitará 0 bytes?
¿Hay algunos bytes adicionales necesarios para la administración o cosas por cada columna/fila?
(1) http://www.postgresql.org/docs/9.0/interactive/datatype-numeric.html
Adición de columnas sin un valor por defecto para tablas de gran tamaño suele ser una operación rápida. ¿Puede ser lento cuando cruzas el umbral entre 8 y 9 columnas (o 72 y 73 con 'MAXALIGN = 8')? –
@ PatrickBrinich-Langlois: Sí, esa es una posible consecuencia del mecanismo. El tamaño de la tabla física también sube más de lo que cabría esperar en estos casos. El efecto no es necesariamente lineal ya que están involucrados otros factores como las tuplas muertas. La tabla no crece en absoluto si los mapas de bits NULL existentes (por fila) tienen espacio para otro bit NULO, que es el caso común. –