我目前正在研究推荐系统,特别是音频文件。但我是这个主题的初学者。我试图用mysql设计数据库,但我不能决定如何去做。基本上是一个用户创建配置文件的系统然后搜索音乐和系统推荐他们喜欢的音乐。推荐引擎数据库的设计?
- 我应该使用哪个数据库?(mysql的 来到我的脑海里的第一猜测)
- 它是一个web项目,并随后 与移动side.Which技术 我应该使用?(PHP,Android的 平台...)
- 什么是这个项目 的陷阱。
- 如何为系统设计数据库 那样?
我目前正在研究推荐系统,特别是音频文件。但我是这个主题的初学者。我试图用mysql设计数据库,但我不能决定如何去做。基本上是一个用户创建配置文件的系统然后搜索音乐和系统推荐他们喜欢的音乐。推荐引擎数据库的设计?
任何关系型数据库应该是不错的,用于存储喜欢歌曲列表,用户列表,用户的喜好歌曲的原始数据..
我认为你会发现一个关系数据库(和SQL)是对于存储推荐人将要构建的各种数据结构来说并不是那么好。您的推荐引擎可能会创建并不真正需要放入表格中的数据,并将其用于关系数据库中的存储操作可能只是浪费工作。
要知道你在做什么,不花时间把东西到SQL数据库,如果感觉不对。也许看看使用面向文档的数据库,如MongoDB。
的推荐,我最近写的其实是一个Java服务器的过程,从MySQL中的原始数据读取,完成所有其内存的工作,并通过HTTP API提供的推荐数据我的应用程序。由于可以重新生成,所以我甚至都不会永久存储推荐数据。
嗯,这是一个含糊不清的问题和半,但我会尽我所能回答:
去阅读"Programming Collective Intelligence"。他们在第2章“制定建议”中提供了许多用于建议的精细算法。
我有这本书,我希望它是一本理论书,但它不是那样的,作者使用了很好的例子 – 2009-08-21 12:56:02
我不会在数据库中存储实际的音频文件,而不是我将存储音频文件的参考。 – 2009-08-21 12:58:24
@Burak:他们仍然使用相同数量的存储空间。 – Eric 2009-08-21 13:05:51