Для больших наборов данных JOINS лучше, чем использование JSONB или наоборот, в Postgres? - PullRequest
0 голосов
/ 22 ноября 2018

Вот простой пример использования:

У меня есть сущность posts и теги в моем приложении.Здесь я хочу выполнить два типа запросов:

  1. выборка сообщений для тега
  2. выборка тегов для сообщения

Два вариантаЯ могу пойти с тем, что

  1. имеет отдельные таблицы для сообщений и тегов.Затем выполните объединение
  2. и добавьте теги в виде столбца jsonb в таблицу моих сообщений.при попытке получить сообщения для тега (природа), я могу сделать @> "nature" и упорядочить по дате создания сообщения.Когда я хочу получить теги для сообщения, мне даже не нужно ничего делать.

Для меня JSONB чувствует себя намного проще в использовании и рассуждениях (пришедших из мира JS).Но я не могу нарисовать картину компромисса производительности, если бы я пошел на этот подход.Я понимаю, что JSOB будет намного быстрее, когда мне не придется фильтровать / искать по самим объектам.Но что, если мне придется искать атрибут JSONB в таблице сообщений, содержащей 1M записей, каждая с, скажем, 20 или около того тегами?Будет ли объединение в этом случае более эффективным?

...