pgvector 2.0: PostgreSQL como vector database de producción
pgvector 2.0 introduce índices HNSW mejorados, soporte para multimodal y benchmarking que compite con Pinecone y Milvus.
pgvector 2.0 ha llegado con mejoras suficientes como para que muchos equipos se planteen en serio prescindir de un vector database managed como Pinecone o Milvus. Anunciado el 2 de julio de 2026, esta versión trae índices HNSW mejorados, soporte multimodal, y un rendimiento que por fin permite comparar de tarifa a tarifa con las soluciones enterprise, sin quedar en ridículo.
Para cualquier equipo que ya use PostgreSQL como base de datos principal, pgvector 2.0 puede significar simplemente no tener que añadir una pieza más a la infraestructura: menos sistemas que mantener, menos vendor lock-in, y una factura considerablemente más baja.
Qué hace exactamente pgvector
pgvector es una extensión de PostgreSQL que añade búsqueda por similitud vectorial directamente dentro de la base de datos que probablemente ya estás usando. Permite guardar embeddings y hacer consultas de vecinos más cercanos sin necesidad de levantar un sistema separado solo para eso.
Qué trae de nuevo esta versión
Los índices HNSW han sido rediseñados desde la raíz, y el resultado se nota: las consultas de vecinos más cercanos corren entre dos y tres veces más rápido, el consumo de memoria para índices del mismo tamaño ha bajado un 40%, y el recall en benchmarks de búsqueda aproximada supera el 95%, una cifra que hace un año hubiera sido difícil de creer para una extensión de código abierto.
También se ha añadido soporte para embeddings de distintas modalidades, no solo texto: imágenes generadas con CLIP o Vision Transformers, audio procesado con wav2vec o Whisper, y código con modelos como CodeBERT. Esto abre la puerta a hacer RAG multimodal directamente sobre PostgreSQL —buscar imágenes a partir de una descripción en texto, por ejemplo, o al revés.
En cuanto a rendimiento frente a la competencia, pgvector 2.0 se queda algo por detrás de Pinecone en latencia pura —45 milisegundos frente a 38—, pero el coste mensual es diez veces menor: unos 50 dólares frente a los 500 que puede costar una instancia de producción en Pinecone. Para la inmensa mayoría de casos de uso, esa diferencia de coste compensa de sobra unos pocos milisegundos extra de latencia.
Cómo se monta en la práctica
El setup es sorprendentemente sencillo. Basta con activar la extensión, crear una columna de tipo vector en la tabla que corresponda, y montar un índice HNSW encima:
CREATE EXTENSION vector;
CREATE TABLE documents (
id SERIAL PRIMARY KEY,
content TEXT,
embedding vector(1536)
);
CREATE INDEX ON documents USING hnsw (embedding vector_cosine_ops);
Y las búsquedas de vecinos más cercanos son igual de directas, usando el operador de distancia coseno directamente en una consulta SQL normal:
SELECT content, 1 - (embedding <=> '[0.1,0.2,...]') as similarity
FROM documents
ORDER BY embedding <=> '[0.1,0.2,...]'
LIMIT 10;
El ecosistema de integraciones también ha madurado: LangChain, LlamaIndex y Haystack tienen soporte de primera clase para pgvector, y si trabajas con Django o Rails hay librerías dedicadas que hacen la integración casi transparente.
Dónde encaja mejor
pgvector 2.0 brilla especialmente en sistemas de RAG que buscan documentos relevantes para alimentar a un LLM, en búsqueda semántica donde el significado importa más que la coincidencia exacta de palabras, en motores de recomendación basados en embeddings, en detección de documentos duplicados, y en búsqueda de imágenes por texto o viceversa.
Donde sí empieza a mostrar sus límites es en escalas realmente masivas —por encima de los cien millones de vectores, Pinecone o Milvus suelen rendir mejor—, en workloads con actualizaciones muy frecuentes, o en entornos SaaS que necesitan un aislamiento muy estricto entre tenants.
La cuenta final
Si ya usas PostgreSQL, si tu dataset se mantiene por debajo de los cien millones de vectores, y si reducir la dependencia de proveedores externos o simplemente ahorrar en la factura mensual te importa, pgvector 2.0 merece una prueba seria. Si necesitas escalar mucho más allá de eso, o tu carga de trabajo exige actualizaciones constantes en tiempo real, las soluciones managed siguen teniendo su sitio.
pgvector 2.0 no viene a sustituir a Pinecone o Milvus en todos los escenarios, pero para un número cada vez mayor de equipos representa la opción más pragmática: un rendimiento más que suficiente, un coste dramáticamente menor, y ni rastro de vendor lock-in.
Dax Reyes
Sistemas y Kernel
// Relacionados

pgvector en producción: PostgreSQL como base de datos vectorial sin abandonar tu stack

Gitdot: el competidor open source de GitHub escrito en Rust llega a producción
