Migrazione da S3 Vectors a Zilliz Cloud: sbloccare la potenza dello storage a livelli
I dati non strutturati rappresentano ormai quasi il 90% di tutti i nuovi dati generati. Il boom di ChatGPT ha reso questo cambiamento ancora più evidente. Da allora, la ricerca vettoriale è diventata il modo predefinito per dare senso ai dati non strutturati — alimentando sistemi GenAI come pipeline RAG, agenti AI, motori di raccomandazione e chatbot.
Ma la ricerca vettoriale non è economica. Può richiedere 10–100× più calcolo rispetto a un carico di lavoro NoSQL, soprattutto con indici non ottimizzati, e in alcuni casi è persino più costosa di una chiamata a un LLM. Quando ogni query colpisce storage e memoria ad alte prestazioni, i costi possono scalare più rapidamente delle prestazioni.
AWS ha introdotto S3 Vectors per affrontare questo problema, combinando la ricerca vettoriale con l’efficienza dei costi dello storage a oggetti. È un’idea intelligente, ma non priva di compromessi: latenza più elevata, recall inferiore e flessibilità limitata per sistemi su larga scala. Il Tiered Storage di Zilliz Cloud adotta un approccio più equilibrato. Archivia l’intero dataset nello storage a oggetti utilizzando al contempo gli SSD locali e la memoria di ciascun cluster come cache intelligenti per accelerare query e accesso ai dati.
In questo post, analizzeremo dove S3 Vectors eccelle e dove mostra i suoi limiti, quindi mostreremo come il Tiered Storage di Zilliz Cloud risolve queste limitazioni. Troverai anche un breve tutorial su come migrare i tuoi dati da S3 Vectors a Zilliz Cloud in pochi passaggi.
S3 Vectors: economico, ma con limiti chiari
Cominciamo da ciò che funziona. S3 Vectors è economico. Lo storage costa solo $0,06 per GB, circa cinque volte meno rispetto alla maggior parte dei database vettoriali serverless. In un carico di lavoro di esempio con 400 milioni di vettori e 10 milioni di query al mese, il conto totale arriva a circa $1.200 al mese — un enorme calo rispetto alle fatture a cinque cifre che normalmente vedresti altrove. Per carichi di lavoro a basso traffico o tolleranti alla latenza, è difficile contestare questi numeri.
Le prestazioni hanno dei limiti: I compromessi iniziano a emergere quando si punta a scalabilità o reattività:
Dimensione della collection: Ogni tabella S3 contiene fino a 50 milioni di vettori, con un limite globale di 10.000 tabelle.
Latenza delle query: Aspettati circa 500 ms per una collection da 1 milione di vettori e 700 ms per 10 milioni — accettabile per job in background, non per app in tempo reale.
Throughput: Otterrai una latenza inferiore a 200 ms fino a 200 QPS, ma scalare oltre non è semplice.
Velocità di scrittura: Limitata a meno di 2 MB/s, molto più lenta di motori come Milvus che sostengono scritture a livello di GB/s. Il lato positivo è che le scritture non bloccano le letture — ma nel complesso, è chiaramente ottimizzato per dataset statici e con prevalenza di letture.
Accuratezza e flessibilità delle query: La recall si attesta in genere tra l’85–90%, senza parametri di tuning per spingerla più in alto. Una volta aggiunti i filtri, la recall può calare drasticamente, a volte sotto il 50%. In un benchmark, dopo aver eliminato metà del dataset, una query Top-K=20 ha restituito solo 15 risultati — un chiaro segnale che il controllo della precisione è limitato.
Funzionalità mancanti: S3 Vectors omette inoltre diverse funzionalità che gli sviluppatori spesso si aspettano nei sistemi di produzione:
Query Top-K limitate a 30 risultati.
Limiti rigorosi sui metadati per record.
Nessuna ricerca ibrida, multi-tenancy, supporto avanzato al filtering e molte altre funzionalità pronte per l’enterprise.
S3 Vectors è economico ed è una soluzione solida per attività di retrieval semplici e su larga scala, dove la frequenza delle query è bassa e la latenza non è critica. Ma quando i carichi di lavoro richiedono ricerca in tempo reale, retrieval ibrido o architetture multi-tenant, la sua semplicità diventa rapidamente un collo di bottiglia.
Zilliz Cloud Tiered Storage: conveniente, veloce e pronto per la produzione
AWS ha combinato lo storage a oggetti con la ricerca vettoriale per ridurre i costi. Zilliz Cloud porta quest’idea oltre con il suo nuovo Tiered Storage, eguagliando la stessa efficienza dei costi e offrendo al contempo prestazioni reali da produzione.
Basato su Milvus open-source, Zilliz Cloud è un database vettoriale completamente gestito progettato per carichi di lavoro AI su larga scala. La sua architettura Tiered Storage archivia tutti i dati vettoriali nello storage a oggetti (come AWS S3), utilizzando al contempo gli SSD locali e la memoria di ciascun cluster come cache intelligenti per accelerare le query e l’accesso ai dati. Il risultato: il basso costo di S3 con la velocità e la flessibilità di un database vettoriale dedicato.
Sotto il cofano, Tiered Storage gestisce tre livelli — Hot (memoria), Warm (SSD) e Cold (storage a oggetti):
I dati Hot restano in memoria per tempi di risposta istantanei.
I dati Warm risiedono sugli SSD locali per bilanciare velocità e costo.
I dati Cold vengono archiviati in modo efficiente nello storage a oggetti per la conservazione a lungo termine.
Il sistema sposta automaticamente i dati tra i livelli in base ai reali pattern di query, mantenendo tassi di hit della cache superiori al 90% nei test di produzione. In pratica, ciò significa che la maggior parte delle query viene servita direttamente dai livelli veloci, combinando l’economicità dello storage a oggetti con la reattività in memoria.
Casi d’uso pratici per Zilliz Cloud Tiered Storage
1. App RAG/AI multi-tenant su larga scala
Molti sistemi AI in produzione servono milioni di tenant, ma solo una piccola frazione — tipicamente l’1–5% — è attiva in un dato momento. Pensa agli assistenti AI per la programmazione, alle app di chat o ai copiloti per l’assistenza clienti.
Con Tiered Storage, Zilliz Cloud bilancia automaticamente lo storage in base all’attività:
Circa il 95% dei dati dei tenant inattivi resta nello storage a oggetti, mantenendo i costi di storage vicini ai livelli S3 grezzi.
Il 5% attivo risiede in memoria o su un SSD, garantendo recupero a bassa latenza durante le sessioni in corso.
2. Analisi dei dati su larga scala e a bassa frequenza
Ambiti come la guida autonoma, l’addestramento di modelli di robotica e la scoperta di farmaci generano dataset su scala petabyte — eppure i loro carichi di lavoro di query sono spesso leggeri, da poche a qualche centinaio di query al giorno. Per questi casi, lo storage costante in memoria è eccessivo.
Il Tiered Storage di Zilliz Cloud mantiene i dati cold nello storage a oggetti mentre memorizza nella cache i campioni interrogati di frequente nei livelli più veloci. Riduce i costi di storage a una frazione dei sistemi completamente in memoria, preservando al contempo una latenza utilizzabile e consentendo ai team di ricerca di esplorare enormi dataset in modo efficiente e conveniente, senza modificare i loro workflow di analisi.
Come spostare i tuoi dati da S3 Vectors a Zilliz Cloud
Ora che il Tiered Storage di Zilliz Cloud ti offre un’efficienza dei costi al livello di S3 senza compromessi sulle prestazioni, la domanda successiva è semplice: come sposti i tuoi dati?
Usiamo un esempio semplice. Supponiamo che tu abbia archiviato 200 record di libri nella regione AWS us-west-2, sotto un indice vettoriale chiamato books. Ogni record contiene:
Un vettore di contenuto a 768 dimensioni
Il titolo del libro come chiave primaria
Informazioni sull’autore archiviate nei metadati
Prerequisiti
Docker è installato e in esecuzione.
Il nodo su cui è in esecuzione VTS ha accesso sia a S3 Vectors sia a Zilliz Cloud.
Il tuo utente o ruolo IAM include l’autorizzazione
s3vectors:ListVectors.
Validazione pre-migrazione
Prima di distribuire VTS, verifica i tuoi dati S3 Vectors e l’accesso.
import boto3
import os
aws_access_key_id = os.getenv("AWS_ACCESS_KEY_ID")
aws_secret_access_key = os.getenv("AWS_SECRET_ACCESS_KEY")
s3vectors = boto3.client("s3vectors", region_name="us-west-2", aws_access_key_id=aws_access_key_id, aws_secret_access_key=aws_secret_access_key)
resp = s3vectors.list_vectors(vectorBucketName="vectors", indexName="books", returnMetadata=True, returnData=True)
for vector in resp["vectors"]:
print(vector)
Dovresti vedere 200 record restituiti.
{'key': 'First foot situation land bad.', 'data': {'float32': [0.7183347940444946……]}, 'metadata': {'author': 'Wendy Jones'}}
{'key': 'Face industry bit true.', 'data': {'float32': [0.9061349630355835……]}, 'metadata': {'author': 'Steven Smith'}}
{'key': 'Republican agreement probably home choose see.', 'data': {'float32': [0.26946496963500977……]}, 'metadata': {'author': 'Misty Lynch'}}
{'key': 'Before arrive design soon finally discuss.', 'data': {'float32': [0.35728317499160767……]}, 'metadata': {'author': 'Mark Johnson'}}
…………
Avviare la migrazione
1.Scarica l’immagine VTS più recente (versione 1.2.0 o superiore):
docker pull zilliz/vector-transport-service:v1.2.0
2.Crea un file di configurazione:
vim ./s3-vector_to_milvus.conf
3.Aggiungi il seguente contenuto (modifica secondo necessità):
env {
execution.parallelism = 1
job.mode = "BATCH"
}
source {
S3Vector {
region = "us-west-2"
vector_bucket_name = "vector-bucket" # Name of your vector bucket
index_name = "books" # Name of your vector index
ak = "ak" # aws_access_key_id
sk = "sk" # aws_secret_access_key
}
}
sink {
Milvus {
url="https://in01-***.<region>.zilliz.com.cn:19530"
token="***"
database="default" # Target database
batch_size=1 # Number of records per batch (larger batches are faster but use more memory)
}
}
Salva il file.
4.Esegui il container VTS e monta il tuo file di configurazione:
docker run -v ./s3-vector_to_milvus.conf:/config/s3-vector_to_milvus.conf -it zilliz/vector-transport-service:v1.2.0 /bin/bash
5.Avvia il processo VTS all’interno del container:
./bin/seatunnel.sh --config /config/s3-vector_to_milvus.conf -m local
Attendi il completamento del processo. Una volta terminato, i tuoi dati saranno trasferiti con successo su Zilliz Cloud.
Verifica post-migrazione
Al termine della migrazione, verifica i tuoi dati nella Zilliz Cloud Console.
VTS rileva automaticamente i campi di metadata e crea colonne per ciascun attributo. Il campo key viene utilizzato come chiave primaria.
Crea un indice vettoriale sul campo vettoriale.
Esegui Load Collection per visualizzare un’anteprima dei dati.
Dovresti vedere che il numero di record e il loro contenuto corrispondono esattamente a quelli di S3 Vectors, confermando una migrazione riuscita.
Conclusione
S3 Vectors mantiene bassi i costi archiviando gli embedding nell’object storage, ma è carente in termini di prestazioni, recall e funzionalità enterprise. Zilliz Cloud porta la stessa idea a un livello superiore, mantenendo il vantaggio di costo e aggiungendo al contempo la velocità, la flessibilità e l’affidabilità di cui le applicazioni AI reali hanno bisogno.
Per gli sviluppatori, questo significa che non devi più scegliere tra convenienza e prestazioni. Puoi scalare fino a miliardi di vettori, servire workload attivi da livelli veloci e mantenere comunque i dati freddi in modo efficiente in termini di costi nell’object storage — tutto in un’unica piattaforma gestita.
Se stai attualmente utilizzando S3 Vectors, la migrazione richiede solo pochi passaggi e vedrai immediatamente i vantaggi in termini di velocità delle query e semplicità operativa. Provalo, esegui benchmark con i tuoi dati e scopri come Zilliz Cloud cambia ciò che è possibile fare con la ricerca vettoriale su larga scala.
Prova Zilliz Cloud in prima persona
Non sei ancora sicuro che Zilliz Cloud sia la soluzione giusta? Registrati gratis e ricevi 100 $ in crediti per esplorare in prima persona il database vettoriale gestito leader al mondo.
Stai già usando un altro database vettoriale? Zilliz Cloud supporta la migrazione senza interruzioni da Pinecone, Qdrant, Elasticsearch, PostgreSQL, OpenSearch, Weaviate e persino Milvus on-premise — così puoi spostare i tuoi dati senza alcuna seccatura.
Se in futuro hai domande sulla migrazione, consulta la nostra documentazione o contattaci: siamo qui per aiutarti a ottenere il massimo da Zilliz Cloud.
Continua a leggere

My Wife Wanted Dior. I Spent $600 on Claude Code to Vibe-Code a 2M-Line Database Instead.
Write tests, not code reviews. How a test-first workflow with 6 parallel Claude Code sessions turns a 2M-line C++ codebase into a daily shipping pipeline.

Zilliz Cloud Update: Tiered Storage, Business Critical Plan, Cross-Region Backup, and Pricing Changes
This release offers a rebuilt tiered storage with lower costs, a new Business Critical plan for enhanced security, and pricing updates, among other features.

Cosmos World Foundation Model Platform for Physical AI
NVIDIA's Cosmos platform enables safe, digital twin training of GenAI models for physical applications, overcoming data scarcity and safety challenges.



