Prediction micro service as part of Cyclops framework has been designed to predict values based on historical data. It is also capable of generic factual forecasting by encapsulating mllib as a prediction engine. The prediction microservice queries both UDR and RC services which are parts of Cyclops project to get the Usage Data Record and Charge Data Record of a user, respectively for user perspective. For an admin, the data records of a recourse will indicate the entire overall consumption and not just individual user's consumption. To predict the values of resources, mllib is used to provide multiple algorithms support along with machine-learning capability. The prediction engine is deployed over Apache Spark engine which contains a scalable machine learning library(mllib). As a package for engine development spark.ml is used to provide high-level APIs built on top of DataFrames. DataFrame is a collection of data organized into named columns, and is distributed by Apache Spark.
$ git clone https://github.com/icclab/cyclops-prediction.git
If you have already deployed UDR microservice, you can skip install_prereq script, as Prediction microservice has the same prerequisites.
$ cd cyclops-prediction/install
$ chmod +x ./*
$ bash install_prereq.sh
$ bash setup_prediction.sh
- At the end of the installation process you will be asked for your deployment credentials and to modify any configuration parameters, please do not ignore this step.
- If there is a need to update your configuration, you can find it stored here cyclops-prediction/src/main/webapp/WEB-INF/configuration.txt
$ bash deploy_prediction.sh
Visit the Wiki for detailed explanation and API reference guide.
To report any bugs or issues, please use Github Issues
- Email: icclab-rcb-cyclops[at]dornbirn[dot]zhaw[dot]ch
- Website: icclab.github.io/cyclops
- Blog: http://blog.zhaw.ch/icclab
- Tweet us @ICC_Lab
Licensed under the Apache License, Version 2.0 (the "License"); you may
not use this file except in compliance with the License. You may obtain
a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
License for the specific language governing permissions and limitations
under the License.