Incremental View Maintenance for Python backends
Project description
stepping
Based on the paper: DBSP: Automatic Incremental View Maintenance for Rich Query Languages.
📚 Documentation 📚
Installation
pip install stepping
Development installation
git clone git@github.com:leontrolski/stepping.git
python -m venv .env
source .env/bin/activate
pip install -e '.[dev]'
pytest
mypy src tests
Nice-to-haves
- In
interleave_changes
, use indexedZSetPython
under the hood. - Skip out the middle man with
Grouped
and just use an indexedZSet
? Does this lead to performance benefits inst.group
? - Instead of
create_tables=True
can we emit SQL and write it. - Revisit
st.compile(...)
. - Can
run.iteration
make nicer error messages? - Python 3.12. Use built in
batched
. Can we use the newUnpack
syntax for nicer action types? - Look at 11.8 "Window aggregates"
- Replace
integrate_delay
with a nice transform. Similarly, transform shared delays. - Decide whether to make
...SQL
classes protocols. - Test arbitrary depth grouped nesting and joining in a grouped setting (Does this even make sense to do?).
Uploading to Pypi
# bump version
python -m pip install build twine
python -m build
twine check dist/*
twine upload dist/*
Deploy docs
flyctl launch
flyctl deploy
flyctl ips list -a stepping-docs
# set A record to @, IPv4
# set AAAA record to @, IPv6
flyctl certs create -a stepping-docs stepping.site
cd docs/doks
npm install
npm run start
npm run build
cd ..; flyctl deploy; cd -
cd docs
python ../scripts/md.py ../ $(find -L ../docs-md -name '**.md')
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
stepping-0.0.3.tar.gz
(49.6 kB
view details)
Built Distribution
stepping-0.0.3-py3-none-any.whl
(49.1 kB
view details)
File details
Details for the file stepping-0.0.3.tar.gz
.
File metadata
- Download URL: stepping-0.0.3.tar.gz
- Upload date:
- Size: 49.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cb0599da474a8a5aaa33660743ae9e7763110df8ab77d42ea8d96c66202fcd69 |
|
MD5 | 48fb2f43d98c71e82f106f5695a2ffec |
|
BLAKE2b-256 | 8217db8d852631883768cf731f48ef1c6290990ede3c44a9a20feac43477b71b |
File details
Details for the file stepping-0.0.3-py3-none-any.whl
.
File metadata
- Download URL: stepping-0.0.3-py3-none-any.whl
- Upload date:
- Size: 49.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cc41932a392c4c7498b2793697185db3176fff8ded374f772e7a114ede30361b |
|
MD5 | 8a56a8f5957738576c9b9dacd89a6d4b |
|
BLAKE2b-256 | 43069e7d3d3c039937f9f1de549bf9ad42b8e2013d3d2af04246a01332930c77 |