{"id":8798,"date":"2019-02-25T14:03:31","date_gmt":"2019-02-25T17:03:31","guid":{"rendered":"http:\/\/blog.plataformatec.com.br\/?p=8798"},"modified":"2019-02-26T10:13:47","modified_gmt":"2019-02-26T13:13:47","slug":"announcing-broadway","status":"publish","type":"post","link":"http:\/\/blog.plataformatec.com.br\/2019\/02\/announcing-broadway\/","title":{"rendered":"Announcing Broadway"},"content":{"rendered":"

In December 2018, we published the Plataformatec and Elixir: 2018 in review<\/a> article, in which we shared some of our achievements throughout the year, as well as some of the goals we planned for 2019. One of these goals was to engage the R&D team to develop a new open source tool that could streamline data processing pipelines with Elixir.<\/p>\n

Today, we are glad to announce the first official release of this tool: Broadway v0.1<\/a>. Broadway was mainly designed to help developers build concurrent, multi-stage data ingestion and data processing pipelines. It allows developers to consume data efficiently from different sources, such as Amazon SQS, RabbitMQ, and others.<\/p>\n

Motivation<\/h2>\n

We have worked with many companies building data processing pipelines and we have noticed that they were often reimplementing the same features and also running into common pitfalls when assembling complex GenStage topologies. The goal of Broadway is to significantly cut down the development time to assemble those pipelines, while providing many features and avoiding common pitfalls.<\/p>\n

Features<\/h2>\n

Broadway comes with a handful of features that take the burden of defining concurrent GenStage topologies and provide a simple configuration API that automatically defines concurrent producers, concurrent processing, batch handling, and more, leading to both time and cost efficient ingestion and processing of data. Some of those features include:<\/p>\n