mysql - 推荐引擎数据库的设计?

标签 mysql audio database-design recommendation-engine

我目前正在研究推荐系统,尤其是针对音频文件的推荐系统。但我是这个主题的初学者。我试图先用 mysql 设计数据库,但我无法决定如何去做。İt 基本上是一个用户创建的系统个人资料然后搜索音乐,系统会向他们推荐与他们喜欢的音乐相似的音乐。

  1. 我应该使用哪个数据库?(Mysql 我的第一个猜测是)
  2. 这是一个网络项目,然后 与移动端有哪些技术 我应该使用吗?(php,android 平台……)
  3. 这个的陷阱是什么 项目。
  4. 如何为系统设计数据库 像这样?

最佳答案

任何关系数据库都应该适合存储原始数据,如歌曲列表、用户列表、用户的歌曲偏好......

我认为您会发现关系数据库(和 SQL)不太适合存储您的推荐系统将要构建的各种数据结构。您的推荐引擎可能会创建实际上并不需要在表中的数据,并对其进行操作以存储在关系数据库中可能只是浪费工作。

只需注意您在做什么,不要花时间在感觉不对的情况下将内容放入 SQL 数据库。也许考虑使用像 MongoDB 这样的面向文档的数据库.

我最近编写的推荐器实际上是一个 Java 服务器进程,它从 MySQL 读取原始数据,在内存中完成所有工作,并通过 HTTP API 向我的应用程序提供推荐数据。我什至懒得永久存储推荐数据,因为它可以重新生成。

关于mysql - 推荐引擎数据库的设计?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1311710/

相关文章:

php - 多个客户数据库加上全局客户

php - 在 WordPress 中记录用户操作的数据库设计

php - 如何在 MYSQL 中使用 REGEXP 来匹配数组中的日期?

MySQL - 更新表并将列值设置为等于当前行值减去上一行值的差值

mysql - 尝试触发更新时出现错误 1442

audio - nginx:如何避免强制下载所有 wav 文件?

delphi - 使用带有Delphi的BASS dll创建flac文件或flac流

javascript - 如何使用 JavaScript 按顺序播放多个声音?

sql-server - 多客户端数据库设计 : is separation by schema a good design?

php - 无法向 MySQL 表中插入数据