I have a ruby on rails application. I have the idea of implementing recommendations in the application. I came to know about Apache Mahout through stackoverflow. Now, If I have to use Mahout, what are the stuff that I have to do. Since it is a Java library, I am not clearly sure how to use it in 开发者_如何学运维an Ruby on Rails application. I have a couple of certifications in Java, so coding in Java is not an issue. I also have the idea of hosting the application in Heroku, would that be an issue?
Thanks
The recommender portion actually began life as a separate project which had nothing to do with Hadoop. It is still alive an well in Mahout. Look at everything under org.apache.mahout.cf.taste
except what's in .hadoop
. This is the non-distributed, non-Hadoop code. You can create a Recommender
using this code, and have the framework wrap it in a ready-to-deploy .war
file which exposes the recommender as a web service, via JWS.
This is the key documentation: https://cwiki.apache.org/confluence/display/MAHOUT/Recommender+Documentation
You might also be interested in the book Mahout in Action.
Mahout runs on Hadoop (according to the documentation) and if you google out there, there are projects that have used a rails stack to communicate with a hadoop cluster. But the basic process would be to running you hadoop cluster on a set of ec2 instances or some other clustering infrastructure and then interface that with you app through a database adapter. it looks like one that I have had some success with on other databases (oracle, mySQL, LDAP, jdbc) is datamapper and they are interested in developing a hadoop adapter: http://wiki.github.com/datamapper/dm-core/ruby-summer-of-code-ideas
this is probably the most promising library i saw for your purposes though: http://mrflip.github.com/wukong/INSTALL.html
Go ahead with JRuby and implement the jar files provided with Mahout binary distribution. You can seamlessly integate it.
精彩评论