если важен перфоманс?
Подходящую БД
spring-data-jpa
И подходящий ORM ))
Я серьёзно, между прочим. Если важен перфоманс, скорость "обвязки" тоже, конечно, влияет, но то, что происходит в БД намного важнее.
какая бд под какие задачи?)
Ну да. А то пихают реляционные данные в монгу, потом удивляются ) Я имел в виду что продуманный выбор БД с учётом массовости тех или иных операций (вставка, чтение и т.п.), грамотное её проектирование и администрирование важнее для перфоманса в большинстве случаев.
Во, а такие вопросы, по выбору БД, тут можно обсуждать? Или есть специальный чат?
Есть ещё книжка с кабанчиком. Там прям хорошо расписаны многие вещи
Можно-то можно, но в среднем хороший ответ на этот вопрос требует столько квалификации и конкретной информации о проекте, что хочется сказать "если интерес не умозрительный, то пора нанимать отвечающих в штат".
Сейчас это на этапе обсуждения, а мне хочется понимания, и свое мнение сформировать Там приходит много объектов, каждый с разным набором параметров, типа Map<String, Object> Сейчас все это хранится в постгресе по модели entity-attribute-value Данных много, таблица с attributeValue сильно разрослась, а к ней еще и другие таблицы надо постоянно джойнить И хотят отойти от этой EAV-модели Но почему-то заказчик против монги Видел вариант с jsonb, но там запросы надо чудные писать для поиска по полям json-ов Как еще можно такое хранение организовать?
Если важен перформанс - вы не берете реляционку
Эластик не рассматривали?
Он используется, данные сохраняются в БД, а потом передаются в эластик
А чем тут монга так уж поможет? Хранить json целиком и в постгресе можно
Понятно) но тогда скорее не вопрос бд, а архитектуры приложения
Вариант, конечно, но там запросы чудные, если селекты делать по полям json
В ней такие данные проще хранить. Но как минимум, заказчик против, насколько я знаю
Это да. Но чуднее монговского синтаксиса вряд ли что можно придумать :-) Плюс сохраняется возможность вытащить часть полей в таблицу и делать по ним нормальные запросы.
Я тоже к jsonb склоняюсь. Но вдруг еще варианты есть?
Мне вот такой пример для jsonb в постгресе показали, тоже недалеко от синтаксиса монги ушел )) SELECT * FROM users WHERE metadata @> '{"company":{"name": "Mozilla"}}';
это да ) а если у вас поиск через эластик идёт, то в чём вообще проблема с ПГ?
А как? Только в эластике хранить?
Даже не знаю, это тоже как-то рисково выглядит.
Ну да. Тем более чтобы такую масштабную перестройку архитектуры согласовать - нужны веские аргументы, вот пока собираю их )
А в чем проблема продолжать хранить в EAV?
Обсуждают сегодня