我需要找到一种方法来获取相关的视频,主要是寻找相关的标签。相关标签算法
首先让我们看看我的标签存储在数据库中的方法:
请注意,这不是MySQL数据库,我使用的是Cassandra。
因此,您可以看到每个标签都包含具有该标签的帖子ID列表。用SQL语言读取post ID很容易,我会说:
SELECT * from tags WHERE id = "cars" AND id = "movies"
。
那么这个部分很容易,现在我有吨相关标签的帖子,对吧?
但是这里出现了我无法克服的问题。由于一个帖子可以具有比另一个更多的相关标签,所以它比其他帖子更重要。当然,我可以一起攻击一些东西,看看哪个帖子有更多相关标签,但是其他更严重的问题来了。
假设我们有20个标签,所以我们寻找20行,而这20行共包含大约1亿个ID,运行低谷1亿个ID,并且将它们相互比较将需要很多资源和时间。所以我在问这种情况如何改善?
Y U没有Mysql? – samayo
@phpNoOb你的昵称可以回答你的问题 – Linas
我认为像'SELECT COUNT(*)AS count FROM tags WHERE post_ids LIKE'%id here%';'会有所帮助。 – Licson