The workload data contains the workload generated from two industrial benchmarks: NDBench from Netflix and DVD store from Dell. Both benchmarks are deployed on a cluster of cloud VMs on AWS and Azure clouds. The workload has been split to training sets and testing sets for machine learning purpose.
This assignment aims to practice the concepts, and techniques for data models and the communications for resources represented by data models. In this assignment, please develop a client/server program to serve a “workload query” scenario. In this scenario, a client sends a ‘Request For Workload (RFW)’, and the server replies an ‘Response for Data (RFD)’ for each conversation.
The client’s RFW includes:
The server’s RFD reply includes:
This assignment is responsible for the design of the data model, and implementation of the data communication. There is no need to develop a full-fledged database system. Data can be stored in files or any kinds of storage, such as relational databases or NoSQL databases.
The data should be communicated between the client and server through data serialization/deserialization in two methods, namely text based (de)-serialization and binary (de)-serialization.
You can program this application in any language.
Your client/server can be a standalone program or you build on any software framework that supports client/server. You can choose the protocol your prefer TCP, or HTTP.
Run your server program on a cloud instance (e.g. AWS instance) or with in a cloud platform (e.g. Google App Engine).