【问题标题】:What is the most effective method for handling large scale dynamic data for recommendation system?推荐系统处理大规模动态数据的最有效方法是什么?
【发布时间】:2013-04-14 15:18:24
【问题描述】:
我们正在考虑基于大规模数据的推荐系统,同时也在寻找一种专业的方法来保持动态数据库结构以更快地工作。我们考虑了一些替代方法。一种是保存在普通的 SQL 数据库中,但与使用普通文件结构相比会慢一些。其次是使用 nosql 图形模型数据库,但它也与我们使用的算法不兼容,因为我们不断地将所有数据拉入矩阵。我们认为的最后一种方法是使用普通文件来保存数据,但由于没有查询方法或编辑器,因此更难跟踪和观察变化。因此有不同的方法和优缺点。您的选择是什么?为什么?
【问题讨论】:
标签:
database
database-design
database-schema
recommendation-engine
large-data
【解决方案1】:
我不知道你为什么这么多次提到“文件”和“文件结构”,所以也许我遗漏了一些东西,但是为了高效的数据处理,你显然不想将东西存储在文件中。将数据读/写到磁盘的成本很高,而且很难在高效灵活的文件系统中找到查询文件的内容。
我想我会从已经提供推荐的产品开始:
http://mahout.apache.org/
您可以从各种算法中进行选择,以根据您的数据运行以生成建议。
如果您想自己做,也许混合方法可行?您仍然可以使用图形数据库来表示关系,但是每个节点/顶点都可以是指向文档数据库或关系数据库的指针,其中存在更“完整”的数据表示。