Mahout使用其他数据(评级)来源而不是txt文件或数据库

时间:2014-03-30 20:30:00

标签: java json mahout

有没有办法将JSON Feed传递到Mahout推荐器?到目前为止,Mahout中的DataModel可以获取文本文件或从数据库中读取表以获取用户的评级和项目。但是,我想将Mahout链接到JSON提要(或提交指向Google文档的链接),其中评分不断变化。我不想将Mahout链接到数据库。

有没有办法做到这一点?我用Google搜索,但网络上的权威似乎表明传递评级和项目的唯一方法是通过txt文件或数据库。我非常感谢你的解决方法。

2 个答案:

答案 0 :(得分:0)

Mahout没有提供任何预先构建的DataModel,它可以从JSON读取。可以找到当前可用的here

您可以实现自己的DataModel。请查看FileDataModelMongoDBDataModel

答案 1 :(得分:0)

Mahout不是用于创建在线推荐系统的系统(请参阅Storm,例如:http://storm.incubator.apache.org),因此您无法将Mahout链接到评级不断变化的JSON Feed。但您可以使用当前数据文件(每天或每小时)定期重新创建推荐人。

对于解析JSON数据,您可以使用任何java JSON解析器(例如http://jackson.codehaus.org)和/或hadoop&#39> RecordReader PatternRecordReader )和 InputFormat PatternInputFormat )。