├── .gitattributes ├── .gitignore ├── .project ├── .travis.yml ├── CONTRIBUTING.md ├── Dockerfile ├── KEYS ├── LICENSE.txt ├── NOTICE.txt ├── PMC.md ├── README.md ├── RELEASE.md ├── assembly ├── build.sbt └── src │ ├── debian │ └── DEBIAN │ │ ├── postrm │ │ └── preinst │ └── rpm │ └── scriptlets │ ├── postun │ └── preinst ├── bin ├── cjson ├── compute-classpath.sh ├── install.sh ├── load-pio-env.sh ├── pio ├── pio-class ├── pio-daemon ├── pio-shell ├── pio-start-all ├── pio-stop-all ├── semver.sh └── travis │ ├── pio-start-travis │ └── pio-stop-travis ├── build.sbt ├── common ├── build.sbt └── src │ └── main │ ├── java │ └── org │ │ └── apache │ │ └── predictionio │ │ └── annotation │ │ ├── DeveloperApi.java │ │ └── Experimental.java │ ├── resources │ ├── META-INF │ │ ├── LICENSE.txt │ │ └── NOTICE.txt │ └── application.conf │ └── scala │ └── org │ └── apache │ └── predictionio │ ├── akkahttpjson4s │ └── Json4sSupport.scala │ ├── authentication │ └── KeyAuthentication.scala │ └── configuration │ └── SSLConfiguration.scala ├── conf ├── keystore.jks ├── log4j.properties ├── pio-env.sh.template ├── pio-env.sh.travis ├── pio-vendors.sh └── server.conf ├── core ├── build.sbt └── src │ ├── main │ ├── resources │ │ └── META-INF │ │ │ ├── LICENSE.txt │ │ │ └── NOTICE.txt │ ├── scala │ │ └── org │ │ │ └── apache │ │ │ └── predictionio │ │ │ ├── controller │ │ │ ├── CustomQuerySerializer.scala │ │ │ ├── Deployment.scala │ │ │ ├── Engine.scala │ │ │ ├── EngineFactory.scala │ │ │ ├── EngineParams.scala │ │ │ ├── EngineParamsGenerator.scala │ │ │ ├── Evaluation.scala │ │ │ ├── FastEvalEngine.scala │ │ │ ├── IdentityPreparator.scala │ │ │ ├── LAlgorithm.scala │ │ │ ├── LAverageServing.scala │ │ │ ├── LDataSource.scala │ │ │ ├── LFirstServing.scala │ │ │ ├── LPreparator.scala │ │ │ ├── LServing.scala │ │ │ ├── LocalFileSystemPersistentModel.scala │ │ │ ├── Metric.scala │ │ │ ├── MetricEvaluator.scala │ │ │ ├── P2LAlgorithm.scala │ │ │ ├── PAlgorithm.scala │ │ │ ├── PDataSource.scala │ │ │ ├── PPreparator.scala │ │ │ ├── Params.scala │ │ │ ├── PersistentModel.scala │ │ │ ├── SanityCheck.scala │ │ │ ├── Utils.scala │ │ │ ├── java │ │ │ │ ├── JavaEngineParamsGenerator.scala │ │ │ │ ├── JavaEvaluation.scala │ │ │ │ ├── LJavaAlgorithm.scala │ │ │ │ ├── LJavaDataSource.scala │ │ │ │ ├── LJavaPreparator.scala │ │ │ │ ├── LJavaServing.scala │ │ │ │ ├── P2LJavaAlgorithm.scala │ │ │ │ ├── PJavaAlgorithm.scala │ │ │ │ ├── PJavaDataSource.scala │ │ │ │ ├── PJavaPreparator.scala │ │ │ │ └── SerializableComparator.scala │ │ │ └── package.scala │ │ │ ├── core │ │ │ ├── AbstractDoer.scala │ │ │ ├── BaseAlgorithm.scala │ │ │ ├── BaseDataSource.scala │ │ │ ├── BaseEngine.scala │ │ │ ├── BaseEvaluator.scala │ │ │ ├── BasePreparator.scala │ │ │ ├── BaseServing.scala │ │ │ ├── SelfCleaningDataSource.scala │ │ │ └── package.scala │ │ │ ├── package.scala │ │ │ └── workflow │ │ │ ├── BatchPredict.scala │ │ │ ├── CleanupFunctions.scala │ │ │ ├── CoreWorkflow.scala │ │ │ ├── CreateServer.scala │ │ │ ├── CreateWorkflow.scala │ │ │ ├── EngineServerPlugin.scala │ │ │ ├── EngineServerPluginContext.scala │ │ │ ├── EngineServerPluginsActor.scala │ │ │ ├── EvaluationWorkflow.scala │ │ │ ├── FakeWorkflow.scala │ │ │ ├── JsonExtractor.scala │ │ │ ├── JsonExtractorOption.scala │ │ │ ├── PersistentModelManifest.scala │ │ │ ├── Workflow.scala │ │ │ ├── WorkflowContext.scala │ │ │ ├── WorkflowParams.scala │ │ │ └── WorkflowUtils.scala │ └── twirl │ │ └── org │ │ └── apache │ │ └── predictionio │ │ ├── controller │ │ └── metric_evaluator.scala.html │ │ └── workflow │ │ └── index.scala.html │ └── test │ ├── java │ └── org │ │ └── apache │ │ └── predictionio │ │ └── workflow │ │ ├── JavaParams.java │ │ ├── JavaQuery.java │ │ └── JavaQueryTypeAdapterFactory.java │ └── scala │ └── org │ └── apache │ └── predictionio │ ├── controller │ ├── EngineTest.scala │ ├── EvaluationTest.scala │ ├── EvaluatorTest.scala │ ├── FastEvalEngineTest.scala │ ├── MetricEvaluatorTest.scala │ ├── MetricTest.scala │ └── SampleEngine.scala │ ├── core │ ├── SelfCleaningDataSourceTest.scala │ └── test.json │ └── workflow │ ├── BaseTest.scala │ ├── EngineWorkflowTest.scala │ ├── EvaluationWorkflowTest.scala │ └── JsonExtractorSuite.scala ├── data ├── README.md ├── build.sbt ├── src │ ├── main │ │ ├── resources │ │ │ └── META-INF │ │ │ │ ├── LICENSE.txt │ │ │ │ └── NOTICE.txt │ │ └── scala │ │ │ └── org │ │ │ └── apache │ │ │ └── predictionio │ │ │ └── data │ │ │ ├── Utils.scala │ │ │ ├── api │ │ │ ├── Common.scala │ │ │ ├── EventInfo.scala │ │ │ ├── EventServer.scala │ │ │ ├── EventServerPlugin.scala │ │ │ ├── EventServerPluginContext.scala │ │ │ ├── PluginsActor.scala │ │ │ ├── Stats.scala │ │ │ ├── StatsActor.scala │ │ │ ├── Webhooks.scala │ │ │ └── WebhooksConnectors.scala │ │ │ ├── package.scala │ │ │ ├── storage │ │ │ ├── AccessKeys.scala │ │ │ ├── Apps.scala │ │ │ ├── BiMap.scala │ │ │ ├── Channels.scala │ │ │ ├── DataMap.scala │ │ │ ├── DateTimeJson4sSupport.scala │ │ │ ├── EngineInstances.scala │ │ │ ├── EntityMap.scala │ │ │ ├── EvaluationInstances.scala │ │ │ ├── Event.scala │ │ │ ├── EventJson4sSupport.scala │ │ │ ├── LEventAggregator.scala │ │ │ ├── LEvents.scala │ │ │ ├── Models.scala │ │ │ ├── PEventAggregator.scala │ │ │ ├── PEvents.scala │ │ │ ├── PropertyMap.scala │ │ │ ├── Storage.scala │ │ │ ├── Utils.scala │ │ │ └── package.scala │ │ │ ├── store │ │ │ ├── Common.scala │ │ │ ├── LEventStore.scala │ │ │ ├── PEventStore.scala │ │ │ ├── java │ │ │ │ ├── LJavaEventStore.scala │ │ │ │ ├── OptionHelper.scala │ │ │ │ └── PJavaEventStore.scala │ │ │ ├── package.scala │ │ │ └── python │ │ │ │ └── PPythonEventStore.scala │ │ │ ├── view │ │ │ ├── DataView.scala │ │ │ ├── LBatchView.scala │ │ │ ├── PBatchView.scala │ │ │ └── QuickTest.scala │ │ │ └── webhooks │ │ │ ├── ConnectorException.scala │ │ │ ├── ConnectorUtil.scala │ │ │ ├── FormConnector.scala │ │ │ ├── JsonConnector.scala │ │ │ ├── exampleform │ │ │ └── ExampleFormConnector.scala │ │ │ ├── examplejson │ │ │ └── ExampleJsonConnector.scala │ │ │ ├── mailchimp │ │ │ └── MailChimpConnector.scala │ │ │ └── segmentio │ │ │ └── SegmentIOConnector.scala │ └── test │ │ ├── resources │ │ └── application.conf │ │ └── scala │ │ └── org │ │ └── apache │ │ └── predictionio │ │ └── data │ │ ├── api │ │ ├── EventServiceSpec.scala │ │ └── SegmentIOAuthSpec.scala │ │ ├── storage │ │ ├── BiMapSpec.scala │ │ ├── DataMapSpec.scala │ │ ├── LEventAggregatorSpec.scala │ │ ├── PEventAggregatorSpec.scala │ │ ├── StorageMockContext.scala │ │ └── TestEvents.scala │ │ └── webhooks │ │ ├── ConnectorTestUtil.scala │ │ ├── exampleform │ │ └── ExampleFormConnectorSpec.scala │ │ ├── examplejson │ │ └── ExampleJsonConnectorSpec.scala │ │ ├── mailchimp │ │ └── MailChimpConnectorSpec.scala │ │ └── segmentio │ │ └── SegmentIOConnectorSpec.scala ├── test-form.sh ├── test-normal.sh ├── test-segmentio.sh ├── test.sh ├── test2.sh ├── test3.sh └── very_long_batch_request.txt ├── doap.rdf ├── docker ├── .ivy2 │ └── .keep ├── JUPYTER.md ├── README.md ├── bin │ └── pio-docker ├── charts │ ├── README.md │ ├── postgresql.yaml │ ├── predictionio │ │ ├── .helmignore │ │ ├── Chart.yaml │ │ ├── templates │ │ │ ├── NOTES.txt │ │ │ ├── _helpers.tpl │ │ │ ├── pio-deployment.yaml │ │ │ └── pio-service.yaml │ │ └── values.yaml │ ├── predictionio_postgresql.yaml │ └── spark │ │ ├── .helmignore │ │ ├── Chart.yaml │ │ ├── README.md │ │ ├── templates │ │ ├── NOTES.txt │ │ ├── _helpers.tpl │ │ ├── spark-master-deployment.yaml │ │ ├── spark-sql-test.yaml │ │ ├── spark-worker-deployment.yaml │ │ └── spark-worker-hpa.yaml │ │ └── values.yaml ├── deploy │ └── run.sh ├── docker-compose.deploy.yml ├── docker-compose.jupyter.yml ├── docker-compose.spark.yml ├── docker-compose.yml ├── elasticsearch │ ├── docker-compose.base.yml │ ├── docker-compose.event.yml │ └── docker-compose.meta.yml ├── jupyter │ ├── Dockerfile │ ├── fix-permissions │ ├── jupyter_notebook_config.py │ ├── requirements.txt │ ├── start-jupyter.sh │ └── start.sh ├── localfs │ └── docker-compose.model.yml ├── mysql │ ├── docker-compose.base.yml │ ├── docker-compose.event.yml │ ├── docker-compose.meta.yml │ └── docker-compose.model.yml ├── pgsql │ ├── docker-compose.base.yml │ ├── docker-compose.event.yml │ ├── docker-compose.meta.yml │ └── docker-compose.model.yml ├── pio │ ├── Dockerfile │ └── pio_run └── templates │ └── .keep ├── docs ├── javadoc │ ├── README.md │ └── javadoc-overview.html ├── manual │ ├── .gitignore │ ├── Gemfile │ ├── Gemfile.lock │ ├── Rakefile │ ├── bower.json │ ├── config.rb │ ├── data │ │ ├── nav │ │ │ ├── build.yml │ │ │ └── main.yml │ │ └── versions.yml │ ├── helpers │ │ ├── application_helpers.rb │ │ ├── breadcrumb_helpers.rb │ │ ├── icon_helpers.rb │ │ ├── table_of_contents_helpers.rb │ │ └── url_helpers.rb │ ├── lib │ │ ├── custom_renderer.rb │ │ └── gallery_generator.rb │ └── source │ │ ├── 404.html.md │ │ ├── algorithm │ │ ├── custom.html.md │ │ ├── index.html.md │ │ ├── multiple.html.md │ │ └── switch.html.md │ │ ├── appintegration │ │ └── index.html.md │ │ ├── archived │ │ ├── community.html.md │ │ ├── index.html.md │ │ ├── install-linux.html.md.erb │ │ ├── install-vagrant.html.md.erb │ │ ├── launch-aws.html.md.erb │ │ ├── supervisedlearning.html.md │ │ └── tapster.html.md │ │ ├── batchpredict │ │ └── index.html.md │ │ ├── cli │ │ └── index.html.md │ │ ├── community │ │ ├── contribute-code.html.md │ │ ├── contribute-documentation.html.md │ │ ├── contribute-sdk.html.md │ │ ├── contribute-webhook.html.md │ │ ├── index.html.md │ │ ├── projects.html.md │ │ └── submit-template.html.md │ │ ├── customize │ │ ├── dase.html.md.erb │ │ ├── index.html.md │ │ └── troubleshooting.html.md │ │ ├── datacollection │ │ ├── analytics-ipynb.html.md.erb │ │ ├── analytics-tableau.html.md.erb │ │ ├── analytics-zeppelin.html.md.erb │ │ ├── analytics.html.md │ │ ├── batchimport.html.md │ │ ├── channel.html.md.erb │ │ ├── eventapi.html.md │ │ ├── eventmodel.html.md.erb │ │ ├── index.html.md │ │ ├── plugin.html.md │ │ └── webhooks.html.md.erb │ │ ├── demo │ │ ├── index.html.md.erb │ │ └── textclassification.html.md.erb │ │ ├── deploy │ │ ├── engineparams.html.md │ │ ├── enginevariants.html.md │ │ ├── index.html.md │ │ ├── monitoring.html.md │ │ └── plugin.html.md │ │ ├── evaluation │ │ ├── evaluationdashboard.html.md │ │ ├── history.html.md │ │ ├── index.html.md │ │ ├── metricbuild.html.md │ │ ├── metricchoose.html.md │ │ └── paramtuning.html.md │ │ ├── favicon.ico │ │ ├── gallery │ │ └── templates.yaml │ │ ├── github.html │ │ ├── images │ │ ├── 0.8-command-sys.png │ │ ├── 0.8-engine-data-pipeline.png │ │ ├── awsm-1click.png │ │ ├── awsm-product.png │ │ ├── cloudformation │ │ │ ├── awsmp-1.png │ │ │ ├── awsmp-2.png │ │ │ ├── cf-01.png │ │ │ ├── cf-02.png │ │ │ ├── cf-03.png │ │ │ ├── cf-04.png │ │ │ ├── cf-05.png │ │ │ ├── cf-06.png │ │ │ ├── compute-1.png │ │ │ ├── compute-2.png │ │ │ ├── compute-3.png │ │ │ ├── compute-4.png │ │ │ ├── hbase.png │ │ │ ├── hdfs.png │ │ │ ├── spark.png │ │ │ ├── storage-1.png │ │ │ └── storage-2.png │ │ ├── datacollection │ │ │ ├── ipynb-01.png │ │ │ ├── ipynb-02.png │ │ │ ├── ipynb-03.png │ │ │ ├── ipynb-04.png │ │ │ ├── tableau-01.png │ │ │ ├── tableau-02.png │ │ │ ├── tableau-03.png │ │ │ ├── tableau-04.png │ │ │ ├── zeppelin-01.png │ │ │ ├── zeppelin-02.png │ │ │ ├── zeppelin-03.png │ │ │ └── zeppelin-04.png │ │ ├── demo │ │ │ ├── tapster │ │ │ │ ├── pio-app-new.png │ │ │ │ ├── pio-build.png │ │ │ │ ├── pio-deploy.png │ │ │ │ ├── pio-engine-setup.png │ │ │ │ ├── pio-eventserver.png │ │ │ │ ├── pio-import-predictionio.png │ │ │ │ ├── pio-install.png │ │ │ │ ├── pio-train.png │ │ │ │ └── rails-server.png │ │ │ └── text_classification_template │ │ │ │ └── engine_overview.png │ │ ├── engine-data-flow.png │ │ ├── engine-evaluation.png │ │ ├── engine-itemrec-prediction.png │ │ ├── engine-itemsim-score.png │ │ ├── engine-query.png │ │ ├── engine-server.png │ │ ├── engine-training.png │ │ ├── engineinstance-overview.png │ │ ├── eventserver-overview.png │ │ ├── favicon │ │ │ ├── apple.png │ │ │ └── normal.png │ │ ├── icons │ │ │ ├── down-arrow.png │ │ │ ├── drawer-toggle-active.png │ │ │ ├── drawer-toggle-closed.png │ │ │ ├── edit-pencil.png │ │ │ ├── facebook.png │ │ │ ├── search-glass.png │ │ │ ├── sketch-64.png │ │ │ ├── twitter.png │ │ │ └── up-arrow.png │ │ ├── intellij │ │ │ ├── intelliJ-scala-plugin.png │ │ │ ├── intellij-buildsbt.png │ │ │ ├── intellij-config.png │ │ │ ├── intellij-module-settings.png │ │ │ ├── intellij-scala-plugin-2.png │ │ │ ├── pio-train-env-vars.png │ │ │ └── pio-train.png │ │ ├── logos │ │ │ ├── apache_incubator.png │ │ │ ├── copyright.png │ │ │ ├── copyright@2x.png │ │ │ ├── header.png │ │ │ ├── header@2x.png │ │ │ ├── logo-white.png │ │ │ └── logo.png │ │ ├── machinelearning │ │ │ └── featureselection │ │ │ │ ├── cube100.png │ │ │ │ └── square100.png │ │ ├── monit.png │ │ ├── overview-multiengines.png │ │ ├── overview-singleengine.png │ │ ├── pio-architecture.svg │ │ ├── showcase │ │ │ ├── nogoodgamez-158x70.png │ │ │ ├── on-tapp-70x70.png │ │ │ └── yelpio-70x70.png │ │ ├── system-overview-simple.png │ │ ├── system-overview.png │ │ └── tutorials │ │ │ └── rails │ │ │ ├── curl-261.png │ │ │ ├── grep-eventserver.png │ │ │ ├── localhost-8000.png │ │ │ ├── params-algorithms.png │ │ │ ├── params-datasource.png │ │ │ ├── pio-deploy.png │ │ │ ├── pio-register.png │ │ │ ├── pio-train.png │ │ │ ├── rails-is-working.png │ │ │ ├── users-index.png │ │ │ └── users-show.png │ │ ├── index.html.md.erb │ │ ├── install │ │ ├── index.html.md.erb │ │ ├── install-docker.html.md.erb │ │ ├── install-sourcecode.html.md.erb │ │ └── sdk.html.md │ │ ├── javascripts │ │ ├── application.js │ │ └── tryit.js │ │ ├── layouts │ │ ├── layout.html.slim │ │ └── tryit.html.slim │ │ ├── machinelearning │ │ ├── dimensionalityreduction.html.md │ │ └── modelingworkflow.html.md │ │ ├── partials │ │ ├── _action_call.html.slim │ │ ├── _edit_page.html.slim │ │ ├── _footer.html.slim │ │ ├── _header.html.slim │ │ ├── _search_bar.html.slim │ │ ├── _segment.html.slim │ │ ├── _swiftype.html.slim │ │ ├── _table_of_content.html.slim │ │ ├── head │ │ │ ├── _base.html.slim │ │ │ ├── _favicon.html.slim │ │ │ ├── _javascripts.html.slim │ │ │ ├── _meta.html.slim │ │ │ └── _stylesheets.html.slim │ │ ├── nav │ │ │ ├── _breadcrumbs.html.slim │ │ │ ├── _header.html.slim │ │ │ ├── _main.html.slim │ │ │ ├── _node.html.slim │ │ │ ├── _page.html.slim │ │ │ └── _swiftype.html.slim │ │ └── shared │ │ │ ├── dase │ │ │ └── _dase.html.md.erb │ │ │ ├── datacollection │ │ │ └── _parquet.html.md.erb │ │ │ ├── install │ │ │ ├── _dependent_services.html.erb │ │ │ ├── _elasticsearch.html.erb │ │ │ ├── _hbase.html.erb │ │ │ ├── _postgres.html.erb │ │ │ ├── _proceed_template.html.md.erb │ │ │ └── _spark.html.erb │ │ │ └── quickstart │ │ │ ├── _collect_data.html.md.erb │ │ │ ├── _create_app.html.md.erb │ │ │ ├── _create_engine.html.md.erb │ │ │ ├── _deploy.html.md.erb │ │ │ ├── _deploy_enginejson.html.md.erb │ │ │ ├── _import_sample_data.html.md.erb │ │ │ ├── _install.html.md.erb │ │ │ ├── _install_python_sdk.html.md.erb │ │ │ ├── _install_sdk.html.md.erb │ │ │ ├── _production.html.md.erb │ │ │ ├── _query_eventserver.html.md.erb │ │ │ └── _query_eventserver_short.html.md.erb │ │ ├── production │ │ └── deploy-cloudformation.html.md │ │ ├── resources │ │ ├── faq.html.md │ │ ├── glossary.html.md │ │ ├── intellij.html.md.erb │ │ ├── release.html.md │ │ └── upgrade.html.md │ │ ├── robots.txt │ │ ├── samples │ │ ├── index.html.md │ │ ├── languages.html.md │ │ ├── level-1.html.md │ │ ├── level-2-1.html.md │ │ ├── level-2-2.html.md │ │ ├── level-2.html.md │ │ ├── level-3-1.html.md │ │ ├── level-3-2.html.md │ │ ├── level-3.html.md │ │ ├── level-4-1.html.md │ │ ├── level-4-2.html.md │ │ ├── level-4-3.html.md │ │ ├── level-4.html.md │ │ ├── narrow.html.md │ │ ├── sizing.html.md │ │ └── tabs.html.md │ │ ├── sdk │ │ ├── index.html.md │ │ ├── java.html.md.erb │ │ ├── php.html.md.erb │ │ ├── python.html.md.erb │ │ └── ruby.html.md.erb │ │ ├── search │ │ └── index.html.md │ │ ├── start │ │ ├── customize.html.md │ │ ├── deploy.html.md.erb │ │ ├── download.html.md │ │ └── index.html.md │ │ ├── stylesheets │ │ ├── application.css.scss │ │ ├── mixins │ │ │ └── _all.css.scss │ │ ├── partials │ │ │ ├── _action_call.css.scss │ │ │ ├── _alerts.css.scss │ │ │ ├── _breadcrumbs.css.scss │ │ │ ├── _buttons.css.scss │ │ │ ├── _classes.css.scss │ │ │ ├── _code.css.scss │ │ │ ├── _content.css.scss │ │ │ ├── _copyright.css.scss │ │ │ ├── _edit_page.css.scss │ │ │ ├── _footer.css.scss │ │ │ ├── _global.css.scss │ │ │ ├── _hacks.css.scss │ │ │ ├── _header.css.scss │ │ │ ├── _hybird_vim_highlight.css.scss │ │ │ ├── _jcarousel.css.scss │ │ │ ├── _layout.css.scss │ │ │ ├── _modules.css.scss │ │ │ ├── _off_canvas.css.scss │ │ │ ├── _page_title.css.scss │ │ │ ├── _responsive.css.scss │ │ │ ├── _search_bar_row.css.scss │ │ │ ├── _subscribe_form.css.scss │ │ │ ├── _table_of_contents.css.scss │ │ │ ├── _tables.css.scss │ │ │ ├── _tabs.css.scss │ │ │ ├── _tags.css.scss │ │ │ ├── _tryit.css.scss │ │ │ └── nav │ │ │ │ ├── _header.css.scss │ │ │ │ ├── _main.css.scss │ │ │ │ ├── _page.css.scss │ │ │ │ └── _swiftype.css.scss │ │ └── variables │ │ │ ├── _colors.css.scss │ │ │ ├── _fonts.css.scss │ │ │ └── _sizes.css.scss │ │ ├── support │ │ └── index.html.md.erb │ │ ├── system │ │ ├── anotherdatastore.html.md │ │ ├── deploy-cloudformation.html.md.erb │ │ └── index.html.md │ │ ├── templates │ │ ├── classification │ │ │ ├── add-algorithm.html.md │ │ │ ├── dase.html.md.erb │ │ │ ├── how-to.html.md │ │ │ ├── quickstart.html.md.erb │ │ │ └── reading-custom-properties.html.md │ │ ├── complementarypurchase │ │ │ ├── dase.html.md.erb │ │ │ └── quickstart.html.md.erb │ │ ├── ecommercerecommendation │ │ │ ├── adjust-score.html.md.erb │ │ │ ├── dase.html.md.erb │ │ │ ├── how-to.html.md │ │ │ ├── quickstart.html.md.erb │ │ │ └── train-with-rate-event.html.md.erb │ │ ├── index.html.md │ │ ├── javaecommercerecommendation │ │ │ ├── dase.html.md.erb │ │ │ └── quickstart.html.md.erb │ │ ├── leadscoring │ │ │ ├── dase.html.md.erb │ │ │ └── quickstart.html.md.erb │ │ ├── productranking │ │ │ ├── dase.html.md.erb │ │ │ └── quickstart.html.md.erb │ │ ├── recommendation │ │ │ ├── batch-evaluator.html.md │ │ │ ├── blacklist-items.html.md │ │ │ ├── customize-data-prep.html.md │ │ │ ├── customize-serving.html.md │ │ │ ├── dase.html.md.erb │ │ │ ├── evaluation.html.md.erb │ │ │ ├── how-to.html.md │ │ │ ├── quickstart.html.md.erb │ │ │ ├── reading-custom-events.html.md │ │ │ └── training-with-implicit-preference.html.md │ │ ├── similarproduct │ │ │ ├── dase.html.md.erb │ │ │ ├── how-to.html.md │ │ │ ├── multi-events-multi-algos.html.md.erb │ │ │ ├── quickstart.html.md.erb │ │ │ ├── recommended-user.html.md.erb │ │ │ ├── return-item-properties.html.md.erb │ │ │ ├── rid-user-set-event.html.md.erb │ │ │ └── train-with-rate-event.html.md.erb │ │ └── vanilla │ │ │ ├── dase.html.md.erb │ │ │ └── quickstart.html.md.erb │ │ └── tryit │ │ └── index.html.slim └── scaladoc │ ├── README.md │ ├── api-docs.css │ ├── api-docs.js │ └── rootdoc.txt ├── e2 ├── build.sbt └── src │ ├── main │ ├── resources │ │ └── META-INF │ │ │ ├── LICENSE.txt │ │ │ └── NOTICE.txt │ └── scala │ │ └── org │ │ └── apache │ │ └── predictionio │ │ ├── e2 │ │ ├── engine │ │ │ ├── BinaryVectorizer.scala │ │ │ ├── CategoricalNaiveBayes.scala │ │ │ ├── MarkovChain.scala │ │ │ └── PythonEngine.scala │ │ ├── evaluation │ │ │ └── CrossValidation.scala │ │ └── package.scala │ │ └── package.scala │ └── test │ └── scala │ └── org │ └── apache │ └── predictionio │ └── e2 │ ├── engine │ ├── BinaryVectorizerTest.scala │ ├── CategoricalNaiveBayesTest.scala │ └── MarkovChainTest.scala │ ├── evaluation │ └── CrossValidationTest.scala │ └── fixture │ ├── BinaryVectorizerFixture.scala │ ├── MarkovChainFixture.scala │ ├── NaiveBayesFixture.scala │ └── SharedSparkContext.scala ├── examples ├── redeploy-script │ ├── local.sh.template │ └── redeploy.sh ├── scala-parallel-classification │ ├── README.md │ ├── add-algorithm │ │ ├── .gitignore │ │ ├── build.sbt │ │ ├── data │ │ │ ├── data.txt │ │ │ └── import_eventserver.py │ │ ├── engine.json │ │ ├── project │ │ │ ├── assembly.sbt │ │ │ └── build.properties │ │ ├── src │ │ │ └── main │ │ │ │ └── scala │ │ │ │ ├── CompleteEvaluation.scala │ │ │ │ ├── DataSource.scala │ │ │ │ ├── Engine.scala │ │ │ │ ├── Evaluation.scala │ │ │ │ ├── NaiveBayesAlgorithm.scala │ │ │ │ ├── PrecisionEvaluation.scala │ │ │ │ ├── Preparator.scala │ │ │ │ ├── RandomForestAlgorithm.scala │ │ │ │ └── Serving.scala │ │ └── template.json │ └── reading-custom-properties │ │ ├── .gitignore │ │ ├── build.sbt │ │ ├── data │ │ ├── data.txt │ │ └── import_eventserver.py │ │ ├── engine.json │ │ ├── project │ │ ├── assembly.sbt │ │ └── build.properties │ │ ├── src │ │ └── main │ │ │ └── scala │ │ │ ├── CompleteEvaluation.scala │ │ │ ├── DataSource.scala │ │ │ ├── Engine.scala │ │ │ ├── Evaluation.scala │ │ │ ├── NaiveBayesAlgorithm.scala │ │ │ ├── PrecisionEvaluation.scala │ │ │ ├── Preparator.scala │ │ │ └── Serving.scala │ │ └── template.json ├── scala-parallel-ecommercerecommendation │ ├── README.md │ ├── adjust-score │ │ ├── .gitignore │ │ ├── build.sbt │ │ ├── data │ │ │ ├── import_eventserver.py │ │ │ └── send_query.py │ │ ├── engine.json │ │ ├── project │ │ │ ├── assembly.sbt │ │ │ └── build.properties │ │ ├── src │ │ │ └── main │ │ │ │ └── scala │ │ │ │ ├── DataSource.scala │ │ │ │ ├── ECommAlgorithm.scala │ │ │ │ ├── Engine.scala │ │ │ │ ├── Preparator.scala │ │ │ │ └── Serving.scala │ │ └── template.json │ └── train-with-rate-event │ │ ├── build.sbt │ │ ├── data │ │ ├── import_eventserver.py │ │ └── send_query.py │ │ ├── engine.json │ │ ├── project │ │ ├── assembly.sbt │ │ └── build.properties │ │ ├── src │ │ └── main │ │ │ └── scala │ │ │ ├── DataSource.scala │ │ │ ├── ECommAlgorithm.scala │ │ │ ├── Engine.scala │ │ │ ├── Preparator.scala │ │ │ └── Serving.scala │ │ └── template.json ├── scala-parallel-recommendation │ ├── README.md │ ├── blacklist-items │ │ ├── build.sbt │ │ ├── data │ │ │ ├── import_eventserver.py │ │ │ └── send_query.py │ │ ├── engine.json │ │ ├── project │ │ │ ├── assembly.sbt │ │ │ └── build.properties │ │ ├── src │ │ │ └── main │ │ │ │ └── scala │ │ │ │ ├── ALSAlgorithm.scala │ │ │ │ ├── ALSModel.scala │ │ │ │ ├── DataSource.scala │ │ │ │ ├── Engine.scala │ │ │ │ ├── Evaluation.scala │ │ │ │ ├── Preparator.scala │ │ │ │ └── Serving.scala │ │ └── template.json │ ├── customize-data-prep │ │ ├── .gitignore │ │ ├── build.sbt │ │ ├── data │ │ │ ├── import_eventserver.py │ │ │ ├── sample_not_train_data.txt │ │ │ └── send_query.py │ │ ├── engine.json │ │ ├── project │ │ │ ├── assembly.sbt │ │ │ └── build.properties │ │ ├── src │ │ │ └── main │ │ │ │ └── scala │ │ │ │ ├── ALSAlgorithm.scala │ │ │ │ ├── ALSModel.scala │ │ │ │ ├── DataSource.scala │ │ │ │ ├── Engine.scala │ │ │ │ ├── Evaluation.scala │ │ │ │ ├── Preparator.scala │ │ │ │ └── Serving.scala │ │ └── template.json │ ├── customize-serving │ │ ├── .gitignore │ │ ├── build.sbt │ │ ├── data │ │ │ ├── import_eventserver.py │ │ │ ├── sample_disabled_items.txt │ │ │ └── send_query.py │ │ ├── engine.json │ │ ├── project │ │ │ ├── assembly.sbt │ │ │ └── build.properties │ │ ├── src │ │ │ └── main │ │ │ │ └── scala │ │ │ │ ├── ALSAlgorithm.scala │ │ │ │ ├── ALSModel.scala │ │ │ │ ├── DataSource.scala │ │ │ │ ├── Engine.scala │ │ │ │ ├── Evaluation.scala │ │ │ │ ├── Preparator.scala │ │ │ │ └── Serving.scala │ │ └── template.json │ ├── reading-custom-events │ │ ├── .gitignore │ │ ├── build.sbt │ │ ├── data │ │ │ ├── import_eventserver.py │ │ │ └── send_query.py │ │ ├── engine.json │ │ ├── project │ │ │ ├── assembly.sbt │ │ │ └── build.properties │ │ ├── src │ │ │ └── main │ │ │ │ └── scala │ │ │ │ ├── ALSAlgorithm.scala │ │ │ │ ├── ALSModel.scala │ │ │ │ ├── DataSource.scala │ │ │ │ ├── Engine.scala │ │ │ │ ├── Evaluation.scala │ │ │ │ ├── Preparator.scala │ │ │ │ └── Serving.scala │ │ └── template.json │ └── train-with-view-event │ │ ├── .gitignore │ │ ├── build.sbt │ │ ├── data │ │ ├── import_eventserver.py │ │ └── send_query.py │ │ ├── engine.json │ │ ├── project │ │ ├── assembly.sbt │ │ └── build.properties │ │ ├── src │ │ └── main │ │ │ └── scala │ │ │ ├── ALSAlgorithm.scala │ │ │ ├── ALSModel.scala │ │ │ ├── DataSource.scala │ │ │ ├── Engine.scala │ │ │ ├── Evaluation.scala │ │ │ ├── Preparator.scala │ │ │ └── Serving.scala │ │ └── template.json └── scala-parallel-similarproduct │ ├── README.md │ ├── multi-events-multi-algos │ ├── .gitignore │ ├── build.sbt │ ├── data │ │ ├── import_eventserver.py │ │ └── send_query.py │ ├── engine-cooccurrence.json │ ├── engine.json │ ├── project │ │ ├── assembly.sbt │ │ └── build.properties │ ├── src │ │ └── main │ │ │ └── scala │ │ │ ├── ALSAlgorithm.scala │ │ │ ├── CooccurrenceAlgorithm.scala │ │ │ ├── DataSource.scala │ │ │ ├── Engine.scala │ │ │ ├── LikeAlgorithm.scala │ │ │ ├── Preparator.scala │ │ │ └── Serving.scala │ └── template.json │ ├── recommended-user │ ├── .gitignore │ ├── build.sbt │ ├── data │ │ ├── import_eventserver.py │ │ └── send_query.py │ ├── engine.json │ ├── project │ │ ├── assembly.sbt │ │ └── build.properties │ ├── src │ │ └── main │ │ │ └── scala │ │ │ ├── ALSAlgorithm.scala │ │ │ ├── DataSource.scala │ │ │ ├── Engine.scala │ │ │ ├── Preparator.scala │ │ │ └── Serving.scala │ └── template.json │ ├── return-item-properties │ ├── .gitignore │ ├── build.sbt │ ├── data │ │ ├── import_eventserver.py │ │ └── send_query.py │ ├── engine-cooccurrence.json │ ├── engine.json │ ├── project │ │ ├── assembly.sbt │ │ └── build.properties │ ├── src │ │ └── main │ │ │ └── scala │ │ │ ├── ALSAlgorithm.scala │ │ │ ├── CooccurrenceAlgorithm.scala │ │ │ ├── DataSource.scala │ │ │ ├── Engine.scala │ │ │ ├── Preparator.scala │ │ │ └── Serving.scala │ └── template.json │ ├── rid-user-set-event │ ├── .gitignore │ ├── build.sbt │ ├── data │ │ ├── import_eventserver.py │ │ └── send_query.py │ ├── engine-cooccurrence.json │ ├── engine.json │ ├── project │ │ ├── assembly.sbt │ │ └── build.properties │ ├── src │ │ └── main │ │ │ └── scala │ │ │ ├── ALSAlgorithm.scala │ │ │ ├── CooccurrenceAlgorithm.scala │ │ │ ├── DataSource.scala │ │ │ ├── Engine.scala │ │ │ ├── Preparator.scala │ │ │ └── Serving.scala │ └── template.json │ └── train-with-rate-event │ ├── build.sbt │ ├── data │ ├── import_eventserver.py │ └── send_query.py │ ├── engine-cooccurrence.json │ ├── engine.json │ ├── project │ ├── assembly.sbt │ └── build.properties │ ├── src │ └── main │ │ └── scala │ │ ├── ALSAlgorithm.scala │ │ ├── CooccurrenceAlgorithm.scala │ │ ├── DataSource.scala │ │ ├── Engine.scala │ │ ├── Preparator.scala │ │ └── Serving.scala │ └── template.json ├── make-distribution.sh ├── project ├── PIOBuild.scala ├── assembly.sbt ├── build.properties ├── plugins.sbt └── unidoc.sbt ├── python └── pypio │ ├── __init__.py │ ├── data │ ├── __init__.py │ └── eventstore.py │ ├── pypio.py │ ├── utils.py │ └── workflow │ ├── __init__.py │ └── cleanup_functions.py ├── sbt └── sbt ├── scalastyle-config.xml ├── storage ├── elasticsearch │ ├── .gitignore │ ├── build.sbt │ └── src │ │ ├── main │ │ └── scala │ │ │ └── org │ │ │ └── apache │ │ │ └── predictionio │ │ │ └── data │ │ │ └── storage │ │ │ └── elasticsearch │ │ │ ├── ESAccessKeys.scala │ │ │ ├── ESApps.scala │ │ │ ├── ESChannels.scala │ │ │ ├── ESEngineInstances.scala │ │ │ ├── ESEvaluationInstances.scala │ │ │ ├── ESEventsUtil.scala │ │ │ ├── ESLEvents.scala │ │ │ ├── ESPEvents.scala │ │ │ ├── ESSequences.scala │ │ │ ├── ESUtils.scala │ │ │ ├── StorageClient.scala │ │ │ └── package.scala │ │ └── test │ │ ├── resources │ │ └── application.conf │ │ └── scala │ │ └── org │ │ └── apache │ │ └── predictionio │ │ └── data │ │ └── storage │ │ └── elasticsearch │ │ ├── StorageClientSpec.scala │ │ └── StorageTestUtils.scala ├── hbase │ ├── .gitignore │ ├── build.sbt │ └── src │ │ ├── main │ │ └── scala │ │ │ └── org │ │ │ └── apache │ │ │ └── predictionio │ │ │ └── data │ │ │ └── storage │ │ │ └── hbase │ │ │ ├── HBEventsUtil.scala │ │ │ ├── HBLEvents.scala │ │ │ ├── HBPEvents.scala │ │ │ ├── PIOHBaseUtil.scala │ │ │ ├── StorageClient.scala │ │ │ └── package.scala │ │ └── test │ │ ├── resources │ │ └── application.conf │ │ └── scala │ │ └── org │ │ └── apache │ │ └── predictionio │ │ └── data │ │ └── storage │ │ └── hbase │ │ ├── LEventsSpec.scala │ │ ├── PEventsSpec.scala │ │ ├── StorageTestUtils.scala │ │ └── TestEvents.scala ├── hdfs │ ├── .gitignore │ ├── build.sbt │ ├── project │ │ └── build.properties │ └── src │ │ ├── main │ │ └── scala │ │ │ └── org │ │ │ └── apache │ │ │ └── predictionio │ │ │ └── data │ │ │ └── storage │ │ │ └── hdfs │ │ │ ├── HDFSModels.scala │ │ │ ├── StorageClient.scala │ │ │ └── package.scala │ │ └── test │ │ └── resources │ │ └── application.conf ├── jdbc │ ├── .gitignore │ ├── build.sbt │ └── src │ │ ├── main │ │ └── scala │ │ │ └── org │ │ │ └── apache │ │ │ └── predictionio │ │ │ └── data │ │ │ └── storage │ │ │ └── jdbc │ │ │ ├── JDBCAccessKeys.scala │ │ │ ├── JDBCApps.scala │ │ │ ├── JDBCChannels.scala │ │ │ ├── JDBCEngineInstances.scala │ │ │ ├── JDBCEvaluationInstances.scala │ │ │ ├── JDBCLEvents.scala │ │ │ ├── JDBCModels.scala │ │ │ ├── JDBCPEvents.scala │ │ │ ├── JDBCUtils.scala │ │ │ ├── StorageClient.scala │ │ │ └── package.scala │ │ └── test │ │ ├── resources │ │ └── application.conf │ │ └── scala │ │ └── org │ │ └── apache │ │ └── predictionio │ │ └── data │ │ └── storage │ │ └── jdbc │ │ ├── JDBCUtilsSpec.scala │ │ ├── LEventsSpec.scala │ │ ├── PEventsSpec.scala │ │ ├── StorageTestUtils.scala │ │ └── TestEvents.scala ├── localfs │ ├── .gitignore │ ├── build.sbt │ └── src │ │ ├── main │ │ └── scala │ │ │ └── org │ │ │ └── apache │ │ │ └── predictionio │ │ │ └── data │ │ │ └── storage │ │ │ └── localfs │ │ │ ├── LocalFSModels.scala │ │ │ ├── StorageClient.scala │ │ │ └── package.scala │ │ └── test │ │ └── resources │ │ └── application.conf └── s3 │ ├── .gitignore │ ├── build.sbt │ └── src │ └── main │ └── scala │ └── org │ └── apache │ └── predictionio │ └── data │ └── storage │ └── s3 │ ├── S3Models.scala │ ├── StorageClient.scala │ └── package.scala ├── tests ├── .rat-excludes ├── Dockerfile ├── Dockerfile.base ├── README.md ├── after_script.travis.sh ├── before_script.travis.sh ├── build_docker.sh ├── check_libraries.sh ├── check_license.sh ├── docker-compose.yml ├── docker-files │ ├── awscredentials │ ├── env-conf │ │ ├── hbase-site.xml │ │ └── pio-env.sh │ ├── init.sh │ ├── pgpass │ └── set_build_profile.sh ├── pio_tests │ ├── README.md │ ├── __init__.py │ ├── data │ │ ├── eventserver_test │ │ │ ├── partially_malformed_events.json │ │ │ ├── rate_events_25.json │ │ │ └── signup_events_51.json │ │ └── quickstart_test │ │ │ └── engine.json │ ├── engines │ │ └── recommendation-engine │ │ │ ├── README.md │ │ │ ├── build.sbt │ │ │ ├── engine.json │ │ │ ├── project │ │ │ └── assembly.sbt │ │ │ ├── src │ │ │ └── main │ │ │ │ └── scala │ │ │ │ ├── ALSAlgorithm.scala │ │ │ │ ├── ALSModel.scala │ │ │ │ ├── DataSource.scala │ │ │ │ ├── Engine.scala │ │ │ │ ├── Evaluation.scala │ │ │ │ ├── Preparator.scala │ │ │ │ └── Serving.scala │ │ │ └── template.json │ ├── globals.py │ ├── integration.py │ ├── scenarios │ │ ├── __init__.py │ │ ├── basic_app_usecases.py │ │ ├── eventserver_test.py │ │ └── quickstart_test.py │ ├── tests.py │ └── utils.py ├── run_docker.sh ├── script.travis.sh └── unit.sh └── tools ├── build.sbt └── src ├── main ├── resources │ ├── META-INF │ │ ├── LICENSE.txt │ │ └── NOTICE.txt │ └── assets │ │ └── favicon.png ├── scala │ └── org │ │ └── apache │ │ └── predictionio │ │ └── tools │ │ ├── Common.scala │ │ ├── RunBatchPredict.scala │ │ ├── RunServer.scala │ │ ├── RunWorkflow.scala │ │ ├── Runner.scala │ │ ├── admin │ │ ├── AdminAPI.scala │ │ ├── CommandClient.scala │ │ └── README.md │ │ ├── commands │ │ ├── AccessKey.scala │ │ ├── App.scala │ │ ├── Engine.scala │ │ ├── Export.scala │ │ ├── Import.scala │ │ ├── Management.scala │ │ └── Template.scala │ │ ├── console │ │ ├── Console.scala │ │ └── Pio.scala │ │ ├── dashboard │ │ ├── CorsSupport.scala │ │ └── Dashboard.scala │ │ ├── export │ │ └── EventsToFile.scala │ │ └── imprt │ │ └── FileToEvents.scala └── twirl │ └── org │ └── apache │ └── predictionio │ └── tools │ ├── console │ ├── accesskey.scala.txt │ ├── adminserver.scala.txt │ ├── app.scala.txt │ ├── batchpredict.scala.txt │ ├── build.scala.txt │ ├── dashboard.scala.txt │ ├── deploy.scala.txt │ ├── eval.scala.txt │ ├── eventserver.scala.txt │ ├── export.scala.txt │ ├── imprt.scala.txt │ ├── main.scala.txt │ ├── run.scala.txt │ ├── status.scala.txt │ ├── template.scala.txt │ ├── train.scala.txt │ ├── upgrade.scala.txt │ └── version.scala.txt │ ├── dashboard │ └── index.scala.html │ └── templates │ ├── itemrank │ └── params │ │ ├── algorithmsJson.scala.txt │ │ ├── datasourceJson.scala.txt │ │ ├── preparatorJson.scala.txt │ │ └── servingJson.scala.txt │ ├── itemrec │ └── params │ │ ├── algorithmsJson.scala.txt │ │ ├── datasourceJson.scala.txt │ │ ├── preparatorJson.scala.txt │ │ └── servingJson.scala.txt │ ├── itemsim │ └── params │ │ ├── algorithmsJson.scala.txt │ │ ├── datasourceJson.scala.txt │ │ ├── preparatorJson.scala.txt │ │ └── servingJson.scala.txt │ └── scala │ ├── buildSbt.scala.txt │ ├── engineJson.scala.txt │ ├── manifestJson.scala.txt │ ├── project │ └── assemblySbt.scala.txt │ └── src │ └── main │ └── scala │ └── engine.scala.txt └── test └── scala └── org └── apache └── predictionio └── tools ├── RunnerSpec.scala └── admin └── AdminAPISpec.scala /.gitattributes: -------------------------------------------------------------------------------- 1 | .travis.yml merge=ours 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | .pio_store 3 | *.swp 4 | *.swo 5 | conf/pio-env.sh 6 | target/ 7 | sbt/sbt-launch-*.jar 8 | ..sxr/ 9 | *.class 10 | core/data 11 | *.orig 12 | examples/data/ml-* 13 | fs/ 14 | supervisord.conf 15 | /dist 16 | pio.log 17 | *.tar.gz 18 | *.pyc 19 | # Ignore source files whose name prefixed with "Private" 20 | Private*.scala 21 | quickstartapp/ 22 | # Eclipse 23 | .project 24 | .classpath 25 | .settings/ 26 | # IntelliJ 27 | *.iml 28 | .idea/ 29 | .templates-cache 30 | /vendors 31 | /docs/manual/source/gallery/template-gallery.html.md 32 | test-reports/ 33 | apache-rat-0.11.jar 34 | tests/dist 35 | tests/docker-files/*.jar 36 | tests/docker-files/*.tgz 37 | assembly/*.jar 38 | assembly/src/universal/ 39 | -------------------------------------------------------------------------------- /.project: -------------------------------------------------------------------------------- 1 | <?xml version="1.0" encoding="UTF-8"?> 2 | <projectDescription> 3 | <name>PredictionIO</name> 4 | <comment></comment> 5 | <projects> 6 | </projects> 7 | <buildSpec> 8 | </buildSpec> 9 | <natures> 10 | </natures> 11 | </projectDescription> 12 | -------------------------------------------------------------------------------- /NOTICE.txt: -------------------------------------------------------------------------------- 1 | Apache PredictionIO 2 | Copyright 2016 The Apache Software Foundation 3 | 4 | This product includes software developed at 5 | The Apache Software Foundation (http://www.apache.org/). 6 | 7 | This product depends on third party software that falls under a variety of licenses. 8 | All dependencies with licenses other than Apache are specified in the LICENSE file. 9 | Please see LICENSE for additional copyright and licensing information. 10 | -------------------------------------------------------------------------------- /bin/cjson: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # 4 | # Licensed to the Apache Software Foundation (ASF) under one or more 5 | # contributor license agreements. See the NOTICE file distributed with 6 | # this work for additional information regarding copyright ownership. 7 | # The ASF licenses this file to You under the Apache License, Version 2.0 8 | # (the "License"); you may not use this file except in compliance with 9 | # the License. You may obtain a copy of the License at 10 | # 11 | # http://www.apache.org/licenses/LICENSE-2.0 12 | # 13 | # Unless required by applicable law or agreed to in writing, software 14 | # distributed under the License is distributed on an "AS IS" BASIS, 15 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | # See the License for the specific language governing permissions and 17 | # limitations under the License. 18 | # 19 | 20 | curl -H "Content-Type: application/json" -d "$1" $2 21 | -------------------------------------------------------------------------------- /common/src/main/resources/META-INF/LICENSE.txt: -------------------------------------------------------------------------------- 1 | ../../../../../LICENSE.txt -------------------------------------------------------------------------------- /common/src/main/resources/META-INF/NOTICE.txt: -------------------------------------------------------------------------------- 1 | ../../../../../NOTICE.txt -------------------------------------------------------------------------------- /common/src/main/resources/application.conf: -------------------------------------------------------------------------------- 1 | akka { 2 | log-config-on-start = false 3 | loggers = ["akka.event.slf4j.Slf4jLogger"] 4 | loglevel = "INFO" 5 | } 6 | -------------------------------------------------------------------------------- /conf/keystore.jks: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/conf/keystore.jks -------------------------------------------------------------------------------- /core/src/main/resources/META-INF/LICENSE.txt: -------------------------------------------------------------------------------- 1 | ../../../../../LICENSE.txt -------------------------------------------------------------------------------- /core/src/main/resources/META-INF/NOTICE.txt: -------------------------------------------------------------------------------- 1 | ../../../../../NOTICE.txt -------------------------------------------------------------------------------- /core/src/main/scala/org/apache/predictionio/controller/java/SerializableComparator.scala: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | 19 | package org.apache.predictionio.controller.java 20 | 21 | import java.util.Comparator 22 | 23 | trait SerializableComparator[T] extends Comparator[T] with java.io.Serializable 24 | -------------------------------------------------------------------------------- /core/src/main/scala/org/apache/predictionio/core/package.scala: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | 19 | package org.apache.predictionio 20 | 21 | /** Core base classes of PredictionIO controller components. Engine developers 22 | * should not use these directly. 23 | */ 24 | package object core {} 25 | -------------------------------------------------------------------------------- /core/src/main/scala/org/apache/predictionio/package.scala: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | 19 | package org.apache 20 | 21 | /** PredictionIO Scala API */ 22 | package object predictionio {} 23 | -------------------------------------------------------------------------------- /core/src/main/scala/org/apache/predictionio/workflow/JsonExtractorOption.scala: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | 19 | package org.apache.predictionio.workflow 20 | 21 | object JsonExtractorOption extends Enumeration { 22 | type JsonExtractorOption = Value 23 | val Json4sNative = Value 24 | val Gson = Value 25 | val Both = Value 26 | } 27 | -------------------------------------------------------------------------------- /core/src/main/scala/org/apache/predictionio/workflow/PersistentModelManifest.scala: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | 19 | package org.apache.predictionio.workflow 20 | 21 | case class PersistentModelManifest(className: String) 22 | -------------------------------------------------------------------------------- /core/src/test/scala/org/apache/predictionio/workflow/EngineWorkflowTest.scala: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | -------------------------------------------------------------------------------- /data/src/main/resources/META-INF/LICENSE.txt: -------------------------------------------------------------------------------- 1 | ../../../../../LICENSE.txt -------------------------------------------------------------------------------- /data/src/main/resources/META-INF/NOTICE.txt: -------------------------------------------------------------------------------- 1 | ../../../../../NOTICE.txt -------------------------------------------------------------------------------- /data/src/main/scala/org/apache/predictionio/data/api/EventInfo.scala: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | 19 | package org.apache.predictionio.data.api 20 | 21 | import org.apache.predictionio.data.storage.Event 22 | 23 | case class EventInfo( 24 | appId: Int, 25 | channelId: Option[Int], 26 | event: Event) 27 | 28 | -------------------------------------------------------------------------------- /data/src/main/scala/org/apache/predictionio/data/package.scala: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | 19 | package org.apache.predictionio 20 | 21 | /** Provides data access for PredictionIO and any engines running on top of 22 | * PredictionIO 23 | */ 24 | package object data {} 25 | -------------------------------------------------------------------------------- /data/src/main/scala/org/apache/predictionio/data/store/package.scala: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | 19 | package org.apache.predictionio.data 20 | 21 | /** Provides high level interfaces to the Event Store from within a prediction 22 | * engine. 23 | */ 24 | package object store {} 25 | -------------------------------------------------------------------------------- /data/src/test/resources/application.conf: -------------------------------------------------------------------------------- 1 | org.apache.predictionio.data.storage { 2 | sources { 3 | mongodb { 4 | type = mongodb 5 | hosts = [localhost] 6 | ports = [27017] 7 | } 8 | elasticsearch { 9 | type = elasticsearch 10 | hosts = [localhost] 11 | ports = [9300] 12 | } 13 | } 14 | repositories { 15 | # This section is dummy just to make storage happy. 16 | # The actual testing will not bypass these repository settings completely. 17 | # Please refer to StorageTestUtils.scala. 18 | settings { 19 | name = "test_predictionio" 20 | source = mongodb 21 | } 22 | 23 | appdata { 24 | name = "test_predictionio_appdata" 25 | source = mongodb 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /docker/.ivy2/.keep: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one or more 2 | # contributor license agreements. See the NOTICE file distributed with 3 | # this work for additional information regarding copyright ownership. 4 | # The ASF licenses this file to You under the Apache License, Version 2.0 5 | # (the "License"); you may not use this file except in compliance with 6 | # the License. You may obtain a copy of the License at 7 | # 8 | # http://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | -------------------------------------------------------------------------------- /docker/charts/postgresql.yaml: -------------------------------------------------------------------------------- 1 | # 2 | # Licensed to the Apache Software Foundation (ASF) under one or more 3 | # contributor license agreements. See the NOTICE file distributed with 4 | # this work for additional information regarding copyright ownership. 5 | # The ASF licenses this file to You under the Apache License, Version 2.0 6 | # (the "License"); you may not use this file except in compliance with 7 | # the License. You may obtain a copy of the License at 8 | # 9 | # http://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, software 12 | # distributed under the License is distributed on an "AS IS" BASIS, 13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | # See the License for the specific language governing permissions and 15 | # limitations under the License. 16 | # 17 | postgresqlUsername: pio 18 | postgresqlPassword: pio 19 | postgresqlDatabase: pio 20 | 21 | # for testing 22 | persistence: 23 | enabled: false 24 | -------------------------------------------------------------------------------- /docker/deploy/run.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # 4 | # Licensed to the Apache Software Foundation (ASF) under one or more 5 | # contributor license agreements. See the NOTICE file distributed with 6 | # this work for additional information regarding copyright ownership. 7 | # The ASF licenses this file to You under the Apache License, Version 2.0 8 | # (the "License"); you may not use this file except in compliance with 9 | # the License. You may obtain a copy of the License at 10 | # 11 | # http://www.apache.org/licenses/LICENSE-2.0 12 | # 13 | # Unless required by applicable law or agreed to in writing, software 14 | # distributed under the License is distributed on an "AS IS" BASIS, 15 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | # See the License for the specific language governing permissions and 17 | # limitations under the License. 18 | # 19 | 20 | cd /templates/$PIO_TEMPLATE_NAME 21 | pio deploy 22 | -------------------------------------------------------------------------------- /docker/docker-compose.deploy.yml: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one or more 2 | # contributor license agreements. See the NOTICE file distributed with 3 | # this work for additional information regarding copyright ownership. 4 | # The ASF licenses this file to You under the Apache License, Version 2.0 5 | # (the "License"); you may not use this file except in compliance with 6 | # the License. You may obtain a copy of the License at 7 | # 8 | # http://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | 16 | version: "3" 17 | services: 18 | pio: 19 | environment: 20 | - "PIO_TEMPLATE_NAME=MyRecommendation" 21 | - "PIO_RUN_FILE=/deploy/run.sh" 22 | volumes: 23 | - ./deploy:/deploy 24 | -------------------------------------------------------------------------------- /docker/docker-compose.yml: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one or more 2 | # contributor license agreements. See the NOTICE file distributed with 3 | # this work for additional information regarding copyright ownership. 4 | # The ASF licenses this file to You under the Apache License, Version 2.0 5 | # (the "License"); you may not use this file except in compliance with 6 | # the License. You may obtain a copy of the License at 7 | # 8 | # http://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | 16 | version: "3" 17 | services: 18 | pio: 19 | image: predictionio/pio:latest 20 | ports: 21 | - 7070:7070 22 | - 8000:8000 23 | volumes: 24 | - ./templates:/templates 25 | dns: 8.8.8.8 26 | -------------------------------------------------------------------------------- /docker/elasticsearch/docker-compose.event.yml: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one or more 2 | # contributor license agreements. See the NOTICE file distributed with 3 | # this work for additional information regarding copyright ownership. 4 | # The ASF licenses this file to You under the Apache License, Version 2.0 5 | # (the "License"); you may not use this file except in compliance with 6 | # the License. You may obtain a copy of the License at 7 | # 8 | # http://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | 16 | version: "3" 17 | services: 18 | pio: 19 | environment: 20 | PIO_STORAGE_REPOSITORIES_EVENTDATA_NAME: pio_event 21 | PIO_STORAGE_REPOSITORIES_EVENTDATA_SOURCE: ELASTICSEARCH 22 | 23 | -------------------------------------------------------------------------------- /docker/elasticsearch/docker-compose.meta.yml: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one or more 2 | # contributor license agreements. See the NOTICE file distributed with 3 | # this work for additional information regarding copyright ownership. 4 | # The ASF licenses this file to You under the Apache License, Version 2.0 5 | # (the "License"); you may not use this file except in compliance with 6 | # the License. You may obtain a copy of the License at 7 | # 8 | # http://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | 16 | version: "3" 17 | services: 18 | pio: 19 | environment: 20 | PIO_STORAGE_REPOSITORIES_METADATA_NAME: pio_meta 21 | PIO_STORAGE_REPOSITORIES_METADATA_SOURCE: ELASTICSEARCH 22 | 23 | -------------------------------------------------------------------------------- /docker/jupyter/jupyter_notebook_config.py: -------------------------------------------------------------------------------- 1 | # Licensed under the Apache License, Version 2.0 (the "License"); 2 | # you may not use this file except in compliance with the License. 3 | # You may obtain a copy of the License at 4 | # 5 | # http://www.apache.org/licenses/LICENSE-2.0 6 | # 7 | # Unless required by applicable law or agreed to in writing, software 8 | # distributed under the License is distributed on an "AS IS" BASIS, 9 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 10 | # See the License for the specific language governing permissions and 11 | # limitations under the License. 12 | 13 | 14 | c = get_config() 15 | c.NotebookApp.ip = '*' 16 | c.NotebookApp.port = 8888 17 | c.NotebookApp.open_browser = False 18 | 19 | -------------------------------------------------------------------------------- /docker/jupyter/requirements.txt: -------------------------------------------------------------------------------- 1 | cython 2 | google-cloud 3 | h5py 4 | ipywidgets 5 | jupyter_contrib_nbextensions 6 | keras 7 | matplotlib 8 | pandas 9 | pandas-gbq 10 | predictionio 11 | sklearn 12 | tensor2tensor 13 | tensorflow 14 | widgetsnbextension 15 | -------------------------------------------------------------------------------- /docker/mysql/docker-compose.event.yml: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one or more 2 | # contributor license agreements. See the NOTICE file distributed with 3 | # this work for additional information regarding copyright ownership. 4 | # The ASF licenses this file to You under the Apache License, Version 2.0 5 | # (the "License"); you may not use this file except in compliance with 6 | # the License. You may obtain a copy of the License at 7 | # 8 | # http://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | 16 | version: "3" 17 | services: 18 | pio: 19 | environment: 20 | PIO_STORAGE_REPOSITORIES_EVENTDATA_NAME: pio_event 21 | PIO_STORAGE_REPOSITORIES_EVENTDATA_SOURCE: MYSQL 22 | 23 | -------------------------------------------------------------------------------- /docker/mysql/docker-compose.meta.yml: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one or more 2 | # contributor license agreements. See the NOTICE file distributed with 3 | # this work for additional information regarding copyright ownership. 4 | # The ASF licenses this file to You under the Apache License, Version 2.0 5 | # (the "License"); you may not use this file except in compliance with 6 | # the License. You may obtain a copy of the License at 7 | # 8 | # http://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | 16 | version: "3" 17 | services: 18 | pio: 19 | environment: 20 | PIO_STORAGE_REPOSITORIES_METADATA_NAME: pio_meta 21 | PIO_STORAGE_REPOSITORIES_METADATA_SOURCE: MYSQL 22 | 23 | -------------------------------------------------------------------------------- /docker/mysql/docker-compose.model.yml: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one or more 2 | # contributor license agreements. See the NOTICE file distributed with 3 | # this work for additional information regarding copyright ownership. 4 | # The ASF licenses this file to You under the Apache License, Version 2.0 5 | # (the "License"); you may not use this file except in compliance with 6 | # the License. You may obtain a copy of the License at 7 | # 8 | # http://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | 16 | version: "3" 17 | services: 18 | pio: 19 | environment: 20 | PIO_STORAGE_REPOSITORIES_MODELDATA_NAME: pio_model 21 | PIO_STORAGE_REPOSITORIES_MODELDATA_SOURCE: MYSQL 22 | 23 | -------------------------------------------------------------------------------- /docker/pgsql/docker-compose.event.yml: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one or more 2 | # contributor license agreements. See the NOTICE file distributed with 3 | # this work for additional information regarding copyright ownership. 4 | # The ASF licenses this file to You under the Apache License, Version 2.0 5 | # (the "License"); you may not use this file except in compliance with 6 | # the License. You may obtain a copy of the License at 7 | # 8 | # http://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | 16 | version: "3" 17 | services: 18 | pio: 19 | environment: 20 | PIO_STORAGE_REPOSITORIES_EVENTDATA_NAME: pio_event 21 | PIO_STORAGE_REPOSITORIES_EVENTDATA_SOURCE: PGSQL 22 | 23 | -------------------------------------------------------------------------------- /docker/pgsql/docker-compose.meta.yml: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one or more 2 | # contributor license agreements. See the NOTICE file distributed with 3 | # this work for additional information regarding copyright ownership. 4 | # The ASF licenses this file to You under the Apache License, Version 2.0 5 | # (the "License"); you may not use this file except in compliance with 6 | # the License. You may obtain a copy of the License at 7 | # 8 | # http://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | 16 | version: "3" 17 | services: 18 | pio: 19 | environment: 20 | PIO_STORAGE_REPOSITORIES_METADATA_NAME: pio_meta 21 | PIO_STORAGE_REPOSITORIES_METADATA_SOURCE: PGSQL 22 | 23 | -------------------------------------------------------------------------------- /docker/pgsql/docker-compose.model.yml: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one or more 2 | # contributor license agreements. See the NOTICE file distributed with 3 | # this work for additional information regarding copyright ownership. 4 | # The ASF licenses this file to You under the Apache License, Version 2.0 5 | # (the "License"); you may not use this file except in compliance with 6 | # the License. You may obtain a copy of the License at 7 | # 8 | # http://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | 16 | version: "3" 17 | services: 18 | pio: 19 | environment: 20 | PIO_STORAGE_REPOSITORIES_MODELDATA_NAME: pio_model 21 | PIO_STORAGE_REPOSITORIES_MODELDATA_SOURCE: PGSQL 22 | 23 | -------------------------------------------------------------------------------- /docker/templates/.keep: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one or more 2 | # contributor license agreements. See the NOTICE file distributed with 3 | # this work for additional information regarding copyright ownership. 4 | # The ASF licenses this file to You under the Apache License, Version 2.0 5 | # (the "License"); you may not use this file except in compliance with 6 | # the License. You may obtain a copy of the License at 7 | # 8 | # http://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | -------------------------------------------------------------------------------- /docs/javadoc/README.md: -------------------------------------------------------------------------------- 1 | <!-- 2 | Licensed to the Apache Software Foundation (ASF) under one or more 3 | contributor license agreements. See the NOTICE file distributed with 4 | this work for additional information regarding copyright ownership. 5 | The ASF licenses this file to You under the Apache License, Version 2.0 6 | (the "License"); you may not use this file except in compliance with 7 | the License. You may obtain a copy of the License at 8 | 9 | http://www.apache.org/licenses/LICENSE-2.0 10 | 11 | Unless required by applicable law or agreed to in writing, software 12 | distributed under the License is distributed on an "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | See the License for the specific language governing permissions and 15 | limitations under the License. 16 | --> 17 | 18 | Java API Documentation 19 | ====================== 20 | 21 | 1. Run this command at the project's root. 22 | ``` 23 | $ sbt/sbt unidoc 24 | ``` 25 | 26 | 2. Point your web browser at `target/javaunidoc/index.html`. 27 | -------------------------------------------------------------------------------- /docs/manual/.gitignore: -------------------------------------------------------------------------------- 1 | # Bower 2 | /bower_components 3 | 4 | # Bundler 5 | /.bundle 6 | 7 | # Build Directory 8 | /build 9 | 10 | # Cache 11 | /.sass-cache 12 | /.cache 13 | 14 | # Sanity 15 | /sanity.html 16 | 17 | # OS Files 18 | .DS_Store 19 | .DS_Store? 20 | ._* 21 | .Spotlight-V100 22 | .Trashes 23 | .AppleDouble 24 | .LSOverride 25 | Icon 26 | Desktop.ini 27 | Icon? 28 | ehthumbs.db 29 | Thumbs.db 30 | *~ 31 | 32 | .project 33 | _site 34 | -------------------------------------------------------------------------------- /docs/manual/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "predictionio.apache.org", 3 | "description": "Apache PredictionIO Documentation", 4 | "license": "Apache-2.0", 5 | "homepage": "predictionio.apache.org", 6 | "ignore": [ 7 | "**/.*", 8 | "node_modules", 9 | "bower_components" 10 | ], 11 | "dependencies": { 12 | "jquery": "~2.1.1", 13 | "normalize.css": "~3.0.2", 14 | "Slidebars": "~0.10.2", 15 | "Tabslet": "~1.4.8", 16 | "jcarousel": "~0.3.3" 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /docs/manual/data/versions.yml: -------------------------------------------------------------------------------- 1 | pio: 0.14.0 2 | spark: 2.4.0 3 | spark_download_filename: spark-2.4.0-bin-hadoop2.7 4 | elasticsearch_download_filename: elasticsearch-6.8.1 5 | hbase_version: 1.2.6 6 | hbase_basename: hbase-1.2.6 7 | hbase_variant: bin 8 | -------------------------------------------------------------------------------- /docs/manual/helpers/icon_helpers.rb: -------------------------------------------------------------------------------- 1 | # 2 | # Licensed to the Apache Software Foundation (ASF) under one or more 3 | # contributor license agreements. See the NOTICE file distributed with 4 | # this work for additional information regarding copyright ownership. 5 | # The ASF licenses this file to You under the Apache License, Version 2.0 6 | # (the "License"); you may not use this file except in compliance with 7 | # the License. You may obtain a copy of the License at 8 | # 9 | # http://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, software 12 | # distributed under the License is distributed on an "AS IS" BASIS, 13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | # See the License for the specific language governing permissions and 15 | # limitations under the License. 16 | # 17 | 18 | module IconHelpers 19 | def icon(name) 20 | if name.nil? 21 | %Q{<i class="fa"></i>} 22 | else 23 | %Q{<i class="fa fa-#{name}"></i>} 24 | end 25 | end 26 | end 27 | -------------------------------------------------------------------------------- /docs/manual/helpers/url_helpers.rb: -------------------------------------------------------------------------------- 1 | # 2 | # Licensed to the Apache Software Foundation (ASF) under one or more 3 | # contributor license agreements. See the NOTICE file distributed with 4 | # this work for additional information regarding copyright ownership. 5 | # The ASF licenses this file to You under the Apache License, Version 2.0 6 | # (the "License"); you may not use this file except in compliance with 7 | # the License. You may obtain a copy of the License at 8 | # 9 | # http://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, software 12 | # distributed under the License is distributed on an "AS IS" BASIS, 13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | # See the License for the specific language governing permissions and 15 | # limitations under the License. 16 | # 17 | 18 | module UrlHelpers 19 | def absolute_url(path) 20 | URI::Generic.build( 21 | scheme: 'https', 22 | host: host, 23 | path: path 24 | ).to_s 25 | end 26 | end 27 | -------------------------------------------------------------------------------- /docs/manual/source/404.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Error 404 3 | description: Page not found! 4 | --- 5 | 6 | <!-- 7 | Licensed to the Apache Software Foundation (ASF) under one or more 8 | contributor license agreements. See the NOTICE file distributed with 9 | this work for additional information regarding copyright ownership. 10 | The ASF licenses this file to You under the Apache License, Version 2.0 11 | (the "License"); you may not use this file except in compliance with 12 | the License. You may obtain a copy of the License at 13 | 14 | http://www.apache.org/licenses/LICENSE-2.0 15 | 16 | Unless required by applicable law or agreed to in writing, software 17 | distributed under the License is distributed on an "AS IS" BASIS, 18 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 19 | See the License for the specific language governing permissions and 20 | limitations under the License. 21 | --> 22 | 23 | # Page Not Found 24 | 25 | Sorry the page you were looking for was not found :( 26 | -------------------------------------------------------------------------------- /docs/manual/source/algorithm/custom.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Adding your own Algorithms 3 | --- 4 | 5 | <!-- 6 | Licensed to the Apache Software Foundation (ASF) under one or more 7 | contributor license agreements. See the NOTICE file distributed with 8 | this work for additional information regarding copyright ownership. 9 | The ASF licenses this file to You under the Apache License, Version 2.0 10 | (the "License"); you may not use this file except in compliance with 11 | the License. You may obtain a copy of the License at 12 | 13 | http://www.apache.org/licenses/LICENSE-2.0 14 | 15 | Unless required by applicable law or agreed to in writing, software 16 | distributed under the License is distributed on an "AS IS" BASIS, 17 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 18 | See the License for the specific language governing permissions and 19 | limitations under the License. 20 | --> 21 | 22 | (Coming soon) 23 | -------------------------------------------------------------------------------- /docs/manual/source/archived/index.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: List of Archived Pages 3 | --- 4 | 5 | <!-- 6 | Licensed to the Apache Software Foundation (ASF) under one or more 7 | contributor license agreements. See the NOTICE file distributed with 8 | this work for additional information regarding copyright ownership. 9 | The ASF licenses this file to You under the Apache License, Version 2.0 10 | (the "License"); you may not use this file except in compliance with 11 | the License. You may obtain a copy of the License at 12 | 13 | http://www.apache.org/licenses/LICENSE-2.0 14 | 15 | Unless required by applicable law or agreed to in writing, software 16 | distributed under the License is distributed on an "AS IS" BASIS, 17 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 18 | See the License for the specific language governing permissions and 19 | limitations under the License. 20 | --> 21 | 22 | ## Archived Contribution 23 | 24 | Please help to move pages here if they are no-longer maintained 25 | -------------------------------------------------------------------------------- /docs/manual/source/demo/index.html.md.erb: -------------------------------------------------------------------------------- 1 | --- 2 | title: Demos 3 | --- 4 | 5 | <!-- 6 | Licensed to the Apache Software Foundation (ASF) under one or more 7 | contributor license agreements. See the NOTICE file distributed with 8 | this work for additional information regarding copyright ownership. 9 | The ASF licenses this file to You under the Apache License, Version 2.0 10 | (the "License"); you may not use this file except in compliance with 11 | the License. You may obtain a copy of the License at 12 | 13 | http://www.apache.org/licenses/LICENSE-2.0 14 | 15 | Unless required by applicable law or agreed to in writing, software 16 | distributed under the License is distributed on an "AS IS" BASIS, 17 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 18 | See the License for the specific language governing permissions and 19 | limitations under the License. 20 | --> 21 | 22 | ## Current Demos 23 | 24 | [Text Classification](/demo/textclassification/) - an official demo of Apache PredictionIO. 25 | -------------------------------------------------------------------------------- /docs/manual/source/deploy/engineparams.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Setting Engine Parameters 3 | --- 4 | 5 | <!-- 6 | Licensed to the Apache Software Foundation (ASF) under one or more 7 | contributor license agreements. See the NOTICE file distributed with 8 | this work for additional information regarding copyright ownership. 9 | The ASF licenses this file to You under the Apache License, Version 2.0 10 | (the "License"); you may not use this file except in compliance with 11 | the License. You may obtain a copy of the License at 12 | 13 | http://www.apache.org/licenses/LICENSE-2.0 14 | 15 | Unless required by applicable law or agreed to in writing, software 16 | distributed under the License is distributed on an "AS IS" BASIS, 17 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 18 | See the License for the specific language governing permissions and 19 | limitations under the License. 20 | --> 21 | 22 | (coming soon) 23 | -------------------------------------------------------------------------------- /docs/manual/source/deploy/enginevariants.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Deploying Multiple Engine Variants 3 | --- 4 | 5 | <!-- 6 | Licensed to the Apache Software Foundation (ASF) under one or more 7 | contributor license agreements. See the NOTICE file distributed with 8 | this work for additional information regarding copyright ownership. 9 | The ASF licenses this file to You under the Apache License, Version 2.0 10 | (the "License"); you may not use this file except in compliance with 11 | the License. You may obtain a copy of the License at 12 | 13 | http://www.apache.org/licenses/LICENSE-2.0 14 | 15 | Unless required by applicable law or agreed to in writing, software 16 | distributed under the License is distributed on an "AS IS" BASIS, 17 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 18 | See the License for the specific language governing permissions and 19 | limitations under the License. 20 | --> 21 | 22 | (coming soon) 23 | -------------------------------------------------------------------------------- /docs/manual/source/evaluation/history.html.md: -------------------------------------------------------------------------------- 1 | <!-- 2 | Licensed to the Apache Software Foundation (ASF) under one or more 3 | contributor license agreements. See the NOTICE file distributed with 4 | this work for additional information regarding copyright ownership. 5 | The ASF licenses this file to You under the Apache License, Version 2.0 6 | (the "License"); you may not use this file except in compliance with 7 | the License. You may obtain a copy of the License at 8 | 9 | http://www.apache.org/licenses/LICENSE-2.0 10 | 11 | Unless required by applicable law or agreed to in writing, software 12 | distributed under the License is distributed on an "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | See the License for the specific language governing permissions and 15 | limitations under the License. 16 | --> 17 | -------------------------------------------------------------------------------- /docs/manual/source/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/favicon.ico -------------------------------------------------------------------------------- /docs/manual/source/images/0.8-command-sys.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/0.8-command-sys.png -------------------------------------------------------------------------------- /docs/manual/source/images/0.8-engine-data-pipeline.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/0.8-engine-data-pipeline.png -------------------------------------------------------------------------------- /docs/manual/source/images/awsm-1click.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/awsm-1click.png -------------------------------------------------------------------------------- /docs/manual/source/images/awsm-product.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/awsm-product.png -------------------------------------------------------------------------------- /docs/manual/source/images/cloudformation/awsmp-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/cloudformation/awsmp-1.png -------------------------------------------------------------------------------- /docs/manual/source/images/cloudformation/awsmp-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/cloudformation/awsmp-2.png -------------------------------------------------------------------------------- /docs/manual/source/images/cloudformation/cf-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/cloudformation/cf-01.png -------------------------------------------------------------------------------- /docs/manual/source/images/cloudformation/cf-02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/cloudformation/cf-02.png -------------------------------------------------------------------------------- /docs/manual/source/images/cloudformation/cf-03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/cloudformation/cf-03.png -------------------------------------------------------------------------------- /docs/manual/source/images/cloudformation/cf-04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/cloudformation/cf-04.png -------------------------------------------------------------------------------- /docs/manual/source/images/cloudformation/cf-05.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/cloudformation/cf-05.png -------------------------------------------------------------------------------- /docs/manual/source/images/cloudformation/cf-06.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/cloudformation/cf-06.png -------------------------------------------------------------------------------- /docs/manual/source/images/cloudformation/compute-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/cloudformation/compute-1.png -------------------------------------------------------------------------------- /docs/manual/source/images/cloudformation/compute-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/cloudformation/compute-2.png -------------------------------------------------------------------------------- /docs/manual/source/images/cloudformation/compute-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/cloudformation/compute-3.png -------------------------------------------------------------------------------- /docs/manual/source/images/cloudformation/compute-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/cloudformation/compute-4.png -------------------------------------------------------------------------------- /docs/manual/source/images/cloudformation/hbase.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/cloudformation/hbase.png -------------------------------------------------------------------------------- /docs/manual/source/images/cloudformation/hdfs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/cloudformation/hdfs.png -------------------------------------------------------------------------------- /docs/manual/source/images/cloudformation/spark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/cloudformation/spark.png -------------------------------------------------------------------------------- /docs/manual/source/images/cloudformation/storage-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/cloudformation/storage-1.png -------------------------------------------------------------------------------- /docs/manual/source/images/cloudformation/storage-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/cloudformation/storage-2.png -------------------------------------------------------------------------------- /docs/manual/source/images/datacollection/ipynb-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/datacollection/ipynb-01.png -------------------------------------------------------------------------------- /docs/manual/source/images/datacollection/ipynb-02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/datacollection/ipynb-02.png -------------------------------------------------------------------------------- /docs/manual/source/images/datacollection/ipynb-03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/datacollection/ipynb-03.png -------------------------------------------------------------------------------- /docs/manual/source/images/datacollection/ipynb-04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/datacollection/ipynb-04.png -------------------------------------------------------------------------------- /docs/manual/source/images/datacollection/tableau-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/datacollection/tableau-01.png -------------------------------------------------------------------------------- /docs/manual/source/images/datacollection/tableau-02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/datacollection/tableau-02.png -------------------------------------------------------------------------------- /docs/manual/source/images/datacollection/tableau-03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/datacollection/tableau-03.png -------------------------------------------------------------------------------- /docs/manual/source/images/datacollection/tableau-04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/datacollection/tableau-04.png -------------------------------------------------------------------------------- /docs/manual/source/images/datacollection/zeppelin-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/datacollection/zeppelin-01.png -------------------------------------------------------------------------------- /docs/manual/source/images/datacollection/zeppelin-02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/datacollection/zeppelin-02.png -------------------------------------------------------------------------------- /docs/manual/source/images/datacollection/zeppelin-03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/datacollection/zeppelin-03.png -------------------------------------------------------------------------------- /docs/manual/source/images/datacollection/zeppelin-04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/datacollection/zeppelin-04.png -------------------------------------------------------------------------------- /docs/manual/source/images/demo/tapster/pio-app-new.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/demo/tapster/pio-app-new.png -------------------------------------------------------------------------------- /docs/manual/source/images/demo/tapster/pio-build.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/demo/tapster/pio-build.png -------------------------------------------------------------------------------- /docs/manual/source/images/demo/tapster/pio-deploy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/demo/tapster/pio-deploy.png -------------------------------------------------------------------------------- /docs/manual/source/images/demo/tapster/pio-engine-setup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/demo/tapster/pio-engine-setup.png -------------------------------------------------------------------------------- /docs/manual/source/images/demo/tapster/pio-eventserver.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/demo/tapster/pio-eventserver.png -------------------------------------------------------------------------------- /docs/manual/source/images/demo/tapster/pio-import-predictionio.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/demo/tapster/pio-import-predictionio.png -------------------------------------------------------------------------------- /docs/manual/source/images/demo/tapster/pio-install.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/demo/tapster/pio-install.png -------------------------------------------------------------------------------- /docs/manual/source/images/demo/tapster/pio-train.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/demo/tapster/pio-train.png -------------------------------------------------------------------------------- /docs/manual/source/images/demo/tapster/rails-server.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/demo/tapster/rails-server.png -------------------------------------------------------------------------------- /docs/manual/source/images/demo/text_classification_template/engine_overview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/demo/text_classification_template/engine_overview.png -------------------------------------------------------------------------------- /docs/manual/source/images/engine-data-flow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/engine-data-flow.png -------------------------------------------------------------------------------- /docs/manual/source/images/engine-evaluation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/engine-evaluation.png -------------------------------------------------------------------------------- /docs/manual/source/images/engine-itemrec-prediction.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/engine-itemrec-prediction.png -------------------------------------------------------------------------------- /docs/manual/source/images/engine-itemsim-score.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/engine-itemsim-score.png -------------------------------------------------------------------------------- /docs/manual/source/images/engine-query.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/engine-query.png -------------------------------------------------------------------------------- /docs/manual/source/images/engine-server.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/engine-server.png -------------------------------------------------------------------------------- /docs/manual/source/images/engine-training.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/engine-training.png -------------------------------------------------------------------------------- /docs/manual/source/images/engineinstance-overview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/engineinstance-overview.png -------------------------------------------------------------------------------- /docs/manual/source/images/eventserver-overview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/eventserver-overview.png -------------------------------------------------------------------------------- /docs/manual/source/images/favicon/apple.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/favicon/apple.png -------------------------------------------------------------------------------- /docs/manual/source/images/favicon/normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/favicon/normal.png -------------------------------------------------------------------------------- /docs/manual/source/images/icons/down-arrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/icons/down-arrow.png -------------------------------------------------------------------------------- /docs/manual/source/images/icons/drawer-toggle-active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/icons/drawer-toggle-active.png -------------------------------------------------------------------------------- /docs/manual/source/images/icons/drawer-toggle-closed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/icons/drawer-toggle-closed.png -------------------------------------------------------------------------------- /docs/manual/source/images/icons/edit-pencil.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/icons/edit-pencil.png -------------------------------------------------------------------------------- /docs/manual/source/images/icons/facebook.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/icons/facebook.png -------------------------------------------------------------------------------- /docs/manual/source/images/icons/search-glass.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/icons/search-glass.png -------------------------------------------------------------------------------- /docs/manual/source/images/icons/sketch-64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/icons/sketch-64.png -------------------------------------------------------------------------------- /docs/manual/source/images/icons/twitter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/icons/twitter.png -------------------------------------------------------------------------------- /docs/manual/source/images/icons/up-arrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/icons/up-arrow.png -------------------------------------------------------------------------------- /docs/manual/source/images/intellij/intelliJ-scala-plugin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/intellij/intelliJ-scala-plugin.png -------------------------------------------------------------------------------- /docs/manual/source/images/intellij/intellij-buildsbt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/intellij/intellij-buildsbt.png -------------------------------------------------------------------------------- /docs/manual/source/images/intellij/intellij-config.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/intellij/intellij-config.png -------------------------------------------------------------------------------- /docs/manual/source/images/intellij/intellij-module-settings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/intellij/intellij-module-settings.png -------------------------------------------------------------------------------- /docs/manual/source/images/intellij/intellij-scala-plugin-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/intellij/intellij-scala-plugin-2.png -------------------------------------------------------------------------------- /docs/manual/source/images/intellij/pio-train-env-vars.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/intellij/pio-train-env-vars.png -------------------------------------------------------------------------------- /docs/manual/source/images/intellij/pio-train.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/intellij/pio-train.png -------------------------------------------------------------------------------- /docs/manual/source/images/logos/apache_incubator.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/logos/apache_incubator.png -------------------------------------------------------------------------------- /docs/manual/source/images/logos/copyright.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/logos/copyright.png -------------------------------------------------------------------------------- /docs/manual/source/images/logos/copyright@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/logos/copyright@2x.png -------------------------------------------------------------------------------- /docs/manual/source/images/logos/header.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/logos/header.png -------------------------------------------------------------------------------- /docs/manual/source/images/logos/header@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/logos/header@2x.png -------------------------------------------------------------------------------- /docs/manual/source/images/logos/logo-white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/logos/logo-white.png -------------------------------------------------------------------------------- /docs/manual/source/images/logos/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/logos/logo.png -------------------------------------------------------------------------------- /docs/manual/source/images/machinelearning/featureselection/cube100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/machinelearning/featureselection/cube100.png -------------------------------------------------------------------------------- /docs/manual/source/images/machinelearning/featureselection/square100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/machinelearning/featureselection/square100.png -------------------------------------------------------------------------------- /docs/manual/source/images/monit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/monit.png -------------------------------------------------------------------------------- /docs/manual/source/images/overview-multiengines.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/overview-multiengines.png -------------------------------------------------------------------------------- /docs/manual/source/images/overview-singleengine.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/overview-singleengine.png -------------------------------------------------------------------------------- /docs/manual/source/images/showcase/nogoodgamez-158x70.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/showcase/nogoodgamez-158x70.png -------------------------------------------------------------------------------- /docs/manual/source/images/showcase/on-tapp-70x70.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/showcase/on-tapp-70x70.png -------------------------------------------------------------------------------- /docs/manual/source/images/showcase/yelpio-70x70.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/showcase/yelpio-70x70.png -------------------------------------------------------------------------------- /docs/manual/source/images/system-overview-simple.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/system-overview-simple.png -------------------------------------------------------------------------------- /docs/manual/source/images/system-overview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/system-overview.png -------------------------------------------------------------------------------- /docs/manual/source/images/tutorials/rails/curl-261.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/tutorials/rails/curl-261.png -------------------------------------------------------------------------------- /docs/manual/source/images/tutorials/rails/grep-eventserver.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/tutorials/rails/grep-eventserver.png -------------------------------------------------------------------------------- /docs/manual/source/images/tutorials/rails/localhost-8000.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/tutorials/rails/localhost-8000.png -------------------------------------------------------------------------------- /docs/manual/source/images/tutorials/rails/params-algorithms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/tutorials/rails/params-algorithms.png -------------------------------------------------------------------------------- /docs/manual/source/images/tutorials/rails/params-datasource.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/tutorials/rails/params-datasource.png -------------------------------------------------------------------------------- /docs/manual/source/images/tutorials/rails/pio-deploy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/tutorials/rails/pio-deploy.png -------------------------------------------------------------------------------- /docs/manual/source/images/tutorials/rails/pio-register.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/tutorials/rails/pio-register.png -------------------------------------------------------------------------------- /docs/manual/source/images/tutorials/rails/pio-train.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/tutorials/rails/pio-train.png -------------------------------------------------------------------------------- /docs/manual/source/images/tutorials/rails/rails-is-working.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/tutorials/rails/rails-is-working.png -------------------------------------------------------------------------------- /docs/manual/source/images/tutorials/rails/users-index.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/tutorials/rails/users-index.png -------------------------------------------------------------------------------- /docs/manual/source/images/tutorials/rails/users-show.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/docs/manual/source/images/tutorials/rails/users-show.png -------------------------------------------------------------------------------- /docs/manual/source/install/sdk.html.md: -------------------------------------------------------------------------------- 1 | <!-- 2 | Licensed to the Apache Software Foundation (ASF) under one or more 3 | contributor license agreements. See the NOTICE file distributed with 4 | this work for additional information regarding copyright ownership. 5 | The ASF licenses this file to You under the Apache License, Version 2.0 6 | (the "License"); you may not use this file except in compliance with 7 | the License. You may obtain a copy of the License at 8 | 9 | http://www.apache.org/licenses/LICENSE-2.0 10 | 11 | Unless required by applicable law or agreed to in writing, software 12 | distributed under the License is distributed on an "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | See the License for the specific language governing permissions and 15 | limitations under the License. 16 | --> 17 | -------------------------------------------------------------------------------- /docs/manual/source/layouts/layout.html.slim: -------------------------------------------------------------------------------- 1 | doctype html 2 | html 3 | head 4 | = partial 'head/base' 5 | body 6 | #global 7 | = partial 'header' 8 | = partial 'search_bar' 9 | #page.container-fluid 10 | .row 11 | #left-menu-wrapper.col-md-3 12 | = partial 'nav/main' 13 | .col-md-9.col-sm-12 14 | .content-header.hidden-md.hidden-lg 15 | = breadcrumbs 16 | #page-title 17 | = page_title 18 | 19 | = partial 'table_of_content' 20 | 21 | .content-header.hidden-sm.hidden-xs 22 | = breadcrumbs 23 | #page-title 24 | = page_title 25 | .content 26 | = yield 27 | = partial 'footer' 28 | = partial 'swiftype' 29 | = javascript_include_tag 'application' 30 | -------------------------------------------------------------------------------- /docs/manual/source/layouts/tryit.html.slim: -------------------------------------------------------------------------------- 1 | doctype html 2 | html 3 | head 4 | = partial 'head/base' 5 | body.tryit 6 | #global 7 | = partial 'header' 8 | #page.container 9 | main#main role="main" data-swiftype-index="true" 10 | #content 11 | = yield 12 | = partial 'footer' 13 | = partial 'swiftype' 14 | = javascript_include_tag 'application' 15 | = javascript_include_tag 'tryit' 16 | -------------------------------------------------------------------------------- /docs/manual/source/partials/_action_call.html.slim: -------------------------------------------------------------------------------- 1 | .action-call 2 | .container 3 | .row 4 | .col-md-4.col-xs-12 5 | .action-square 6 | h1 Get Started 7 | p 8 | | Please take a look at the 9 | = succeed "." do 10 | a href="//predictionio.apache.org/" target="blank" Docs 11 | | It is helpful to read through a few examples. 12 | .col-md-4.col-xs-12 13 | .action-square 14 | h1 Get Help 15 | p 16 | | Join our 17 | a> href="//groups.google.com/forum/#!forum/predictionio-user" target="blank" Forum 18 | | to discuss, get help and help others in the PredictionIO community. 19 | .col-md-4.col-xs-12 20 | .action-square 21 | h1 href="#" Get Involved 22 | p 23 | | Check out the source code on 24 | a> href="//github.com/PredictionIO/PredictionIO" target="blank" GitHub 25 | | and report issues on the 26 | = succeed "." do 27 | a href="//github.com/PredictionIO/PredictionIO/issues" target="blank" Bug Tracker 28 | -------------------------------------------------------------------------------- /docs/manual/source/partials/_edit_page.html.slim: -------------------------------------------------------------------------------- 1 | #edit-page 2 | p 3 | = link_to '<i class="fa fa-pencil"></i> Edit Page', github_url 4 | -------------------------------------------------------------------------------- /docs/manual/source/partials/_header.html.slim: -------------------------------------------------------------------------------- 1 | header 2 | .container#header-wrapper 3 | .row 4 | .col-sm-12 5 | #logo-wrapper 6 | span#drawer-toggle 7 | a href="#" 8 | = link_to 'http://predictionio.apache.org/' do 9 | = image_tag 'logos/logo.png', alt: 'Apache PredictionIO', id: 'logo' 10 | span ® 11 | #menu-wrapper 12 | #pill-wrapper 13 | a.pill.left> href="/gallery/template-gallery" TEMPLATES 14 | a.pill.right href="//github.com/apache/predictionio/" OPEN SOURCE 15 | = image_tag 'icons/search-glass.png', class: 'mobile-search-bar-toggler hidden-md hidden-lg' 16 | -------------------------------------------------------------------------------- /docs/manual/source/partials/_search_bar.html.slim: -------------------------------------------------------------------------------- 1 | #search-bar-row-wrapper 2 | .container-fluid#search-bar-row 3 | .row 4 | .col-md-9.col-sm-11.col-xs-11 5 | .hidden-md.hidden-lg#mobile-page-heading-wrapper 6 | p PredictionIO Docs 7 | h4 8 | = page_title_in_nav_menu data.nav.main.root 9 | h4.hidden-sm.hidden-xs PredictionIO Docs 10 | .col-md-3.col-sm-1.col-xs-1.hidden-md.hidden-lg 11 | = image_tag 'icons/down-arrow.png', id: 'left-menu-indicator' 12 | .col-md-3.col-sm-12.col-xs-12.swiftype-wrapper 13 | = partial 'nav/swiftype' 14 | .mobile-left-menu-toggler.hidden-md.hidden-lg -------------------------------------------------------------------------------- /docs/manual/source/partials/_segment.html.slim: -------------------------------------------------------------------------------- 1 | - if build? 2 | javascript: 3 | !function(){var analytics=window.analytics=window.analytics||[];if(!analytics.initialize)if(analytics.invoked)window.console&&console.error&&console.error("Segment snippet included twice.");else{analytics.invoked=!0;analytics.methods=["trackSubmit","trackClick","trackLink","trackForm","pageview","identify","group","track","ready","alias","page","once","off","on"];analytics.factory=function(t){return function(){var e=Array.prototype.slice.call(arguments);e.unshift(t);analytics.push(e);return analytics}};for(var t=0;t<analytics.methods.length;t++){var e=analytics.methods[t];analytics[e]=analytics.factory(e)}analytics.load=function(t){var e=document.createElement("script");e.type="text/javascript";e.async=!0;e.src=("https:"===document.location.protocol?"https://":"http://")+"cdn.segment.com/analytics.js/v1/"+t+"/analytics.min.js";var n=document.getElementsByTagName("script")[0];n.parentNode.insertBefore(e,n)};analytics.SNIPPET_VERSION="3.0.1"; 4 | analytics.load("YlF3updaI3DR96hnNgSGpR3PPBUGDzt8"); 5 | analytics.page() 6 | }}(); 7 | -------------------------------------------------------------------------------- /docs/manual/source/partials/_swiftype.html.slim: -------------------------------------------------------------------------------- 1 | javascript: 2 | (function(w,d,t,u,n,s,e){w['SwiftypeObject']=n;w[n]=w[n]||function(){ 3 | (w[n].q=w[n].q||[]).push(arguments);};s=d.createElement(t); 4 | e=d.getElementsByTagName(t)[0];s.async=1;s.src=u;e.parentNode.insertBefore(s,e); 5 | })(window,document,'script','//s.swiftypecdn.com/install/v1/st.js','_st'); 6 | 7 | _st('install','HaUfpXXV87xoB_zzCQ45'); 8 | -------------------------------------------------------------------------------- /docs/manual/source/partials/_table_of_content.html.slim: -------------------------------------------------------------------------------- 1 | - if table_of_contents(current_page) 2 | #table-of-content-wrapper 3 | h5 On this page 4 | == table_of_contents(current_page) 5 | hr 6 | = link_to github_url, id: 'edit-page-link' 7 | = image_tag 'icons/edit-pencil.png' 8 | | Edit this page 9 | - else 10 | #table-of-content-wrapper 11 | = link_to github_url, id: 'edit-page-link' 12 | = image_tag 'icons/edit-pencil.png' 13 | | Edit this page -------------------------------------------------------------------------------- /docs/manual/source/partials/head/_base.html.slim: -------------------------------------------------------------------------------- 1 | title = rendered_title 2 | = partial 'head/meta' 3 | = partial 'head/favicon' 4 | = partial 'head/stylesheets' 5 | = partial 'head/javascripts' 6 | -------------------------------------------------------------------------------- /docs/manual/source/partials/head/_favicon.html.slim: -------------------------------------------------------------------------------- 1 | link href="/images/favicon/normal.png" rel="shortcut icon" 2 | link href="/images/favicon/apple.png" rel="apple-touch-icon" 3 | -------------------------------------------------------------------------------- /docs/manual/source/partials/head/_javascripts.html.slim: -------------------------------------------------------------------------------- 1 | /[if lt IE 9] 2 | = javascript_include_tag '//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.2/html5shiv.min.js' 3 | = javascript_include_tag '//cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML' 4 | 5 | /azo sans font 6 | = javascript_include_tag '//use.typekit.net/pqo0itb.js' 7 | javascript: 8 | try{Typekit.load({ async: true });}catch(e){} 9 | -------------------------------------------------------------------------------- /docs/manual/source/partials/head/_meta.html.slim: -------------------------------------------------------------------------------- 1 | meta charset="utf-8" 2 | meta content="IE=edge,chrome=1" http-equiv="X-UA-Compatible" 3 | meta name="viewport" content="width=device-width, initial-scale=1.0" 4 | meta class="swiftype" name="title" data-type="string" content=rendered_title 5 | - if current_page.data.description 6 | meta name="description" content=current_page.data.description 7 | meta class="swiftype" name="body" data-type="text" content=current_page.data.description 8 | link rel="canonical" href=absolute_url(current_page.url) 9 | -------------------------------------------------------------------------------- /docs/manual/source/partials/head/_stylesheets.html.slim: -------------------------------------------------------------------------------- 1 | link href="//fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,600italic,700italic,800italic,400,300,600,700,800" rel="stylesheet" 2 | link href="//maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css" rel="stylesheet" 3 | 4 | = stylesheet_link_tag 'application' 5 | -------------------------------------------------------------------------------- /docs/manual/source/partials/nav/_breadcrumbs.html.slim: -------------------------------------------------------------------------------- 1 | - if crumbs 2 | #breadcrumbs.hidden-sm.hidden.xs 3 | ul 4 | - crumbs.each do |node| 5 | li 6 | - if crumbs.last == node 7 | span.last = node.body 8 | - else 9 | = link_to node.body, node.url, class: node.css 10 | span.spacer > -------------------------------------------------------------------------------- /docs/manual/source/partials/nav/_header.html.slim: -------------------------------------------------------------------------------- 1 | nav#nav-header 2 | ul 3 | li = link_to 'Docs', '/' 4 | li = link_to 'Engine Templates', '/gallery/template-gallery' 5 | li = link_to 'Community', '/community/' 6 | li = link_to 'Blog', 'http://blog.prediction.io/' 7 | -------------------------------------------------------------------------------- /docs/manual/source/partials/nav/_main.html.slim: -------------------------------------------------------------------------------- 1 | nav#nav-main 2 | ul 3 | - data.nav.main.root.each do |node| 4 | = partial 'nav/node', locals: { node: node, level: 1 } 5 | - unless build? 6 | - data.nav.build.root.each do |node| 7 | = partial 'nav/node', locals: { node: node, level: 1 } 8 | -------------------------------------------------------------------------------- /docs/manual/source/partials/nav/_node.html.slim: -------------------------------------------------------------------------------- 1 | li class="level-#{level}" 2 | - icon_or_nil = node.children ? 'caret-right' : nil 3 | - css = node.children ? 'expandible' : 'final' 4 | 5 | = link_to_with_active "<span>#{node.body}</span>".html_safe, node.url, class: "#{node.css} #{css}".strip 6 | 7 | - if node.children 8 | ul 9 | - node.children.each do |child| 10 | = partial 'nav/node', locals: { node: child, level: level + 1 } 11 | -------------------------------------------------------------------------------- /docs/manual/source/partials/nav/_page.html.slim: -------------------------------------------------------------------------------- 1 | nav#nav-page 2 | = link_to '<i class="fa fa-pencil"></i>', github_url, class: 'github' 3 | -------------------------------------------------------------------------------- /docs/manual/source/partials/nav/_swiftype.html.slim: -------------------------------------------------------------------------------- 1 | .swiftype 2 | form.search-form 3 | = image_tag 'icons/search-glass.png', class: 'search-box-toggler hidden-xs hidden-sm' 4 | .search-box 5 | = image_tag 'icons/search-glass.png' 6 | input type="text" id="st-search-input" class="st-search-input" placeholder="Search Doc..." 7 | = image_tag 'icons/drawer-toggle-active.png', class: 'swiftype-row-hider hidden-md hidden-lg' -------------------------------------------------------------------------------- /docs/manual/source/partials/shared/install/_proceed_template.html.md.erb: -------------------------------------------------------------------------------- 1 | <!-- 2 | Licensed to the Apache Software Foundation (ASF) under one or more 3 | contributor license agreements. See the NOTICE file distributed with 4 | this work for additional information regarding copyright ownership. 5 | The ASF licenses this file to You under the Apache License, Version 2.0 6 | (the "License"); you may not use this file except in compliance with 7 | the License. You may obtain a copy of the License at 8 | 9 | http://www.apache.org/licenses/LICENSE-2.0 10 | 11 | Unless required by applicable law or agreed to in writing, software 12 | distributed under the License is distributed on an "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | See the License for the specific language governing permissions and 15 | limitations under the License. 16 | --> 17 | 18 | You can proceed to [Choosing an Engine Template](/start/download), or continue the QuickStart guide of the Engine template if you have already chosen one. 19 | -------------------------------------------------------------------------------- /docs/manual/source/partials/shared/quickstart/_import_sample_data.html.md.erb: -------------------------------------------------------------------------------- 1 | <!-- 2 | Licensed to the Apache Software Foundation (ASF) under one or more 3 | contributor license agreements. See the NOTICE file distributed with 4 | this work for additional information regarding copyright ownership. 5 | The ASF licenses this file to You under the Apache License, Version 2.0 6 | (the "License"); you may not use this file except in compliance with 7 | the License. You may obtain a copy of the License at 8 | 9 | http://www.apache.org/licenses/LICENSE-2.0 10 | 11 | Unless required by applicable law or agreed to in writing, software 12 | distributed under the License is distributed on an "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | See the License for the specific language governing permissions and 15 | limitations under the License. 16 | --> 17 | 18 | This engine requires more data in order to train a useful model. Instead of sending more events one by one in real time, for quickstart demonstration purpose, we are going to use a script to import more events in batch. 19 | -------------------------------------------------------------------------------- /docs/manual/source/production/deploy-cloudformation.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Deploying with AWS CloudFormation 3 | --- 4 | 5 | <!-- 6 | Licensed to the Apache Software Foundation (ASF) under one or more 7 | contributor license agreements. See the NOTICE file distributed with 8 | this work for additional information regarding copyright ownership. 9 | The ASF licenses this file to You under the Apache License, Version 2.0 10 | (the "License"); you may not use this file except in compliance with 11 | the License. You may obtain a copy of the License at 12 | 13 | http://www.apache.org/licenses/LICENSE-2.0 14 | 15 | Unless required by applicable law or agreed to in writing, software 16 | distributed under the License is distributed on an "AS IS" BASIS, 17 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 18 | See the License for the specific language governing permissions and 19 | limitations under the License. 20 | --> 21 | 22 | This document has been moved to [here](/system/deploy-cloudformation/). 23 | -------------------------------------------------------------------------------- /docs/manual/source/robots.txt: -------------------------------------------------------------------------------- 1 | User-agent: * 2 | Disallow: 3 | 4 | Sitemap: http://predictionio.apache.org/sitemap.xml 5 | -------------------------------------------------------------------------------- /docs/manual/source/samples/level-1.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Level 1 3 | --- 4 | 5 | <!-- 6 | Licensed to the Apache Software Foundation (ASF) under one or more 7 | contributor license agreements. See the NOTICE file distributed with 8 | this work for additional information regarding copyright ownership. 9 | The ASF licenses this file to You under the Apache License, Version 2.0 10 | (the "License"); you may not use this file except in compliance with 11 | the License. You may obtain a copy of the License at 12 | 13 | http://www.apache.org/licenses/LICENSE-2.0 14 | 15 | Unless required by applicable law or agreed to in writing, software 16 | distributed under the License is distributed on an "AS IS" BASIS, 17 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 18 | See the License for the specific language governing permissions and 19 | limitations under the License. 20 | --> 21 | 22 | ## Level 1 23 | -------------------------------------------------------------------------------- /docs/manual/source/samples/level-2-1.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Level 2.1 3 | --- 4 | 5 | <!-- 6 | Licensed to the Apache Software Foundation (ASF) under one or more 7 | contributor license agreements. See the NOTICE file distributed with 8 | this work for additional information regarding copyright ownership. 9 | The ASF licenses this file to You under the Apache License, Version 2.0 10 | (the "License"); you may not use this file except in compliance with 11 | the License. You may obtain a copy of the License at 12 | 13 | http://www.apache.org/licenses/LICENSE-2.0 14 | 15 | Unless required by applicable law or agreed to in writing, software 16 | distributed under the License is distributed on an "AS IS" BASIS, 17 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 18 | See the License for the specific language governing permissions and 19 | limitations under the License. 20 | --> 21 | 22 | ## Level 2.1 23 | -------------------------------------------------------------------------------- /docs/manual/source/samples/level-2-2.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Level 2.2 3 | --- 4 | 5 | <!-- 6 | Licensed to the Apache Software Foundation (ASF) under one or more 7 | contributor license agreements. See the NOTICE file distributed with 8 | this work for additional information regarding copyright ownership. 9 | The ASF licenses this file to You under the Apache License, Version 2.0 10 | (the "License"); you may not use this file except in compliance with 11 | the License. You may obtain a copy of the License at 12 | 13 | http://www.apache.org/licenses/LICENSE-2.0 14 | 15 | Unless required by applicable law or agreed to in writing, software 16 | distributed under the License is distributed on an "AS IS" BASIS, 17 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 18 | See the License for the specific language governing permissions and 19 | limitations under the License. 20 | --> 21 | 22 | ## Level 2.2 23 | -------------------------------------------------------------------------------- /docs/manual/source/samples/level-2.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Level 2 3 | --- 4 | 5 | <!-- 6 | Licensed to the Apache Software Foundation (ASF) under one or more 7 | contributor license agreements. See the NOTICE file distributed with 8 | this work for additional information regarding copyright ownership. 9 | The ASF licenses this file to You under the Apache License, Version 2.0 10 | (the "License"); you may not use this file except in compliance with 11 | the License. You may obtain a copy of the License at 12 | 13 | http://www.apache.org/licenses/LICENSE-2.0 14 | 15 | Unless required by applicable law or agreed to in writing, software 16 | distributed under the License is distributed on an "AS IS" BASIS, 17 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 18 | See the License for the specific language governing permissions and 19 | limitations under the License. 20 | --> 21 | 22 | ## Level 2 23 | -------------------------------------------------------------------------------- /docs/manual/source/samples/level-3-1.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Level 3.1 3 | --- 4 | 5 | <!-- 6 | Licensed to the Apache Software Foundation (ASF) under one or more 7 | contributor license agreements. See the NOTICE file distributed with 8 | this work for additional information regarding copyright ownership. 9 | The ASF licenses this file to You under the Apache License, Version 2.0 10 | (the "License"); you may not use this file except in compliance with 11 | the License. You may obtain a copy of the License at 12 | 13 | http://www.apache.org/licenses/LICENSE-2.0 14 | 15 | Unless required by applicable law or agreed to in writing, software 16 | distributed under the License is distributed on an "AS IS" BASIS, 17 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 18 | See the License for the specific language governing permissions and 19 | limitations under the License. 20 | --> 21 | 22 | ## Level 3.1 23 | -------------------------------------------------------------------------------- /docs/manual/source/samples/level-3-2.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Level 3.2 3 | --- 4 | 5 | <!-- 6 | Licensed to the Apache Software Foundation (ASF) under one or more 7 | contributor license agreements. See the NOTICE file distributed with 8 | this work for additional information regarding copyright ownership. 9 | The ASF licenses this file to You under the Apache License, Version 2.0 10 | (the "License"); you may not use this file except in compliance with 11 | the License. You may obtain a copy of the License at 12 | 13 | http://www.apache.org/licenses/LICENSE-2.0 14 | 15 | Unless required by applicable law or agreed to in writing, software 16 | distributed under the License is distributed on an "AS IS" BASIS, 17 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 18 | See the License for the specific language governing permissions and 19 | limitations under the License. 20 | --> 21 | 22 | ## Level 3.2 23 | -------------------------------------------------------------------------------- /docs/manual/source/samples/level-3.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Level 3 3 | --- 4 | 5 | <!-- 6 | Licensed to the Apache Software Foundation (ASF) under one or more 7 | contributor license agreements. See the NOTICE file distributed with 8 | this work for additional information regarding copyright ownership. 9 | The ASF licenses this file to You under the Apache License, Version 2.0 10 | (the "License"); you may not use this file except in compliance with 11 | the License. You may obtain a copy of the License at 12 | 13 | http://www.apache.org/licenses/LICENSE-2.0 14 | 15 | Unless required by applicable law or agreed to in writing, software 16 | distributed under the License is distributed on an "AS IS" BASIS, 17 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 18 | See the License for the specific language governing permissions and 19 | limitations under the License. 20 | --> 21 | 22 | ## Level 3 23 | -------------------------------------------------------------------------------- /docs/manual/source/samples/level-4-1.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Level 4.1 3 | --- 4 | 5 | <!-- 6 | Licensed to the Apache Software Foundation (ASF) under one or more 7 | contributor license agreements. See the NOTICE file distributed with 8 | this work for additional information regarding copyright ownership. 9 | The ASF licenses this file to You under the Apache License, Version 2.0 10 | (the "License"); you may not use this file except in compliance with 11 | the License. You may obtain a copy of the License at 12 | 13 | http://www.apache.org/licenses/LICENSE-2.0 14 | 15 | Unless required by applicable law or agreed to in writing, software 16 | distributed under the License is distributed on an "AS IS" BASIS, 17 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 18 | See the License for the specific language governing permissions and 19 | limitations under the License. 20 | --> 21 | 22 | ## Level 4.1 23 | -------------------------------------------------------------------------------- /docs/manual/source/samples/level-4-2.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Level 4.2 3 | --- 4 | 5 | <!-- 6 | Licensed to the Apache Software Foundation (ASF) under one or more 7 | contributor license agreements. See the NOTICE file distributed with 8 | this work for additional information regarding copyright ownership. 9 | The ASF licenses this file to You under the Apache License, Version 2.0 10 | (the "License"); you may not use this file except in compliance with 11 | the License. You may obtain a copy of the License at 12 | 13 | http://www.apache.org/licenses/LICENSE-2.0 14 | 15 | Unless required by applicable law or agreed to in writing, software 16 | distributed under the License is distributed on an "AS IS" BASIS, 17 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 18 | See the License for the specific language governing permissions and 19 | limitations under the License. 20 | --> 21 | 22 | ## Level 4.2 23 | -------------------------------------------------------------------------------- /docs/manual/source/samples/level-4-3.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Level 4.3 3 | --- 4 | 5 | <!-- 6 | Licensed to the Apache Software Foundation (ASF) under one or more 7 | contributor license agreements. See the NOTICE file distributed with 8 | this work for additional information regarding copyright ownership. 9 | The ASF licenses this file to You under the Apache License, Version 2.0 10 | (the "License"); you may not use this file except in compliance with 11 | the License. You may obtain a copy of the License at 12 | 13 | http://www.apache.org/licenses/LICENSE-2.0 14 | 15 | Unless required by applicable law or agreed to in writing, software 16 | distributed under the License is distributed on an "AS IS" BASIS, 17 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 18 | See the License for the specific language governing permissions and 19 | limitations under the License. 20 | --> 21 | 22 | ## Level 4.3 23 | -------------------------------------------------------------------------------- /docs/manual/source/samples/level-4.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Level 4 3 | --- 4 | 5 | <!-- 6 | Licensed to the Apache Software Foundation (ASF) under one or more 7 | contributor license agreements. See the NOTICE file distributed with 8 | this work for additional information regarding copyright ownership. 9 | The ASF licenses this file to You under the Apache License, Version 2.0 10 | (the "License"); you may not use this file except in compliance with 11 | the License. You may obtain a copy of the License at 12 | 13 | http://www.apache.org/licenses/LICENSE-2.0 14 | 15 | Unless required by applicable law or agreed to in writing, software 16 | distributed under the License is distributed on an "AS IS" BASIS, 17 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 18 | See the License for the specific language governing permissions and 19 | limitations under the License. 20 | --> 21 | 22 | ## Level 4 23 | -------------------------------------------------------------------------------- /docs/manual/source/samples/narrow.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Narrow Page 3 | hidden: true 4 | --- 5 | 6 | <!-- 7 | Licensed to the Apache Software Foundation (ASF) under one or more 8 | contributor license agreements. See the NOTICE file distributed with 9 | this work for additional information regarding copyright ownership. 10 | The ASF licenses this file to You under the Apache License, Version 2.0 11 | (the "License"); you may not use this file except in compliance with 12 | the License. You may obtain a copy of the License at 13 | 14 | http://www.apache.org/licenses/LICENSE-2.0 15 | 16 | Unless required by applicable law or agreed to in writing, software 17 | distributed under the License is distributed on an "AS IS" BASIS, 18 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 19 | See the License for the specific language governing permissions and 20 | limitations under the License. 21 | --> 22 | 23 | Keep it short! 24 | -------------------------------------------------------------------------------- /docs/manual/source/sdk/index.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: List of PredictionIO SDKs 3 | --- 4 | 5 | <!-- 6 | Licensed to the Apache Software Foundation (ASF) under one or more 7 | contributor license agreements. See the NOTICE file distributed with 8 | this work for additional information regarding copyright ownership. 9 | The ASF licenses this file to You under the Apache License, Version 2.0 10 | (the "License"); you may not use this file except in compliance with 11 | the License. You may obtain a copy of the License at 12 | 13 | http://www.apache.org/licenses/LICENSE-2.0 14 | 15 | Unless required by applicable law or agreed to in writing, software 16 | distributed under the License is distributed on an "AS IS" BASIS, 17 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 18 | See the License for the specific language governing permissions and 19 | limitations under the License. 20 | --> 21 | 22 | ## Officially Supported SDKs 23 | 24 | * [Java & Android SDK](/sdk/java/) 25 | * [PHP SDK](/sdk/php/) 26 | * [Python SDK](/sdk/python/) 27 | * [Ruby SDK](/sdk/ruby/) 28 | 29 | ## Community Powered SDKs 30 | 31 | Check the community projects! [here](/community/projects.html#sdks). 32 | -------------------------------------------------------------------------------- /docs/manual/source/search/index.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Search Results 3 | --- 4 | 5 | <!-- 6 | Licensed to the Apache Software Foundation (ASF) under one or more 7 | contributor license agreements. See the NOTICE file distributed with 8 | this work for additional information regarding copyright ownership. 9 | The ASF licenses this file to You under the Apache License, Version 2.0 10 | (the "License"); you may not use this file except in compliance with 11 | the License. You may obtain a copy of the License at 12 | 13 | http://www.apache.org/licenses/LICENSE-2.0 14 | 15 | Unless required by applicable law or agreed to in writing, software 16 | distributed under the License is distributed on an "AS IS" BASIS, 17 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 18 | See the License for the specific language governing permissions and 19 | limitations under the License. 20 | --> 21 | 22 | <div id="st-results-container"></div> 23 | -------------------------------------------------------------------------------- /docs/manual/source/stylesheets/application.css.scss: -------------------------------------------------------------------------------- 1 | @import 'bootstrap'; 2 | @import 'variables/**/*'; 3 | @import 'mixins/**/*'; 4 | @import 'partials/**/*'; -------------------------------------------------------------------------------- /docs/manual/source/stylesheets/partials/_action_call.css.scss: -------------------------------------------------------------------------------- 1 | .action-call { 2 | font-family: $standard-font-family; 3 | @include anchor-no-underline; 4 | padding-top: 78px; 5 | padding-bottom: 10px; 6 | 7 | .action-square { 8 | height: 190px; 9 | background-color: #F7F7F7; 10 | padding: 35px; 11 | padding-top: 0; 12 | 13 | h1 { 14 | padding-top: 35px; 15 | font-size: 27px; 16 | text-align: center; 17 | font-weight: normal; 18 | } 19 | 20 | p { 21 | font-size: 16px; 22 | color: #979797; 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /docs/manual/source/stylesheets/partials/_alerts.css.scss: -------------------------------------------------------------------------------- 1 | body { // for higher priority 2 | .alert-message { 3 | margin: 1em 0 1em 0; 4 | display: block; 5 | width: auto; 6 | overflow:hidden; 7 | 8 | p { 9 | padding: 22px; 10 | margin: 0; 11 | } 12 | 13 | &.info { 14 | @include alert-border ($info-color); 15 | } 16 | &.success { 17 | @include alert-border ($success-color); 18 | } 19 | &.warning { 20 | @include alert-border ($warning-color); 21 | } 22 | &.danger { 23 | @include alert-border ($danger-color); 24 | } 25 | &.note { 26 | @include alert-border ($note-color); 27 | } 28 | &.todo { 29 | @include alert-border ($todo-color); 30 | } 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /docs/manual/source/stylesheets/partials/_breadcrumbs.css.scss: -------------------------------------------------------------------------------- 1 | #breadcrumbs { 2 | font-family: $standard-font-family; 3 | @include anchor-no-underline; 4 | ul { 5 | display: inline-block; 6 | padding: 0; 7 | } 8 | 9 | li { 10 | display: inline-block; 11 | } 12 | 13 | a { 14 | color: $breadcrumbs-link-color; 15 | } 16 | 17 | span { 18 | color: $breadcrumbs-text-color; 19 | } 20 | span.spacer { 21 | padding-left: 3px; 22 | padding-right: 3px; 23 | } 24 | } -------------------------------------------------------------------------------- /docs/manual/source/stylesheets/partials/_buttons.css.scss: -------------------------------------------------------------------------------- 1 | .button { 2 | border-radius: 5px; 3 | } 4 | 5 | .button-primary { 6 | padding: 10px 30px 10px 30px; 7 | text-shadow: none; 8 | border: none; 9 | border-radius: 100px; 10 | font-size: 16px; 11 | font-weight: 600; 12 | display: inline-block; 13 | background-color: $button-primary-background-color; 14 | color: $button-primary-font-color; 15 | &:hover { 16 | background-color: $button-primary-hover-background-color; 17 | color: $button-primary-hover-font-color; 18 | text-decoration: none; 19 | } 20 | } 21 | 22 | 23 | .button-download { 24 | box-sizing: border-box; 25 | @extend .button; 26 | height: 40px; 27 | font-size: 16px; 28 | line-height: 24px; 29 | font-weight: 600; 30 | padding: 7px 25px 0 25px; 31 | background-color: $button-download-background-color; 32 | color: $button-download-font-color; 33 | 34 | &:hover { 35 | text-decoration: none; 36 | } 37 | i { 38 | font-size: 24px; 39 | line-height: 24px; 40 | vertical-align: bottom; 41 | margin-right: 8px; 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /docs/manual/source/stylesheets/partials/_classes.css.scss: -------------------------------------------------------------------------------- 1 | .hide-text { 2 | text-indent: 100%; 3 | white-space: nowrap; 4 | overflow: hidden; 5 | } 6 | 7 | .group { 8 | display: inline-block; 9 | } 10 | 11 | .new { 12 | color: $danger-color; 13 | } 14 | 15 | .logo-dark { 16 | background-color: $logo-dark-color; 17 | display: inline-block; 18 | font-size: 0; 19 | } 20 | -------------------------------------------------------------------------------- /docs/manual/source/stylesheets/partials/_copyright.css.scss: -------------------------------------------------------------------------------- 1 | #copyright { 2 | display: inline-block; 3 | width: 800px; 4 | margin-left: 0; 5 | background-color: $footer-background-color; 6 | text-align: center; 7 | color: $copyright-font-color; 8 | padding: 25px 0 25px 0; 9 | font-size: 14px; 10 | a { 11 | color: $copyright-link-color; 12 | } 13 | 14 | .logo { 15 | margin-top: 10px; 16 | display: inline-block; 17 | } 18 | } 19 | 20 | 21 | @include medium { 22 | #copyright { 23 | margin-left: 300px; 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /docs/manual/source/stylesheets/partials/_edit_page.css.scss: -------------------------------------------------------------------------------- 1 | #edit-page { 2 | background-color: $edit-page-background-color; 3 | position: fixed; 4 | right: 25px; 5 | bottom: 0; 6 | border-top-left-radius: 5px; 7 | border-top-right-radius: 5px; 8 | 9 | i { 10 | font-size: 20px; 11 | margin-right: 7px; 12 | position: relative; 13 | top: 1px; 14 | } 15 | p { 16 | margin: 0; 17 | } 18 | a { 19 | color: $edit-page-font-color; 20 | &:hover { 21 | text-decoration: none; 22 | } 23 | display: block; 24 | font-size: 16px; 25 | font-weight: 600; 26 | margin: 7px 15px 7px 15px; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /docs/manual/source/stylesheets/partials/_global.css.scss: -------------------------------------------------------------------------------- 1 | #global { 2 | min-width: 320px; 3 | background-color: $global-background-color; 4 | } 5 | 6 | #main { 7 | background-color: $main-background-color; 8 | padding: 0 0 25px 0; 9 | width: 1100px; 10 | min-height: 800px; 11 | } 12 | 13 | .col-main { 14 | margin-left: 0; 15 | } 16 | 17 | @include medium { 18 | .col-main { 19 | margin-left: 300px; 20 | } 21 | } 22 | 23 | #page { 24 | margin-top: $header-height + $search-box-height + ($search-bar-row-vertical-padding * 2) + 50px; // header height 25 | } 26 | -------------------------------------------------------------------------------- /docs/manual/source/stylesheets/partials/_hacks.css.scss: -------------------------------------------------------------------------------- 1 | // Firefox sucks sometimes! 2 | :focus { outline: none; } 3 | ::-moz-focus-inner { border: none; } -------------------------------------------------------------------------------- /docs/manual/source/stylesheets/partials/_layout.css.scss: -------------------------------------------------------------------------------- 1 | #page.container-fluid { 2 | max-width: 1170px; 3 | } 4 | 5 | .content-header { 6 | width: auto; 7 | display: block; 8 | } 9 | 10 | .container-center { 11 | width: 1170px; 12 | display: inline-block; 13 | text-align: left; 14 | } 15 | -------------------------------------------------------------------------------- /docs/manual/source/stylesheets/partials/_modules.css.scss: -------------------------------------------------------------------------------- 1 | .pill-button { 2 | height: auto; 3 | border:1px solid #2499E6; 4 | border-radius: 3em; 5 | font-size: 12px; 6 | color: #2499E6; 7 | text-align: center; 8 | display: inline-block; 9 | letter-spacing: 2px; 10 | transition:All 0.3s ease; 11 | -webkit-transition:All 0.3s ease; 12 | -moz-transition:All 0.3s ease; 13 | -o-transition:All 0.3s ease; 14 | padding: 14px 15px; 15 | -webkit-font-smoothing: subpixel-antialiased; 16 | } 17 | 18 | .underlined-input { 19 | border:none; 20 | border-bottom: 1px solid #EBF1F9; 21 | outline: none; 22 | padding: 5px 0; 23 | 24 | } 25 | 26 | .underlined-input:focus { 27 | border-color: #249DEC; 28 | } -------------------------------------------------------------------------------- /docs/manual/source/stylesheets/partials/_off_canvas.css.scss: -------------------------------------------------------------------------------- 1 | #active-navigation { 2 | float: left; 3 | font-size: 40px; 4 | height: 40px; 5 | margin: 0 0 0 20px; 6 | color: $header-icon-color; 7 | display: block; 8 | i { 9 | vertical-align: top; 10 | } 11 | } 12 | 13 | @include medium { 14 | #active-navigation { 15 | display: none; 16 | } 17 | 18 | .active-navigation { 19 | #main { 20 | margin-right: 0; 21 | } 22 | } 23 | } 24 | 25 | // Large 26 | @include x-large { 27 | #table-of-contents { 28 | display: block; 29 | &.empty { 30 | display: none; 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /docs/manual/source/stylesheets/partials/_page_title.css.scss: -------------------------------------------------------------------------------- 1 | #page-title { 2 | h1 { 3 | font-family: $standard-font-family; 4 | margin: 0; 5 | margin-top: 15px; 6 | margin-bottom: 32px; 7 | font-size: 28px; 8 | font-weight: 400; 9 | line-height: 1.2; 10 | color: $page-title-font-color; 11 | word-wrap: break-word; 12 | &.missing { 13 | color: $danger-color; 14 | } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /docs/manual/source/stylesheets/partials/_search_bar_row.css.scss: -------------------------------------------------------------------------------- 1 | #search-bar-row-wrapper { 2 | font-family: $standard-font-family; 3 | height: $search-box-height + ($search-bar-row-vertical-padding * 2); 4 | width: 100%; 5 | position: fixed; 6 | top: $header-height; 7 | padding-top: $search-bar-row-vertical-padding; 8 | padding-bottom: $search-bar-row-vertical-padding; 9 | z-index: 9998; 10 | background-color: $white; 11 | box-sizing: border-box; 12 | line-height: 15px; 13 | border-bottom: 1px solid $search-box-wrapper-border-color; 14 | #search-bar-row { 15 | height: 100%; 16 | max-width: 1170px; 17 | h4 { 18 | font-size: 15px; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /docs/manual/source/stylesheets/partials/_table_of_contents.css.scss: -------------------------------------------------------------------------------- 1 | #table-of-content-wrapper { 2 | font-family: $standard-font-family; 3 | display: inline-block; 4 | width: 262.5px; 5 | box-sizing: border-box; 6 | float: right; 7 | margin-left: 20px; 8 | margin-bottom: 20px; 9 | padding: 20px 15px; 10 | border: 1px solid #dddddd; 11 | 12 | @include anchor-no-underline; 13 | 14 | h5 { 15 | font-size: 13px; 16 | color: $black; 17 | } 18 | 19 | hr { 20 | margin-top: 0; 21 | } 22 | 23 | ul { 24 | padding: 0; 25 | margin: 0; 26 | font-size: 14px; 27 | line-height: 24px; 28 | color: $table-of-contents-font-color; 29 | 30 | ul { 31 | padding-left: 20px; 32 | } 33 | } 34 | 35 | li { 36 | list-style-type: none; 37 | padding: 14px 0; 38 | } 39 | 40 | a { 41 | color: $table-of-contents-link-color; 42 | } 43 | 44 | #edit-page-link { 45 | color: $table-of-contents-edit-page-link-color; 46 | font-size: 13px; 47 | 48 | &:hover { 49 | text-decoration: none; 50 | } 51 | 52 | img { 53 | height: 19px; 54 | margin-right: 5px; 55 | } 56 | 57 | } 58 | } 59 | -------------------------------------------------------------------------------- /docs/manual/source/stylesheets/partials/_tables.css.scss: -------------------------------------------------------------------------------- 1 | table { 2 | width: 100%; 3 | th { 4 | text-align: left; 5 | } 6 | 7 | tr { 8 | border-bottom: 1px solid $border-color; 9 | } 10 | 11 | td, th { 12 | padding: 2px 20px 2px 0; 13 | } 14 | 15 | } -------------------------------------------------------------------------------- /docs/manual/source/stylesheets/partials/_tags.css.scss: -------------------------------------------------------------------------------- 1 | body { 2 | font-family: $body-font-family; 3 | color: $body-font-color; 4 | background-color: $footer-background-color; 5 | } 6 | 7 | a { 8 | color: $link-color; 9 | text-decoration: none; 10 | &:hover { 11 | text-decoration: underline; 12 | } 13 | } 14 | 15 | // Hack for links with anchors with fixed header! 16 | :target:before { 17 | display: block; 18 | content: ''; 19 | margin-top: -100px; 20 | height: 100px; 21 | visibility: hidden; 22 | } 23 | 24 | blockquote { 25 | margin: 0; 26 | p { 27 | padding: 20px; 28 | } 29 | 30 | background-color: $blockquote-background-color; 31 | } 32 | -------------------------------------------------------------------------------- /docs/manual/source/stylesheets/partials/_tryit.css.scss: -------------------------------------------------------------------------------- 1 | .codepicnic { 2 | display: flex; 3 | margin-top: 20px; 4 | flex-wrap: wrap; 5 | 6 | i { 7 | font-weight: 600; 8 | color: $tryit-i-color; 9 | } 10 | } 11 | 12 | .tutorial { 13 | margin: 0 25px 0 0; 14 | min-width: 400px; 15 | } 16 | 17 | @include large { 18 | .codepicnic { 19 | flex-wrap: nowrap; 20 | } 21 | 22 | } 23 | 24 | .iframe { 25 | width: 100%; 26 | margin-bottom: 70px; 27 | 28 | iframe { 29 | border: 1px solid $border-color; 30 | width: 100%; 31 | height: 100%; 32 | min-height: 500px; 33 | } 34 | } 35 | 36 | .tryit { 37 | 38 | #main { 39 | width: 100%; 40 | } 41 | 42 | #footer { 43 | width: 100%; 44 | margin-left: 0; 45 | } 46 | 47 | #copyright { 48 | width: 100%; 49 | margin-left: 0; 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /docs/manual/source/stylesheets/partials/nav/_header.css.scss: -------------------------------------------------------------------------------- 1 | #nav-header { 2 | display: none; 3 | margin: 0 25px 0 0; 4 | ul { 5 | padding: 0; 6 | margin: 8px 0 0 0; 7 | } 8 | li { 9 | display: inline-block; 10 | margin-right: 25px; 11 | &:last-child { 12 | margin-right: 0; 13 | } 14 | } 15 | a { 16 | font-weight: 400; 17 | color: $nav-header-link-color; 18 | font-size: 18px; 19 | } 20 | 21 | 22 | @include medium { 23 | display :inline-block; 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /docs/manual/source/stylesheets/partials/nav/_page.css.scss: -------------------------------------------------------------------------------- 1 | #nav-page { 2 | font-size: 24px; 3 | white-space: nowrap; 4 | display: inline-block; 5 | margin: 15px 25px 0 -100px; 6 | a { 7 | color: $nav-page-icon-color; 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /docs/manual/source/stylesheets/variables/_fonts.css.scss: -------------------------------------------------------------------------------- 1 | $standard-font-family: "pt-sans", 'Helvetica Neue', Helvetica, Arial, sans-serif; 2 | $body-font-family: "pt-sans", 'Helvetica Neue', Helvetica, Arial, sans-serif; 3 | $code-font-family: Menlo, Monaco, Consolas, monospace; 4 | -------------------------------------------------------------------------------- /docs/manual/source/stylesheets/variables/_sizes.css.scss: -------------------------------------------------------------------------------- 1 | $search-bar-row-height: 56px; 2 | $header-height: 83px; 3 | $mobile-header-height: 56px; 4 | $search-box-height: 36px; 5 | $search-bar-row-vertical-padding: 10px; -------------------------------------------------------------------------------- /docs/manual/source/templates/classification/how-to.html.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: How-To (Classification) 3 | --- 4 | 5 | <!-- 6 | Licensed to the Apache Software Foundation (ASF) under one or more 7 | contributor license agreements. See the NOTICE file distributed with 8 | this work for additional information regarding copyright ownership. 9 | The ASF licenses this file to You under the Apache License, Version 2.0 10 | (the "License"); you may not use this file except in compliance with 11 | the License. You may obtain a copy of the License at 12 | 13 | http://www.apache.org/licenses/LICENSE-2.0 14 | 15 | Unless required by applicable law or agreed to in writing, software 16 | distributed under the License is distributed on an "AS IS" BASIS, 17 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 18 | See the License for the specific language governing permissions and 19 | limitations under the License. 20 | --> 21 | 22 | Here are the pages that show you how you can customize the Classification engine template. 23 | 24 | - [Use Alternative Algorithm](/templates/classification/add-algorithm/) 25 | - [Read Custom Properties](/templates/classification/reading-custom-properties/) 26 | -------------------------------------------------------------------------------- /docs/scaladoc/README.md: -------------------------------------------------------------------------------- 1 | <!-- 2 | Licensed to the Apache Software Foundation (ASF) under one or more 3 | contributor license agreements. See the NOTICE file distributed with 4 | this work for additional information regarding copyright ownership. 5 | The ASF licenses this file to You under the Apache License, Version 2.0 6 | (the "License"); you may not use this file except in compliance with 7 | the License. You may obtain a copy of the License at 8 | 9 | http://www.apache.org/licenses/LICENSE-2.0 10 | 11 | Unless required by applicable law or agreed to in writing, software 12 | distributed under the License is distributed on an "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | See the License for the specific language governing permissions and 15 | limitations under the License. 16 | --> 17 | 18 | Scala API Documentation 19 | ======================= 20 | 21 | 1. Run this command at the project's root. 22 | ``` 23 | $ sbt/sbt pioUnidoc 24 | ``` 25 | 26 | 2. Point your web browser at `target/scala-2.11/unidoc/index.html`. 27 | -------------------------------------------------------------------------------- /docs/scaladoc/api-docs.css: -------------------------------------------------------------------------------- 1 | .developer { 2 | background-color: #44751E; 3 | } 4 | 5 | .experimental { 6 | background-color: #257080; 7 | } 8 | 9 | .badge { 10 | font-family: Arial, san-serif; 11 | float: right; 12 | } 13 | -------------------------------------------------------------------------------- /docs/scaladoc/api-docs.js: -------------------------------------------------------------------------------- 1 | $(document).ready(function() { 2 | var annotations = $("dt:contains('Annotations')").next("dd").children("span.name"); 3 | addBadges(annotations, "DeveloperApi", ":: DeveloperApi ::", '<span class="developer badge">Core Developer API</span>'); 4 | addBadges(annotations, "Experimental", ":: Experimental ::", '<span class="experimental badge">Experimental</span>'); 5 | }); 6 | 7 | function addBadges(allAnnotations, name, tag, html) { 8 | var annotations = allAnnotations.filter(":contains('" + name + "')") 9 | var tags = $(".cmt:contains(" + tag + ")") 10 | 11 | // Remove identifier tags from comments 12 | tags.each(function(index) { 13 | var oldHTML = $(this).html(); 14 | var newHTML = oldHTML.replace(tag, ""); 15 | $(this).html(newHTML); 16 | }); 17 | 18 | // Add badges to all containers 19 | tags.prevAll("h4.signature") 20 | .add(annotations.closest("div.fullcommenttop")) 21 | .add(annotations.closest("div.fullcomment").prevAll("h4.signature")) 22 | .prepend(html); 23 | } 24 | -------------------------------------------------------------------------------- /docs/scaladoc/rootdoc.txt: -------------------------------------------------------------------------------- 1 | This is the API documentation of Apache PredictionIO. 2 | 3 | == Package Structure == 4 | 5 | - [[org.apache.predictionio.controller]] - The common starting point. Building blocks of a prediction engine. 6 | - [[org.apache.predictionio.data.store]] - Event Store API. 7 | 8 | == Experimental Features == 9 | 10 | Classes and methods marked with <span class="experimental badge" style="float: 11 | none;">Experimental</span> are user-facing features which have not been 12 | officially adopted by the PredictionIO project. These are subject to change or 13 | removal in minor releases. 14 | 15 | == Developer API == 16 | 17 | Classes and methods marked with <span class="developer badge" style="float: 18 | none;">Core Developer API</span> are intended for advanced users who want to 19 | extend PredictionIO through lower level interfaces. These are subject to changes 20 | or removal in minor releases. 21 | -------------------------------------------------------------------------------- /e2/build.sbt: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | import PIOBuild._ 19 | 20 | name := "apache-predictionio-e2" 21 | 22 | parallelExecution in Test := false 23 | 24 | libraryDependencies ++= Seq( 25 | "org.apache.spark" %% "spark-mllib" % sparkVersion.value % "provided", 26 | "org.scalatest" %% "scalatest" % "2.2.5" % "test") 27 | 28 | pomExtra := childrenPomExtra.value 29 | -------------------------------------------------------------------------------- /e2/src/main/resources/META-INF/LICENSE.txt: -------------------------------------------------------------------------------- 1 | ../../../../../LICENSE.txt -------------------------------------------------------------------------------- /e2/src/main/resources/META-INF/NOTICE.txt: -------------------------------------------------------------------------------- 1 | ../../../../../NOTICE.txt -------------------------------------------------------------------------------- /e2/src/main/scala/org/apache/predictionio/e2/package.scala: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | 19 | package org.apache.predictionio.e2 20 | 21 | /** Collection of engine libraries that have no dependency on PredictionIO */ 22 | package object engine {} 23 | 24 | /** Collection of evaluation libraries that have no dependency on PredictionIO */ 25 | package object evaluation {} 26 | -------------------------------------------------------------------------------- /e2/src/main/scala/org/apache/predictionio/package.scala: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | 19 | package org.apache.predictionio 20 | 21 | /** Independent library of code that is useful for engine development and 22 | * evaluation 23 | */ 24 | package object e2 {} 25 | -------------------------------------------------------------------------------- /examples/redeploy-script/local.sh.template: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | ########################## 4 | # Rename this to local.sh 5 | ########################## 6 | 7 | ################################## 8 | # Settings common to all variants 9 | ################################## 10 | PIO_HOME= #/path/to/PredictionIO 11 | LOG_DIR= #/path/to/log_dir 12 | 13 | # Email for the log file/error message 14 | FROM_EMAIL= # 15 | TARGET_EMAIL= # 16 | 17 | # Change the default binding IP if neeeded 18 | IP=0.0.0.0 19 | 20 | EVENT_SERVER_PORT=7070 21 | 22 | # Sanity check below 23 | 24 | check_non_empty() { 25 | # $1 is the content of the variable in quotes e.g. "$FROM_EMAIL" 26 | # $2 is the error message 27 | if [[ $1 == "" ]]; then 28 | echo "ERROR: specify $2" 29 | exit -1 30 | fi 31 | } 32 | 33 | check_non_empty "$PIO_HOME" "PIO_HOME in local.sh" 34 | check_non_empty "$LOG_DIR" "LOG_DIR in local.sh" 35 | check_non_empty "$FROM_EMAIL" "FROM_EMAIL in local.sh" 36 | check_non_empty "$TARGET_EMAIL" "TARGET_EMAIL in local.sh" 37 | -------------------------------------------------------------------------------- /examples/scala-parallel-classification/README.md: -------------------------------------------------------------------------------- 1 | <!-- 2 | Licensed to the Apache Software Foundation (ASF) under one or more 3 | contributor license agreements. See the NOTICE file distributed with 4 | this work for additional information regarding copyright ownership. 5 | The ASF licenses this file to You under the Apache License, Version 2.0 6 | (the "License"); you may not use this file except in compliance with 7 | the License. You may obtain a copy of the License at 8 | 9 | http://www.apache.org/licenses/LICENSE-2.0 10 | 11 | Unless required by applicable law or agreed to in writing, software 12 | distributed under the License is distributed on an "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | See the License for the specific language governing permissions and 15 | limitations under the License. 16 | --> 17 | 18 | This is based on Classification Engine Template v0.14.0. 19 | 20 | Please refer to https://predictionio.apache.org/templates/classification/how-to/ 21 | -------------------------------------------------------------------------------- /examples/scala-parallel-classification/add-algorithm/.gitignore: -------------------------------------------------------------------------------- 1 | manifest.json 2 | pio.log 3 | /pio.sbt 4 | target/ 5 | .idea 6 | -------------------------------------------------------------------------------- /examples/scala-parallel-classification/add-algorithm/engine.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "default", 3 | "description": "Default settings", 4 | "engineFactory": "org.apache.predictionio.examples.classification.ClassificationEngine", 5 | "datasource": { 6 | "params": { 7 | "appName": "MyApp1" 8 | } 9 | }, 10 | "algorithms": [ 11 | { 12 | "name": "randomforest", 13 | "params": { 14 | "numClasses": 4, 15 | "numTrees": 5, 16 | "featureSubsetStrategy": "auto", 17 | "impurity": "gini", 18 | "maxDepth": 4, 19 | "maxBins": 100 20 | } 21 | } 22 | ] 23 | } 24 | -------------------------------------------------------------------------------- /examples/scala-parallel-classification/add-algorithm/project/assembly.sbt: -------------------------------------------------------------------------------- 1 | addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.9") 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-classification/add-algorithm/project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.2.8 -------------------------------------------------------------------------------- /examples/scala-parallel-classification/add-algorithm/template.json: -------------------------------------------------------------------------------- 1 | {"pio": {"version": { "min": "0.10.0-incubating" }}} 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-classification/reading-custom-properties/.gitignore: -------------------------------------------------------------------------------- 1 | manifest.json 2 | pio.log 3 | /pio.sbt 4 | target/ 5 | .idea 6 | -------------------------------------------------------------------------------- /examples/scala-parallel-classification/reading-custom-properties/engine.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "default", 3 | "description": "Default settings", 4 | "engineFactory": "org.apache.predictionio.examples.classification.ClassificationEngine", 5 | "datasource": { 6 | "params": { 7 | "appName": "MyApp1" 8 | } 9 | }, 10 | "algorithms": [ 11 | { 12 | "name": "naive", 13 | "params": { 14 | "lambda": 1.0 15 | } 16 | } 17 | ] 18 | } 19 | -------------------------------------------------------------------------------- /examples/scala-parallel-classification/reading-custom-properties/project/assembly.sbt: -------------------------------------------------------------------------------- 1 | addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.9") 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-classification/reading-custom-properties/project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.2.8 -------------------------------------------------------------------------------- /examples/scala-parallel-classification/reading-custom-properties/template.json: -------------------------------------------------------------------------------- 1 | {"pio": {"version": { "min": "0.10.0-incubating" }}} 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-ecommercerecommendation/README.md: -------------------------------------------------------------------------------- 1 | <!-- 2 | Licensed to the Apache Software Foundation (ASF) under one or more 3 | contributor license agreements. See the NOTICE file distributed with 4 | this work for additional information regarding copyright ownership. 5 | The ASF licenses this file to You under the Apache License, Version 2.0 6 | (the "License"); you may not use this file except in compliance with 7 | the License. You may obtain a copy of the License at 8 | 9 | http://www.apache.org/licenses/LICENSE-2.0 10 | 11 | Unless required by applicable law or agreed to in writing, software 12 | distributed under the License is distributed on an "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | See the License for the specific language governing permissions and 15 | limitations under the License. 16 | --> 17 | 18 | This is based on E-Commerce Recommendation Template v0.14.0. 19 | 20 | Please refer to https://predictionio.apache.org/templates/ecommercerecommendation/how-to/ 21 | -------------------------------------------------------------------------------- /examples/scala-parallel-ecommercerecommendation/adjust-score/.gitignore: -------------------------------------------------------------------------------- 1 | manifest.json 2 | target/ 3 | pio.log 4 | /pio.sbt 5 | -------------------------------------------------------------------------------- /examples/scala-parallel-ecommercerecommendation/adjust-score/data/send_query.py: -------------------------------------------------------------------------------- 1 | # 2 | # Licensed to the Apache Software Foundation (ASF) under one or more 3 | # contributor license agreements. See the NOTICE file distributed with 4 | # this work for additional information regarding copyright ownership. 5 | # The ASF licenses this file to You under the Apache License, Version 2.0 6 | # (the "License"); you may not use this file except in compliance with 7 | # the License. You may obtain a copy of the License at 8 | # 9 | # http://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, software 12 | # distributed under the License is distributed on an "AS IS" BASIS, 13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | # See the License for the specific language governing permissions and 15 | # limitations under the License. 16 | # 17 | 18 | """ 19 | Send sample query to prediction engine 20 | """ 21 | 22 | import predictionio 23 | engine_client = predictionio.EngineClient(url="http://localhost:8000") 24 | print(engine_client.send_query({"user": "u1", "num": 4})) 25 | -------------------------------------------------------------------------------- /examples/scala-parallel-ecommercerecommendation/adjust-score/engine.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "default", 3 | "description": "Default settings", 4 | "engineFactory": "org.apache.predictionio.examples.ecommercerecommendation.ECommerceRecommendationEngine", 5 | "datasource": { 6 | "params" : { 7 | "appName": "MyApp1" 8 | } 9 | }, 10 | "algorithms": [ 11 | { 12 | "name": "ecomm", 13 | "params": { 14 | "appName": "MyApp1", 15 | "unseenOnly": true, 16 | "seenEvents": ["buy", "view"], 17 | "similarEvents": ["view"], 18 | "rank": 10, 19 | "numIterations" : 20, 20 | "lambda": 0.01, 21 | "seed": 3 22 | } 23 | } 24 | ] 25 | } 26 | -------------------------------------------------------------------------------- /examples/scala-parallel-ecommercerecommendation/adjust-score/project/assembly.sbt: -------------------------------------------------------------------------------- 1 | addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.9") 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-ecommercerecommendation/adjust-score/project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.2.8 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-ecommercerecommendation/adjust-score/template.json: -------------------------------------------------------------------------------- 1 | {"pio": {"version": { "min": "0.10.0-incubating" }}} 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-ecommercerecommendation/train-with-rate-event/data/send_query.py: -------------------------------------------------------------------------------- 1 | # 2 | # Licensed to the Apache Software Foundation (ASF) under one or more 3 | # contributor license agreements. See the NOTICE file distributed with 4 | # this work for additional information regarding copyright ownership. 5 | # The ASF licenses this file to You under the Apache License, Version 2.0 6 | # (the "License"); you may not use this file except in compliance with 7 | # the License. You may obtain a copy of the License at 8 | # 9 | # http://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, software 12 | # distributed under the License is distributed on an "AS IS" BASIS, 13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | # See the License for the specific language governing permissions and 15 | # limitations under the License. 16 | # 17 | 18 | """ 19 | Send sample query to prediction engine 20 | """ 21 | 22 | import predictionio 23 | engine_client = predictionio.EngineClient(url="http://localhost:8000") 24 | print(engine_client.send_query({"user": "u1", "num": 4})) 25 | -------------------------------------------------------------------------------- /examples/scala-parallel-ecommercerecommendation/train-with-rate-event/engine.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "default", 3 | "description": "Default settings", 4 | "engineFactory": "org.apache.predictionio.examples.ecommercerecommendation.ECommerceRecommendationEngine", 5 | "datasource": { 6 | "params" : { 7 | "appName": "MyApp1" 8 | } 9 | }, 10 | "algorithms": [ 11 | { 12 | "name": "ecomm", 13 | "params": { 14 | "appName": "MyApp1", 15 | "unseenOnly": true, 16 | "seenEvents": ["buy", "view"], 17 | "similarEvents": ["view"], 18 | "rank": 10, 19 | "numIterations" : 20, 20 | "lambda": 0.01, 21 | "seed": 3 22 | } 23 | } 24 | ] 25 | } 26 | -------------------------------------------------------------------------------- /examples/scala-parallel-ecommercerecommendation/train-with-rate-event/project/assembly.sbt: -------------------------------------------------------------------------------- 1 | addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.9") 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-ecommercerecommendation/train-with-rate-event/project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.2.8 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-ecommercerecommendation/train-with-rate-event/template.json: -------------------------------------------------------------------------------- 1 | {"pio": {"version": { "min": "0.10.0-incubating" }}} 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/README.md: -------------------------------------------------------------------------------- 1 | <!-- 2 | Licensed to the Apache Software Foundation (ASF) under one or more 3 | contributor license agreements. See the NOTICE file distributed with 4 | this work for additional information regarding copyright ownership. 5 | The ASF licenses this file to You under the Apache License, Version 2.0 6 | (the "License"); you may not use this file except in compliance with 7 | the License. You may obtain a copy of the License at 8 | 9 | http://www.apache.org/licenses/LICENSE-2.0 10 | 11 | Unless required by applicable law or agreed to in writing, software 12 | distributed under the License is distributed on an "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | See the License for the specific language governing permissions and 15 | limitations under the License. 16 | --> 17 | 18 | This is based on Recommendation Template v0.14.0. 19 | 20 | Please refer to https://predictionio.apache.org/templates/recommendation/how-to/ 21 | -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/blacklist-items/data/send_query.py: -------------------------------------------------------------------------------- 1 | # 2 | # Licensed to the Apache Software Foundation (ASF) under one or more 3 | # contributor license agreements. See the NOTICE file distributed with 4 | # this work for additional information regarding copyright ownership. 5 | # The ASF licenses this file to You under the Apache License, Version 2.0 6 | # (the "License"); you may not use this file except in compliance with 7 | # the License. You may obtain a copy of the License at 8 | # 9 | # http://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, software 12 | # distributed under the License is distributed on an "AS IS" BASIS, 13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | # See the License for the specific language governing permissions and 15 | # limitations under the License. 16 | # 17 | 18 | """ 19 | Send sample query to prediction engine 20 | """ 21 | 22 | import predictionio 23 | engine_client = predictionio.EngineClient(url="http://localhost:8000") 24 | print(engine_client.send_query({"user": "1", "num": 4})) 25 | -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/blacklist-items/engine.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "default", 3 | "description": "Default settings", 4 | "engineFactory": "org.apache.predictionio.examples.recommendation.RecommendationEngine", 5 | "datasource": { 6 | "params" : { 7 | "appName": "MyApp1" 8 | } 9 | }, 10 | "algorithms": [ 11 | { 12 | "name": "als", 13 | "params": { 14 | "rank": 10, 15 | "numIterations": 20, 16 | "lambda": 0.01, 17 | "seed": 3 18 | } 19 | } 20 | ] 21 | } 22 | -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/blacklist-items/project/assembly.sbt: -------------------------------------------------------------------------------- 1 | addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.9") -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/blacklist-items/project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.2.8 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/blacklist-items/template.json: -------------------------------------------------------------------------------- 1 | {"pio": {"version": { "min": "0.10.0-incubating" }}} 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/customize-data-prep/.gitignore: -------------------------------------------------------------------------------- 1 | data/sample_movielens_data.txt 2 | manifest.json 3 | target/ 4 | pio.log 5 | /pio.sbt -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/customize-data-prep/data/sample_not_train_data.txt: -------------------------------------------------------------------------------- 1 | 3 2 | 4 3 | 10 4 | 22 5 | 34 6 | 54 7 | 65 8 | 89 9 | -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/customize-data-prep/data/send_query.py: -------------------------------------------------------------------------------- 1 | # 2 | # Licensed to the Apache Software Foundation (ASF) under one or more 3 | # contributor license agreements. See the NOTICE file distributed with 4 | # this work for additional information regarding copyright ownership. 5 | # The ASF licenses this file to You under the Apache License, Version 2.0 6 | # (the "License"); you may not use this file except in compliance with 7 | # the License. You may obtain a copy of the License at 8 | # 9 | # http://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, software 12 | # distributed under the License is distributed on an "AS IS" BASIS, 13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | # See the License for the specific language governing permissions and 15 | # limitations under the License. 16 | # 17 | 18 | """ 19 | Send sample query to prediction engine 20 | """ 21 | 22 | import predictionio 23 | engine_client = predictionio.EngineClient(url="http://localhost:8000") 24 | print(engine_client.send_query({"user": "1", "num": 4})) 25 | -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/customize-data-prep/engine.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "default", 3 | "description": "Default settings", 4 | "engineFactory": "org.apache.predictionio.examples.recommendation.RecommendationEngine", 5 | "datasource": { 6 | "params" : { 7 | "appName": "MyApp1" 8 | } 9 | }, 10 | "preparator": { 11 | "params": { 12 | "filepath": "./data/sample_not_train_data.txt" 13 | } 14 | }, 15 | "algorithms": [ 16 | { 17 | "name": "als", 18 | "params": { 19 | "rank": 10, 20 | "numIterations": 20, 21 | "lambda": 0.01, 22 | "seed": 3 23 | } 24 | } 25 | ] 26 | } 27 | -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/customize-data-prep/project/assembly.sbt: -------------------------------------------------------------------------------- 1 | addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.9") -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/customize-data-prep/project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.2.8 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/customize-data-prep/template.json: -------------------------------------------------------------------------------- 1 | {"pio": {"version": { "min": "0.10.0-incubating" }}} 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/customize-serving/.gitignore: -------------------------------------------------------------------------------- 1 | data/sample_movielens_data.txt 2 | manifest.json 3 | target/ 4 | pio.log 5 | /pio.sbt -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/customize-serving/data/sample_disabled_items.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/examples/scala-parallel-recommendation/customize-serving/data/sample_disabled_items.txt -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/customize-serving/data/send_query.py: -------------------------------------------------------------------------------- 1 | # 2 | # Licensed to the Apache Software Foundation (ASF) under one or more 3 | # contributor license agreements. See the NOTICE file distributed with 4 | # this work for additional information regarding copyright ownership. 5 | # The ASF licenses this file to You under the Apache License, Version 2.0 6 | # (the "License"); you may not use this file except in compliance with 7 | # the License. You may obtain a copy of the License at 8 | # 9 | # http://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, software 12 | # distributed under the License is distributed on an "AS IS" BASIS, 13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | # See the License for the specific language governing permissions and 15 | # limitations under the License. 16 | # 17 | 18 | """ 19 | Send sample query to prediction engine 20 | """ 21 | 22 | import predictionio 23 | engine_client = predictionio.EngineClient(url="http://localhost:8000") 24 | print(engine_client.send_query({"user": "1", "num": 4})) 25 | -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/customize-serving/engine.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "default", 3 | "description": "Default settings", 4 | "engineFactory": "org.apache.predictionio.examples.recommendation.RecommendationEngine", 5 | "datasource": { 6 | "params" : { 7 | "appName": "MyApp1" 8 | } 9 | }, 10 | "algorithms": [ 11 | { 12 | "name": "als", 13 | "params": { 14 | "rank": 10, 15 | "numIterations": 20, 16 | "lambda": 0.01, 17 | "seed": 3 18 | } 19 | } 20 | ], 21 | "serving": { 22 | "params": { 23 | "filepath": "./data/sample_disabled_items.txt" 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/customize-serving/project/assembly.sbt: -------------------------------------------------------------------------------- 1 | addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.9") -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/customize-serving/project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.2.8 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/customize-serving/template.json: -------------------------------------------------------------------------------- 1 | {"pio": {"version": { "min": "0.10.0-incubating" }}} 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/reading-custom-events/.gitignore: -------------------------------------------------------------------------------- 1 | data/sample_movielens_data.txt 2 | manifest.json 3 | target/ 4 | pio.log 5 | /pio.sbt -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/reading-custom-events/data/send_query.py: -------------------------------------------------------------------------------- 1 | # 2 | # Licensed to the Apache Software Foundation (ASF) under one or more 3 | # contributor license agreements. See the NOTICE file distributed with 4 | # this work for additional information regarding copyright ownership. 5 | # The ASF licenses this file to You under the Apache License, Version 2.0 6 | # (the "License"); you may not use this file except in compliance with 7 | # the License. You may obtain a copy of the License at 8 | # 9 | # http://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, software 12 | # distributed under the License is distributed on an "AS IS" BASIS, 13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | # See the License for the specific language governing permissions and 15 | # limitations under the License. 16 | # 17 | 18 | """ 19 | Send sample query to prediction engine 20 | """ 21 | 22 | import predictionio 23 | engine_client = predictionio.EngineClient(url="http://localhost:8000") 24 | print(engine_client.send_query({"user": "1", "num": 4})) 25 | -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/reading-custom-events/engine.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "default", 3 | "description": "Default settings", 4 | "engineFactory": "org.apache.predictionio.examples.recommendation.RecommendationEngine", 5 | "datasource": { 6 | "params" : { 7 | "appName": "MyApp1" 8 | } 9 | }, 10 | "algorithms": [ 11 | { 12 | "name": "als", 13 | "params": { 14 | "rank": 10, 15 | "numIterations": 20, 16 | "lambda": 0.01, 17 | "seed": 3 18 | } 19 | } 20 | ] 21 | } 22 | -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/reading-custom-events/project/assembly.sbt: -------------------------------------------------------------------------------- 1 | addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.9") -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/reading-custom-events/project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.2.8 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/reading-custom-events/template.json: -------------------------------------------------------------------------------- 1 | {"pio": {"version": { "min": "0.10.0-incubating" }}} 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/train-with-view-event/.gitignore: -------------------------------------------------------------------------------- 1 | data/sample_movielens_data.txt 2 | manifest.json 3 | target/ 4 | pio.log 5 | /pio.sbt -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/train-with-view-event/data/send_query.py: -------------------------------------------------------------------------------- 1 | # 2 | # Licensed to the Apache Software Foundation (ASF) under one or more 3 | # contributor license agreements. See the NOTICE file distributed with 4 | # this work for additional information regarding copyright ownership. 5 | # The ASF licenses this file to You under the Apache License, Version 2.0 6 | # (the "License"); you may not use this file except in compliance with 7 | # the License. You may obtain a copy of the License at 8 | # 9 | # http://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, software 12 | # distributed under the License is distributed on an "AS IS" BASIS, 13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | # See the License for the specific language governing permissions and 15 | # limitations under the License. 16 | # 17 | 18 | """ 19 | Send sample query to prediction engine 20 | """ 21 | 22 | import predictionio 23 | engine_client = predictionio.EngineClient(url="http://localhost:8000") 24 | print(engine_client.send_query({"user": "1", "num": 4})) 25 | -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/train-with-view-event/engine.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "default", 3 | "description": "Default settings", 4 | "engineFactory": "org.apache.predictionio.examples.recommendation.RecommendationEngine", 5 | "datasource": { 6 | "params" : { 7 | "appName": "MyApp1" 8 | } 9 | }, 10 | "algorithms": [ 11 | { 12 | "name": "als", 13 | "params": { 14 | "rank": 10, 15 | "numIterations": 20, 16 | "lambda": 0.01, 17 | "seed": 3 18 | } 19 | } 20 | ] 21 | } 22 | -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/train-with-view-event/project/assembly.sbt: -------------------------------------------------------------------------------- 1 | addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.9") -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/train-with-view-event/project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.2.8 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-recommendation/train-with-view-event/template.json: -------------------------------------------------------------------------------- 1 | {"pio": {"version": { "min": "0.10.0-incubating" }}} 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/README.md: -------------------------------------------------------------------------------- 1 | <!-- 2 | Licensed to the Apache Software Foundation (ASF) under one or more 3 | contributor license agreements. See the NOTICE file distributed with 4 | this work for additional information regarding copyright ownership. 5 | The ASF licenses this file to You under the Apache License, Version 2.0 6 | (the "License"); you may not use this file except in compliance with 7 | the License. You may obtain a copy of the License at 8 | 9 | http://www.apache.org/licenses/LICENSE-2.0 10 | 11 | Unless required by applicable law or agreed to in writing, software 12 | distributed under the License is distributed on an "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | See the License for the specific language governing permissions and 15 | limitations under the License. 16 | --> 17 | 18 | This is based on Similar Product Template v0.14.0. 19 | 20 | Please refer to https://predictionio.apache.org/templates/similarproduct/how-to/ 21 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/multi-events-multi-algos/.gitignore: -------------------------------------------------------------------------------- 1 | manifest.json 2 | target/ 3 | pio.log 4 | /pio.sbt -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/multi-events-multi-algos/data/send_query.py: -------------------------------------------------------------------------------- 1 | # 2 | # Licensed to the Apache Software Foundation (ASF) under one or more 3 | # contributor license agreements. See the NOTICE file distributed with 4 | # this work for additional information regarding copyright ownership. 5 | # The ASF licenses this file to You under the Apache License, Version 2.0 6 | # (the "License"); you may not use this file except in compliance with 7 | # the License. You may obtain a copy of the License at 8 | # 9 | # http://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, software 12 | # distributed under the License is distributed on an "AS IS" BASIS, 13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | # See the License for the specific language governing permissions and 15 | # limitations under the License. 16 | # 17 | 18 | """ 19 | Send sample query to prediction engine 20 | """ 21 | 22 | import predictionio 23 | engine_client = predictionio.EngineClient(url="http://localhost:8000") 24 | print(engine_client.send_query({"items": ["i1", "i3"], "num": 4})) 25 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/multi-events-multi-algos/engine-cooccurrence.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "default", 3 | "description": "Default settings", 4 | "engineFactory": "org.apache.predictionio.examples.similarproduct.SimilarProductEngine", 5 | "datasource": { 6 | "params" : { 7 | "appName": "MyApp1" 8 | } 9 | }, 10 | "algorithms": [ 11 | { 12 | "name": "cooccurrence", 13 | "params": { 14 | "n": 20 15 | } 16 | } 17 | ] 18 | } 19 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/multi-events-multi-algos/engine.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "default", 3 | "description": "Default settings", 4 | "engineFactory": "org.apache.predictionio.examples.similarproduct.SimilarProductEngine", 5 | "datasource": { 6 | "params" : { 7 | "appName": "MyApp1" 8 | } 9 | }, 10 | "algorithms": [ 11 | { 12 | "name": "als", 13 | "params": { 14 | "rank": 10, 15 | "numIterations" : 20, 16 | "lambda": 0.01, 17 | "seed": 3 18 | } 19 | }, 20 | { 21 | "name": "likealgo", 22 | "params": { 23 | "rank": 8, 24 | "numIterations" : 15, 25 | "lambda": 0.01, 26 | "seed": 3 27 | } 28 | } 29 | ] 30 | } 31 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/multi-events-multi-algos/project/assembly.sbt: -------------------------------------------------------------------------------- 1 | addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.9") 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/multi-events-multi-algos/project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.2.8 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/multi-events-multi-algos/template.json: -------------------------------------------------------------------------------- 1 | {"pio": {"version": { "min": "0.10.0-incubating" }}} 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/recommended-user/.gitignore: -------------------------------------------------------------------------------- 1 | manifest.json 2 | target/ 3 | pio.log 4 | /pio.sbt -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/recommended-user/data/send_query.py: -------------------------------------------------------------------------------- 1 | # 2 | # Licensed to the Apache Software Foundation (ASF) under one or more 3 | # contributor license agreements. See the NOTICE file distributed with 4 | # this work for additional information regarding copyright ownership. 5 | # The ASF licenses this file to You under the Apache License, Version 2.0 6 | # (the "License"); you may not use this file except in compliance with 7 | # the License. You may obtain a copy of the License at 8 | # 9 | # http://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, software 12 | # distributed under the License is distributed on an "AS IS" BASIS, 13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | # See the License for the specific language governing permissions and 15 | # limitations under the License. 16 | # 17 | 18 | """ 19 | Send sample query to prediction engine 20 | """ 21 | 22 | import predictionio 23 | engine_client = predictionio.EngineClient(url="http://localhost:8000") 24 | print(engine_client.send_query({"users": ["u1", "u3"], "num": 10})) 25 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/recommended-user/engine.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "default", 3 | "description": "Default settings", 4 | "engineFactory": "org.apache.predictionio.examples.similarproduct.RecommendedUserEngine", 5 | "datasource": { 6 | "params" : { 7 | "appName": "MyApp1" 8 | } 9 | }, 10 | "algorithms": [ 11 | { 12 | "name": "als", 13 | "params": { 14 | "rank": 10, 15 | "numIterations" : 20, 16 | "lambda": 0.01, 17 | "seed": 3 18 | } 19 | } 20 | ] 21 | } 22 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/recommended-user/project/assembly.sbt: -------------------------------------------------------------------------------- 1 | addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.9") 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/recommended-user/project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.2.8 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/recommended-user/template.json: -------------------------------------------------------------------------------- 1 | {"pio": {"version": { "min": "0.10.0-incubating" }}} 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/return-item-properties/.gitignore: -------------------------------------------------------------------------------- 1 | manifest.json 2 | target/ 3 | pio.log 4 | /pio.sbt -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/return-item-properties/data/send_query.py: -------------------------------------------------------------------------------- 1 | # 2 | # Licensed to the Apache Software Foundation (ASF) under one or more 3 | # contributor license agreements. See the NOTICE file distributed with 4 | # this work for additional information regarding copyright ownership. 5 | # The ASF licenses this file to You under the Apache License, Version 2.0 6 | # (the "License"); you may not use this file except in compliance with 7 | # the License. You may obtain a copy of the License at 8 | # 9 | # http://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, software 12 | # distributed under the License is distributed on an "AS IS" BASIS, 13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | # See the License for the specific language governing permissions and 15 | # limitations under the License. 16 | # 17 | 18 | """ 19 | Send sample query to prediction engine 20 | """ 21 | 22 | import predictionio 23 | engine_client = predictionio.EngineClient(url="http://localhost:8000") 24 | print(engine_client.send_query({"items": ["i1", "i3"], "num": 4})) 25 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/return-item-properties/engine-cooccurrence.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "default", 3 | "description": "Default settings", 4 | "engineFactory": "org.apache.predictionio.examples.similarproduct.SimilarProductEngine", 5 | "datasource": { 6 | "params" : { 7 | "appName": "MyApp1" 8 | } 9 | }, 10 | "algorithms": [ 11 | { 12 | "name": "cooccurrence", 13 | "params": { 14 | "n": 20 15 | } 16 | } 17 | ] 18 | } 19 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/return-item-properties/engine.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "default", 3 | "description": "Default settings", 4 | "engineFactory": "org.apache.predictionio.examples.similarproduct.SimilarProductEngine", 5 | "datasource": { 6 | "params" : { 7 | "appName": "MyApp1" 8 | } 9 | }, 10 | "algorithms": [ 11 | { 12 | "name": "als", 13 | "params": { 14 | "rank": 10, 15 | "numIterations" : 20, 16 | "lambda": 0.01, 17 | "seed": 3 18 | } 19 | } 20 | ] 21 | } 22 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/return-item-properties/project/assembly.sbt: -------------------------------------------------------------------------------- 1 | addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.9") 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/return-item-properties/project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.2.8 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/return-item-properties/template.json: -------------------------------------------------------------------------------- 1 | {"pio": {"version": { "min": "0.10.0-incubating" }}} 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/rid-user-set-event/.gitignore: -------------------------------------------------------------------------------- 1 | manifest.json 2 | target/ 3 | pio.log 4 | /pio.sbt -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/rid-user-set-event/data/send_query.py: -------------------------------------------------------------------------------- 1 | # 2 | # Licensed to the Apache Software Foundation (ASF) under one or more 3 | # contributor license agreements. See the NOTICE file distributed with 4 | # this work for additional information regarding copyright ownership. 5 | # The ASF licenses this file to You under the Apache License, Version 2.0 6 | # (the "License"); you may not use this file except in compliance with 7 | # the License. You may obtain a copy of the License at 8 | # 9 | # http://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, software 12 | # distributed under the License is distributed on an "AS IS" BASIS, 13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | # See the License for the specific language governing permissions and 15 | # limitations under the License. 16 | # 17 | 18 | """ 19 | Send sample query to prediction engine 20 | """ 21 | 22 | import predictionio 23 | engine_client = predictionio.EngineClient(url="http://localhost:8000") 24 | print(engine_client.send_query({"items": ["i1", "i3"], "num": 4})) 25 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/rid-user-set-event/engine-cooccurrence.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "default", 3 | "description": "Default settings", 4 | "engineFactory": "org.apache.predictionio.examples.similarproduct.SimilarProductEngine", 5 | "datasource": { 6 | "params" : { 7 | "appName": "MyApp1" 8 | } 9 | }, 10 | "algorithms": [ 11 | { 12 | "name": "cooccurrence", 13 | "params": { 14 | "n": 20 15 | } 16 | } 17 | ] 18 | } 19 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/rid-user-set-event/engine.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "default", 3 | "description": "Default settings", 4 | "engineFactory": "org.apache.predictionio.examples.similarproduct.SimilarProductEngine", 5 | "datasource": { 6 | "params" : { 7 | "appName": "MyApp1" 8 | } 9 | }, 10 | "algorithms": [ 11 | { 12 | "name": "als", 13 | "params": { 14 | "rank": 10, 15 | "numIterations" : 20, 16 | "lambda": 0.01, 17 | "seed": 3 18 | } 19 | } 20 | ] 21 | } 22 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/rid-user-set-event/project/assembly.sbt: -------------------------------------------------------------------------------- 1 | addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.9") 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/rid-user-set-event/project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.2.8 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/rid-user-set-event/template.json: -------------------------------------------------------------------------------- 1 | {"pio": {"version": { "min": "0.10.0-incubating" }}} 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/train-with-rate-event/data/send_query.py: -------------------------------------------------------------------------------- 1 | # 2 | # Licensed to the Apache Software Foundation (ASF) under one or more 3 | # contributor license agreements. See the NOTICE file distributed with 4 | # this work for additional information regarding copyright ownership. 5 | # The ASF licenses this file to You under the Apache License, Version 2.0 6 | # (the "License"); you may not use this file except in compliance with 7 | # the License. You may obtain a copy of the License at 8 | # 9 | # http://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, software 12 | # distributed under the License is distributed on an "AS IS" BASIS, 13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | # See the License for the specific language governing permissions and 15 | # limitations under the License. 16 | # 17 | 18 | """ 19 | Send sample query to prediction engine 20 | """ 21 | 22 | import predictionio 23 | engine_client = predictionio.EngineClient(url="http://localhost:8000") 24 | print(engine_client.send_query({"items": ["i1", "i3"], "num": 4})) 25 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/train-with-rate-event/engine-cooccurrence.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "default", 3 | "description": "Default settings", 4 | "engineFactory": "org.apache.predictionio.examples.similarproduct.SimilarProductEngine", 5 | "datasource": { 6 | "params" : { 7 | "appName": "MyApp1" 8 | } 9 | }, 10 | "algorithms": [ 11 | { 12 | "name": "cooccurrence", 13 | "params": { 14 | "n": 20 15 | } 16 | } 17 | ] 18 | } 19 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/train-with-rate-event/engine.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "default", 3 | "description": "Default settings", 4 | "engineFactory": "org.apache.predictionio.examples.similarproduct.SimilarProductEngine", 5 | "datasource": { 6 | "params" : { 7 | "appName": "MyApp1" 8 | } 9 | }, 10 | "algorithms": [ 11 | { 12 | "name": "als", 13 | "params": { 14 | "rank": 10, 15 | "numIterations" : 20, 16 | "lambda": 0.01, 17 | "seed": 3 18 | } 19 | } 20 | ] 21 | } 22 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/train-with-rate-event/project/assembly.sbt: -------------------------------------------------------------------------------- 1 | addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.9") 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/train-with-rate-event/project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.2.8 2 | -------------------------------------------------------------------------------- /examples/scala-parallel-similarproduct/train-with-rate-event/template.json: -------------------------------------------------------------------------------- 1 | {"pio": {"version": { "min": "0.10.0-incubating" }}} 2 | -------------------------------------------------------------------------------- /project/assembly.sbt: -------------------------------------------------------------------------------- 1 | addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.9") 2 | -------------------------------------------------------------------------------- /project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.2.8 -------------------------------------------------------------------------------- /project/plugins.sbt: -------------------------------------------------------------------------------- 1 | addSbtPlugin("com.eed3si9n" % "sbt-buildinfo" % "0.9.0") 2 | 3 | addSbtPlugin("com.jsuereth" % "sbt-pgp" % "1.1.2") 4 | 5 | addSbtPlugin("com.typesafe.sbt" % "sbt-twirl" % "1.4.1") 6 | 7 | addSbtPlugin("org.xerial.sbt" % "sbt-sonatype" % "2.5") 8 | 9 | addSbtPlugin("org.scalastyle" %% "scalastyle-sbt-plugin" % "1.0.0") 10 | 11 | resolvers += "sonatype-releases" at "https://oss.sonatype.org/content/repositories/releases/" 12 | 13 | addSbtPlugin("org.scoverage" % "sbt-scoverage" % "1.5.1") 14 | 15 | addSbtPlugin("com.typesafe.sbt" % "sbt-native-packager" % "1.3.22") 16 | 17 | addSbtPlugin("com.typesafe.sbt" % "sbt-license-report" % "1.2.0") -------------------------------------------------------------------------------- /project/unidoc.sbt: -------------------------------------------------------------------------------- 1 | addSbtPlugin("com.eed3si9n" % "sbt-unidoc" % "0.4.2") 2 | -------------------------------------------------------------------------------- /python/pypio/__init__.py: -------------------------------------------------------------------------------- 1 | # 2 | # Licensed to the Apache Software Foundation (ASF) under one or more 3 | # contributor license agreements. See the NOTICE file distributed with 4 | # this work for additional information regarding copyright ownership. 5 | # The ASF licenses this file to You under the Apache License, Version 2.0 6 | # (the "License"); you may not use this file except in compliance with 7 | # the License. You may obtain a copy of the License at 8 | # 9 | # http://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, software 12 | # distributed under the License is distributed on an "AS IS" BASIS, 13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | # See the License for the specific language governing permissions and 15 | # limitations under the License. 16 | # 17 | 18 | """ 19 | PyPIO is the Python API for PredictionIO. 20 | """ 21 | 22 | from __future__ import absolute_import 23 | 24 | from pypio.pypio import * 25 | 26 | 27 | __all__ = [ 28 | 'pypio' 29 | ] 30 | -------------------------------------------------------------------------------- /python/pypio/data/__init__.py: -------------------------------------------------------------------------------- 1 | # 2 | # Licensed to the Apache Software Foundation (ASF) under one or more 3 | # contributor license agreements. See the NOTICE file distributed with 4 | # this work for additional information regarding copyright ownership. 5 | # The ASF licenses this file to You under the Apache License, Version 2.0 6 | # (the "License"); you may not use this file except in compliance with 7 | # the License. You may obtain a copy of the License at 8 | # 9 | # http://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, software 12 | # distributed under the License is distributed on an "AS IS" BASIS, 13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | # See the License for the specific language governing permissions and 15 | # limitations under the License. 16 | # 17 | 18 | from __future__ import absolute_import 19 | 20 | from pypio.data.eventstore import PEventStore 21 | 22 | 23 | __all__ = [ 24 | 'PEventStore' 25 | ] 26 | -------------------------------------------------------------------------------- /python/pypio/workflow/__init__.py: -------------------------------------------------------------------------------- 1 | # 2 | # Licensed to the Apache Software Foundation (ASF) under one or more 3 | # contributor license agreements. See the NOTICE file distributed with 4 | # this work for additional information regarding copyright ownership. 5 | # The ASF licenses this file to You under the Apache License, Version 2.0 6 | # (the "License"); you may not use this file except in compliance with 7 | # the License. You may obtain a copy of the License at 8 | # 9 | # http://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, software 12 | # distributed under the License is distributed on an "AS IS" BASIS, 13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | # See the License for the specific language governing permissions and 15 | # limitations under the License. 16 | # 17 | 18 | from __future__ import absolute_import 19 | 20 | from pypio.workflow.cleanup_functions import CleanupFunctions 21 | 22 | 23 | __all__ = [ 24 | 'CleanupFunctions' 25 | ] 26 | -------------------------------------------------------------------------------- /storage/elasticsearch/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /storage/elasticsearch/src/main/scala/org/apache/predictionio/data/storage/elasticsearch/package.scala: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | 19 | package org.apache.predictionio.data.storage 20 | 21 | /** Elasticsearch implementation of storage traits, supporting meta data only 22 | * 23 | * @group Implementation 24 | */ 25 | package elasticsearch {} 26 | -------------------------------------------------------------------------------- /storage/elasticsearch/src/test/resources/application.conf: -------------------------------------------------------------------------------- 1 | org.apache.predictionio.data.storage { 2 | sources { 3 | mongodb { 4 | type = mongodb 5 | hosts = [localhost] 6 | ports = [27017] 7 | } 8 | elasticsearch { 9 | type = elasticsearch 10 | hosts = [localhost] 11 | ports = [9300] 12 | } 13 | } 14 | repositories { 15 | # This section is dummy just to make storage happy. 16 | # The actual testing will not bypass these repository settings completely. 17 | # Please refer to StorageTestUtils.scala. 18 | settings { 19 | name = "test_predictionio" 20 | source = mongodb 21 | } 22 | 23 | appdata { 24 | name = "test_predictionio_appdata" 25 | source = mongodb 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /storage/hbase/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /storage/hbase/src/main/scala/org/apache/predictionio/data/storage/hbase/package.scala: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | 19 | package org.apache.predictionio.data.storage 20 | 21 | /** HBase implementation of storage traits, supporting event data only 22 | * 23 | * @group Implementation 24 | */ 25 | package object hbase {} 26 | -------------------------------------------------------------------------------- /storage/hbase/src/test/resources/application.conf: -------------------------------------------------------------------------------- 1 | org.apache.predictionio.data.storage { 2 | sources { 3 | mongodb { 4 | type = mongodb 5 | hosts = [localhost] 6 | ports = [27017] 7 | } 8 | elasticsearch { 9 | type = elasticsearch 10 | hosts = [localhost] 11 | ports = [9300] 12 | } 13 | } 14 | repositories { 15 | # This section is dummy just to make storage happy. 16 | # The actual testing will not bypass these repository settings completely. 17 | # Please refer to StorageTestUtils.scala. 18 | settings { 19 | name = "test_predictionio" 20 | source = mongodb 21 | } 22 | 23 | appdata { 24 | name = "test_predictionio_appdata" 25 | source = mongodb 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /storage/hdfs/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /storage/hdfs/project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=0.13.15 2 | -------------------------------------------------------------------------------- /storage/hdfs/src/main/scala/org/apache/predictionio/data/storage/hdfs/package.scala: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | 19 | package org.apache.predictionio.data.storage 20 | 21 | /** HDFS implementation of storage traits, supporting model data only 22 | * 23 | * @group Implementation 24 | */ 25 | package object hdfs {} 26 | -------------------------------------------------------------------------------- /storage/hdfs/src/test/resources/application.conf: -------------------------------------------------------------------------------- 1 | org.apache.predictionio.data.storage { 2 | sources { 3 | mongodb { 4 | type = mongodb 5 | hosts = [localhost] 6 | ports = [27017] 7 | } 8 | elasticsearch { 9 | type = elasticsearch 10 | hosts = [localhost] 11 | ports = [9300] 12 | } 13 | } 14 | repositories { 15 | # This section is dummy just to make storage happy. 16 | # The actual testing will not bypass these repository settings completely. 17 | # Please refer to StorageTestUtils.scala. 18 | settings { 19 | name = "test_predictionio" 20 | source = mongodb 21 | } 22 | 23 | appdata { 24 | name = "test_predictionio_appdata" 25 | source = mongodb 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /storage/jdbc/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /storage/jdbc/src/main/scala/org/apache/predictionio/data/storage/jdbc/package.scala: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | 19 | package org.apache.predictionio.data.storage 20 | 21 | /** JDBC implementation of storage traits, supporting meta data, event data, and 22 | * model data 23 | * 24 | * @group Implementation 25 | */ 26 | package object jdbc {} 27 | -------------------------------------------------------------------------------- /storage/jdbc/src/test/resources/application.conf: -------------------------------------------------------------------------------- 1 | org.apache.predictionio.data.storage { 2 | sources { 3 | mongodb { 4 | type = mongodb 5 | hosts = [localhost] 6 | ports = [27017] 7 | } 8 | elasticsearch { 9 | type = elasticsearch 10 | hosts = [localhost] 11 | ports = [9300] 12 | } 13 | } 14 | repositories { 15 | # This section is dummy just to make storage happy. 16 | # The actual testing will not bypass these repository settings completely. 17 | # Please refer to StorageTestUtils.scala. 18 | settings { 19 | name = "test_predictionio" 20 | source = mongodb 21 | } 22 | 23 | appdata { 24 | name = "test_predictionio_appdata" 25 | source = mongodb 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /storage/localfs/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /storage/localfs/src/main/scala/org/apache/predictionio/data/storage/localfs/package.scala: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | 19 | package org.apache.predictionio.data.storage 20 | 21 | /** Local file system implementation of storage traits, supporting model data only 22 | * 23 | * @group Implementation 24 | */ 25 | package object localfs {} 26 | -------------------------------------------------------------------------------- /storage/localfs/src/test/resources/application.conf: -------------------------------------------------------------------------------- 1 | org.apache.predictionio.data.storage { 2 | sources { 3 | mongodb { 4 | type = mongodb 5 | hosts = [localhost] 6 | ports = [27017] 7 | } 8 | elasticsearch { 9 | type = elasticsearch 10 | hosts = [localhost] 11 | ports = [9300] 12 | } 13 | } 14 | repositories { 15 | # This section is dummy just to make storage happy. 16 | # The actual testing will not bypass these repository settings completely. 17 | # Please refer to StorageTestUtils.scala. 18 | settings { 19 | name = "test_predictionio" 20 | source = mongodb 21 | } 22 | 23 | appdata { 24 | name = "test_predictionio_appdata" 25 | source = mongodb 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /storage/s3/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /storage/s3/src/main/scala/org/apache/predictionio/data/storage/s3/package.scala: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | 19 | package org.apache.predictionio.data.storage 20 | 21 | /** AWS S3 implementation of storage traits, supporting model data only 22 | * 23 | * @group Implementation 24 | */ 25 | package object s3 {} 26 | -------------------------------------------------------------------------------- /tests/.rat-excludes: -------------------------------------------------------------------------------- 1 | RELEASE 2 | KEYS 3 | spark-env.sh 4 | .gitignore 5 | .gitattributes 6 | .npmignore 7 | .rat-excludes 8 | .project 9 | sbt-launch-lib.bash 10 | plugins.sbt 11 | build.properties 12 | eventserver.pid 13 | application.conf 14 | assembly.sbt 15 | pio-build.sbt 16 | pio.sbt 17 | unidoc.sbt 18 | spark-defaults.conf 19 | Gemfile.lock 20 | templates.yaml 21 | semver.sh 22 | pgpass 23 | 24 | PredictionIO-.*/* 25 | target/* 26 | /source 27 | test-reports/* 28 | dist/* 29 | vendors/* 30 | .logs/* 31 | sbt/* 32 | 33 | .*slim 34 | .*eps 35 | .*txt 36 | .*svg 37 | .*jks 38 | .*json 39 | .*log 40 | .*template 41 | .*js 42 | .*css 43 | .*map 44 | .*data 45 | .*csv 46 | .*Driver 47 | .*rst 48 | -------------------------------------------------------------------------------- /tests/after_script.travis.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # Licensed to the Apache Software Foundation (ASF) under one or more 4 | # contributor license agreements. See the NOTICE file distributed with 5 | # this work for additional information regarding copyright ownership. 6 | # The ASF licenses this file to You under the Apache License, Version 2.0 7 | # (the "License"); you may not use this file except in compliance with 8 | # the License. You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | 19 | DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" 20 | 21 | source $DIR/../conf/pio-vendors.sh 22 | 23 | # Print a summary of containers used 24 | docker ps -a 25 | 26 | # Clean up used containers 27 | docker-compose -f $DIR/docker-compose.yml down 28 | -------------------------------------------------------------------------------- /tests/before_script.travis.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # Licensed to the Apache Software Foundation (ASF) under one or more 4 | # contributor license agreements. See the NOTICE file distributed with 5 | # this work for additional information regarding copyright ownership. 6 | # The ASF licenses this file to You under the Apache License, Version 2.0 7 | # (the "License"); you may not use this file except in compliance with 8 | # the License. You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | 19 | DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" 20 | 21 | $DIR/build_docker.sh 22 | -------------------------------------------------------------------------------- /tests/docker-files/awscredentials: -------------------------------------------------------------------------------- 1 | # 2 | # Licensed to the Apache Software Foundation (ASF) under one or more 3 | # contributor license agreements. See the NOTICE file distributed with 4 | # this work for additional information regarding copyright ownership. 5 | # The ASF licenses this file to You under the Apache License, Version 2.0 6 | # (the "License"); you may not use this file except in compliance with 7 | # the License. You may obtain a copy of the License at 8 | # 9 | # http://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, software 12 | # distributed under the License is distributed on an "AS IS" BASIS, 13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | # See the License for the specific language governing permissions and 15 | # limitations under the License. 16 | # 17 | [default] 18 | aws_access_key_id = foo 19 | aws_secret_access_key = foo 20 | -------------------------------------------------------------------------------- /tests/docker-files/init.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # Licensed to the Apache Software Foundation (ASF) under one or more 4 | # contributor license agreements. See the NOTICE file distributed with 5 | # this work for additional information regarding copyright ownership. 6 | # The ASF licenses this file to You under the Apache License, Version 2.0 7 | # (the "License"); you may not use this file except in compliance with 8 | # the License. You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | 19 | set -e 20 | export PYTHONPATH=$PIO_HOME/tests:$PYTHONPATH 21 | echo "Sleeping $SLEEP_TIME seconds for all services to be ready..." 22 | sleep $SLEEP_TIME 23 | 24 | # create S3 bucket in localstack 25 | aws --endpoint-url=http://localstack:4572 --region=us-east-1 s3 mb s3://pio_bucket 26 | 27 | eval $@ 28 | -------------------------------------------------------------------------------- /tests/docker-files/pgpass: -------------------------------------------------------------------------------- 1 | postgres:5432:pio:pio:pio 2 | -------------------------------------------------------------------------------- /tests/pio_tests/__init__.py: -------------------------------------------------------------------------------- 1 | # 2 | # Licensed to the Apache Software Foundation (ASF) under one or more 3 | # contributor license agreements. See the NOTICE file distributed with 4 | # this work for additional information regarding copyright ownership. 5 | # The ASF licenses this file to You under the Apache License, Version 2.0 6 | # (the "License"); you may not use this file except in compliance with 7 | # the License. You may obtain a copy of the License at 8 | # 9 | # http://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, software 12 | # distributed under the License is distributed on an "AS IS" BASIS, 13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | # See the License for the specific language governing permissions and 15 | # limitations under the License. 16 | # -------------------------------------------------------------------------------- /tests/pio_tests/data/eventserver_test/partially_malformed_events.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "event" : "test", 4 | "entityType" : "test", 5 | "entityId" : "t2" 6 | }, 7 | { 8 | "event" : "malformed-event" 9 | } 10 | ] -------------------------------------------------------------------------------- /tests/pio_tests/data/quickstart_test/engine.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "default", 3 | "description": "Default settings", 4 | "engineFactory": "org.template.recommendation.RecommendationEngine", 5 | "datasource": { 6 | "params" : { 7 | "appName": "MyRecommender" 8 | } 9 | }, 10 | "algorithms": [ 11 | { 12 | "name": "als", 13 | "params": { 14 | "rank": 10, 15 | "numIterations": 10, 16 | "lambda": 0.01, 17 | "seed": 3 18 | } 19 | } 20 | ] 21 | } 22 | -------------------------------------------------------------------------------- /tests/pio_tests/engines/recommendation-engine/engine.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "default", 3 | "description": "Default settings", 4 | "engineFactory": "org.template.recommendation.RecommendationEngine", 5 | "datasource": { 6 | "params" : { 7 | "appName": "MyApp1" 8 | } 9 | }, 10 | "algorithms": [ 11 | { 12 | "name": "als", 13 | "params": { 14 | "rank": 10, 15 | "numIterations": 10, 16 | "lambda": 0.01, 17 | "seed": 3 18 | } 19 | } 20 | ] 21 | } 22 | -------------------------------------------------------------------------------- /tests/pio_tests/engines/recommendation-engine/project/assembly.sbt: -------------------------------------------------------------------------------- 1 | addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.9") 2 | -------------------------------------------------------------------------------- /tests/pio_tests/engines/recommendation-engine/template.json: -------------------------------------------------------------------------------- 1 | {"pio": {"version": { "min": "0.9.2" }}} 2 | -------------------------------------------------------------------------------- /tests/pio_tests/scenarios/__init__.py: -------------------------------------------------------------------------------- 1 | # 2 | # Licensed to the Apache Software Foundation (ASF) under one or more 3 | # contributor license agreements. See the NOTICE file distributed with 4 | # this work for additional information regarding copyright ownership. 5 | # The ASF licenses this file to You under the Apache License, Version 2.0 6 | # (the "License"); you may not use this file except in compliance with 7 | # the License. You may obtain a copy of the License at 8 | # 9 | # http://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, software 12 | # distributed under the License is distributed on an "AS IS" BASIS, 13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | # See the License for the specific language governing permissions and 15 | # limitations under the License. 16 | # -------------------------------------------------------------------------------- /tools/src/main/resources/META-INF/LICENSE.txt: -------------------------------------------------------------------------------- 1 | ../../../../../LICENSE.txt -------------------------------------------------------------------------------- /tools/src/main/resources/META-INF/NOTICE.txt: -------------------------------------------------------------------------------- 1 | ../../../../../NOTICE.txt -------------------------------------------------------------------------------- /tools/src/main/resources/assets/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/predictionio/d9628ca2f148b45a51bf4cea68699a72f25cb383/tools/src/main/resources/assets/favicon.png -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/console/accesskey.scala.txt: -------------------------------------------------------------------------------- 1 | Usage: pio accesskey new [--key] <app name> [<event1> <event2>...] 2 | 3 | Add allowed event(s) to an access key. 4 | 5 | --key <value> 6 | Specify a custom key. 7 | <app name> 8 | App to be associated with the new access key. 9 | <event1> <event2>... 10 | Allowed event name(s) to be added to the access key. 11 | 12 | Usage: pio accesskey list [<app name>] 13 | 14 | <app name> 15 | App name. 16 | 17 | Usage: pio accesskey delete <access key> 18 | 19 | <access key> 20 | The access key to be deleted. 21 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/console/adminserver.scala.txt: -------------------------------------------------------------------------------- 1 | (Experimental Only!) Usage: pio adminserver [--ip <value>] [--port <value>] 2 | 3 | --ip <value> 4 | IP to bind to. Default: localhost 5 | --port <value> 6 | Port to bind to. Default: 7071 7 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/console/build.scala.txt: -------------------------------------------------------------------------------- 1 | Usage: pio build [--sbt-extra <value>] [--clean] [--no-asm] 2 | [common options...] 3 | 4 | Build an engine at the current directory. 5 | 6 | --sbt-extra <value> 7 | Extra command to pass to SBT when it builds your engine. 8 | --clean 9 | Clean build. 10 | --no-asm 11 | Skip building external dependencies assembly. 12 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/console/dashboard.scala.txt: -------------------------------------------------------------------------------- 1 | Usage: pio dashboard [--ip <value>] [--port <value>] 2 | 3 | --ip <value> 4 | IP to bind to. Default: localhost 5 | --port <value> 6 | Port to bind to. Default: 9000 7 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/console/eval.scala.txt: -------------------------------------------------------------------------------- 1 | Usage: pio eval <evaluation-class> <engine-parameters-generator-class> 2 | [--batch <value>] 3 | [common options...] 4 | 5 | Kick off an evaluation using specified evaluation and engine parameters 6 | generator class. This command will pass all pass-through arguments to its 7 | underlying spark-submit command. 8 | 9 | --batch <value> 10 | Batch label of the run. 11 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/console/eventserver.scala.txt: -------------------------------------------------------------------------------- 1 | Usage: pio eventserver [--ip <value>] [--port <value>] [--stats] 2 | 3 | --ip <value> 4 | IP to bind to. Default: 0.0.0.0 5 | --port <value> 6 | Port to bind to. Default: 7070 7 | --stats 8 | Enable Event Server internal statistics and its API endpoint. 9 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/console/export.scala.txt: -------------------------------------------------------------------------------- 1 | Usage: pio export --appid <value> --output <value> [--format <value>] [--channel <value>] 2 | 3 | Exports all events of an app to a file. If Hadoop configuration is present, the 4 | file will be exported to HDFS instead of local filesystem. 5 | 6 | --appid <value> 7 | App ID of events to be exported. 8 | --channel <value> 9 | Channel Name (default if this is not specified) 10 | --output <value> 11 | Output path of the exported file. 12 | --format <value> 13 | The format of the exported file. Valid values are "json" and "parquet". 14 | The default format is "json". 15 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/console/imprt.scala.txt: -------------------------------------------------------------------------------- 1 | Usage: pio import --appid <value> --input <value> [--channel <value>] 2 | 3 | Imports all events from a file to an app. Each line of the file should be a JSON 4 | object that represent a single event. If Hadoop configuration is present, the 5 | file will be imported from HDFS instead of local filesystem. 6 | 7 | --appid <value> 8 | App ID of events to be imported. 9 | --channel <value> 10 | Channel Name (default if this is not specified) 11 | --input <value> 12 | Input path of the import file. 13 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/console/run.scala.txt: -------------------------------------------------------------------------------- 1 | Usage: pio run [--sbt-extra <value>] [--clean] [--no-asm] 2 | [common options...] <main class> 3 | 4 | Launch a driver program. This command will pass all pass-through arguments to 5 | its underlying spark-submit command. In addition, it also supports a second 6 | level of pass-through arguments to the driver program, e.g. 7 | 8 | pio run -- --master spark://localhost:7077 -- --driver-arg foo 9 | 10 | <main class> 11 | Main class name of the driver program. 12 | --sbt-extra <value> 13 | Extra command to pass to SBT when it builds your engine. 14 | --clean 15 | Clean build. 16 | --no-asm 17 | Skip building external dependencies assembly. 18 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/console/status.scala.txt: -------------------------------------------------------------------------------- 1 | Usage: pio status 2 | 3 | Displays status information about the PredictionIO system. 4 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/console/template.scala.txt: -------------------------------------------------------------------------------- 1 | Usage: pio template list 2 | 3 | No longer supported! Please use git to download and manage your templates. 4 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/console/upgrade.scala.txt: -------------------------------------------------------------------------------- 1 | Usage: pio upgrade <from version> <to version> <old App ID> <new app ID> 2 | 3 | No longer supported! 4 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/console/version.scala.txt: -------------------------------------------------------------------------------- 1 | Usage: pio version 2 | 3 | Displays the version of this command line console. 4 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/templates/itemrank/params/algorithmsJson.scala.txt: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "mahoutItemBased", 4 | "params": { 5 | "booleanData": true, 6 | "itemSimilarity": "LogLikelihoodSimilarity", 7 | "weighted": false, 8 | "nearestN": 10, 9 | "threshold": 4.9E-324, 10 | "numSimilarItems": 50, 11 | "numUserActions": 50, 12 | "freshness" : 0, 13 | "freshnessTimeUnit" : 86400 14 | } 15 | } 16 | ] 17 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/templates/itemrank/params/datasourceJson.scala.txt: -------------------------------------------------------------------------------- 1 | { 2 | "appId": 1, 3 | "actions": [ 4 | "view", 5 | "like", 6 | "dislike", 7 | "conversion", 8 | "rate" 9 | ], 10 | "attributeNames": { 11 | "user" : "pio_user", 12 | "item" : "pio_item", 13 | "u2iActions": [ 14 | "view", 15 | "like", 16 | "dislike", 17 | "conversion", 18 | "rate" 19 | ], 20 | "itypes" : "pio_itypes", 21 | "starttime" : "pio_starttime", 22 | "endtime" : "pio_endtime", 23 | "inactive" : "pio_inactive", 24 | "rating" : "pio_rating" 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/templates/itemrank/params/preparatorJson.scala.txt: -------------------------------------------------------------------------------- 1 | { 2 | "actions": { 3 | "view": 3, 4 | "like": 5, 5 | "dislike": 1, 6 | "conversion": 4, 7 | "rate": null 8 | }, 9 | "conflict": "latest" 10 | } 11 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/templates/itemrank/params/servingJson.scala.txt: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/templates/itemrec/params/algorithmsJson.scala.txt: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "ncMahoutItemBased", 4 | "params": { 5 | "booleanData": true, 6 | "itemSimilarity": "LogLikelihoodSimilarity", 7 | "weighted": false, 8 | "threshold": 4.9E-324, 9 | "nearestN": 10, 10 | "unseenOnly": false, 11 | "freshness" : 0, 12 | "freshnessTimeUnit" : 86400 13 | } 14 | } 15 | ] 16 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/templates/itemrec/params/datasourceJson.scala.txt: -------------------------------------------------------------------------------- 1 | { 2 | "appId": 2, 3 | "actions": [ 4 | "view", 5 | "like", 6 | "dislike", 7 | "conversion", 8 | "rate" 9 | ], 10 | "attributeNames": { 11 | "user" : "pio_user", 12 | "item" : "pio_item", 13 | "u2iActions": [ 14 | "view", 15 | "like", 16 | "dislike", 17 | "conversion", 18 | "rate" 19 | ], 20 | "itypes" : "pio_itypes", 21 | "starttime" : "pio_starttime", 22 | "endtime" : "pio_endtime", 23 | "inactive" : "pio_inactive", 24 | "rating" : "pio_rating" 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/templates/itemrec/params/preparatorJson.scala.txt: -------------------------------------------------------------------------------- 1 | { 2 | "actions": { 3 | "view": 3, 4 | "like": 5, 5 | "dislike": 1, 6 | "conversion": 4, 7 | "rate": null 8 | }, 9 | "conflict": "latest" 10 | } 11 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/templates/itemrec/params/servingJson.scala.txt: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/templates/itemsim/params/algorithmsJson.scala.txt: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "ncMahoutItemBased", 4 | "params": { 5 | "booleanData": true, 6 | "itemSimilarity": "LogLikelihoodSimilarity", 7 | "weighted": false, 8 | "threshold": 4.9E-324, 9 | "freshness" : 0, 10 | "freshnessTimeUnit" : 86400 11 | } 12 | } 13 | ] 14 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/templates/itemsim/params/datasourceJson.scala.txt: -------------------------------------------------------------------------------- 1 | { 2 | "appId": 2, 3 | "actions": [ 4 | "view", 5 | "like", 6 | "dislike", 7 | "conversion", 8 | "rate" 9 | ], 10 | "attributeNames": { 11 | "user" : "pio_user", 12 | "item" : "pio_item", 13 | "u2iActions": [ 14 | "view", 15 | "like", 16 | "dislike", 17 | "conversion", 18 | "rate" 19 | ], 20 | "itypes" : "pio_itypes", 21 | "starttime" : "pio_starttime", 22 | "endtime" : "pio_endtime", 23 | "inactive" : "pio_inactive", 24 | "rating" : "pio_rating" 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/templates/itemsim/params/preparatorJson.scala.txt: -------------------------------------------------------------------------------- 1 | { 2 | "actions": { 3 | "view": 3, 4 | "like": 5, 5 | "dislike": 1, 6 | "conversion": 4, 7 | "rate": null 8 | }, 9 | "conflict": "latest" 10 | } 11 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/templates/itemsim/params/servingJson.scala.txt: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/templates/scala/buildSbt.scala.txt: -------------------------------------------------------------------------------- 1 | @(name: String, pioVersion: String, sparkVersion: String) 2 | import AssemblyKeys._ 3 | 4 | assemblySettings 5 | 6 | name := "@{name}" 7 | 8 | organization := "myorg" 9 | 10 | version := "0.0.1-SNAPSHOT" 11 | 12 | libraryDependencies ++= Seq( 13 | "org.apache.predictionio" %% "core" % "@{pioVersion}" % "provided", 14 | "org.apache.spark" %% "spark-core" % "@{sparkVersion}" % "provided") 15 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/templates/scala/engineJson.scala.txt: -------------------------------------------------------------------------------- 1 | @(name: String, engineFactory: String) 2 | { 3 | "id": "default", 4 | "description": "@{name}", 5 | "engineFactory": "@{engineFactory}", 6 | "datasource": { 7 | "multiplier": 2 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/templates/scala/manifestJson.scala.txt: -------------------------------------------------------------------------------- 1 | @(id: String, version: String, name: String) 2 | { 3 | "id": "@{id}", 4 | "version": "@{version}", 5 | "name": "@{name}", 6 | "description": "@{name}" 7 | "engineFactory": "", 8 | "files": [] 9 | } 10 | -------------------------------------------------------------------------------- /tools/src/main/twirl/org/apache/predictionio/tools/templates/scala/project/assemblySbt.scala.txt: -------------------------------------------------------------------------------- 1 | addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.11.2") 2 | --------------------------------------------------------------------------------