Skip to main content

High-performance Qlik QVD file reader/writer with Parquet/Arrow/DataFusion support — Rust-powered Python bindings (PyArrow, pandas, Polars)

Project description

qvd

Crates.io PyPI License: MIT

High-performance Rust library for reading, writing, converting and merging Qlik QVD files.

Disclaimer: This project is not affiliated with Qlik Technologies or QlikTech. QVD is a proprietary format; all trademarks belong to Qlik. This library was built from scratch using publicly available information. See LEGAL.md for details.

Features

  • Read/Write QVD with byte-identical roundtrip (tested on 399 files up to 2.8 GB)
  • Streaming chunk-based reader for large files
  • EXISTS() O(1) index + filtered reads (2.5x faster than Qlik Sense)
  • Concatenate — pure append with strict/union schema modes
  • PK Merge — upsert/dedup by primary key (replace/skip/error). First QVD library with this
  • Parquet/Arrow — bidirectional conversion, write_arrow() for direct Arrow-to-QVD
  • DuckDB / DataFusion — register QVD as SQL tables
  • Python — PyArrow, pandas, Polars via zero-copy Arrow bridge
  • CLI — inspect, convert, filter, head

Quick Start

# Cargo.toml
qvd = "0.6.2"
let table = qvd::read_qvd_file("data.qvd")?;
qvd::write_qvd_file(&table, "copy.qvd")?;
pip install qvdrs
import qvd
table = qvd.read_qvd("data.qvd")
table.save("copy.qvd")

Documentation

Rust Examples Read/write, streaming, EXISTS, Parquet, Arrow, concat, PK merge, DataFusion
Python Examples Read/write, Arrow, pandas, Polars, DuckDB, concat, PK merge, workflows
API Reference Full API tables for Rust and Python
Release Notes Changelog for all versions

License

MIT — Stanislav Chernov (@bintocher)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

qvdrs-0.6.2.tar.gz (86.9 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

qvdrs-0.6.2-cp39-abi3-win_amd64.whl (3.4 MB view details)

Uploaded CPython 3.9+Windows x86-64

qvdrs-0.6.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ x86-64

qvdrs-0.6.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (4.0 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ ARM64

qvdrs-0.6.2-cp39-abi3-macosx_11_0_arm64.whl (3.6 MB view details)

Uploaded CPython 3.9+macOS 11.0+ ARM64

qvdrs-0.6.2-cp39-abi3-macosx_10_12_x86_64.whl (3.7 MB view details)

Uploaded CPython 3.9+macOS 10.12+ x86-64

File details

Details for the file qvdrs-0.6.2.tar.gz.

File metadata

  • Download URL: qvdrs-0.6.2.tar.gz
  • Upload date:
  • Size: 86.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: maturin/1.13.1

File hashes

Hashes for qvdrs-0.6.2.tar.gz
Algorithm Hash digest
SHA256 c5d23feaad3b39ab272ff05af170f717ec57c1a6503caa60370df3af8eb86a3c
MD5 eda01c21657ef89d8eda20b426eb9d14
BLAKE2b-256 46a31e42e90eafeed1e613f15d9c5034cfab4605f4ef28b5b3d8bef5c1054062

See more details on using hashes here.

File details

Details for the file qvdrs-0.6.2-cp39-abi3-win_amd64.whl.

File metadata

  • Download URL: qvdrs-0.6.2-cp39-abi3-win_amd64.whl
  • Upload date:
  • Size: 3.4 MB
  • Tags: CPython 3.9+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: maturin/1.13.1

File hashes

Hashes for qvdrs-0.6.2-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 e738571887aac89c3b883b6128edf37e8e0cee4ed0779801b1987aa774774b74
MD5 b32522e855751696d1470ebf74416d56
BLAKE2b-256 5e4263919096872980877b539b0cedae67365919d26f9502743eaeeadb150e50

See more details on using hashes here.

File details

Details for the file qvdrs-0.6.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for qvdrs-0.6.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 651a4c073664d9a9be7c5272f5f4d8f9aaea9f66709885ce46a7cb91b8480ed8
MD5 2eb30b86dcae6dec16f5e7af9c6b6089
BLAKE2b-256 55712a1803057c4f726d53a6ba7fa771843c2276a72bffcc92293782970cf8fe

See more details on using hashes here.

File details

Details for the file qvdrs-0.6.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for qvdrs-0.6.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c459bdd7bde189cf4dd4c62205bc2c0b76e4ad76666985cd88bc0175e45aa2c5
MD5 c30a5a046c4f628683012f297064d560
BLAKE2b-256 10fe45439b8bb0e2037025a969181c24204f90cc26c33d8180b97ca92fa1f4d1

See more details on using hashes here.

File details

Details for the file qvdrs-0.6.2-cp39-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for qvdrs-0.6.2-cp39-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ab4c87b5d15079726fa1c8a77b228ab28de9d4a85c9406ea722008246d86d5db
MD5 f9b116dbf865183fb16c4c2c13d65fca
BLAKE2b-256 4d2dfe3ff40ec4e3310fc829925b418991b7ee5f65fb065634a7addc190fbe6e

See more details on using hashes here.

File details

Details for the file qvdrs-0.6.2-cp39-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for qvdrs-0.6.2-cp39-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 3f14ea8ec1b316966b5588f8dd8594c8527440693c37efa7a3883ed4a5074a43
MD5 f21e7826fdf61a4faf39300ad23af3bb
BLAKE2b-256 a3af4640e86ae7aa0f34f5a348bb986d2c3b7d439fa502c45f1bd8ff4f5012c4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page