
blkmrkt
31.07.2018
05:45:42
ой нет, 1гиг
Я считаю что мы заслужили доки постгреса в таком же формате как и minecraft wiki.
А то погуглил matrialized view postgres speed up query, во всех ответах на SO намек про caching. Открываешь оф. доки, Ctrl+F caching, 0 results. Почему? Наверное materialized view содержит меньше инфы чем основная таблицы, и наверное ОС закеширует его блоки если его часто дергать, но это не точно. Ставишь строиться materialized view, идешь спать, просыпаешься и убеждаешься что так все и есть.
А нужно вот как - открываешь вебсайт, и тут тебе варианты на выбор: какой датасет у вас, сэр? Какое железо? Что хотите сегодня сделать? Что тормозит? И далее разжеванные пояснения за каждый из них.

Darafei
31.07.2018
05:49:59
http://pgtune.leopard.in.ua

Google

Mike Chuguniy
31.07.2018
05:56:55
http://pgtune.leopard.in.ua
Пару раз напарывался на то, что возврат checkpoint_completion_target в дефолтное значение (0,5) избавлял от подземных стуков и прочих непотребств. Ну и с описанием, почему так, а не иначе всё как-то грустно и печально

blkmrkt
31.07.2018
05:58:45

Mike Chuguniy
31.07.2018
05:58:55
А потому я предпочитаю в качестве стартового вот этот конфигуратор: http://pgconfigurator.cybertec.at/

blkmrkt
31.07.2018
05:59:24

Mike Chuguniy
31.07.2018
06:00:22
По крайней мере, при выставлении мышой какого либо исходного параметра появляется подсказка, на какой конфигурационный параметр ПГ этот исходный влияет.

Андрей
31.07.2018
06:27:14
парни, это же ненормально что вставка 100к записей происходит 4-7 сек?

Mike Chuguniy
31.07.2018
06:28:59
И от, собственно, данных. А то вы там поди в каждой записи "Войну и мир" пытаетесь вставить.

Андрей
31.07.2018
06:30:11
да нет
5 колонок

Mike Chuguniy
31.07.2018
06:31:40
Плюс хитровывернутые многочисленные триггеры на вставку очень хорошо могут просадить эту самую вставку.

Андрей
31.07.2018
06:32:11
нету тригиров на вставку

Google

Mike Chuguniy
31.07.2018
06:33:03
Значит, конфигурация. А может ещё и объём.

Андрей
31.07.2018
06:33:27
Какой объем?

Mike Chuguniy
31.07.2018
06:34:11
Данных. Но вообще, данная ситуация - повод для разбираться, в чем дело. Ибо долго. Вангую проблемы с диском.

Андрей
31.07.2018
06:35:17
Диском? На двух компах запускалось.

Mike Chuguniy
31.07.2018
06:41:12
Тогда смотрите EXPLAIN (ANALYZE, BUFFERS, VERBOSE)
И лично я сомневаюсь, что без конфигурации системы и ПГ кто-то что-то сможет сказать что-нибудь более конкретное. Хотя 4 индекса и три внешних ссылки - они своё возьмут при манипуляциях с данными.

Андрей
31.07.2018
07:22:20

Айтуар
31.07.2018
07:34:29

S
31.07.2018
07:36:15

Андрей
31.07.2018
07:36:45

S
31.07.2018
07:37:25
а 100к строк как вы пихаете, одним запросом?

Андрей
31.07.2018
07:37:35

S
31.07.2018
07:38:15
ну это одна транзакция, норм :-)

blkmrkt
31.07.2018
07:40:37
Кто-нибудь встречал большие бд постгреса внутри кубернетес кластера? То есть докеризированные.
Плохая это идея?

Андрей
31.07.2018
07:41:44

Vladimir
31.07.2018
07:45:35
А сам селект быстрый?
Почему вы вообще заморочились насчёт этих секунд
Вам надо получить 100 мс?)

Андрей
31.07.2018
07:45:53
селект быстрый
та просто, было бы неплохо если б по скорее работало

S
31.07.2018
07:53:37
explain analyze этого селекта сколько занимает?

Vladimir
31.07.2018
07:54:13

Google

Андрей
31.07.2018
07:58:19

S
31.07.2018
08:03:14
а индекс на котором вы конфликтуете сколько занимает?

Андрей
31.07.2018
08:04:32
а индекс на котором вы конфликтуете сколько занимает?
вот что анализ по полной транзакции выдал
Planning time: 0.635 ms
Trigger for constraint fk_agents_warehouse_agent_id: time=1200.073 calls=115059
Trigger for constraint fk_agents_warehouse_distributor_id: time=1088.363 calls=115059
Trigger for constraint fk_agents_warehouse_warehouse_id: time=2226.358 calls=115059
Execution time: 6501.925 ms

Oleg
31.07.2018
08:06:52
оу, там еще проверка констрейнтов. 100к за 7 секунд. да ваша Галя балувана

Андрей
31.07.2018
08:08:16
lol

Roman
31.07.2018
08:12:32

blkmrkt
31.07.2018
08:13:14

Sergey
31.07.2018
08:13:23

Roman
31.07.2018
08:14:03

Mike Chuguniy
31.07.2018
08:15:40

Roman
31.07.2018
08:17:35

Mike Chuguniy
31.07.2018
08:19:43
БД в полтерабайта, 450 - 500 подключений, и все чего-то с базой делают. Какая, к чёрту, виртуалка?! Или что это за хост такой должен быть?

Mike Chuguniy
31.07.2018
08:20:33
ВИртуалка - это для личного сайтика, демонстрирующего, как владелец сайтика у мамы молодец.

blkmrkt
31.07.2018
08:22:06

Sergey
31.07.2018
08:22:24
деда)0

Mike Chuguniy
31.07.2018
08:22:44
Чтобы два разы не вставаить. База - производственная, у каждого пользователя свой аккаунт, т.е. оправданность пгбаунсера - под вопросом.

Roman
31.07.2018
08:22:50

Mike Chuguniy
31.07.2018
08:23:23

Roman
31.07.2018
08:24:48

Google

Oleg
31.07.2018
08:44:03
Привет, как из pg_class выяснить какой схеме принадлежит таблица?
ясно

Andrey
31.07.2018
09:11:33
Всем привет.
Ребят, подскажите. Настраиваю pgpoll поверх 2х серверов PG10.
Работают как мастер слейв с обычой sreaming репликацией.
Все что требуется от pgpool это инсерты слать только в мастер, а селекты балансить между мастером и репликой + авторизация по персонифицированным учеткам в PG. Это возможно?
Сейчас столкнулся с проблемой: "ERROR: MD5 authentication is unsupported in replication, master-slave and parallel modes.
HINT: check pg_hba.conf"
Гуглится сразу таблица сообщетствия методов авторизации. Но у меня везде стоит md5.
Но и на мастере и на слейве у меня прописано в pg_hba.conf уже даже вот такое правило:
host all all 0.0.0.0/0 md5
И на сервере pgpool тоже в pool_hba.conf прописано:
host all all 0.0.0.0/0 md5

Bogdan (SirEdvin)
31.07.2018
15:05:50
Немного странный вопрос, что посоветуете для master-slave репликации?)

Yaroslav
31.07.2018
15:17:28

Nikolai
31.07.2018
15:17:34
Не менее странный ответ: настроить и использовать

Admin
ERROR: S client not available

Bogdan (SirEdvin)
31.07.2018
15:18:08
А цель какая?
В случае если master лежит иметь возможность перевести slave в master и работать дальше с ним.
Ну и еще опять странный вопрос. Я очень сильно туплю или для стандартный streaming replication из postgres нужно, что бы у мастера и слейва была общая папка?

Yaroslav
31.07.2018
15:21:23

Nikolai
31.07.2018
15:23:14
Если не планируете гонять на слейве тяжёлые запросы и готовы переключаться руками - то встроенной потоковой достаточно

Konstantin
31.07.2018
15:24:00
Pdi + greenplum + dblink

Mike Chuguniy
31.07.2018
15:25:00

Konstantin
31.07.2018
15:27:36
Ну ненужное для аналитики сливаем на гринплам
Кря
Pentaho pdi

Yaroslav
31.07.2018
15:28:18

Bogdan (SirEdvin)
31.07.2018
15:29:06
То есть она нужна как раз на тот случай, когда реплика сильно отстанет и можно было как-то подтянуть?
А в нормальном режиме не используется?

Yaroslav
31.07.2018
15:32:39
А в нормальном режиме не используется?
Да, в нормальном режиме — это просто архив WAL.
А как вы без него от некоторых disaster защититесь (DROP important_table; —> уже попало на реплику... упс)?

Google

Bogdan (SirEdvin)
31.07.2018
15:36:15
А насчет связки pgpool II + streaming replication есть какие-то предупреждения или в целом более-менее будет работать?)

Konstantin
31.07.2018
15:52:47
Будет
Работало вроде

¯\_(ツ)_/¯
31.07.2018
16:22:45
Добрый день. Есть такой запрос
SELECT '2018-05-08 12:02:48.389823 +03:00'::TIMESTAMPTZ - '2018-05-08 10:59:25.591843 +03:00'::TIMESTAMPTZ;
Подскажите, пожалуйста, как отформатировать его результат
-- current format: 0 years 0 mons 0 days 1 hours 3 mins 22.79798 secs
в
-- needed format: 63 mins 22.79798 secs

Nikolai
31.07.2018
16:39:15

Yaroslav
31.07.2018
16:45:39

Nikolai
31.07.2018
16:48:25
А в чём вопрос? ;)
К тому что мы такое делаем с помощью бармэна. Но может уже что-то поменялось и это теперь немодно :)

Yaroslav
31.07.2018
16:51:26

Nikolai
31.07.2018
16:52:29
Да)

Vladimir
31.07.2018
16:55:41
не стрёмно им летать?

Andrei
31.07.2018
17:11:51

Artem
31.07.2018
19:15:25

Konstantin
31.07.2018
20:57:31

Artem
31.07.2018
20:58:27
На гринпламе
а как данные в него затягиваете из постгреса? если не секрет

Konstantin
31.07.2018
20:58:36
Pdi