Questions tagged «tagging»

6
推荐的用于标记或标记的SQL数据库设计[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引文回答。 4年前关闭。 改善这个问题 我听说过几种实现标记的方法。使用TagID和ItemID之间的映射表(对我来说有意义,但是可以缩放吗?),向ItemID添加固定数量的可能的TagID列(似乎是个坏主意),将标签保留在逗号分隔的文本列中(声音疯狂但可以工作)。我什至听说有人建议使用稀疏矩阵,但是标记名称又如何优雅地增长呢? 我是否错过了标签的最佳做法?

12
标记的数据库设计
您如何设计数据库以支持以下标记功能: 项目可以具有大量标签 搜索带有给定标签集的所有项目必须快速(这些项目必须具有ALL标记,因此这是AND搜索,而不是OR搜索) 创建/写入项目可能较慢,无法快速查找/阅读 理想情况下,应使用单个SQL语句对(至少)带有一组n个给定标签的所有标签进行查找。由于要搜索的标签数量以及任何项目上的标签数量都是未知的并且可能很高,因此使用JOIN是不切实际的。 有任何想法吗? 到目前为止,感谢您提供所有答案。 但是,如果我没记错的话,给出的答案将显示如何对标签进行“或”搜索。(选择所有具有n个标签中的一个或多个标签的项目)。我正在寻找有效的AND搜索。(选择所有带有n个标签的项目-可能还有更多。)


7
如何实施标签制度
我想知道实现标签系统的最佳方法是什么,就像SO上使用的那样。我在想这个,但是我无法提出一个好的可扩展解决方案。 我当时在考虑一种基本的三表解决方案:有一个tags表,一个articles表和一个tag_to_articles表。 这是解决此问题的最佳解决方案,还是有替代方案?使用这种方法,表的时间将变得非常大,我认为对于搜索而言,效率不是很高。另一方面,快速执行查询并不重要。


3
设定成员的TTL
在Redis中是否可以不为特定密钥设置TTL(生存时间),而是为一组成员设置TTL? 我正在使用Redis文档提出的标签结构-数据是简单的键/值对,并且标签是包含对应于每个标签的键的集合,例如 > SETEX id:id_1 100 'Lorem ipsum' OK > SADD tag:tag_1 id:id_1 (integer) 1 密钥id:id_1将按预期到期,但我看不到从tag:tag_1集中删除相应成员的有效方法。 我出现的一种方法是使用包含脚本的cron作业,该脚本将定期从集合中删除过期的密钥-通过将所有标签名称添加到另一个集中,然后遍历所有标签,然后遍历与每个标签对应的所有id并检查是否存在相应的密钥-如果不存在,则调用SREM。 我认为这不是一种有效的方法,我可能希望保持标签尽可能整洁,因为集合的大小可能会影响多个标签(SINTER)的搜索性能。还有更“内部”的方式吗?
71 redis  set  tagging  ttl 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.