Twister2 Release 0.3.0
This is a major release of Twister2.
You can download source code from Github
Features of this release
In this release we moved to OpenMPI 4.0.1 and Python 3. Also we tested Twister2 with JDK 11.
- The initial version of Apache BEAM integration
- Fully functioning TSet API
- Simulator for writing applications with IDE
- Organize the APIs to facilitate easy creation of applications
- Improvements to performance including a new routing algorithm for shuffle operations
- Improved batch task scheduler (new batch scheduler)
- Inner joins and outer joins
- Support for reading HDFS files through TSet API
- The initial version of fault tolerance with manual restart
- Configuration structure improvements
- Nomad scheduler improvements
- New documentation website
Minor features
Apart from these, we have done many code improvements and bug fixes.
Next Release
In the next release we are working onto consolidate the Apache Beam integration and improve the fault tolerance (automatic restart of wokers)
Components in Twister2
We support the following components in Twister2
- Resource provisioning component to bring up and manage parallel workers in cluster environments
- Standalone
- Kubernetes
- Mesos
- Slurm
- Nomad
- Parallel and Distributed Operators in HPC and Cloud Environments
- Twister2:Net - a data level dataflow operator library for streaming and large scale batch analysis
- Harp - a BSP (Bulk Synchronous Processing) innovative collective framework for parallel applications and machine learning at message level
- OpenMPI (HPC Environments only) at message level
- Task System
- Task Graph
- Create dataflow graphs for streaming and batch analysis including iterative computations
- Task Scheduler - Schedule the task graph into cluster resources supporting different scheduling algorithms
- Datalocality Scheduling
- Roundrobin scheduling
- First fit scheduling
- Executor - Execution of task graph
- Batch executor
- Streaming executor
- Task Graph
- TSet for distributed data representation (Similar to Spark RDD, Flink DataSet and Heron Streamlet)
- Iterative computations
- Data caching
- APIs for streaming and batch applications
- Operator API
- Task Graph based API
- TSet API
- Support for storage systems
- HDFS
- Local file systems
- NFS for persistent storage
- Web UI for monitoring Twister2 Jobs
- Apache Storm Compatibility API
- Apache BEAM API
- Connected DataFlow (Experimental)
- Supports creation of multiple dataflow graphs executing in a single job