Una prospettiva ingegneristica: perché Milvus è un’opzione interessante per le tue app?
I database vettoriali sono essenziali per la moderna gestione dei dati e sono diffusi nella creazione di applicazioni che spaziano dai sistemi di raccomandazione e chatbot all'intelligenza artificiale generale (AGI) e alla retrieval augmented generation (RAG). In questo panorama dinamico, Milvus è il pioniere, e la sua recente release, Milvus 2.3, introduce numerose nuove funzionalità e miglioramenti entusiasmanti.
In questo blog, esploreremo Milvus 2.3 da una prospettiva ingegneristica e condivideremo approfondimenti sul perché Milvus 2.3 sia una scelta eccellente per i nuovi arrivati e gli utenti esistenti da tre angolazioni cruciali: selezione del database, esperienza di sviluppo e affidabilità del sistema.
Bilanciare prestazioni, costo e scalabilità
Quando si seleziona un database vettoriale, la maggior parte degli utenti considera tre fattori principali: prestazioni, costo e scalabilità. La precedente serie Milvus 2.x dava priorità alla scalabilità, rendendola adattabile a vari ambienti e capace di archiviare e cercare miliardi di vettori. Milvus 2.3 compie un ulteriore passo nell'ottimizzazione della sua scalabilità consentendo transizioni fluide da milioni a miliardi di vettori, utilizzando la sua separazione cloud-native tra storage e calcolo.
Milvus 2.3 offre inoltre agli utenti molteplici opzioni di distribuzione per prestazioni e costo, incluse opzioni docker GPU, CPU (ARM64 e x86), e opzioni Kubernetes (Milvus Operator e Helm).
Gli utenti che danno priorità alle prestazioni possono selezionare Milvus 2.3 con il docker GPU, che offre prestazioni da 3 a 10 volte più rapide rispetto all'opzione CPU.
Gli utenti sensibili ai costi possono scegliere l'opzione ARM64 di Milvus, che è più conveniente pur mantenendo prestazioni ragionevoli.
Milvus 2.3 supporta anche MMap, una chiamata di sistema UNIX che mappa file e altri oggetti in memoria, aumentando così significativamente la capacità dei dati su singola macchina con costi ridotti. In base ai risultati dei nostri test, con il supporto di MMap, Milvus può raddoppiare la sua capacità di dati limitando il degrado delle prestazioni entro il 20%. Continueremo a ottimizzare questa funzionalità nel prossimo Milvus 2.3.1, con l'obiettivo di espandere la capacità dei dati fino a 20 volte rispetto a quella attuale.
Potenziare gli sviluppatori con la semplicità
Le applicazioni moderne richiedono più delle funzionalità primarie di ricerca vettoriale come inserimento, eliminazione e recupero. Ad esempio, applicazioni diverse richiedono query diverse, come query vettoriali top-k, query basate sulla distanza e query filtrate per attributi. Inoltre, queste app possono richiedere altri metodi per calcolare la distanza vettoriale, tra cui la distanza euclidea (L2), il prodotto interno (IP) e la similarità del coseno (COSINE).
Milvus 2.3 ha migliorato la sua API per soddisfare tutti questi requisiti diversificati, rendendo lo sviluppo più semplice. Ad esempio, la nuova funzionalità upsert semplifica la gestione dei dati combinando l'inserimento e gli aggiornamenti dei dati in una singola riga di codice. L'indice ScaNN fornisce indicizzazione ad alte prestazioni, offrendo una velocità di query più rapida rispetto alle versioni precedenti.
Milvus supporta anche l'integrazione dei dati con altri prodotti fornendo strumenti di migrazione e funzionalità di cattura incrementale dei dati per semplificare la gestione dei dati.
Garantire stabilità e disponibilità a livello di secondi
Milvus si è dimostrato affidabile e disponibile per ambienti di produzione grazie alla sua continua ottimizzazione.
La serie 2.1.x ha introdotto la replica della memoria, migliorando significativamente la stabilità del sistema. La serie 2.2.x ha aggiunto funzionalità di isolamento dei guasti per i gruppi di risorse, potenziando la resilienza del sistema. Sulla scia dei successi delle versioni precedenti, Milvus 2.3 introduce il Look Aside Load Balancer, che offre un rilevamento ancora più rapido degli eventi dei nodi e garantisce failover e ampliamento delle risorse in pochi secondi.
Milvus 2.3 include anche una migliore gestione della memoria, aggiornamenti in sequenza migliorati e supporto per un numero maggiore di tabelle in un singolo cluster, con conseguenti ulteriori miglioramenti della stabilità complessiva del sistema.
Conclusione
In un panorama dei database vettoriali in rapida evoluzione, Milvus 2.3 si distingue come un faro di eccellenza. Offre tutto ciò di cui gli utenti hanno bisogno in un database vettoriale moderno: prestazioni elevate, scalabilità, disponibilità, stabilità e convenienza.
Con il continuo avanzare della tecnologia, anche Milvus progredisce. Continueremo a ottimizzare Milvus senza sosta e a introdurre funzionalità all'avanguardia nelle prossime versioni, come l'eliminazione tramite espressione, la distribuzione fluida sul cloud Azure, il supporto avanzato agli array, l'ottimizzazione dei valori predefiniti/null e l'aggiunta dinamica di colonne. Restate sintonizzati.
Questo viaggio non è uno che intraprendiamo da soli. Invitiamo l'intera community a esplorare attivamente Milvus, condividere le proprie intuizioni e contribuire alla continua evoluzione di questa straordinaria tecnologia.
Continua a leggere

Why and How to Migrate from Self-Hosted Milvus to Zilliz Cloud
A simple, step-by-step guide to migrating from Milvus to Zilliz Cloud. Learn both endpoint and backup methods for a smooth, scalable vector database migration.

DeepSeek-OCR Explained: Optical Compression for Scalable Long-Context and RAG Systems
Discover how DeepSeek-OCR uses visual tokens and Contexts Optical Compression to boost long-context LLM efficiency and reshape RAG performance.

DeepSeek Always Busy? Deploy It Locally with Milvus in Just 10 Minutes—No More Waiting!
Learn how to set up DeepSeek-R1 on your local machine using Ollama, AnythingLLM, and Milvus in just 10 minutes. Bypass busy servers and enhance AI responses with custom data.



