172 похожих чатов

Ребят, подскажите, у кого был опыт, на каких объемах данных

начинаются проблемы с хранением в БД поля в формате JSON и взаимодействием с этим полем?
Есть желание сохранять в БД ПГ набор информации, но нет желания растягивать таблицу под каждую метрику.
Ожидания от таблицы простые: Выполнять селект по параметрам из json с группировками.
Таблица не большая, в день там в среднем 1-2тыс может появляться. Максимально 30тыс было в день.
Можно как-то просчитать при каких объемах будут тормозить выборки или при таких объемах вообще нет смысла заморачиваться?
Таблица чисто для аналитики, оперативных вычитываний из нее нет.

8 ответов

8 просмотров

лучше хранение в поле типа jsonb с индексацией. если будут проблемы со скоростью записи/перестроения индексов - то рассмотрите вопрос организации секционирования таблицы

Алексей- Автор вопроса

Интересно, по поводу 3х кто поставил 👎. Чем плох предложенный вариант?

Алексей
Интересно, по поводу 3х кто поставил 👎. Чем плох п...

Второе предложение слегка не к месту имхо

central hardware
Второе предложение слегка не к месту имхо

Лично для меня он плох тем, что: . Это уверенный ответ на неведомо какой (очень невнятно сформулированный) вопрос. . Почти всегда jsonb (и ему подобные) в реляционных СУБД проигрывают по большинству параметров (по которым их можно сравнить) реляционной модели тех же данных (неожиданно, правда? ;) ).

Алексей- Автор вопроса
central hardware
Второе предложение слегка не к месту имхо

Да, секционирование, я думаю, мне не нужно будет. Вот про тип, надо изучить.

Yaroslav Schekin
Лично для меня он плох тем, что: . Это уверенный о...

Если сравнивать json vs jsonb то выбор очевиден, а по поводу неведомых требований вы уже высказались

Алексей
Интересно, по поводу 3х кто поставил 👎. Чем плох п...

Как план — примерно всем. Во-первых, операцыи над json[b] — это примерно предпоследний вариант, когда реляцыонная декомпозицыя что-то неработает, и структура в принцыпе неопределена. Ну, или с реляцыонной декомпозицыей есть измеренные проблемы со скоростью. Так-то индэксацыя json у нас так себе, поиск по нему — тожэ (дажэ не в плане скорости), с цэлостностью данных всё не очень хорошо, да и с параллелизмом доступа много плохого. Во-вторых, секцыонирование — в среднем замедляет работу с базой. С нормально организованной базой. Так что рассматривать его как ускорение текущей работы — это нонсенс. Ну, и к тому жэ, примерно в 98% случаев секцыонированием занимаются поскольку могут (хоть как-то), а не потому, что это реально требуется.

central hardware
Если сравнивать json vs jsonb то выбор очевиден, а...

> Если сравнивать json vs jsonb то выбор очевиден, Правда? А зачем же у нас два типа-то? ;) И высказывался я не только про это, а про сравнение с нормальной моделью (см. https://t.me/pgsql/505082).

Похожие вопросы

Обсуждают сегодня

Типа вызывать GetParent и проверять на соответствие GetModuleHandle?
The Bird of Hermes
67
Всем привет! Кто нибудь парсил в ручную JSON без библиотек и фреймворков? Есть может ссылки на оптимальный алгоритмы работы с текстом и примеры таких парсеров?
Lem
27
Do any of you guys have interesting projects one could join? I'm a Middle Full-Stack developer (JS/TS, React & Node)
Lev Shapiro
40
Есть сайт. Там была древняя версия эво. Стоял плагин, который каждый коммент в Jot делал отдельной страницей. После обновления все слетело, теперь старница открывается отдельн...
Artem
1
$res = json_decode($наша строка из респонса); $res1 = array_map(fn($o) => $o->name, $res->breadcrumbs[0]->entities); Как такое будет на Хаскеле?.. В начале весь джейсон, в ко...
Хаскель Моисеевич Гопник
27
Добрый день. А shovel'ы можно как-то сконфигурировать в definitions.json? Пробовал что-то вроде: { "users": [ { "name": "agent", "password_hash": "RBCbTzQd...
Aleksey
1
Вопрос по диагностике ошибок (я знаю в чем, в данном конкретном примере, я знаю, как исправить, пример модельный, понятно, что в реальности бывает намного запутаннее). module...
ⰄⰎⰋⰐⰐⰑⰛⰤⰧⰧⰩⰄ ⰊⰑⰁⰓⰡⰛⰦⰕⰫ
11
В чем сила брат, в NASM или FASM?
Isaac Kleiner
18
А чем вам питонисты не угодили?😂
.
79
Есть какой-нибудь для Delphi/FPC T*Compression(Decompression)Stream на базе LZ4/Zstd/любой другой быстрый(и хорошо сжимающий) алгоритм А ещё лучше в pure pascal А ещё лучше од...
notme
52
Карта сайта