Files
landing_page/qdrant-landing/content/documentation/snapshots.md
T
treanandqdrant 71aa76dc40 commented netlify identity on not admin pages because it slows down site (#64)
* commented netlify identity on not admin pages because it slows down site

* docs auto-sync

Co-authored-by: qdrant <qdrant@users.noreply.github.com>
2022-07-05 12:06:09 +02:00

2.1 KiB

title, weight
title weight
Snapshots 51

Snapshots are performed on a per collection basis and consist in a tar archive file containing the necessary data to restore the collection at the time of the snapshot.

This feature can be used to archive data or easily replicate an existing deployment.

The target directory used to store generated snapshots is controlled through the configuration or using the ENV variable: QDRANT__STORAGE__SNAPSHOT_PATH=./snapshots.

storage:
  # Where to store snapshots
  snapshots_path: ./snapshots

It defaults to ./snapshots if no value is provided.

Create snapshot

To create a new snapshot for an existing collection:

POST /collections/{collection_name}/snapshots
from qdrant_client import QdrantClient
from qdrant_client.http import models

client = QdrantClient(host="localhost", port=6333)

client.create_snapshot(
    collection_name="{collection_name}"
)

This is a synchronous operation for which a tar archive file will be generated into the snapshot_path.

List snapshot

List of snapshots for a collection:

GET /collections/{collection_name}/snapshots
from qdrant_client import QdrantClient
from qdrant_client.http import models

client = QdrantClient(host="localhost", port=6333)

client.list_snapshots(
    collection_name="{collection_name}"
)

Retrieve snapshot

To download a specified snapshot from a collection as a file:

GET /collections/{collection_name}/snapshots/{snapshot_name}

Only available through the REST API for the time being.

Restore snapshot

Restoring snapshots is done through the Qdrant CLI at startup time.

The main entry point is the --snapshot argument which accepts a list of pairs <snapshot_file_path>:<target_collection_name>

For example:

./qdrant --snapshot /snapshots/test-collection-archive.tar:test-collection /snapshots/test-collection-archive.tar:test-copy-collection 

The target collection must be absent otherwise the program will exit with an error.

If you wish instead to overwrite an existing collection, use the --force_snapshot flag with caution.