La Tabla K.1 describe varios límites estrictos de PostgreSQL. Sin embargo, pueden aplicarse límites prácticos, como las limitaciones de rendimiento o el espacio disponible en el disco, antes de que se alcancen los límites estrictos absolutos.

Tabla K.1. Limitaciones de PostgreSQL

Articulo Limite superior Comentario
tamaño de la base de datos ilimitado
número de bases de datos 4,294,950,911
relaciones por base de datos 1.431.650.303
tamaño de la relación 32TB con el valor predeterminado BLCKSZ de 8192 bytes
filas por tabla limitado por el número de tuplas que caben en 4.294.967.295 páginas
columnas por tabla 1600 limitado aún más por el ajuste del tamaño de tupla en una sola página; vea la nota abajo
tamaño del campo 1 GB
longitud del identificador 63 bytes se puede aumentar recompilando PostgreSQL
índices por tabla ilimitado restringido por relaciones máximas por base de datos
columnas por índice 32 se puede aumentar recompilando PostgreSQL
dividir keys 32 se puede aumentar recompilando PostgreSQL

El número máximo de columnas de una tabla se reduce aún más, ya que la tupla que se almacena debe caber en una sola página de almacenamiento dinámico de 8192 bytes. Por ejemplo, excluyendo el encabezado de la tupla, una tupla compuesta por 1600 int las columnas consumirían 6400 bytes y podrían almacenarse en una página de almacenamiento dinámico, pero una tupla de 1600 bigint las columnas consumirían 12800 bytes y, por lo tanto, no cabrían dentro de una página de almacenamiento dinámico. Campos de longitud variable de tipos como text, varchary char pueden tener sus valores almacenados fuera de línea en la tabla TOAST de la tabla cuando los valores son lo suficientemente grandes como para requerirlo. Solo un puntero de 18 bytes debe permanecer dentro de la tupla en el montón de la tabla. Para campos de longitud variable de longitud más corta, se utiliza un encabezado de campo de 4 bytes o de 1 byte y el valor se almacena dentro de la tupla de almacenamiento dinámico.

Las columnas que se han eliminado de la tabla también contribuyen al límite máximo de columnas. Además, aunque los valores de las columnas eliminadas para las tuplas recién creadas están marcados internamente como null en la tupla null mapa de bits, el null mapa de bits también ocupa espacio.

Anterior Arriba próximo
J.5. Guía de estilo Casa Apéndice L. Acrónimos