sparklanes is a lightweight data processing framework for Apache Spark written in Python. It was built with the intention to make building complex spark processing pipelines simpler, by shifting the focus towards writing data processing code without having to spent much time on the surrounding application architecture.
Data processing pipelines, or lanes, are built by stringing together encapsulated processor classes, which allows creation of lane definitions with an arbitrary processor order, where processors can be easily removed, added or swapped.
Processing pipelines can be defined using lane configuration YAML files, to then be packaged and submitted to spark using a single command. Alternatively, the same can be achieved manually by using the framework's API.
Check out the documentation at sparklanes.readthedocs.io, as well as the example Jupyter notebook
Using pip:
pip install sparklanes
Install the development requirements:
pip install -r requirements-dev.txt
Run the test suite from the project root using:
python -m tests
Build the documentation:
cd docs && make html
I don't recommend using this in production, as I'm not actively maintaining it.