The Software-Defined Data Services (SDDS) framework, specifically the Mayan-DS implementation, is a network-aware middleware designed for big data executions at internet scale. It decouples the management logic from the data service plane, enabling dynamic orchestration and resilient execution through three functional planes.
Mayan-DS orchestrates data services by integrating core building blocks from the KathiraveluLab research portfolio:
- Control Plane (Messaging4Transport):
- Handles asynchronous control flows using AMQP 1.0 and MD-SAL.
- Enables cross-domain coordination between data service nodes.
- Orchestration Plane (Évora):
- Implements network-aware service placement using greedy optimization.
- Minimizes cost and latency penalties along the data path.
- Resilience Plane (SMART):
- Provides differentiated QoS and selective redundancy.
- Monitors link congestion via MD-SAL DOM telemetry and triggers policy-based replication.
- Java 8 (JDK 1.8 compatibility)
- Maven 3.8+
- Docker (Recommended, for automatic AMQP broker deployment)
The framework is pre-configured with the necessary OpenDaylight Beryllium-SR4 shims. Use the master launcher for a one-click deployment:
chmod +x sdds_launcher.sh
./sdds_launcher.shNote
The launcher automatically detects if port 5672 is in use. If it is occupied by an ActiveMQ instance (either in a Docker container or running directly on the host), it reuses it. If port 5672 is used by any other program or a non-ActiveMQ container, the launcher spawns a new ActiveMQ instance on port 5673 and configures the framework accordingly.
For detailed usage instructions, CLI client examples, and monitoring tips, please refer to the User Guide.
src/main/java/org/sdds/Main.java: System entry point.src/main/java/org/sdds/ControlChannel.java: Control plane implementation (M4T).src/main/java/org/sdds/Orchestrator.java: Orchestration plane implementation (Évora).src/main/java/org/sdds/ResilienceManager.java: Resilience plane implementation (SMART).
If you use Mayan-DS, the Software-Defined Data Services (SDDS) framework in your research, please cite the following papers:
-
Kathiravelu, P., Van Roy, P. and Veiga, L., 2020. Interoperable and network‐aware service workflows for big data executions at internet scale. Concurrency and Computation: Practice and Experience, 32(21), p.e5212.
-
Kathiravelu, P., Van Roy, P. and Veiga, L., 2018, April. Software-defined data services: Interoperable and network-aware big data executions. In 2018 Fifth International Conference on Software Defined Systems (SDS) (pp. 145-152). IEEE.