Visión general de PostgreSQL
Despliega las aplicaciones más populares en nuestros servidores cloud de alto rendimiento con un solo clic.
PostgreSQL es un sistema de gestión de bases de datos objeto-relacional de distribución libre, desarrollado por una comunidad internacional de desarrolladores y no controlado por ninguna empresa ni individuo. PostgreSQL se distribuye bajo una licencia libre que permite incluirlo en productos de software comerciales.

Los puntos fuertes de PostgreSQL son:
- mecanismos de transacciones y replicación de alto rendimiento y fiabilidad;
- sistema extensible de lenguajes de programación integrados: PL/pgSQL, PL/Perl, PL/Python y PL/Tcl se incluyen de serie; adicionalmente pueden utilizarse PL/Java, PL/PHP, PL/Py, PL/R, PL/Ruby, PL/Scheme, PL/sh y PL/V8, y también está disponible la carga de módulos compatibles con C;
- herencia;
- facilidad de extensión.
Funcionalidades principales:
- Las funciones son bloques de código que se ejecutan en el servidor, no en el cliente de base de datos. Aunque pueden escribirse en SQL puro, implementar lógica adicional — como saltos condicionales y bucles — va más allá de SQL y requiere ciertas extensiones del lenguaje.
- Los triggers se definen como funciones iniciadas por operaciones DML. Por ejemplo, una operación INSERT puede disparar un trigger que compruebe el registro añadido frente a determinadas condiciones. Para escribir las funciones de los triggers pueden utilizarse distintos lenguajes de programación.
- Reglas y vistas — el mecanismo de reglas permite crear manejadores personalizados no solo para operaciones DML, sino también para operaciones de selección. La diferencia principal respecto al mecanismo de triggers es que las reglas se activan en la fase de análisis de la consulta, antes de elegir el plan de ejecución óptimo y del proceso de ejecución en sí. Las reglas permiten redefinir el comportamiento del sistema al ejecutar operaciones SQL sobre una tabla.
- PostgreSQL cuenta con soporte para índices de los siguientes tipos: B-tree, hash, GiST, GIN, BRIN, Bloom. Si es necesario, se pueden crear nuevos tipos de índices.
- PostgreSQL admite la modificación simultánea de la base de datos por parte de múltiples usuarios mediante el mecanismo Multiversion Concurrency Control (MVCC). Esto garantiza el cumplimiento de los requisitos ACID y hace que los bloqueos de lectura sean prácticamente innecesarios.
- PostgreSQL admite un amplio conjunto de tipos de datos integrados.
Las tablas pueden heredar características y conjuntos de campos de otras tablas (padre). Los datos añadidos a una tabla derivada participarán automáticamente (salvo que se indique lo contrario) en las consultas a la tabla padre.
En PostgreSQL 10 se incorporó el mecanismo de particionamiento de tablas. El particionamiento está diseñado para dividir una tabla en varias tablas llamadas particiones. El particionamiento es similar a la herencia, pero cuenta con una sintaxis más amigable y restricciones más estrictas, lo que permite realizar optimizaciones adicionales durante la planificación de consultas.
Puede encontrar más información en la Wiki.