gpt4 book ai didi

mysql - 信息架构和检索 - 确定查询的优先级

转载 作者:行者123 更新时间:2023-11-30 01:16:07 26 4
gpt4 key购买 nike

我有一个应用程序,可以根据相关性分数向用户显示数据。我可以显示 5 到 7 种不同类型的信息(例如用户标签、好友标签、推荐标签、热门标签等)。每种信息类型都是一个单独的 sql 查询。

然后我有一个算法,可以根据每种类型的相关程度对其进行排名。该算法基于多个因素,包括对特定类型采取操作以来的时间、一种信息类型对另一种信息类型的重要性、一种类型显示的频率等。

一旦它们被排名,我就会在提要中向用户展示它们,类似于 Facebook。

我的问题很简单。在通过排名算法运行数据之前,我需要这些数据,那么从数据库中仅提取我需要的数据的最有效方法是什么。

目前,我提取每种信息类型的前 5 个实例,然后对它们进行排名。每条数据都会获得一个相关性分数,如果我没有足够的结果达到特定的相关性阈值,我会返回数据库获取接下来的 5 个数据。

这种方法的问题是,我冒着提取太多我从未使用过的故事类型的风险,如果我第一次没有得到我需要的东西,我必须继续返回数据库。

我考虑过一个包含所有信息类型和算法的大型sql查询,这可以工作,但这确实是一个巨大的查询,而且我让mysql做了很多处理,而且我是一般的想法是 Mysql 应该进行数据检索,而我的编程语言(php)应该进行处理。

必须有更好的方法!我确信某处有一篇学术文章,但我一直找不到。

感谢堆栈溢出

最佳答案

我假设您所说的信息类型是指(用户标签、好友标签等);我建议不要再次针对特定的固定阈值再次获取数据,而是稍微改变一下你的算法。尝试为每个信息类型分配权重,即使您获得了一些低优先级类型的记录,也不必再次获取它。

关于mysql - 信息架构和检索 - 确定查询的优先级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19039328/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com