Bases de datos

PostgreSQL: qué es, qué lo diferencia y cómo empezar

PostgreSQL es un gestor de bases de datos libre: el programa que guarda datos en tablas y atiende a la vez las consultas de muchas personas. Lo distingue que se deja ampliar con tipos de datos, funciones y extensiones nuevas. Se usa gratis para cualquier fin, también comercial, y su versión mayor más reciente es la 18.

Por Jhon Mosquera6 nov 202613 min de lectura

Última actualización: 2026-11-06

Contenido de esta página

Historia real. En mayo de 1986, dos investigadores de la Universidad de California en Berkeley, Michael Stonebraker y Lawrence Rowe, presentaron el diseño de un gestor de bases de datos nuevo [1] [2]. Se llamaba POSTGRES y sucedía a INGRES, un sistema anterior de la misma universidad [1]. Según ellos, lo habían remendado tanto que meterle funciones nuevas de peso ya era extremadamente difícil [1].

Su queja tenía ejemplos concretos. Un programa de mapas necesita un tipo de dato para la latitud y la longitud; uno de diseño industrial, figuras geométricas [1]. Esos datos se podían simular con números y textos, pero las consultas salían largas, confusas y a veces lentas [1]. Por eso pusieron como segundo objetivo que el usuario pudiera añadir al gestor «nuevos tipos de datos y nuevos operadores», sin tener que ser experto [1]. Las citas en inglés de esta página son traducción propia.

Cuarenta años después, esa idea sigue siendo la firma del programa.

PostgreSQL es el heredero de aquel código de Berkeley [3]. Un gestor de bases de datos es el programa al que una aplicación le confía sus datos y le hace sus preguntas. PostgreSQL es, además, uno que se deja ampliar. Hoy existen extensiones que le enseñan a manejar mapas, búsquedas por parecido o mediciones fechadas [10] [11] [12].

Cuerpo de cámara con un objetivo montado y cuatro lentes intercambiables alineados sobre una mesa de madera

¿Qué es PostgreSQL y para qué sirve?

PostgreSQL es un sistema de gestión de bases de datos objeto-relacional. Guarda los datos en tablas, como cualquier base relacional, y además deja que el usuario cree sus propios tipos de datos, funciones y operadores [3]. Es software de código abierto: cualquiera puede leer sus instrucciones internas y cambiarlas. Su licencia permite usarlo, cambiarlo y distribuirlo gratis para cualquier fin, sea privado, comercial o académico [3].

En la práctica, sirve para guardar los datos de una aplicación que muchas personas usan a la vez y para consultarlos sin que se mezclen los cambios. Su manual enumera lo que trae de serie: consultas complejas, claves foráneas (los enlaces entre tablas), disparadores que reaccionan a cada cambio, vistas que se pueden actualizar e integridad de las transacciones [3]. Se le habla en SQL, el lenguaje estándar para pedirle datos a una base, y soporta una gran parte de esa norma [3].

¿Y Postgres? Es el mismo programa. El proyecto conserva ese nombre como oficial, por tradición y porque a la gente le resulta más fácil de pronunciar [2]. Si el modelo de tablas relacionadas es nuevo para usted, la guía de bases de datos relacionales lo explica desde cero, y la de SQL enseña el lenguaje.

¿Qué versión de PostgreSQL usar en 2026?

La versión mayor más reciente de PostgreSQL es la 18, y su arreglo más nuevo es la 18.6 [4]. Una versión mayor trae funciones nuevas. Una versión menor, la que cambia solo el número después del punto, corrige errores y fallas de seguridad [4].

El ritmo es predecible. Sale una versión mayor más o menos una vez al año, y cada una recibe arreglos durante 5 años desde su primera publicación [4]. Los arreglos menores salen al menos cada tres meses [4]. La siguiente, PostgreSQL 19, todavía está en prueba: su primera versión candidata se publicó el 15 de octubre de 2026 [5].

VersiónArreglo vigentePrimera publicaciónFin del soporte
1818.625 de septiembre de 202514 de noviembre de 2030
1717.1126 de septiembre de 20248 de noviembre de 2029
1616.1514 de septiembre de 20239 de noviembre de 2028
1515.1913 de octubre de 202211 de noviembre de 2027
1414.2430 de septiembre de 202112 de noviembre de 2026

Fuente: PostgreSQL, política de versiones [4]. Corte: 6 de noviembre de 2026.

Para un proyecto nuevo, la elección es la 18. Quien tenga la 14 está a días de quedarse sin arreglos [4]. Saltar de una versión mayor a otra exige volcar y recargar la base o usar la herramienta pg_upgrade, pero no obliga a pasar por las versiones intermedias [4]. El proyecto sí recomienda leer las notas de todas las que se salta [4].

Extensibilidad: lo que hace distinto a PostgreSQL

PostgreSQL se puede ampliar por la forma en que usa su catálogo, el inventario interno de la base. Ahí no guarda solo la lista de tablas y columnas: también registra los tipos de datos, las funciones y los métodos de acceso [6]. El gestor funciona leyendo esas tablas, así que quien las amplía amplía el gestor [6]. La documentación de PostgreSQL 18 lo dice en una línea: «PostgreSQL es extensible porque su funcionamiento está dirigido por el catálogo» [6].

La diferencia con otros gestores es de fondo. Según el mismo manual, los sistemas convencionales solo se amplían cambiando su código fuente o cargando módulos que escribió el fabricante [6]. En PostgreSQL, el usuario puede agregar tipos de datos, funciones, operadores, funciones de agregación (las que resumen muchas filas en un valor), métodos de índice y lenguajes de programación [3].

Lo habitual es recibir esas piezas empaquetadas en una extensión. La orden CREATE EXTENSION carga una en la base actual: ejecuta su guion, que suele crear funciones, tipos de datos, operadores y métodos de soporte de índices [7]. Este ejemplo sale de la documentación oficial de PostgreSQL 18; no lo ejecuté en un servidor propio:

-- Lista las extensiones que este servidor tiene disponibles para instalar
SELECT name, default_version, installed_version
FROM pg_available_extensions;

-- Instala hstore, un módulo que viene con PostgreSQL y guarda pares clave-valor
CREATE EXTENSION hstore;

La vista pg_available_extensions muestra las extensiones que se pueden instalar y, en la columna installed_version, la versión ya instalada, si la hay [8]. El módulo hstore guarda conjuntos de pares clave-valor dentro de un solo valor [9]. Está marcado como confiable, así que puede instalarlo cualquier usuario con permiso para crear objetos en esa base [9].

Hay un costo que el manual no esconde. Instalar una extensión como superusuario (el usuario sin restricciones de acceso) exige confiar en que su autor escribió un guion seguro [7]. Cada extensión es código ajeno que corre dentro de la base.

Cinco extensiones conocidas de PostgreSQL

Estas cinco muestran hasta dónde llega la idea de 1986. Aquí solo se nombran; cada una tiene su propia documentación:

  • PostGIS amplía PostgreSQL para guardar, indexar y consultar datos geoespaciales, es decir, datos ubicados en un mapa [10].
  • pgvector añade búsqueda por similitud de vectores, que son listas de números, y los guarda junto con el resto de los datos [11].
  • TimescaleDB es una extensión para analizar en tiempo real series de tiempo y eventos, es decir, datos que llevan fecha y hora [12].
  • Apache AGE le da a PostgreSQL funciones de base de datos de grafos: datos guardados como nodos y aristas, o puntos y conexiones [13].
  • Citus convierte a PostgreSQL en una base distribuida, que reparte tablas y consultas entre varios servidores [14].

MVCC: por qué en PostgreSQL leer no bloquea escribir

PostgreSQL usa MVCC, sigla en inglés de control de concurrencia multiversión: guarda varias versiones de los datos para que muchas personas usen la base al mismo tiempo [15]. Con este modelo, cada orden de SQL ve una foto de los datos tal como estaban en un momento, sin importar lo que otros estén cambiando [15]. Así nadie lee datos a medio actualizar [15].

La ventaja está en los bloqueos, los candados que un gestor pone sobre los datos mientras alguien los usa. En MVCC, los que se toman para leer no chocan con los que se toman para escribir [15]. El manual lo resume así: «leer nunca bloquea escribir y escribir nunca bloquea leer» [15]. Y mantiene esa garantía incluso en su nivel de aislamiento más estricto, el que más protege a cada transacción de las demás [15].

Un ejemplo ilustrativo. Una tienda corre a las once de la mañana el informe de ventas del mes. El informe tarda varios minutos. Mientras tanto, las cajas siguen registrando ventas nuevas sin esperar a que termine. La consulta que arma el informe ve los datos tal como estaban al empezar esa consulta, sin los cambios que las cajas hagan mientras corre.

La garantía tiene un límite que conviene saber. Dos escrituras sobre la misma fila sí se esperan. PostgreSQL usa por defecto el nivel Read Committed (lectura confirmada) [16]. En él, si una transacción quiere cambiar una fila que otra ya modificó, espera a que la primera se confirme o se deshaga [16]. Para el uso de esto en una base que registra ventas y pagos, vea bases de datos transaccionales.

JSONB: datos tipo NoSQL dentro de una base relacional

JSONB es el tipo de columna de PostgreSQL que guarda documentos JSON en un formato binario ya descompuesto [17]. JSON es un formato de texto, con llaves y corchetes, que muchas aplicaciones usan para intercambiar datos. Gracias a JSONB, una misma tabla puede tener columnas fijas y, al lado, documentos de forma libre, como los que guardan las bases de datos NoSQL, las que no se organizan en tablas.

Hay dos tipos de columna para JSON en PostgreSQL. Los dos rechazan un documento mal escrito [17]. Se diferencian en lo que conservan y en la velocidad:

Rasgojsonjsonb
Qué guardaUna copia exacta del texto de entrada [17]El documento descompuesto en formato binario [17]
VelocidadSe guarda sin conversión; cada consulta vuelve a leer el texto [17]Algo más lento al guardar y bastante más rápido al consultar [17]
Espacios y orden de las clavesLos conserva [17]No los conserva [17]
Claves repetidasGuarda todas [17]Se queda con el último valor [17]

El manual recomienda que la mayoría de las aplicaciones guarde sus documentos como jsonb, salvo necesidades muy especiales, como depender del orden de las claves [17]. El ejemplo siguiente también sale de la documentación de PostgreSQL 18 y tampoco lo ejecuté. Crea un índice GIN, una estructura aparte que acelera las búsquedas dentro de los documentos, y lo usa en una consulta:

-- Tabla con una sola columna jsonb que guarda documentos completos
CREATE TABLE api (jdoc jsonb);

-- Índice GIN: acelera la búsqueda de claves y de pares clave-valor dentro de los documentos
CREATE INDEX idxgin ON api USING GIN (jdoc);

-- Documentos cuya clave "company" vale "Magnafone"; el operador @> significa "contiene"
SELECT jdoc->'guid', jdoc->'name' FROM api WHERE jdoc @> '{"company": "Magnafone"}';

El índice GIN sirve para encontrar claves o pares clave-valor entre una gran cantidad de documentos [17]. La consulta del ejemplo puede usarlo porque aplica el operador de contención directamente sobre la columna indexada [17].

Hay una advertencia práctica. Un documento JSON se bloquea como cualquier otro dato: cada actualización pone un candado sobre la fila completa [17]. Por eso el manual sugiere documentos de tamaño manejable, para que las escrituras simultáneas no se estorben [17].

¿PostgreSQL es gratis? La licencia PostgreSQL

Sí. PostgreSQL se publica bajo la licencia PostgreSQL, que el proyecto describe como «una licencia de código abierto liberal, similar a las licencias BSD o MIT» [18]. BSD y MIT son los nombres de otras dos licencias de código abierto. El texto autoriza cuatro cosas, para cualquier propósito y sin pagar ni firmar contrato: usar, copiar, modificar y distribuir el programa y su documentación [18].

La licencia pide poco a cambio. Hay que mantener el aviso de derechos de autor, el párrafo de permiso y los dos párrafos siguientes en todas las copias [18]. Los dos últimos dicen que el programa se entrega tal cual, sin garantías ni obligación de darle soporte [18]. El proyecto afirma que se compromete a mantener PostgreSQL libre a perpetuidad [18]. pgAdmin, la herramienta gráfica de administración que trae el instalador de Windows, usa la misma licencia [23] [27].

MySQL sigue otro modelo. Su manual dice que usa la GPL, la Licencia Pública General de GNU, y que quien necesite incrustar su código en una aplicación comercial puede comprar una versión con licencia comercial [20]. La página legal de MySQL enumera esa licencia comercial para fabricantes y revendedores de software [19]. La ficha de MySQL explica ese modelo doble. Esto es divulgación, no asesoría legal: si va a vender un producto que incluya el gestor, revise su caso con un abogado.

PostgreSQL vs MySQL: diferencias y cuál elegir

PostgreSQL y MySQL son dos gestores de bases de datos de código abierto, pero no son intercambiables. PostgreSQL se define como objeto-relacional y se deja ampliar con tipos y extensiones [3]; MySQL se define como relacional [20]. La licencia y el manejo de documentos JSON también los separan:

CriterioPostgreSQLMySQL
ModeloObjeto-relacional [3]Relacional [20]
LicenciaLicencia PostgreSQL: cualquier fin, sin pago [18]GPL, o una licencia comercial para incrustarlo en aplicaciones comerciales [20] [19]
Documentos JSONjsonb en formato binario, con índice GIN sobre la columna completa [17]Formato interno de lectura rápida; la columna no se indexa directo, sino mediante una columna generada que extrae un valor [21]

¿Cuál elegir? Depende del caso, y en ninguno hay una respuesta sin excepciones:

  1. Si necesita mapas, vectores o mediciones fechadas en la misma base, PostgreSQL probablemente le ahorra un segundo sistema, porque esas funciones llegan como extensiones [10] [11] [12].
  2. Si va a incluir el gestor en un producto cerrado que vende, la licencia PostgreSQL no le pide comprar nada [18]; MySQL ofrece para ese caso una licencia comercial [20]. Confírmelo con un abogado.
  3. Si guarda documentos JSON y quiere buscarlos por cualquier clave, jsonb con un índice GIN cubre la columna entera [17]; en MySQL, el índice se arma sobre valores extraídos [21].
  4. Si su equipo ya domina MySQL y la aplicación funciona, cambiar de gestor cuesta tiempo, y la ganancia puede ser pequeña.

¿Por qué se dice que PostgreSQL está de moda?

Una señal pública viene de DB-Engines, un sitio que ordena los gestores con un puntaje de popularidad. DB-Engines declaró a PostgreSQL el gestor del año 2023, por cuarta vez [22]. Ese título premia al que más subió su puntaje de popularidad en el año, no al más instalado [22]. En 2024 el título fue para Snowflake [22]. La guía de gestores de bases de datos reúne, además, lo que dicen los programadores en la encuesta de Stack Overflow.

Cómo empezar con PostgreSQL: instalación, psql y pgAdmin

Empezar con PostgreSQL toma cuatro pasos: instalar el servidor, crear una base, abrirla con psql y, si prefiere ventanas en lugar de comandos, conectarla a pgAdmin. Todo lo que sigue sale de la documentación oficial:

  1. Instale el servidor. La página de descargas ofrece paquetes e instaladores para Linux, macOS, Windows, BSD y Solaris [23]. En Windows, el instalador lo publica la empresa EDB, no los servidores de la comunidad, e incluye el servidor, pgAdmin y StackBuilder, un gestor de paquetes para herramientas adicionales [23]. En Ubuntu basta la orden apt install postgresql, que instala la versión que esa edición de Ubuntu trae fijada [24].
  2. Cree una base. La orden createdb mydb crea una base llamada mydb; si no responde nada, funcionó [25].
  3. Ábrala con psql. psql es la terminal interactiva de PostgreSQL: ahí se escriben, corrigen y ejecutan órdenes de SQL [26].
  4. Conéctela a pgAdmin, si lo prefiere. Haga clic derecho en el nodo Servers y elija Register y luego Server [28]. En la pestaña Connection escriba la dirección del servidor, el puerto, la base de mantenimiento, el usuario y la contraseña [28]. Después abra la herramienta de consultas, Query Tool, desde el menú Tools [28].

Los pasos 2 y 3 en la terminal, tal como los muestra el tutorial oficial de PostgreSQL 18 (no ejecutados en un servidor propio):

# Crea una base de datos llamada mydb (si no responde nada, funcionó)
createdb mydb

# Abre la terminal interactiva psql conectada a esa base
psql mydb

Ya dentro de psql, el tutorial propone tres consultas de prueba [26]:

-- Pregunta qué versión del servidor está corriendo
SELECT version();

-- Pregunta la fecha de hoy
SELECT current_date;

-- Una cuenta simple para comprobar que el servidor responde
SELECT 2 + 2;

Si la línea de espera termina en =#, usted entró como superusuario, el usuario sin restricciones de acceso [26]. Las órdenes propias de psql empiezan con una barra invertida: \h da ayuda sobre la sintaxis y \q cierra el programa [26].

pgAdmin va por la versión 9.19 y funciona como aplicación de escritorio o como servidor web, en Windows, macOS, Linux y contenedores [27]. Para no instalar nada y dejar el servidor en manos de un proveedor, revise las opciones de bases de datos en la nube.

¿Vale la pena aprender PostgreSQL?

Tomo partido: para quien empieza en datos en Colombia, PostgreSQL es la mejor primera base de datos de servidor. No por moda. Por tres razones que se pueden comprobar.

La primera es el costo. La licencia no cobra por usarlo, ni siquiera dentro de un producto que se vende [18]. La segunda es que lo aprendido se acumula: el mismo motor que guarda la tabla de clientes recibe, con una extensión, los mapas o los vectores [10] [11]. La tercera es que no hay que pelearse con el inglés para pedir ayuda. El proyecto mantiene una lista de correo, pgsql-es-ayuda, que se presenta así: «En esta lista se discuten los temas técnicos de PostgreSQL en español» [29].

Queda un cabo suelto, y lo dejo abierto. La extensibilidad que hace grande a PostgreSQL también le traslada al usuario una responsabilidad: cada extensión instalada es código en el que hay que confiar [7]. Stonebraker y Rowe querían que el usuario, y no el fabricante, decidiera qué tipos de datos necesitaba [1]. Cuarenta años después, esa decisión sigue siendo suya.

Preguntas frecuentes

¿PostgreSQL y Postgres son lo mismo? Sí. Postgres es el nombre corto del mismo programa, y el proyecto lo acepta como nombre oficial [2]. El nombre largo nació en 1996, cuando el sistema, que ya entendía SQL, dejó de llamarse Postgres95 [2].

¿PostgreSQL es una base de datos relacional o NoSQL? Es relacional, y su manual la llama objeto-relacional [3]. Puede guardar documentos JSON en columnas jsonb, pero sigue organizando todo en tablas, con transacciones y claves entre ellas [17] [3].

¿Qué es pgAdmin y es obligatorio usarlo? pgAdmin es una herramienta gráfica de código abierto para administrar PostgreSQL [27]. No es obligatoria: el tutorial oficial trabaja con psql y menciona pgAdmin como una alternativa gráfica [26].

¿En qué puerto funciona PostgreSQL? El puerto predeterminado es el 5432, el número que pgAdmin propone al registrar un servidor [28]. Si su instalación usa otro, cámbielo en la pestaña Connection [28].

¿Hay que instalar cada versión intermedia para actualizar PostgreSQL? No. Se puede saltar de una versión mayor a otra sin pasar por las de en medio, aunque el proyecto recomienda leer las notas de todas [4]. Las actualizaciones menores, en cambio, piden detener el servidor, cambiar los programas y reiniciarlo, aunque pueden exigir pasos adicionales, así que conviene leer antes las notas de la versión [4].

¿PostgreSQL sirve para proyectos de inteligencia artificial? Puede servir como almacén. La extensión pgvector guarda vectores, que son listas de números, junto con el resto de los datos y busca los más cercanos a uno dado [11].

Referencias

  1. Michael Stonebraker y Lawrence A. Rowe. The Design of POSTGRES, Universidad de California en Berkeley — POSTGRES sucede a INGRES; seis objetivos de diseño, el segundo «provide user extendibility for data types, operators and access methods»; INGRES había sido «hacked up enough» como para que incluir funciones nuevas fuera extremadamente difícil; ejemplos de tipos especializados (geométricos para CAD/CAM, posición de latitud y longitud para mapas) que se pueden simular, pero con consultas verbosas y confusas y bajo rendimiento; «the ability to add new data types and new operators to a DBMS»; deben poder implementarlos personas no expertas. UC Berkeley: The Design of POSTGRES (PDF) — Consultada: 2026-11-06.
  2. The PostgreSQL Global Development Group. PostgreSQL 18 Documentation, capítulo 2 «A Brief History of PostgreSQL» y bibliografía — el proyecto POSTGRES lo dirigió Michael Stonebraker; su implementación comenzó en 1986 y sus conceptos iniciales se presentaron en [ston86], «The design of POSTGRES», M. Stonebraker y L. Rowe, ACM-SIGMOD Conference on Management of Data, mayo de 1986; en 1994 Andrew Yu y Jolly Chen añadieron un intérprete de SQL y nació Postgres95; en 1996 se adoptó el nombre PostgreSQL; Postgres sigue siendo nombre oficial por tradición y porque es más fácil de pronunciar. PostgreSQL 18: A Brief History of PostgreSQL · PostgreSQL 18: Bibliography — Consultada: 2026-11-06.
  3. The PostgreSQL Global Development Group. PostgreSQL 18 Documentation, prefacio, «What Is PostgreSQL?» — sistema de gestión de bases de datos objeto-relacional basado en POSTGRES 4.2 de Berkeley, del que es descendiente de código abierto; soporta gran parte del estándar SQL; consultas complejas, claves foráneas, disparadores, vistas actualizables, integridad transaccional y control de concurrencia multiversión; el usuario puede añadir tipos de datos, funciones, operadores, funciones de agregación, métodos de índice y lenguajes procedimentales; por su licencia liberal, cualquiera puede usarlo, modificarlo y distribuirlo gratis para cualquier fin, privado, comercial o académico. PostgreSQL 18: What Is PostgreSQL? — Consultada: 2026-11-06.
  4. The PostgreSQL Global Development Group. Versioning Policy — versión mayor con funciones nuevas más o menos una vez al año; versiones menores con arreglos al menos cada tres meses; soporte de 5 años desde la primera publicación; tabla de versiones: 18 (18.6, 25-sep-2025 a 14-nov-2030), 17 (17.11, 26-sep-2024 a 8-nov-2029), 16 (16.15, 14-sep-2023 a 9-nov-2028), 15 (15.19, 13-oct-2022 a 11-nov-2027), 14 (14.24, 30-sep-2021 a 12-nov-2026), 13 ya sin soporte; actualizar entre versiones mayores exige volcado y recarga o pg_upgrade, se puede saltar versiones intermedias y se recomienda leer las notas de todas; las menores piden detener el servidor, instalar los binarios y reiniciar, y pueden exigir pasos adicionales, por lo que conviene leer antes las notas de la versión. PostgreSQL: Versioning Policy — Consultada: 2026-11-06.
  5. The PostgreSQL Global Development Group. PostgreSQL 18.6 Documentation, portada — la documentación vigente es la de PostgreSQL 18.6; la 19 figura como versión en desarrollo; aviso del sitio «October 15, 2026: PostgreSQL 19 RC 1 Released!». PostgreSQL: Documentation 18.6 — Consultada: 2026-11-06.
  6. The PostgreSQL Global Development Group. PostgreSQL 18 Documentation, sección 36.1 «How Extensibility Works» — «PostgreSQL is extensible because its operation is catalog-driven»; sus catálogos guardan información de tipos de datos, funciones y métodos de acceso, además de tablas y columnas; el usuario puede modificarlos; los sistemas convencionales solo se amplían cambiando procedimientos del código fuente o cargando módulos escritos por el fabricante. PostgreSQL 18: How Extensibility Works — Consultada: 2026-11-06.
  7. The PostgreSQL Global Development Group. PostgreSQL 18 Documentation, referencia de CREATE EXTENSION — carga una extensión en la base actual ejecutando su guion, que suele crear funciones, tipos de datos, operadores y métodos de soporte de índices; instalar una extensión como superusuario exige confiar en que su autor escribió el guion de forma segura. PostgreSQL 18: CREATE EXTENSION — Consultada: 2026-11-06.
  8. The PostgreSQL Global Development Group. PostgreSQL 18 Documentation, vista pg_available_extensions — lista las extensiones disponibles para instalar, con las columnas name, default_version, installed_version y comment. PostgreSQL 18: pg_available_extensions — Consultada: 2026-11-06.
  9. The PostgreSQL Global Development Group. PostgreSQL 18 Documentation, módulo hstore — implementa el tipo hstore para guardar conjuntos de pares clave-valor en un solo valor; se considera confiable y lo pueden instalar usuarios sin privilegios de superusuario que tengan permiso CREATE en la base. PostgreSQL 18: hstore — Consultada: 2026-11-06.
  10. PostGIS Project. PostGIS — PostGIS amplía las capacidades de la base relacional PostgreSQL con soporte para guardar, indexar y consultar datos geoespaciales. PostGIS: sitio oficial · PostGIS: Documentation — Consultada: 2026-11-06.
  11. pgvector. README del repositorio oficial — búsqueda de similitud de vectores de código abierto para Postgres; guarda los vectores con el resto de los datos; búsqueda exacta y aproximada del vecino más cercano. pgvector: repositorio oficial — Consultada: 2026-11-06.
  12. Tiger Data. TimescaleDB, repositorio oficial — «TimescaleDB is a PostgreSQL extension for high-performance real-time analytics on time-series and event data». TimescaleDB: repositorio oficial — Consultada: 2026-11-06.
  13. The Apache Software Foundation. Apache AGE — base de datos de grafos para PostgreSQL; los usuarios leen y escriben datos de grafos en nodos y aristas. Apache AGE: sitio oficial — Consultada: 2026-11-06.
  14. Citus Data. Citus 13.0 Documentation — Citus es una extensión de código abierto que convierte a PostgreSQL en una base distribuida, con tablas distribuidas y un motor de consultas que paraleliza el SQL entre varios servidores. Citus: Documentation — Consultada: 2026-11-06.
  15. The PostgreSQL Global Development Group. PostgreSQL 18 Documentation, sección 13.1 «Introduction» (control de concurrencia) — modelo multiversión (MVCC): cada sentencia SQL ve una instantánea de los datos de cierto momento, lo que impide ver datos inconsistentes de transacciones concurrentes; los bloqueos para leer no entran en conflicto con los de escribir, «reading never blocks writing and writing never blocks reading»; la garantía se mantiene en el nivel de aislamiento más estricto (Serializable Snapshot Isolation); también hay bloqueos de tabla y de fila. PostgreSQL 18: Concurrency Control, Introduction — Consultada: 2026-11-06.
  16. The PostgreSQL Global Development Group. PostgreSQL 18 Documentation, sección 13.2 «Transaction Isolation» — Read Committed es el nivel de aislamiento predeterminado; si la fila buscada ya la actualizó otra transacción concurrente, la que quiere actualizarla espera a que la primera confirme o se deshaga. PostgreSQL 18: Transaction Isolation — Consultada: 2026-11-06.
  17. The PostgreSQL Global Development Group. PostgreSQL 18 Documentation, sección 8.14 «JSON Types» — json y jsonb obligan a que cada valor sea JSON válido; json guarda una copia exacta del texto y se reprocesa en cada ejecución; jsonb se guarda en formato binario descompuesto, algo más lento al ingresar y bastante más rápido al procesar, y admite índices; jsonb no conserva espacios, orden de claves ni claves duplicadas (se queda con el último valor); la mayoría de aplicaciones debería preferir jsonb; toda actualización toma un bloqueo sobre la fila completa, por lo que conviene limitar el tamaño de los documentos; índices GIN para claves o pares clave-valor; ejemplos CREATE INDEX idxgin ON api USING GIN (jdoc) y la consulta con @> sobre «company»: «Magnafone», que puede usar el índice. PostgreSQL 18: JSON Types — Consultada: 2026-11-06.
  18. The PostgreSQL Global Development Group. PostgreSQL License — «a liberal Open Source license, similar to the BSD or MIT licenses»; permiso para usar, copiar, modificar y distribuir el software y su documentación para cualquier propósito, sin pago y sin acuerdo escrito, siempre que el aviso de derechos de autor y los dos párrafos siguientes aparezcan en todas las copias; el software se entrega «as is», sin garantías ni obligación de mantenimiento o soporte; compromiso de mantenerlo libre y de código abierto a perpetuidad. PostgreSQL: License — Consultada: 2026-11-06.
  19. Oracle. MySQL :: Legal Policies — la sección «Licensing Information» enlaza la «Commercial License for OEMs, ISVs and VARs» (fabricantes, desarrolladores y revendedores de software). MySQL: Legal Policies — Consultada: 2026-11-06.
  20. Oracle. MySQL 8.4 Reference Manual, sección 1.2.1 «What is MySQL?» — las bases de datos de MySQL son relacionales; el software usa la GPL (GNU General Public License); quien necesite incrustar código de MySQL en una aplicación comercial puede comprar una versión con licencia comercial. MySQL 8.4: What is MySQL? — Consultada: 2026-11-06.
  21. Oracle. MySQL 8.4 Reference Manual, sección 13.5 «The JSON Data Type» — los documentos de una columna JSON se convierten a un formato interno que permite leer rápido sus elementos; las columnas JSON no se indexan directamente: se crea un índice sobre una columna generada que extrae un valor escalar. MySQL 8.4: The JSON Data Type — Consultada: 2026-11-06.
  22. DB-Engines (Red Gate Software). PostgreSQL is the DBMS of the Year 2023 (2 de enero de 2024) y Snowflake is the Database Management System of the Year 2024 (16 de enero de 2025) — PostgreSQL fue el sistema que más popularidad ganó en el ranking de DB-Engines en 2023, calculado como la diferencia de puntajes entre enero de 2023 y enero de 2024; es su cuarto título; Snowflake ganó el de 2024. Fuente de Nivel B (ranking de popularidad, no de uso). DB-Engines: DBMS of the Year 2023 · DB-Engines: Blog — Consultada: 2026-11-06.
  23. The PostgreSQL Global Development Group. Downloads y Windows installers — paquetes e instaladores para Linux, macOS, Windows, BSD y Solaris; el instalador de Windows lo aloja EDB y no los servidores de la comunidad, e incluye el servidor, pgAdmin y StackBuilder, gestor de paquetes para herramientas y controladores adicionales. PostgreSQL: Downloads · PostgreSQL: Windows installers — Consultada: 2026-11-06.
  24. The PostgreSQL Global Development Group. Linux downloads (Ubuntu) — Ubuntu incluye PostgreSQL por defecto y fija una versión durante la vida de cada edición; se instala con «apt install postgresql»; el repositorio Apt del proyecto ofrece las demás versiones con soporte. PostgreSQL: Linux downloads (Ubuntu) — Consultada: 2026-11-06.
  25. The PostgreSQL Global Development Group. PostgreSQL 18 Documentation, sección 1.3 «Creating a Database» — la orden createdb mydb crea una base llamada mydb; si no produce respuesta, funcionó. PostgreSQL 18: Creating a Database — Consultada: 2026-11-06.
  26. The PostgreSQL Global Development Group. PostgreSQL 18 Documentation, sección 1.4 «Accessing a Database» — psql es la terminal interactiva para escribir, editar y ejecutar órdenes SQL; pgAdmin se menciona como herramienta gráfica no cubierta en el tutorial; psql mydb abre la base; el indicador mydb=# señala a un superusuario, no sujeto a controles de acceso; consultas de prueba SELECT version(), SELECT current_date y SELECT 2 + 2; las órdenes internas empiezan con barra invertida: \h (ayuda) y \q (salir). PostgreSQL 18: Accessing a Database — Consultada: 2026-11-06.
  27. pgAdmin Development Team. pgAdmin 4 9.19 documentation, portada del sitio y página de descargas — pgAdmin es la herramienta de administración de código abierto para Postgres; versión 9.19; modo de escritorio o de servidor, en Windows, macOS, Linux y contenedores; es software libre publicado bajo la licencia PostgreSQL. pgAdmin: sitio oficial · pgAdmin 4: documentación · pgAdmin: Download — Consultada: 2026-11-06.
  28. pgAdmin Development Team. pgAdmin 4 9.19 documentation, «Connecting To A Server», «Server Dialog» y «Query Tool» — el diálogo Server se abre con clic derecho sobre el nodo Servers y el menú Register; la pestaña Connection pide dirección del servidor, puerto (predeterminado 5432), base de mantenimiento, usuario y contraseña; la Query Tool se abre desde el menú Tools y ejecuta órdenes SQL arbitrarias. pgAdmin 4: Connecting To A Server · pgAdmin 4: Server Dialog · pgAdmin 4: Query Tool — Consultada: 2026-11-06.
  29. The PostgreSQL Global Development Group. PostgreSQL Mailing Lists: pgsql-es-ayuda — «En esta lista se discuten los temas técnicos de PostgreSQL en español». PostgreSQL: lista pgsql-es-ayuda — Consultada: 2026-11-06.
Cómo investigamos esta página
  • Pregunta que responde: qué es PostgreSQL, qué lo distingue y cómo se empieza a usar
  • Fuentes: identificadas 44 → incluidas 29
  • Criterios de inclusión: documentación oficial del proyecto y del fabricante, paper original y un ranking de industria declarado
  • Fecha de corte de los datos: 2026-11-06
Scroll to Top