对于大型数据集,在Postgres中,JOINS是否比使用JSONB更好,反之亦然?

时间:2018-11-22 06:39:15

标签: postgresql join jsonb

这是一个简单的用例;

我的应用程序中有一个posts实体和一个tag实体。 我想在这里运行两种查询;

  1. 获取标签的帖子
  2. 获取帖子标签

我可以使用的两个选项是

  1. 具有用于帖子和标签的单独表格。然后加入
  2. 在我的posts表中将标签添加为jsonb列。尝试获取标签(自然)的帖子时,我可以执行@> "nature"并按帖子创建日期排序。 当我想获取帖子的标签时,我什至不需要做任何事情。

对我来说,JSONB感觉更容易使用和推理(来自JS世界)。 但是,如果我要采用这种方法,则无法描绘出性能折衷的情况。我知道当我不必筛选/搜索对象本身时,JSOB会更快。 但是,如果我必须在包含1M条记录且每个记录都带有20个左右标签的帖子表中搜索JSONB属性,该怎么办?在这种情况下,加入联接是否会成为性能更高的选择?

0 个答案:

没有答案