Oltre PGVector: quando il tuo database vettoriale ha bisogno di un upgrade da Formula 1
Postgres, un tenore del mondo dei database relazionali, ha servito fedelmente gli sviluppatori per più di 28 anni. Con l'introduzione della sua estensione pgvector, Postgres ha compiuto passi per supportare i vector embeddings, offrendo un comodo punto di ingresso per la vector similarity search di base.
Tuttavia, sebbene pgvector offra un punto di partenza pratico, è ancora inferiore rispetto ai database vettoriali appositamente progettati come Milvus, soprattutto quando si gestiscono applicazioni su larga scala e requisiti di ricerca complessi. Affidarsi esclusivamente a Postgres con pgvector per carichi di lavoro di ricerca vettoriale impegnativi è come cercare di partecipare a una gara di Formula 1 con una berlina familiare truccata: è un passo avanti, ma semplicemente non è costruita per quel livello di competizione.
Con l'esplosione della popolarità delle applicazioni di IA, gli sviluppatori stanno incontrando difficoltà di crescita. Ciò che inizia come una soluzione comoda con pgvector diventa rapidamente un collo di bottiglia frustrante man mano che i dati crescono e i requisiti di ricerca diventano più sofisticati. La qualità della ricerca diminuisce, gli aggiornamenti degli indici si trascinano e la frustrazione aumenta mentre fai fatica a soddisfare le esigenze della tua applicazione.
Questo blog esplora perché Postgres, con il suo componente aggiuntivo per la ricerca vettoriale, pgvector, funziona bene per progetti più piccoli e casi d'uso più semplici, ma raggiunge i suoi limiti nella ricerca vettoriale su larga scala. Discuteremo anche perché i database vettoriali appositamente progettati come Milvus sono indispensabili per affrontare le sfide uniche di questo campo in rapido avanzamento.
Il collo di bottiglia di Postgres e Pgvector
Puoi vedere Postgres come una berlina; è qui da anni e funziona, ma non ti permetterà di essere estremamente veloce. Sebbene pgvector aggiunga a Postgres capacità di archiviazione vettoriale e di ricerca di similarità di base, eredita limitazioni fondamentali:
- Prestazioni su larga scala: pgvector supporta solo due metodi di indicizzazione: HNSW e IVF_FLAT. Sebbene HNSW sia un algoritmo popolare, comporta compromessi significativi, tra cui lunghi tempi di indicizzazione e requisiti di memoria più elevati. D'altra parte, IVF_FLAT offre una creazione dell'indice più rapida, ma fatica a mantenere le prestazioni delle query man mano che il dataset cresce. La mancanza di supporto per indici su disco come DiskANN o tipi di indice basati su GPU ne limita ulteriormente le prestazioni e la flessibilità quando si lavora con dataset su larga scala.
- Embedding ad alta dimensionalità: Pgvector non può gestire embedding vettoriali ad alta dimensionalità a causa di vincoli architetturali. Si basa su pagine fisse da 8KB per l'archiviazione dei dati, limitando fondamentalmente il numero di dimensioni che un vettore può contenere. Poiché ogni dimensione richiede 4 byte per memorizzare un float e anche i metadati occupano spazio, indicizzare efficacemente vettori ad alta dimensionalità diventa impossibile. Al contrario, database appositamente progettati come Milvus sono progettati per gestire facilmente embedding ad alta dimensionalità. Sebbene esistano soluzioni alternative in pgvector come la quantizzazione, spesso richiedono di scendere a compromessi sulla precisione.
- Mancanza di funzionalità avanzate: pgvector non dispone dell'insieme completo di funzionalità fornito dai database vettoriali appositamente progettati. Ad esempio, Milvus supporta la ricerca avanzata con filtraggio dei metadati, una gamma più ampia di metriche di distanza oltre a L2 e al prodotto interno, la ricerca ibrida sparsa e densa, e persino la ricerca full-text (disponibile in Milvus 2.5).
- Sfide di scalabilità: Scalare pgvector per gestire grandi dataset e carichi di query elevati non è banale. Spesso richiede uno sforzo considerevole per implementare lo sharding e gestire gli indici su più nodi, introducendo ulteriore complessità e overhead operativo. I database vettoriali appositamente progettati sono progettati tenendo a mente la scalabilità, offrendo prestazioni fluide anche man mano che i dataset e le richieste di query crescono.
Milvus: la Formula 1
Milvus è un database vettoriale open-source progettato da zero per soddisfare le esigenze specifiche della ricerca di similarità vettoriale su larga scala. Immaginalo come un’auto di Formula 1, progettata meticolosamente per velocità e prestazioni nel mondo ad alta posta in gioco dei dati vettoriali.
Ecco come Milvus supera Postgres con pgvector:
- Ricerca fulminea: Milvus supporta 11 algoritmi di indicizzazione all’avanguardia, inclusi FLAT, HNSW, DiskANN, CAGRA, e l’accelerazione GPU, per offrire prestazioni di ricerca senza pari, anche con decine di miliardi di vettori.
- Scalabilità senza sforzo: Milvus ha un’architettura distribuita e nativa per Kubernetes. Consente una scalabilità orizzontale fluida, permettendoti di gestire dataset enormi e un’elevata produttività delle query senza le complessità dello sharding manuale.
- Set di funzionalità completo: Milvus offre una suite completa di funzionalità, tra cui filtro dei metadati, supporto per varie metriche di distanza, ricerca full-text, ricerca ibrida e opzioni di indicizzazione flessibili per adattare la tua strategia di ricerca alle tue esigenze specifiche.
- Ottimizzato per il futuro dei dati: Milvus è progettato per gestire la scala e la complessità del volume sempre crescente di dati non strutturati rappresentati come vettori, rendendolo la soluzione ideale per la prossima generazione di applicazioni di IA.
- Innovazione continua: Proprio come un team di Formula 1 spinge costantemente i limiti delle prestazioni, Milvus si evolve continuamente con algoritmi di indicizzazione all’avanguardia, supporto all’accelerazione hardware e ottimizzazioni basate sul machine learning.
Fare la scelta giusta: quando usare cosa
Sebbene Postgres con pgvector potrebbe non essere un’auto di Formula 1, ha comunque il suo posto in garage. Esploriamo quando usare ciascuna soluzione:
Scegli pgvector quando:
- Stai creando un proof of concept o MVP con dataset di piccole o medie dimensioni.
- Le tue esigenze di ricerca vettoriale sono semplici e non richiedono filtri complessi.
- I tuoi modelli di embedding producono vettori con dimensioni al di sotto dei limiti della dimensione della pagina di Postgres.
- Hai bisogno di conformità ACID e di solide garanzie transazionali.
Scegli Milvus quando:
- Stai lavorando con dataset su larga scala (da milioni a miliardi di vettori).
- Hai bisogno di embedding ad alta dimensionalità oltre i limiti di pgvector.
- Le prestazioni delle query sono fondamentali per la tua applicazione.
- Richiedi funzionalità avanzate come opzioni di indicizzazione diversificate o accelerazione GPU.
- Prevedi una crescita rapida e hai bisogno di una soluzione che scali orizzontalmente.
Spostare i tuoi vettori su Milvus con il nostro servizio di migrazione
Se stai usando PGVector e stai riscontrando problemi, offriamo uno strumento di migrazione open-source chiamato VTS (abbreviazione di Vector Transport Service) per aiutarti a spostare i tuoi vettori e dati non strutturati su Milvus o sul suo servizio gestito su Zilliz Cloud.
Basato su Apache Seatunnel, VTS offre:
- Connettori ricchi ed estensibili
- Elaborazione unificata in streaming e batch per sincronizzazione in tempo reale e importazioni batch offline
- Supporto agli snapshot distribuiti per la coerenza dei dati
- Prestazioni elevate, bassa latenza e scalabilità
- Monitoraggio in tempo reale e gestione visuale
Oltre a pgvector, VTS supporta la migrazione dei dati vettoriali da varie fonti, tra cui Elasticsearch, Pinecone, Qdrant e Tencent Cloud VDB, verso database vettoriali appositamente progettati come Milvus. Consente inoltre una migrazione vettoriale senza interruzioni tra Milvus open-source e Zilliz Cloud, in entrambe le direzioni.
Per semplificare il processo di migrazione, VTS gestisce automaticamente la conversione dello schema, eliminando la necessità di configurazioni complesse e sforzi di sviluppo. Nel 2025, VTS amplierà le proprie capacità per supportare la migrazione dei dati da fonti aggiuntive come MongoDB e Weaviate. Le versioni future introdurranno anche la capacità di generare embedding vettoriali al volo, consentendo ai dati non strutturati di essere facilmente convertiti e trasferiti in database vettoriali per accelerare la ricerca approssimata del vicino più prossimo (ANN). Restate sintonizzati per questi entusiasmanti aggiornamenti!
Come funziona VTS
La strada da percorrere
Il panorama dei database vettoriali continua a evolversi di pari passo con il rapido progresso delle tecnologie di IA. Sebbene pgvector offra un punto di ingresso pratico, le esigenze delle applicazioni di IA su scala di produzione spesso richiedono soluzioni appositamente progettate.
La scelta tra pgvector e Milvus rappresenta più di una semplice decisione tecnica. È un investimento strategico nella scalabilità futura della vostra applicazione. Proprio come un team di Formula 1 sceglie la propria attrezzatura in base ai requisiti di prestazione, le organizzazioni devono valutare le proprie esigenze di ricerca vettoriale rispetto alla propria traiettoria di crescita.
Con strumenti come VTS che semplificano il processo di migrazione, le aziende possono trasferire con fiducia le proprie capacità di ricerca vettoriale quando i loro requisiti superano le capacità di pgvector. Che si tratti di progettare nuove applicazioni o di scalare quelle esistenti, considerare fin dall'inizio i requisiti della ricerca vettoriale può prevenire il debito tecnico e garantire una crescita sostenibile.
Ci piacerebbe sapere cosa ne pensate!
Se questo post del blog vi piace, prendete in considerazione di:
- ⭐ Darci una stella su GitHub
- 💬 Unirvi alla nostra community Milvus su Discord per condividere le vostre esperienze o se avete bisogno di aiuto per passare da pgvector
- 🔍 Esplorare il nostro repository Bootcamp per esempi di applicazioni che utilizzano Milvus
Continua a leggere

Notion's Vector Search Is Excellent. Their Next Problem Is Harder.
Notion solved vector search scaling in two years. The next bottleneck — offline context engineering, unified data, and the real-time/offline gap — is harder.

How Zilliz Ended Up at the Center of NVIDIA’s Unstructured Data Story at GTC 2026
If unstructured data is the context of AI, then the ceiling of AI applications will be set not just by models, but by how mature the infrastructure for unstructured data becomes.

Introducing Customer-Managed Encryption Keys (CMEK) on Zilliz Cloud
We're announcing the general availability of Customer-Managed Encryption Keys (CMEK) on Zilliz Cloud.



