Skip to content

A lightweight data processing framework for Apache Spark

License

Notifications You must be signed in to change notification settings

blackbishop313/sparklanes

 
 

Repository files navigation

sparklanes

PyPI version Build Status Coverage Status Doc status pylint Score license

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.

Usage

Check out the documentation at sparklanes.readthedocs.io, as well as the example Jupyter notebook

Installation

Using pip:

pip install sparklanes

Tests & Docs

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

Disclaimer

I don't recommend using this in production, as I'm not actively maintaining it.

About

A lightweight data processing framework for Apache Spark

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 84.7%
  • Jupyter Notebook 15.3%