mirror of
https://github.com/qdrant/landing_page.git
synced 2026-10-05 10:58:32 +02:00
* initial commit; fixed anchor links on internal docs pages * add back in absolute paths for links in code comments * fix: update linkchecker include filter to match server port 1314 PR #1629 changed the Hugo server to port 1314 but forgot to update the --include filter, which still matched port 1313. This caused all links to be excluded, making the checker a no-op (0 checked, 82277 excluded). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * Fix url rewrite regex so images are not impacted * Fix links from non-documentation pages * Fix broken links * more broken links * more broken links * broken link * Add srcset width descriptor to .lycheeignore * Ignore URLs that contain a % character * Anchor regex so it matches the entire URL --------- Co-authored-by: kanungle <neil.kanungo@gmail.com> Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com> Co-authored-by: Abdon Pijpelink <abdon.pijpelink@qdrant.com>
2.8 KiB
2.8 KiB
title, weight, partition
| title | weight | partition |
|---|---|---|
| From OpenSearch | 25 | ecosystem |
Migrate from OpenSearch to Qdrant
What You Need from OpenSearch
- OpenSearch URL — the HTTP endpoint
- Index name — the index containing your vectors
- Credentials — username/password or API key
Concept Mapping
| OpenSearch | Qdrant | Notes |
|---|---|---|
| Index | Collection | One-to-one mapping |
| Document | Point | Each document becomes a point |
knn_vector field |
Vector | Mapped automatically |
| Document fields | Payload | Non-vector fields become payload |
cosinesimil |
Cosine |
Direct mapping |
l2 |
Euclid |
Direct mapping |
innerproduct |
Dot |
Direct mapping |
Run the Migration
docker run --net=host --rm -it registry.cloud.qdrant.io/library/qdrant-migration opensearch \
--opensearch.url 'https://your-opensearch-host:9200' \
--opensearch.index 'your-index' \
--opensearch.username 'admin' \
--opensearch.password 'your-password' \
--qdrant.url 'https://your-instance.cloud.qdrant.io:6334' \
--qdrant.api-key 'your-qdrant-api-key' \
--qdrant.collection 'your-collection'
Using API Key Authentication
docker run --net=host --rm -it registry.cloud.qdrant.io/library/qdrant-migration opensearch \
--opensearch.url 'https://your-opensearch-host:9200' \
--opensearch.index 'your-index' \
--opensearch.api-key 'your-opensearch-api-key' \
--qdrant.url 'https://your-instance.cloud.qdrant.io:6334' \
--qdrant.api-key 'your-qdrant-api-key' \
--qdrant.collection 'your-collection'
All OpenSearch-Specific Flags
| Flag | Required | Description |
|---|---|---|
--opensearch.url |
Yes | OpenSearch HTTP endpoint |
--opensearch.index |
Yes | Index to migrate |
--opensearch.username |
No | Username for basic auth |
--opensearch.password |
No | Password for basic auth |
--opensearch.api-key |
No | API key for authentication |
--opensearch.insecure-skip-verify |
No | Skip TLS certificate verification |
Qdrant-Side Options
| Flag | Default | Description |
|---|---|---|
--qdrant.id-field |
__id__ |
Payload field name for original OpenSearch document IDs |
Gotchas
- OpenSearch vs. Elasticsearch: OpenSearch is a fork of Elasticsearch, so many of the same considerations apply. However, the CLI subcommand is
opensearch, notelasticsearch. - Score normalization: OpenSearch
_scorevalues are not directly comparable to Qdrant scores. Use rank-based metrics when verifying your migration. - Nested documents: OpenSearch nested documents need to be flattened or restructured for Qdrant's payload model.
Next Steps
After migration, verify your data arrived correctly with the Migration Verification Guide.