-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Detailed documentation can be found http://predictionio.incubator.apache.org/index.html
Community Git: https://github.com/actionml
Community Group: https://groups.google.com/forum/#!forum/actionml-user
PredictionIO is a platform to provide machine learning as service. It contains several components such as Event Store, Training Platform, Model Storage and Prediction Platform.
In Pond environment, we use PostgreSql as events storage, because HBase doesn't support the request get the latest record for a kind of events. This request is very useful for ETL jobs.
A PreictionIO server is typically running on Linux server. For office local development environment, we need to manually deploy the server onto the server 192.168.50.118. Please follow the steps below.
Install HBase, ElasticSerach and Spark
- SSH into 192.168.50.118
- Execute
bash -c "$(curl -s https://github.com/ghraw/actionml/PredictionIO/develop/bin/install.sh)" - This command creates a folder
/var/PredictionIOand downloads all the required components into/var/PredictionIO/vendorsfolder
Install PostgreSQL
- Please follow the instruction https://wiki.postgresql.org/wiki/YUM_Installation
- Download
JDBC41 Postgresql Driverfrom https://jdbc.postgresql.org/download.html - Save the driver under folder
/var/PredictionIO/lib
Build PredictionIO Assembly Jar from Pond Repository
- Connect to 192.168.50.118 winscp
- Copy all the files under repository
PredictionIOto folder/var/PredictionIO.src/on the remote server. - SSH into 192.168.50.118
- Navigate to
/var/PredictionIO.src/ - Execute
bash make-distribution.sh - Copy everything under
/var/PredictionIO.src/distinto/var/PredictionIO
Config PredictionIO server
- Execute
vi /var/PredictionIO/conf/pio-env.sh - Set
SPARK_HOMEto/var/PredictionIO/vendors/spark-1.6.0 - Set
POSTGRES_JDBC_DRIVERto$PIO_HOME/lib/{Jar File} - Set
HBASE_CONF_DIRto/var/PredictionIO/vendors/hbase-1.1.2/conf - Set
PIO_STORAGE_REPOSITORIES_EVENTDATA_SOURCEtoPGSQL - Set
PIO_STORAGE_SOURCES_PGSQL_TYPEtojdbc - Set
PIO_STORAGE_SOURCES_PGSQL_URLtojdbc:postgresql://localhost/pio - Set
PIO_STORAGE_SOURCES_PGSQL_USERNAMEtopio - Set
PIO_STORAGE_SOURCES_PGSQL_PASSWORDtopio - Set
PIO_STORAGE_SOURCES_ELASTICSEARCH_TYPEtoelasticsearch - Set
PIO_STORAGE_SOURCES_ELASTICSEARCH_HOSTStolocalhost - Set
PIO_STORAGE_SOURCES_ELASTICSEARCH_HOMEto/var/PredictionIO/vendors/elasticsearch-1.7.3
Setup PredictionIO Server (Only run once)
- Execute
pio app new pond - Copy the
Access Keyand save it to a safe place. This access key will be used for accessing the data of the application.
PredictionIO Useful Commands
-
pio-start-allstart all the services. -
pio-stop-allstop all the services. -
pio statuscheck the status of the underlying services.
AWS Environment
- The TeamCity build for the PredictionIO server is under
Recommendation. - The cookbook is located at
Deployment/chef-repo/cookbooks/app_n4l_portal_recommendation.
