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

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

问题描述

我目前正在对推荐系统特别适用于音频files.but我在这个subject.i初学者我试图设计数据库第一次使用MySQL,但我不能决定怎么做它。它是basicly哪些用户创建一个系统个人资料然后搜索音乐和系统建议他们类似于他们喜欢的音乐。


  1. 我应该使用哪个数据库?(mysql的
    说到我的脑海里作为第一猜测)

  2. 这是一个web项目,并再
    随着移动技术的side.Which
    我应该使用?(PHP,Android版
    平台......)

  3. 这有什么陷阱
    项目。

  4. 如何设计数据库系统
    喜欢吗?


解决方案

任何关系型数据库应该是不错的,用于存储喜欢歌曲列表,用户列表中的原始数据,用户的歌曲preferences ..

我认为你会发现一个关系数据库(和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天全站免登陆