Skip to main content

A library to manipulate SQL queries, designed with privacy application in mind.

Project description

Qrlew framework (by Sarus)

Open source SQL manipulation framework written in Rust

What is Qrlew?

Qrlew is an open source library that aims to parse and compile SQL queries into an Intermediate Representation (IR) that is well-suited for various rewriting tasks. Although it was originally designed for privacy-focused applications, it can be utilized for a wide range of purposes.

SQL Query IR

Qrlew transforms a SQL query into a combination of simple operations such as Map, Reduce and Join that are applied to Tables. This representation simplifies the process of rewriting queries and reduces dependencies on the diverse range of syntactic constructs present in SQL.

Type Inference Engine

Differential Privacy (DP) guaranrtees are hard to obtain without destroying too much information. In many mechanisms having prior bounds on values can improve the utility of DP results dramatically. By propagating types cleverly, Qrlew can returns bounds for all values.

Differential Privacy compiler

Qrlew can compile SQL queries into Differentially Private ones. The process is inspired by Wilson et al. 2020. The complexity of the compilation process makes Qrlew IR very useful at delivering clean, readable and reliable code.

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

pyqrlew-0.4.5.tar.gz (105.5 kB view details)

Uploaded Source

Built Distributions

pyqrlew-0.4.5-cp38-abi3-win_amd64.whl (3.0 MB view details)

Uploaded CPython 3.8+ Windows x86-64

pyqrlew-0.4.5-cp38-abi3-win32.whl (2.7 MB view details)

Uploaded CPython 3.8+ Windows x86

pyqrlew-0.4.5-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.8 MB view details)

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

pyqrlew-0.4.5-cp38-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl (6.1 MB view details)

Uploaded CPython 3.8+ manylinux: glibc 2.17+ s390x

pyqrlew-0.4.5-cp38-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (6.2 MB view details)

Uploaded CPython 3.8+ manylinux: glibc 2.17+ ppc64le

pyqrlew-0.4.5-cp38-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (4.7 MB view details)

Uploaded CPython 3.8+ manylinux: glibc 2.17+ ARMv7l

pyqrlew-0.4.5-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (4.8 MB view details)

Uploaded CPython 3.8+ manylinux: glibc 2.17+ ARM64

pyqrlew-0.4.5-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.whl (5.1 MB view details)

Uploaded CPython 3.8+ manylinux: glibc 2.5+ i686

pyqrlew-0.4.5-cp38-abi3-macosx_11_0_arm64.whl (3.4 MB view details)

Uploaded CPython 3.8+ macOS 11.0+ ARM64

pyqrlew-0.4.5-cp38-abi3-macosx_10_7_x86_64.whl (3.5 MB view details)

Uploaded CPython 3.8+ macOS 10.7+ x86-64

File details

Details for the file pyqrlew-0.4.5.tar.gz.

File metadata

  • Download URL: pyqrlew-0.4.5.tar.gz
  • Upload date:
  • Size: 105.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.3.1

File hashes

Hashes for pyqrlew-0.4.5.tar.gz
Algorithm Hash digest
SHA256 260b247583b15ef44f635b454d358739730a5683ede80b8ec15b0c93735a108d
MD5 750f4e4c3258bb36f7f199c65eba82fc
BLAKE2b-256 6e5be771ae405a22a4ae937afe99edd0e4326d374c75870519052627280141d0

See more details on using hashes here.

File details

Details for the file pyqrlew-0.4.5-cp38-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for pyqrlew-0.4.5-cp38-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 c85054bafb5d15c2fd1dd312806ca1f090f02fc19bf54ca924b6aca8ead22f82
MD5 18ce3578f48a51216ffddfc0bee18185
BLAKE2b-256 7dacc1fe8bfd3f466061b235d66e971088565b13ecf343232339e3682d0391ee

See more details on using hashes here.

File details

Details for the file pyqrlew-0.4.5-cp38-abi3-win32.whl.

File metadata

  • Download URL: pyqrlew-0.4.5-cp38-abi3-win32.whl
  • Upload date:
  • Size: 2.7 MB
  • Tags: CPython 3.8+, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.3.1

File hashes

Hashes for pyqrlew-0.4.5-cp38-abi3-win32.whl
Algorithm Hash digest
SHA256 4f7a2713c70d1729ea3f16ad64c3f14c9c3fdce72ea6007f649fa926ff01ed16
MD5 40e2ae39417352140786b31e28d575f7
BLAKE2b-256 ce04d3745c9798f1be01ea6bde29cf3a9c73659ab10a03f8cb2545615679685a

See more details on using hashes here.

File details

Details for the file pyqrlew-0.4.5-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyqrlew-0.4.5-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a0beee363c41edaf586b308bf66dab3d96c62ec2be9316bfe55594ae9c70fe25
MD5 1c0dafe43ee14a8006a12f2a067fc9ed
BLAKE2b-256 2c61039387274353d7e89d54f58cade493d19322b8b0eb0d9c47392896416b72

See more details on using hashes here.

File details

Details for the file pyqrlew-0.4.5-cp38-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for pyqrlew-0.4.5-cp38-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 76e9a732356cf237bf3b28472919d3a92ed93d7d79b3ad3510c19f7021a57e72
MD5 61e735ca22aa40ba1a1a838ee85fdc90
BLAKE2b-256 65daccea1a265befa348c56d9552422ec348d08fc5a0e3edf5592a86d0bc361c

See more details on using hashes here.

File details

Details for the file pyqrlew-0.4.5-cp38-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for pyqrlew-0.4.5-cp38-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 a588e23add6b5e93ef9ebe5e40911ddf4f6eab18d1a16ab73ceb4b0858d59cd8
MD5 feda1dc3ae814808a09c1a7839d05477
BLAKE2b-256 ba671138c2b41fcbd6a6165fc795181b18328212abd14a27877c887d4673a0e3

See more details on using hashes here.

File details

Details for the file pyqrlew-0.4.5-cp38-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for pyqrlew-0.4.5-cp38-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 87e47fc1f0049e64e0aa8de694e71a018ebff6c2edcfc8133cc5f666223466e9
MD5 c2546d5e29916d5aa242c79a2d06e30f
BLAKE2b-256 dd3c467b22334a89a9882d13243708d8b55e0fe98a2fb5e877ac3de3dd0d08d7

See more details on using hashes here.

File details

Details for the file pyqrlew-0.4.5-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyqrlew-0.4.5-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 81957973c76f278cf10f6dad777066595d98efbb853798ab94fea303ddbca150
MD5 72e4303a6087783a51ff4dbfb9f19997
BLAKE2b-256 4121927548e91518babd82ef357fab56b6f4537a27c303ac03f9a82a2682b4cd

See more details on using hashes here.

File details

Details for the file pyqrlew-0.4.5-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for pyqrlew-0.4.5-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 354d75bbcadc6c26a47b129753a40bb53d326231834a2e6c02a28d3bc61289cb
MD5 b9ef774a7c6ba0c27ceb60e57de3b1d6
BLAKE2b-256 b3b312b86a162ee31ecb5981d3516a41de5274450c5abd6d3a2150012e125dd3

See more details on using hashes here.

File details

Details for the file pyqrlew-0.4.5-cp38-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyqrlew-0.4.5-cp38-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 26061bffa041286e28372b562b2fd1da1e92d7e489e40a94a99bb53b9186c92f
MD5 565515876e9e086524f633b93f7e5689
BLAKE2b-256 f19dcc1c752ac0578fc1fa5ae714723c28ef4b21deb7286504f9c4002f2c8ec0

See more details on using hashes here.

File details

Details for the file pyqrlew-0.4.5-cp38-abi3-macosx_10_7_x86_64.whl.

File metadata

File hashes

Hashes for pyqrlew-0.4.5-cp38-abi3-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 7c545efa2a4ff9c655b3fd5bf609d674b36a9bae6c19c838bf078484d2e117bd
MD5 e4c3b59e321fc59bc4d4d09aa7b81b0a
BLAKE2b-256 70d70a5762b23c7ae7513bf945b5c8d0021b830db7968ccd07788468b635a0d7

See more details on using hashes here.

Supported by

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