Size: a a a

pgsql – PostgreSQL

2021 March 05

П

Паша in pgsql – PostgreSQL
День добрый. Подскажите,пожалуйста,что сейчас лучше использовать для роутинга запросов,если рассматривать вариант без внесения правок в код приложения? Хочу некоторые тяжелые запросы (генерация отчета например) отправлять на реплику.
Пока что  нашел  решение через pgbouncer-rr,есть ли что-то еще под такую задачу?
источник

АА

Артур Асриян... in pgsql – PostgreSQL
Асилбек
SELECT monthname(payment_date) payment_month,
     
      sum(amount) over (),
      sum(sum(amount)) over ()

FROM payment
GROUP BY monthname(payment_date);
 здравствуйте может кто-нибудь объяснить разницу этих двух SUM(amount ) over() , SUM(SUM(amount)) over() .
SUM(SUM(amount )) over()  дает итоговую сумму  несмотря на group by,
я не могу понять что дает SUM(amount) over()
это оконные функции. они работают по результату запроса. почитайте неплохую статью об этом: https://habr.com/ru/post/268983/
источник

РЖ

Роман Жарков... in pgsql – PostgreSQL
Паша
День добрый. Подскажите,пожалуйста,что сейчас лучше использовать для роутинга запросов,если рассматривать вариант без внесения правок в код приложения? Хочу некоторые тяжелые запросы (генерация отчета например) отправлять на реплику.
Пока что  нашел  решение через pgbouncer-rr,есть ли что-то еще под такую задачу?
Яндекс Одиссей, pgpool
источник

KR

Kirill Reshke in pgsql – PostgreSQL
Одиссей норм
источник

РЖ

Роман Жарков... in pgsql – PostgreSQL
Паша
День добрый. Подскажите,пожалуйста,что сейчас лучше использовать для роутинга запросов,если рассматривать вариант без внесения правок в код приложения? Хочу некоторые тяжелые запросы (генерация отчета например) отправлять на реплику.
Пока что  нашел  решение через pgbouncer-rr,есть ли что-то еще под такую задачу?
Пардон, не дочитал. С автоматической "отправкой на реплику" не уверен что получится хоть где-то.
источник

AT

Alex Ted in pgsql – PostgreSQL
Все чаще слышу о Patroni
источник

П

Паша in pgsql – PostgreSQL
Odyssey хорош,как раз его вместо pgbouncer используем,всем спасибо,почитаю  про pgpool и patroni
источник

П

Паша in pgsql – PostgreSQL
источник

П

Паша in pgsql – PostgreSQL
такой проект еще нашел,но забросили его что-то
источник

МШ

Михаил Шурутов... in pgsql – PostgreSQL
Alex Ted
Все чаще слышу о Patroni
patroni - это совсем не про балансировку запросов. Это кластерное решение, которое управляет инстансами ПГ. Не надо вводить людей в заблуждение.
источник

AT

Alex Ted in pgsql – PostgreSQL
не надо наезжать на людей, я сказал что часто о нем слышу не больше ни меньше
источник

МШ

Михаил Шурутов... in pgsql – PostgreSQL
Паша
День добрый. Подскажите,пожалуйста,что сейчас лучше использовать для роутинга запросов,если рассматривать вариант без внесения правок в код приложения? Хочу некоторые тяжелые запросы (генерация отчета например) отправлять на реплику.
Пока что  нашел  решение через pgbouncer-rr,есть ли что-то еще под такую задачу?
* в порядке изуверского бреда
Переписать проект на использование хранимок и балансировать с помощю plproxy
источник

AT

Alex Ted in pgsql – PostgreSQL
свои обвинения и наезды при себе оставь
источник

РЖ

Роман Жарков... in pgsql – PostgreSQL
Alex Ted
свои обвинения и наезды при себе оставь
Сбавь, пожалуйста, обороты.
источник

ST

Sardorkhuja Tukhtakh... in pgsql – PostgreSQL
Всем привет! Сейчас пытаюсь спроектировать бд по трем первым нормальным формам (занимаюсь этим впервые), и стоит вопрос. Если делать по НФ, таблицы получаются большими, и их выходит много. Но мне при запросах с бэкенда нужно разом доставать значения с большого количества таблиц.

Следовательно, не будет ли это резать скорость, учитывая, что будет много JOIN'ов?
источник

ДЛ

Дмитрий Лукьянов... in pgsql – PostgreSQL
Sardorkhuja Tukhtakhodjaev
Всем привет! Сейчас пытаюсь спроектировать бд по трем первым нормальным формам (занимаюсь этим впервые), и стоит вопрос. Если делать по НФ, таблицы получаются большими, и их выходит много. Но мне при запросах с бэкенда нужно разом доставать значения с большого количества таблиц.

Следовательно, не будет ли это резать скорость, учитывая, что будет много JOIN'ов?
Тут всегда баланс надо искать. Оптимизатор СУБД в реальности может эффективно работать при джойнах менее 5-6 таблиц. Если нормализация делает их больше, надо денормализовывать
источник

ST

Sardorkhuja Tukhtakh... in pgsql – PostgreSQL
Дмитрий Лукьянов
Тут всегда баланс надо искать. Оптимизатор СУБД в реальности может эффективно работать при джойнах менее 5-6 таблиц. Если нормализация делает их больше, надо денормализовывать
понял, спасибо! Я думал, нормальные формы — как золотое правило, от которого нельзя отходить
источник

🙈

🙈 Sergiy🖕 in pgsql – PostgreSQL
Sardorkhuja Tukhtakhodjaev
Всем привет! Сейчас пытаюсь спроектировать бд по трем первым нормальным формам (занимаюсь этим впервые), и стоит вопрос. Если делать по НФ, таблицы получаются большими, и их выходит много. Но мне при запросах с бэкенда нужно разом доставать значения с большого количества таблиц.

Следовательно, не будет ли это резать скорость, учитывая, что будет много JOIN'ов?
Просто любопытство, сколько джоинов будет в одном запросе +- если вы сделаете 3нф?
источник

ST

Sardorkhuja Tukhtakh... in pgsql – PostgreSQL
🙈 Sergiy🖕
Просто любопытство, сколько джоинов будет в одном запросе +- если вы сделаете 3нф?
я пока не все продумал и создал, но предполагаю, что будет как раз примерно 5
источник

МШ

Михаил Шурутов... in pgsql – PostgreSQL
Sardorkhuja Tukhtakhodjaev
Всем привет! Сейчас пытаюсь спроектировать бд по трем первым нормальным формам (занимаюсь этим впервые), и стоит вопрос. Если делать по НФ, таблицы получаются большими, и их выходит много. Но мне при запросах с бэкенда нужно разом доставать значения с большого количества таблиц.

Следовательно, не будет ли это резать скорость, учитывая, что будет много JOIN'ов?
А теперь правильный ответ: на поставленный вопрос сможет ответить только EXPLAIN (ANALYZE, BUFFERS)
источник