Skip to main content

⛟ Export → Parquet

CLI tool to export a Qdrant collection to a Parquet file.

The collection is split into ranges, workers export them in parallel and save chunks, an interrupted export resumes from the saved chunks, and the chunks are joined into out.parquet
  • All vector types: unnamed, named, multi-vectors and sparse.
  • Parallel: ranges of points are exported by worker processes.
  • Resumable: an interrupted export continues where it stopped.

Usage

Requires uv.

uvx qdrant-to-parquet my_collection out.parquet            # localhost

export QDRANT_URL=https://xyz.cloud.qdrant.io QDRANT_API_KEY=...
uvx qdrant-to-parquet my_collection out.parquet            # Qdrant Cloud
Option Default
--url $QDRANT_URL or http://localhost:6333 Qdrant URL
--api-key $QDRANT_API_KEY or none API key
--grpc-port 6334 gRPC port, on the host of --url
--rest off (gRPC) Use REST instead of gRPC
--workers up to 4, by CPUs and collection size Worker processes
--batch-size 256 Points per request
--timeout 60 Request timeout in seconds
--retries 3 Retries per failed request
--restart off (resume) Discard an interrupted export instead of resuming it
-f, --force off Replace the output file if it already exists.
-q, --quiet off No progress bar, warnings or summary

Exit codes: 0 done, 1 failed, 2 invalid arguments, 130 interrupted, 143 terminated.

Output

Column Type
id string: an integer ("42") or a UUID
vector (the unnamed vector) or vector_<name> list<float32>
vector_<name> (multi-vector) list<list<float32>>
vector_<name> (sparse) struct<indices: list<uint32>, values: list<float32>>
payload string: JSON, keys sorted

Rows are in point id order. A missing vector is null. The file metadata holds the collection's configuration.

-- DuckDB
SELECT id, payload->>'title' AS title, len(vector) AS dim FROM 'out.parquet';

Library

from qdrant_to_parquet.exporter import ClientConfig, export_collection

if __name__ == "__main__":
    config = ClientConfig(url="http://localhost:6333")
    export_collection(
        config.make(), "my_collection", "out.parquet", workers=4, client_config=config
    )

Development

uv run pytest                                      # without a server
QDRANT_URL=http://localhost:6333 uv run pytest     # also against a server, over gRPC and REST

Metadata

Release files for qdrant-to-parquet 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for qdrant-to-parquet 0.1.0
File Size Uploaded Provenance
qdrant_to_parquet-0.1.0.tar.gz 18.6 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for qdrant-to-parquet 0.1.0
File Interpreter ABI Platform
qdrant_to_parquet-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 41.8 kB

Release files / qdrant_to_parquet-0.1.0.tar.gz

Download URL qdrant_to_parquet-0.1.0.tar.gz
Size 18.6 kB
Tags Source
SHA-256 checksum
How to use checksums
9521f81cb30bdb372448c86359b40817cd4f2a9cf99e0d12f281c04fcf89e979
BLAKE2b-256 checksum
How to use checksums
6b3c7e82dda732ee2d9ae67369cc061d050914cd3cca5a412a9b43034bfe8a9e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.20 {"installer":{"name":"uv","version":"0.12.20","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / qdrant_to_parquet-0.1.0-py3-none-any.whl

Download URL qdrant_to_parquet-0.1.0-py3-none-any.whl
Size 23.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
538aeb8ead524fa6c1f3da72f1e5740254a920bf0871df5be4671776c597507c
BLAKE2b-256 checksum
How to use checksums
a8ca3d5c7a798f13e336aeffd19f4487d5763db1aaa22bd6c5cac8a175fce6ae
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.20 {"installer":{"name":"uv","version":"0.12.20","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for qdrant-to-parquet 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page