Size: a a a

2021 April 21

N

N in pro.jvm
привет, подскажите плз как можно оптимизировать такой sql реквест ?
вариант с кешированием или апдейтом материал вьюшки не сильно подходит (
SELECT count(*) from search.table;

на фронте отображаем дашборды и есть метрика общее число записей, сейчас уже выполняется больше 30 сек
источник

RM

Roman Morozov in pro.jvm
сколько записей в таблице? И как ты коннект к базе делаешь?
источник

N

N in pro.jvm
записей много(50 лямов), пул коннектов
источник

RM

Roman Morozov in pro.jvm
HikariCP в качестве менеджера?
источник

N

N in pro.jvm
да
источник

AG

Alexey Genus in pro.jvm
Взять примерное число из системных таблиц
источник

АМ

Алексей Могилин... in pro.jvm
зависит от базы, как вариант тригер повесить на таблицу при вставке увеличивать счетчик
в пг есть pg_catalog.pg_class там можно узнать "примерное" число записей если допустимо
источник

RM

Roman Morozov in pro.jvm
функции юзать, но тут зависит от ДБ, и машины где приложение крутится (так как база будет нагрузку на себя брать), ну или вон Алексей подсказывает тоже хороший вариант.

Но вообще 50 лямов и 30 секунд - что-то слишком долго, у меня миллиард +- 30 секунд отрабатывает но тут ORM и кэш
источник

N

N in pro.jvm
спасибо
источник

RM

Roman Morozov in pro.jvm
ORM попробуй использовать, для больших объемов данных подходит довольно хорошо
источник

АМ

Алексей Могилин... in pro.jvm
если count не возвращается время задуматься о шардировании и партиционирование
источник

AG

Alexey Genus in pro.jvm
Жесть, насоветовали, конечно, ребята
источник

BA

Bohdan Antonenko in pro.jvm
Всем привет
Подскажите пожалуйста, если проперти спринга тянуться с консула, как можно при запуске тестов в idea указать нужный профиль?
источник

AG

Alexey Genus in pro.jvm
https://youtu.be/HxwLCyCY8ec?t=121 для тех, кто ещё делает count(*) без фильтров
источник

G

George in pro.jvm
Если уж очень надо count, то вот правильное решение
источник

G

Galv in pro.jvm
всем привет! для чего в классах делают отдельные объекты в полях, которые использую как монитор синхрон блоках? в чем преимущество такого подхода над просто синхрон методом?
источник

AG

Alexey Genus in pro.jvm
Можно более гранулированно контролировать блокировки.
Например, только часть метода будет под synchronized, уменьшая критическую секцию.
Вторая причина в том, что мониторов может более одного, тогда просто synchronized над методом не поможет.
источник

e

error_404 in pro.jvm
они наверно неправильно прочитали название видоса,который вы только что скинули😆
источник

AG

Alexey Genus in pro.jvm
Да, там сам Космодемьянский иногда отмечает, что могут неправильно понять 😁
источник

L

Loljeene in pro.jvm
Я даже ребятам скинул два скрина, первый с EAV, второй с 1000+ денормализированных представлений.
Как раз вендорский проект такой на доработке
источник