Skip to main content

Low-latency Arrow-native streaming for Python powered by C++.

Project description

QuartzStream

QuartzStream is a C++-powered Python streaming package that ingests live events into Arrow-native batches and exposes a fluent Python API for low-latency stream processing.

Current implementation scope:

  • UDP and manual in-process event sources
  • Bounded ingress queue with backpressure accounting
  • C++-side batching, filtering, projection, and tumbling-window mean aggregation
  • Native numeric column fast path for filter/window/mean workloads
  • Arrow RecordBatch output through pyarrow
  • Native Python async iteration over live batches
  • Modular C++ engine split across processing/runtime/bindings translation units
  • Cross-engine benchmark script for pandas, polars, and duckdb comparisons

The broader product brief in context.md includes additional future capabilities that are not yet implemented in this repository.

See architecture.md and explanation.md for detailed implementation design and execution semantics.

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

quartzstream-0.1.0.tar.gz (13.9 kB view details)

Uploaded Source

Built Distributions

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

quartzstream-0.1.0-cp313-cp313-musllinux_1_2_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

quartzstream-0.1.0-cp313-cp313-musllinux_1_2_i686.whl (1.3 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ i686

quartzstream-0.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (215.3 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

quartzstream-0.1.0-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl (231.0 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ i686

quartzstream-0.1.0-cp313-cp313-macosx_11_0_arm64.whl (158.6 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

quartzstream-0.1.0-cp312-cp312-musllinux_1_2_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

quartzstream-0.1.0-cp312-cp312-musllinux_1_2_i686.whl (1.3 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ i686

quartzstream-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (215.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

quartzstream-0.1.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl (231.0 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ i686

quartzstream-0.1.0-cp312-cp312-macosx_11_0_arm64.whl (158.6 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

quartzstream-0.1.0-cp311-cp311-musllinux_1_2_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

quartzstream-0.1.0-cp311-cp311-musllinux_1_2_i686.whl (1.3 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ i686

quartzstream-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (213.4 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

quartzstream-0.1.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (228.9 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ i686

quartzstream-0.1.0-cp311-cp311-macosx_11_0_arm64.whl (157.5 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

quartzstream-0.1.0-cp310-cp310-musllinux_1_2_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

quartzstream-0.1.0-cp310-cp310-musllinux_1_2_i686.whl (1.3 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ i686

quartzstream-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (213.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

quartzstream-0.1.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (226.9 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ i686

quartzstream-0.1.0-cp310-cp310-macosx_11_0_arm64.whl (156.3 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

Details for the file quartzstream-0.1.0.tar.gz.

File metadata

  • Download URL: quartzstream-0.1.0.tar.gz
  • Upload date:
  • Size: 13.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for quartzstream-0.1.0.tar.gz
Algorithm Hash digest
SHA256 633509032a5f9904617a3f18e57cb39dae9ea835a3579b4b84d07976cf614974
MD5 a0fdb2ba3493a60631aa38f233db8286
BLAKE2b-256 f2484dc127650192f1966baa9b13fc944c3bf0609f42476599e77acbbd425543

See more details on using hashes here.

File details

Details for the file quartzstream-0.1.0-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for quartzstream-0.1.0-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 db7051207014c9aa297c33eafa30c86ed3aa776358e0da92a5fd7c986066e9b8
MD5 9ec01b62373ae37633a3e4edfe941ae3
BLAKE2b-256 79b81148317ad86132e213da9d18b3e1f9a423724aecc4379a85c7eeedb3d0f9

See more details on using hashes here.

File details

Details for the file quartzstream-0.1.0-cp313-cp313-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for quartzstream-0.1.0-cp313-cp313-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 33796af028cca273b307e1e9f624202b0643aa36e5c236a14db86c6831a473f9
MD5 aa14db8295cfddadec97e3701ee75834
BLAKE2b-256 43e5f5f7c228d145d0468f7a0b990065e04e8eff6eaedb16f373188be895b3e6

See more details on using hashes here.

File details

Details for the file quartzstream-0.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for quartzstream-0.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4aaac915ff23c245fdab1788e0fc927bba37907a08a43782337ca8dcb4cbc275
MD5 c990cb2c713244535743dd891e41a355
BLAKE2b-256 16cea735118f2f698315e57d0c399228b13452c4463dd24d7eeaab50c02a90ca

See more details on using hashes here.

File details

Details for the file quartzstream-0.1.0-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for quartzstream-0.1.0-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 5b521015785978ca92fd0de2a78c9d65bb89e3053c45c4f55200361435e1d291
MD5 ee9a9ebb4af3ecc45f75611d18524eed
BLAKE2b-256 2d160250d6565bf135d6979d0472de9dec500bf0cc5d4378a09ba2bad358d8e6

See more details on using hashes here.

File details

Details for the file quartzstream-0.1.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for quartzstream-0.1.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3ae09513ac7e2f968ce3466f4934b5ad8fab27ccf509c6dfb7c257e91a2ff53c
MD5 cea254a01e3e20c54bed94dd69e60605
BLAKE2b-256 a706765a7eccfbebaaffb88feb179a770c6f28fb0c7f02d7ff659dec6ff295e5

See more details on using hashes here.

File details

Details for the file quartzstream-0.1.0-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for quartzstream-0.1.0-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 1788a0cf8c598fc51721ae0c73d636cdf9a8a319c49319c522d90f689ae5f2e7
MD5 c3a80051aa20630b4aabb7d95dbe3973
BLAKE2b-256 591746a923a9549b4c05f182771b9256aa72ef0ca3d9dc68ed0d0f0a1e46e2a8

See more details on using hashes here.

File details

Details for the file quartzstream-0.1.0-cp312-cp312-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for quartzstream-0.1.0-cp312-cp312-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 a96208bf483f7ce56f62ba37d979ebfccdf20f73ca0b69ccc64d200b55161776
MD5 8f521519639a19bf268547cf92065781
BLAKE2b-256 1055155cf56dccd86b60e332958017be48e7eb5e9df9f67688c863636ec018de

See more details on using hashes here.

File details

Details for the file quartzstream-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for quartzstream-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 421e3b741b44f2bcdac985895571d89d6386b284202f1992c682b2909e5fe2bf
MD5 a84192b77508872ffbb0167385604571
BLAKE2b-256 f31cc15f5d8ee6c98678965bddedd726ff2f1225e6f6eeb68d1dfa6958509d79

See more details on using hashes here.

File details

Details for the file quartzstream-0.1.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for quartzstream-0.1.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 34e2041e6e616b63cd1a15db45ff999c2eb5ba2f90b460e4d0f40f6f91f396e4
MD5 e95764cd633a475f9eb765a17b286ab4
BLAKE2b-256 bbc743157e3d50ffce7f8cfc7ec74088e47f99b93e956e564b59a0969e5b676c

See more details on using hashes here.

File details

Details for the file quartzstream-0.1.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for quartzstream-0.1.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 218554e41299becee715144235e253240729055b5d3125b67158c554d73d990c
MD5 4d6dc888045ab41996f16b345bcc30cd
BLAKE2b-256 e592869942353c4b37dfd87260cc7adfaf04f0cf5a37a8db6f2de3e60c9783ac

See more details on using hashes here.

File details

Details for the file quartzstream-0.1.0-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for quartzstream-0.1.0-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 d7c302d1a8da39e88b73030eb7d7c3f0534376ee152cdad9923f1f039b8dac69
MD5 8ba1d3269fac3d4615e0cdc09784ce3e
BLAKE2b-256 436f019e52c3c207a30fb042c0311311eda025401df37eee5ec1eba453cf75ec

See more details on using hashes here.

File details

Details for the file quartzstream-0.1.0-cp311-cp311-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for quartzstream-0.1.0-cp311-cp311-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 8c27c98099ca99328dac9d0343a44ecf57e4758662b02fca54c6fb7e3537e6fa
MD5 afeeb8271fe9178410a024ca99376a6f
BLAKE2b-256 b5d299677626d4c62c16d29785d4f1554366897da95d1fe9d823b6304bcaf0a0

See more details on using hashes here.

File details

Details for the file quartzstream-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for quartzstream-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f36077c1fd0ddf38c5b54f67e2c10a66808a173bc2de95aac7ef19f9e40cc3d5
MD5 10084c43efe23be28ecd474060352bd2
BLAKE2b-256 d500d99944bb55df0aa1845444b28e29a5b3ff751c241d415940ea244927d039

See more details on using hashes here.

File details

Details for the file quartzstream-0.1.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for quartzstream-0.1.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 8664d12392c2a7eeea8e7bcebbf4e7c88fc4bf354bd2c4bc1ea8515660c6c645
MD5 cbf492a72304e12520d4d400fca2f9c4
BLAKE2b-256 0b315be899f21bf7ce610981ff0b9e924ccb0355add21aa4aa723894887198f6

See more details on using hashes here.

File details

Details for the file quartzstream-0.1.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for quartzstream-0.1.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a473ee2fe18647a0afc55b47a046ac9ca3ae87dfcd2a43fe18707203543c0a79
MD5 399f6e3a042e7eebc1f46bc936003088
BLAKE2b-256 1ef92bf4791862d84e273a8a8412ab6642b5effb763a5e5c1135db9421dc8992

See more details on using hashes here.

File details

Details for the file quartzstream-0.1.0-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for quartzstream-0.1.0-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 c635183e851d1de805b75b087cc4311268b112ea8b3c690b2c09d590e63d31ef
MD5 b6b4232ccc469e89f07f9d7373334ac1
BLAKE2b-256 f75dfa2d3046997f46a6f0d1f7dbd905fc42de38aec54c9897be6a76382ca203

See more details on using hashes here.

File details

Details for the file quartzstream-0.1.0-cp310-cp310-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for quartzstream-0.1.0-cp310-cp310-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 4c929ef849f5cfbdd9d2c98ac7f36f94704d15efd42e23a980a9e03cf42fefcd
MD5 9684cc5ccfd894857e8a77fc78c43c12
BLAKE2b-256 5db00731fc977c62796ea2bc41aad1ff0c12667f21e2bda8b29d42f0ed60b584

See more details on using hashes here.

File details

Details for the file quartzstream-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for quartzstream-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2dd15287a0f055ad865030e413dd4d62366c2e768c7950d1c79b8b22fd8b063b
MD5 724110de936be0776f14cf47b68f6f52
BLAKE2b-256 11c1d317dbd45d96d36622cce47a0d8e1d206bb71aacefa66de5c77ea1823566

See more details on using hashes here.

File details

Details for the file quartzstream-0.1.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for quartzstream-0.1.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 b99347b8e55c453eb4fc784ae5edda6e3e03774d13cd418bec42c2eb6ddaa3a8
MD5 47c2fbc5a410870b36f624fda0544b5f
BLAKE2b-256 bb8b6537f53f9e61baa4303766e0e7ded52668f40c04f1f0c183f38558c0a951

See more details on using hashes here.

File details

Details for the file quartzstream-0.1.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for quartzstream-0.1.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 931cadea05ada6d14437667211bb67c6dd7c754872d6a6c66f23364abfbd5270
MD5 fcdf43aedf1ebbb6b5fb93abf6761629
BLAKE2b-256 743cdc9688d723e866642f7b13e70a68c86af14d5d20a517c182a308f87791f5

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