According the the Oryx recommender architecture, we can run several Oryx serveing layers,say, three VM instances with load balance.
In this setting, there is an oryx-serving-x.y.z.jar in each VM. Then, we have another VM running oryx-computation-x.y.z.jar (just one VM for computation layer). My understanding is that the new data could be passed into end point /pref or /ingest and then the model will be approximated. If the /refresh is called, the model will be re-built based on the whole taining dataset. My questions:
(1) Is this a valid setup (i.e., 3 oryx-serving VMs and one oryx-computation) ? If this is valid, are the 3VM only handle "partial" model and "partial" training data, or each VM would handle full model and training data.
(2) If the end-point /pref is called, will the model approximation computation passed to oryx-computation, or it's just computed in "oryx-serving" ?
That is a fine setup. Each VM has a copy of all of the data in this case. Approximate updates only happen in memory in the serving layer. The data goes to HDFS where the computation layer sees it for its next run.