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.3.tar.gz (105.3 kB view details)

Uploaded Source

Built Distributions

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

Uploaded CPython 3.8+ Windows x86-64

pyqrlew-0.4.3-cp38-abi3-win32.whl (2.8 MB view details)

Uploaded CPython 3.8+ Windows x86

pyqrlew-0.4.3-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.3-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.3-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.3-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.3-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.3-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.3-cp38-abi3-macosx_11_0_arm64.whl (3.4 MB view details)

Uploaded CPython 3.8+ macOS 11.0+ ARM64

pyqrlew-0.4.3-cp38-abi3-macosx_10_7_x86_64.whl (3.6 MB view details)

Uploaded CPython 3.8+ macOS 10.7+ x86-64

File details

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

File metadata

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

File hashes

Hashes for pyqrlew-0.4.3.tar.gz
Algorithm Hash digest
SHA256 7fc84e9f953188ae2c2fccedd4458676473616057aec5090d300dbe5f65d279b
MD5 69d6bb8d067616cff5671188873f75ad
BLAKE2b-256 fd0c7017a3e1c8ccbd3b36750c6362c76a968743192d001ed8dd1f4398549ba2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyqrlew-0.4.3-cp38-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 9f14df46a8b5dcb5a497b5ca519144d051450c0d4c748392e921cefedca106fc
MD5 9707b723833a52ded7398e33ac25c6c3
BLAKE2b-256 08350c09d0d527410b3a3c8ff4ef4d745f9fb40b531d36d243aef6683d70b14f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pyqrlew-0.4.3-cp38-abi3-win32.whl
  • Upload date:
  • Size: 2.8 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.3-cp38-abi3-win32.whl
Algorithm Hash digest
SHA256 953cc169ac2a7d15d272bbb56d9c94095af313f643fd13a156213d65b823f618
MD5 815a30772101cf7723f3265c4f1a951b
BLAKE2b-256 b0aff132cbe28cc7dedbda012254a835b5c360ef57fc6538855f57963ada9729

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyqrlew-0.4.3-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ce11d625ae7b0dd9ccad085a8ad5affe2e45b173d8e355de1a1932d44934a0a8
MD5 cbe1dbb6722efe07552251452daf2f6f
BLAKE2b-256 3c7a03639198ce556805025e62b809a57cb62a8c6a93f18b61b893b54f2cb394

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyqrlew-0.4.3-cp38-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 734de0b10add976a6f9a0e418003c58977308ca6c10443ceaad6a9f23c49481f
MD5 aa52eda41ec5ffffa7e2fcc7268877d2
BLAKE2b-256 e5c099bb6fcd45546a270ab6e5253c15d9263dc6869742c1733c9811aabad4a9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyqrlew-0.4.3-cp38-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 9bfdd8fdaaa987504017afb38e4295b04668485ee8e903037ca6c181ea9219d8
MD5 e965cbcbf6d1823f89cf58a62b8e4c47
BLAKE2b-256 ea2673b6acb654519fa882fa2c2459eefad15ba7a4ed8b7ec36f7a1320e41366

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyqrlew-0.4.3-cp38-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 cce14ffbf9bd42a929cbb663d0f3dd13904bf19c5f444ebf793cc9809a02d7f6
MD5 3e122d5166941026be2faef8c3ff201a
BLAKE2b-256 2f0530d1a06e70346c38080b5ea213eac52a234cf0de050e2f88898e8181b680

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyqrlew-0.4.3-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 9eaab0077994b05c7a3201e0715f3304802011a06dfb492bd17c380538ac050f
MD5 b54813a45840fa370f77ae3f56189fae
BLAKE2b-256 616f9d3965811922292d04cef98b029de94fa06abefb68fd2656dd21160348d9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyqrlew-0.4.3-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 6263e4890c9ee06072f65762b1a483ffb4f22ae2cd9be37d609186c2852a3a58
MD5 dd0671d45d43d3a8abef08845960b8a9
BLAKE2b-256 ccc8142d06a1ea1a9bdecd56a8037d3797cdca46c65aee5719a201cb49195501

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyqrlew-0.4.3-cp38-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1969bedf3db201baebc25913d533c0497bff754d241b6863e78a7855fdd90b1e
MD5 f7898fbbeee301e9e94d99bf200b6604
BLAKE2b-256 0d4b1633a6eede68838ae87e087e3c6dcd1816130dc33e05fad2c41eaf02cd17

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyqrlew-0.4.3-cp38-abi3-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 39d52b5d62c3fb07be20b905123dc61d11e8f90406682821e76f4eddf3227f21
MD5 fc7ba4a1dfd5370b893cb7b3fead2b68
BLAKE2b-256 601cbc893169378ceb22a9faffbf3c6446fadabbd3f9fea208aec96f35557334

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