我正在为用户可以在其上编写Articles. 我几乎完成了设计,突然间我JSON datatype在MySQL.
根据博客,JSON可以使用某些用例:
- 用于存储元数据。例如,产品的高度、宽度、颜色存储为 JSON。
- 用于存储非标准模式类型数据
- 用于将标签存储为 JSON。例如,这个问题可能有标签 - mysql、JSON。因此,博客建议使用包含所有
tags.
最后一个让我怀疑。为什么?
好的,我已将 JSON 中的标签值存储为{"tags": ["mysql", "JSON", "mysql-datatype"]}. 我同意这有助于轻松维护文章的标签。
但是假设用户想要阅读所有与mysql标签相关的文章!如果我一直为article_id-维护一个单独的表tags_id,我可以轻松地获得所有Articles基于tags. 但这JSON可能是一个非常繁忙的要求,尽管这可以解决但需要付出代价。当然查询速度较慢。
这是我的文章模式:
我的思维方式是正确的还是我在这里遗漏了什么?喜欢听一些建议。