mysql - php下查询数据相关性的设计

WBOY
Libérer: 2016-06-06 20:45:26
original
986 Les gens l'ont consulté

问题如:把看过A电影的用户同时看过的其它所有电影按照每部电影的点击率取出前10条。
这问题好如jd下的“买过aaa的人还买过产品cc...”。

目前准备用php+mysql来弄,但感觉这不是php能干的,求大牛指导!

回复内容:

问题如:把看过A电影的用户同时看过的其它所有电影按照每部电影的点击率取出前10条。
这问题好如jd下的“买过aaa的人还买过产品cc...”。

目前准备用php+mysql来弄,但感觉这不是php能干的,求大牛指导!

应该说,这不是mysql能干的。

也许你以为group by+order by能干这事,但终究你会发现其实干不了。

PS. 从IMDB上可知,截止目前,共有2877662部电影,5899065名演职员,观影人数没有准确数字,不过怎么说也有很多亿,想象下你的数据库里会放多少条记录,再想想一下当你在几个表之间JOIN的时候,数据库会累成什么样子……

PPS. 给你些参考资料
http://zh.wikipedia.org/wiki/%E5%8D%94%E5%90%8C%E9%81%8E%E6%BF%BE
http://www.quuxlabs.com/blog/2010/09/matrix-factorization-a-simple-tutorial-and-implementation-in-python/

其实这个可以不用实时统计,在后台处理所有的逻辑,如果没从都是前台请求然后去算,任何语言都会有问题

这个问题跟语言和数据库都没有关系,因为你不能实时查询,只能是寻找合适的时机,缓存相关的统计数据

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!