This script is just an example to show how to compute recommendations
*offline*.

In a real production setting, you should set up a small webservice that
delivers recommendations, which you can call via php.

You can either write this yourself using Mahout's components or use one
of the existing weblayers for recommendations such as kornakapi [1] or
myrrix [2].

Best,
Sebastian

[1] https://github.com/plista/kornakapi
[2] http://myrrix.com/


On 14.01.2013 09:37, Ibrahim Yakti wrote:
> I think you just need to define these variables and paths.
> 
> 
> --
> Ibrahim
> 
> 
> On Mon, Jan 14, 2013 at 11:31 AM, Sékine Coulibaly 
> <[email protected]>wrote:
> 
>> Hi Ibrahim,
>>
>> Actually, for now, I wish I could use it locally, in other words without
>> using Haddop framework. I've been successfull in trying to launch :
>> factorize-movielense-1M.sh ratings.dat
>>
>> I wish I could launch that very same command from PHP. The Apache user is
>> www-data indeed. The /tmp/mahout-work-www-data directory is created but
>> only contains the ratings.csv file.
>>
>> Regards
>>
>>
>>
>>
>> 2013/1/14 Ibrahim Yakti <[email protected]>
>>
>>> your php scripts run using apache user which most probably doesn't have
>>> HADOOP_HOME, HADOOP_CONF_DIR, ...etc  variables defined, please try to
>>> define them in the php script before making the call.
>>>
>>> I hope it works.
>>>
>>>
>>> --
>>> Ibrahim
>>>
>>>
>>> On Sun, Jan 13, 2013 at 11:38 PM, Sékine Coulibaly <[email protected]
>>>> wrote:
>>>
>>>> Hi there,
>>>>
>>>> I've been able to start locally the factorize-movielens script. What
>> I'd
>>>> like to do is basically create a PHP webservice able to start that very
>>>> same script, and return the recommendations.
>>>>
>>>> I'm using Apache2, and I use PHP's shell_exec to start the script as
>>>> follows :
>>>>
>>>>
>>>> putenv("JAVA_HOME=" .'/usr/local/jvm/jdk1.7.0_05');
>>>>  $output =
>>>>
>>>>
>>>
>> shell_exec('/home/scoulibaly/Téléchargements/mahout-distribution-0.6/examples/bin/factorize-movielens-1M.sh
>>>>
>>>>
>>>
>> /home/scoulibaly/Téléchargements/mahout-distribution-0.6/examples/bin/ratings.dat');
>>>>  echo $output;
>>>>
>>>>
>>>> Unfortunately the output I get is as follows :
>>>>
>>>> creating work directory at /tmp/mahout-work-www-data
>>>>
>>>> Converting ratings...
>>>>
>>>> MAHOUT_LOCAL is not set; adding HADOOP_CONF_DIR to classpath.
>>>> no HADOOP_HOME set, running locally
>>>> MAHOUT_LOCAL is not set; adding HADOOP_CONF_DIR to classpath.
>>>> no HADOOP_HOME set, running locally
>>>> MAHOUT_LOCAL is not set; adding HADOOP_CONF_DIR to classpath.
>>>> no HADOOP_HOME set, running locally
>>>> MAHOUT_LOCAL is not set; adding HADOOP_CONF_DIR to classpath.
>>>> no HADOOP_HOME set, running locally
>>>>
>>>> RMSE is:
>>>>
>>>>
>>>>
>>>>
>>>> Sample recommendations:
>>>>
>>>>
>>>>
>>>>
>>>> removing work directory
>>>>
>>>>
>>>> I know this is not strictly a Mahout issue, but if someone could point
>>> me a
>>>> way to start Mahout jobs from a PHP script, I'd be very grateful !
>>>>
>>>> Thank you
>>>>
>>>
>>
> 

Reply via email to