
Anton
11.04.2017
00:04:54
select * from table where (payer=1 or recipt=1) and date between d1 and d2;
такой запрос

Denis
11.04.2017
00:07:49
Обычное секционирование плохо ускоряет. pg_pathman умеет сам разливать данные из родительской таблицы по дочкам и ищет именно в той дочерней таблице, где эти данные лежат. Так что он поиск по ключу шаржированных радикально ускоряет. В нем можно шаржировать по хешу или по диапазонам

Anton
11.04.2017
00:09:12
http://www.sai.msu.su/~megera/postgres/talks/novosib_pg.pdf
прогрессивные ребята postgresql pro, прямо сейчас все это делают, а планы еще круче)
а эти шарды могут на разных серверах находится?

Google

Anton
11.04.2017
00:09:56
т.е. горизонтально масштабироваться

Denis
11.04.2017
00:10:19
Ну и как будет строиться план по внешней таблице не могу сказать

Anton
11.04.2017
00:11:31
пока, конечно, одного сервера хватает, но каждый месяц +2-3 млн

Denis
11.04.2017
00:12:50
По опыту скажу, что pathman классно позволяет делать именно то, что заявлено - искать значения шардирования. Агрегация данных из кучи дочерних таблиц, например, дольше, чем из одной родительской (что логично)

Anton
11.04.2017
00:14:33
надо еще почитать, не пойму в чем смысл этого шардирование. типа зачем разбивать таблицу, если она все равно на одном сервере будет

Denis
11.04.2017
00:15:23
Вообще я сторонник, что лучше заранее все порезать на части по разным серверам, чем вырастить монстра с безумными объемами и поклоняться ему) Ребята в скайпе вообще все пилят через plproxy на разные сервера, раскладывая данные на базы по паре гб

Fike
11.04.2017
00:15:30
если какой-то запрос должен просканить всю таблицу, то шардирование может знатно уменьшить объем скана
(не то чтобы я pathman пользовался, просто влез)

Denis
11.04.2017
00:16:32
Ну разница в том, что таблица - это файл. И индекс - файл. И искать данные в файле в 1 Гбайт всяко быстрее, чем в 50 гб

Anton
11.04.2017
00:17:07
т.е. запрос просто распараллеливается?

Fike
11.04.2017
00:17:37
не параллелится, а идет в хранилище меньшего объема

Anton
11.04.2017
00:18:06
ну вообще я примерно понял, как-то становится понятно, что данные для этого запроса находятся в том то шарде

Google

Admin
ERROR: S client not available

Anton
11.04.2017
00:18:26
надо только детали поизучать, как это делается
спасибо, это тоже ключевой вопрос, правда пока фуллтекст поиск приоритетнее, а потом и этим займусь
отличное введение в тему, кстати, https://habrahabr.ru/company/oleg-bunin/blog/309330/

Anton
11.04.2017
08:05:34
Коллеги, кто знает сколько времени будет занимать переключение на следующий в списке синхронных стендбаев ? для версии 9.5 есть wal_sender_timeout (integer) - он будет для каждого лога по очереди ходить по всем стендбаям и ждать этот таймаут или один раз найдет рабочий и начнет на него писать синхронно ?

Игорь
11.04.2017
08:19:48

Anton
11.04.2017
08:29:38

Айтуар
11.04.2017
08:31:42
а оно точно нужно эти 14 тыс значений?

Anton
11.04.2017
08:34:38