Skip to main content

Library for building Modular and Asynchronous Graphs with Directed and Acyclic edges (MAGDA)

Project description

MAGDA

MAGDA is a Python library intended for assembling a stream-like architecture of an application following functional programming principles, by using predefined interfaces and classes. MAGDA stands for Modular and Asynchronous Graphs with Directed and Acyclic edges, and is the backbone of the library. The library works best when the code can be split into independent operations with clearly defined input and outputs. The main idea is to use MAGDA to process code in a sequential flow. Think of this as nodes with input/output as edges in directed graphs.

MAGDA supports following operations:

  • building an application pipeline from a configuration file and from code,
  • asynchronous and synchronous processing,
  • dividing modules into groups for asynchronous pipeline,
  • aggregation of partial results.

MAGDA can be applied almost anywhere, but is especially well-suited for BigData parallel processing and ML pipelines intended for carrying out multiple, repeatable experiments.

Read the documentation on the Github Wiki.

Installation

pip
pip install magda
From the repository
pip install https://github.com/NeuroSYS-pl/magda/archive/main.zip

License

Apache-2.0 License

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

magda-0.1.0.tar.gz (26.9 kB view hashes)

Uploaded Source

Built Distribution

magda-0.1.0-py3-none-any.whl (47.7 kB view hashes)

Uploaded Python 3

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