推荐引擎数据库的设计? [英] Design of the recommendation engine database?

查看:139
本文介绍了推荐引擎数据库的设计?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我目前正在推荐系统,特别是对于音频文件。但是我是这个主题的初学者。我试图用mysql设计数据库,但是我无法决定如何做。它基本上是一个用户创建的系统个人资料然后搜索音乐和系统推荐他们喜欢他们喜欢的音乐。


  1. 我应该使用哪个数据库?(Mysql
    我的头脑是第一个猜测)

  2. 它是一个Web项目,然后
    与移动端。我应该使用哪种技术
    ?(php,android
    平台...)

  3. 这个
    项目的陷阱是什么。

  4. 如何设计系统的数据库
    这样吗?


解决方案

任何关系数据库都应该很好地存储原始数据,如歌曲列表,用户列表,用户的歌曲首选项。



我认为你会发现一个关系数据库(和SQL)并不适合存储您的推荐人将要构建的各种数据结构。您的推荐引擎可能会创建不需要在表中操作的数据,并将其存储在关系数据库中可能只是浪费了工作。



只要知道你在做什么,如果感觉错误,不要花时间把东西放入SQL数据库。也许考虑使用面向文档的数据库,如 MongoDB



我最近写的推荐器实际上是一个Java服务器进程,它读取MySQL中的原始数据,它的所有内容都在内存中,并提供推荐数据我的应用程序通过HTTP API。我甚至没有永久保存推荐数据,因为它可以重新生成。


i am currently working on recommendation systems especially for audio files.but i am a beginner at this subject.i am trying to design database first with mysql but i cant decide how to do it.İt is basicly a system which users create profile then search for the music and system recommend them music similar to they liked.

  1. which database should i use ?(Mysql comes my mind as a first guess)
  2. it is a web project and also then with mobile side.Which technologies should i use?(php,android platform...)
  3. what are the pitfalls of this project.
  4. how to design database for system like that?

解决方案

Any relational database should be good for storing the raw data like lists of songs, list of users, users' song preferences..

I think that you'll find that a relational databases (and SQL) are not that great for storing the various data structures that your recommender will be constructing. Your recommendation engine will probably creating data that doesn't really need to be in tables and manipulating it for storage in a relational database may just be wasted work.

Just be aware of what you are doing and don't spend time putting stuff into a SQL database if it feels wrong. Maybe look into using a document oriented database like MongoDB.

The recommender that I recently wrote is actually a Java server process that reads in the raw data from MySQL, does all of its work in-memory, and provides recommendation data to my application via an HTTP API. I didn't even bother storing the recommendation data permanently since it can be regenerated.

这篇关于推荐引擎数据库的设计?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆