Why Teams Are Migrating from Weaviate to Zilliz Cloud — and How to Do It Seamlessly

Vector databases are the backbone of today’s AI and retrieval applications, powering everything from semantic search to RAG pipelines. While Weaviate has helped many teams get started quickly, scaling production workloads often calls for a more robust and efficient foundation.
That’s where Milvus and Zilliz Cloud (the fully managed Milvus service) come in — offering the same developer-friendly experience with enterprise-grade scalability, performance, and reliability.
In this post, we’ll explore why more teams are moving from Weaviate to Milvus/Zilliz Cloud, what architectural differences make it worth the switch, and how to migrate your workloads in just a few steps.
Weaviate vs. Milvus/Zilliz Cloud: Why Teams Are Making the Switch
Weaviate is a good choice for smaller workloads or prototypes that don’t demand complex scaling. But as data volumes grow and workloads diversify, teams often run into its architectural limits. Scaling Weaviate can become costly, operationally heavy, and less predictable in performance.
Milvus is an open-source vector database purpose-built for large-scale, high-performance workloads, featuring distributed architecture, flexible indexing, and cloud-native design. Zilliz Cloud extends this foundation with enterprise-grade security, resilience, and zero-ops management.
Here’s how they compare — and why many teams are making the switch:
1. Performance and Indexing at Scale
Weaviate primarily relies on the HNSW index, which works well for small datasets but becomes memory-intensive and expensive once data reaches hundreds of millions of vectors.
Milvus, by contrast, offers a broad choice of indexing strategies to balance accuracy, speed, and cost for different workloads — including HNSW, DiskANN, IVF, SCANN, GPU-accelerated, and RABITQ indexes. In particular, DiskANN is ideal for massive datasets that need to balance cost and performance. It enables disk-based querying of billions of vectors with minimal RAM usage — perfect for large-scale analytics or offline retrieval.
2. Hybrid Search and Ranking
As use cases mature, vector-only search is rarely enough. Teams often need to filter, rank, or personalize results using structured metadata.
Milvus supports a wide range of scalar data types and indexes, enabling the combination of vector similarity with structured filters (e.g., “find similar products under $50”). It also supports hybrid vector + full-text search, blending embeddings and keyword relevance for more accurate and explainable results. Weaviate supports basic metadata filters, but Milvus offers broader data-type coverage and faster query execution, critical for production-scale applications.
3. Cloud-Native, Cost-Efficient Architecture
Weaviate tightly couples compute and storage, which can drive up costs and complicate scaling as data grows. Milvus is built cloud-natively with disaggregated compute and storage, using object storage (like Amazon S3 or MinIO) as the persistent layer. This design allows independent scaling, reduces costs, and improves resilience for large or frequently updated datasets.
4. Seamless Scaling Across Collections
Weaviate limits the number of collections per instance, often forcing teams to spin up multiple clusters as projects grow. Milvus supports many collections in a single cluster, simplifying management, improving resource utilization, and enabling linear, predictable scaling — whether you manage a handful of datasets or thousands.
5. True Distributed Design
Weaviate runs on a single-role architecture, where ingestion, indexing, and querying share the same resources — often creating contention and latency under heavy load. Milvus uses a fully distributed microservices architecture, with dedicated IndexNodes, DataNodes, and QueryNodes that scale independently. The result: consistent performance across concurrent ingestion, search, and analytics workloads.
6. Tiered Storage for Smarter Data Management
Milvus 2.6 introduces tiered storage, automatically moving data between hot, warm, and cold tiers based on access frequency. This lowers storage costs while keeping frequently accessed data fast to retrieve. Weaviate lacks native tiered storage, requiring manual data sharding or costly memory provisioning to manage data aging efficiently.
Zilliz Cloud Is the Best Way to Run Milvus
Milvus provides the open-source foundation for scalable, high-performance vector search. But running it in production requires time, tuning, and expertise — from cluster management to upgrades and monitoring. Zilliz Cloud, the fully managed Milvus service, removes that complexity. It delivers the same Milvus power with enhanced enterprise features — and zero operational burden.
Elastic scaling & cost efficiency – One-click deployment, serverless autoscaling, and pay-as-you-go pricing.
Advanced AI search – Vector, full-text, and hybrid (sparse + dense) search with metadata filtering, dynamic schema, and multi-tenancy.
Natural language querying – MCP server support for intuitive queries without complex APIs.
Enterprise-grade reliability & security – 99.95% SLA, SOC 2 Type II and ISO 27001 certifications, GDPR compliance, HIPAA readiness, RBAC, BYOC, and now audit logs. See our trust center for more information.
Global availability – Deployments across AWS, GCP, and Azure with sub-100ms latency worldwide.
Seamless migration – Built-in tools to move from Pinecone, Qdrant, Elasticsearch, PostgreSQL, OpenSearch, AWS S3 vectors, Weaviate, or on-prem Milvus.
In short, moving from Weaviate to Zilliz Cloud isn’t just switching tools — it’s an upgrade to a modern, cloud-native vector database platform optimized for scale, efficiency, and enterprise reliability.
How to Migrate from Weaviate to Zilliz Cloud
Zilliz Migration Service is a built-in tool that simplifies moving your data from Weaviate and other vector databases into Zilliz Cloud. Powered by the open-source Vector Translation Service (VTS), it supports direct migrations from multiple sources — including Weaviate, Pinecone, Elasticsearch, OpenSearch, Amazon S3 Vectors, Qdrant, and PostgreSQL.
In this section, we’ll walk through how to use this migration service to seamlessly transfer your data from Weaviate to Zilliz Cloud, with minimal setup and zero downtime.
Assume you are running a local Weaviate instance with a collection named Books. This collection has 200 records, and each record includes:
Two properties:
titleandauthorOne vector field:
vector
Prerequisites
Docker is correctly installed on your local environment.
The node running VTS (Vector Translation Service) can access both your Weaviate instance and Zilliz Cloud.
Pre-Migration Validation
Before deploying and starting the VTS service, it’s recommended to verify the existing data and access permissions in Weaviate.
import weaviate
client = weaviate.connect_to_local()
books = client.collections.use("books")
for book in books.iterator():
print(book)
You should be able to see 200 data entries:
Object(uuid=_WeaviateUUIDInt('001f555f-9fd5-4892-acd4-d443705e5704'), properties={'title': 'Wait week benefit certain.', 'author': 'Lauren Sullivan'}, collection='Books', ……)
Object(uuid=_WeaviateUUIDInt('00abe290-70d1-4447-a43a-e6bf28ee6cdf'), properties={'title': 'American kitchen lot station.', 'author': 'Bradley Smith'}, collection='Books', ……)
Object(uuid=_WeaviateUUIDInt('01aed685-5b8c-4ca1-a3f9-62da5ed87ead'), properties={'title': 'No just most certain job.', 'author': 'Jessica Woodward'}, collection='Books', ……)
Object(uuid=_WeaviateUUIDInt('02bf867d-dcd0-48d6-947d-9c47fe79c699'), properties={'title': 'Message yet ball explain draw.', 'author': 'Gregory Nelson'}, collection='Books', ……)
………………
Start Migration
- Pull the latest VTS image (version 1.2.0 or later).
docker pull zilliz/vector-transport-service:v1.2.0
- Create a configuration file.
vim ./weaviate_to_milvus.conf
Write the following content:
env {
execution.parallelism = 1
job.mode = "BATCH"
}
source {
Weaviate {
scheme = "http" # Connection protocol: http or https
host = "10.0.0.1:8080" # Host address of your Weaviate instance
class_name = "books" # Name of the collection to be migrated
}
}
sink {
Milvus {
url="https://in01-***.<region>.zilliz.com.cn:19530"
token="***"
database="default" # Target database
batch_size=1 # Batch size per insert operation; larger batches are faster but use more
}
}
- Save the configuration file after editing.
- Use the VTS Docker image to start a container and mount your configuration file into it.
docker run -v ./weaviate_to_milvus.conf:/config/weaviate_to_milvus.conf -it zilliz/vector-transport-service::v1.2.0 /bin/bash
- Once inside the Docker container, start the VTS process using the following command:
./bin/seatunnel.sh --config /config/weaviate_to_milvus.conf -m local
Post-Migration Verification
Access the Zilliz Cloud Console.
The migration service automatically detects the data structure in the properties fields and creates corresponding columns in Milvus. The original Weaviate IDs are used as the primary key (pk) column in Milvus.
Next, create an index for your vector field as needed.
Perform Load Collection to preview the data.
You should see the same number of records and identical content as in your original Weaviate collection, confirming a successful migration.
What’s Next?
Still deciding whether Zilliz Cloud is right for you? Sign up for free and get $100 in credits to explore the world’s leading managed vector database firsthand.
Zilliz Cloud supports seamless migration from a wide range of sources — including Weaviate, Milvus, Pinecone, Elasticsearch, OpenSearch, Amazon S3 Vectors, Qdrant, and PostgreSQL — with more integrations coming soon.
If you’re running a self-hosted Milvus deployment, stay tuned for our upcoming One-Click Migration feature, which will make moving to Zilliz Cloud even faster and simpler.
And if you’re currently operating on Weaviate or another managed service, we can help you migrate with zero downtime — often at half the cost you’re paying now — and with significantly better performance.
For more details, visit our migration documentation or contact us. Our team is here to make your transition smooth, efficient, and worry-free.
- Weaviate vs. Milvus/Zilliz Cloud: Why Teams Are Making the Switch
- How to Migrate from Weaviate to Zilliz Cloud
- What’s Next?
Content
Start Free, Scale Easily
Try the fully-managed vector database built for your GenAI applications.
Try Zilliz Cloud for FreeKeep Reading

Milvus WebUI: A Visual Management Tool for Your Vector Database
Milvus WebUI is a built-in GUI introduced in Milvus v2.5 for system observability. WebUI comes pre-installed with your Milvus instance and offers immediate access to critical system metrics and management features.

Vector Databases vs. NoSQL Databases
Use a vector database for AI-powered similarity search; use NoSQL databases for flexibility, scalability, and diverse non-relational data storage needs.

AI Integration in the Legal Industry: Revolutionizing Legal Practice with Data-Driven Solutions
Discover how AI and vector databases are revolutionizing legal work through advanced document processing, semantic search, and contract analysis capabilities.
