mariomac / pipes

Complex data processing flows in Go
Apache License 2.0
13 stars 0 forks source link
etl etl-pipeline go golang

PIPES: Processing In Pipeline-Embedded Stages

PIPES is a library that allows to dynamically connect multiple pipeline stages that are communicated via channels. Each stage will run in a goroutine. Its main use case is the creation of Extract-Transform-Load (ETL) components, such as data cleaners or monitoring agents.

It is a fork version of the Red Hat's & IBM Gopipes library, but this library is not related to any concrete product.

This library allows wrapping functions within Nodes of a connected Graph. In order to pass data across the nodes, each wrapped function must receive, as arguments, an input channel, an output channel, or both.

There are three types of nodes:

Nodes are instantiated, assigned and connected via an API formed by: