Sinfonier Architecture
Content:
Architecture Overview
Sinfonier has three main components:
- Drag & Drop interface where user can define Topologies, add new modules (Spouts, Bolts and Drains) and manage Apache Storm Cluster. (Sinfonier-Drawer)
- Integration API to join Apache Storm Cluster with FrontEnd interface (Sinfonier-API) and all related modules: Dependencies (Apache Maven and Python PIP), Classpath and project packaging. (Sinfonier-Backend)
- Apache Storm cluster. Sifonier works using clean Apache Storm deploy.
Sinfonier is partitioned in order to interact with each of the parts of the project independently. Sinfonier API can be using without Sinfonier Drawer. Sinfonier Backend is an independient project magaed by Sinfonier API.
Components
Sinfonier Drawer
FrontEnd part of Sinfonier Project. Allow users to define Apache Storm Topologies (DAG - Directed acyclic graph) in a visual way and send it to Storm Cluster using Sifonier API.
Technologies
Integrated
Sinfonier Drawer use:
- Gravatar
- Latch
Sinfonier API
Sinfonier API was develop to manage Sinfonier Backend and deal with Apache Storm cluster.
This software is part of Sinfonier-Project.
Technologies
Sinfonier BackEnd
Sinfoner BackEnd allow to deploy Apache Storm Topologies defined using XML into Apache Storm Cluster. It's the final step on Sinfonier Project architecture and It's used by Sinfonier API.
Sinfonier BackEnd use Apache Maven to manage Java dependencies. Python dependencies must be solved using Python Pip.
Technologies
Apache Storm
Apache Storm is a free and open source distributed realtime computation system Storm makes it easy to reliably process unbounded streams of data, doing for realtime processing what Hadoop did for batch processing. Storm is simple, can be used with any programming language, and is a lot of fun to use!.