Files
landing_page/qdrant-landing/content/documentation/migrate-to-qdrant/_index.md
T

3.7 KiB

title, weight, is_empty, partition
title weight is_empty partition
Migration Tool 200 false ecosystem

Migrate to Qdrant

The Qdrant Migration Tool is a CLI that moves your vectors, metadata, and sparse embeddings from other vector databases into Qdrant. It runs as a Docker container, streams data in batches, and can resume interrupted migrations.

docker pull registry.cloud.qdrant.io/library/qdrant-migration

Supported Sources

Source CLI Subcommand Auto-Creates Collection?
Pinecone pinecone Yes
Weaviate weaviate No (must pre-create)
Milvus milvus Yes
Elasticsearch elasticsearch Yes
OpenSearch opensearch Yes
pgvector pg Yes
S3 Vectors s3 Yes
Chroma chroma Yes
Redis redis No (must pre-create)
MongoDB mongodb No (must pre-create)
FAISS faiss Yes
Apache Solr solr No (must pre-create)
Qdrant qdrant Yes

Not seeing your current vector store? Open an issue on GitHub and let us know!

General Advice

  1. Run the tool close to your databases. Direct connectivity between source and target is not required — the tool streams through the machine it runs on. For best performance, use a machine with low latency to both.

  2. Use --net=host for local instances. If either database runs on the host machine, the container needs host networking to reach localhost.

  3. The tool resumes by default. Migration progress is tracked in a _migration_offsets collection in Qdrant. If a migration is interrupted, re-running the same command picks up where it left off. Use --migration.restart to force a fresh start.

  4. Batch size is tunable. The default batch size is 50. For large migrations, increase it with --migration.batch-size (e.g., 256 or 512) to improve throughput.

Universal CLI Options

These flags apply to all source types:

Flag Default Description
--migration.batch-size 50 Points per upsert batch
--migration.restart false Ignore saved progress, start fresh
--migration.create-collection true Auto-create target collection
--migration.batch-delay 0 Milliseconds between batches
--migration.offsets-collection _migration_offsets Collection used to track migration progress
--debug / --trace — Verbose logging
--skip-tls-verification false Skip TLS certificate verification

After Migration

Once your data is in Qdrant, verify that everything arrived correctly: