【发布时间】:2019-11-17 07:58:38
【问题描述】:
我很难为这个用例选择正确的数据库(SQL、NoSQL),尽管它很常见。
这是主要记录 -
页面:
包含许多字段(将来可能会更改和更新)。
连接到标签列表(最多可包含 50 个标签)。
连接到评论部分。
使用标签查询页面记录。
一般来说,读取更重要(因此写入可能更昂贵)并且可用性应该很高。
不选择mongodb风格DB的原因是因为comment section,没有join,所以comment section必须嵌入到页面中,文档大小可能会增长过大。
此外,MongoDB 对可用性的依赖程度较低(使用 CAP),可用性对我来说很重要。
之所以不选择SQL是因为Page的scheme可以更新,没有固定的scheme。
也因为标签系统 - 应该创建另一个关系表,据我了解,这对性能不利。
这里最好的方法是什么?
【问题讨论】:
-
@GordonLinoff 我要求最好的方法,在这个用例中使用 SQL 或 NoSQL
-
@GordonLinoff 如果 OP 有更多关于性能的新内容,他们不会就 SO 提出问题 ;-) 虽然我同意,但这是 SO 的边界,他们要求的是 NoSQL 与关系建议而不是产品意见.
标签: sql database mongodb database-design nosql