pgpool-II для Postgres - это то, что мне нужно? - PullRequest
3 голосов
/ 12 сентября 2010

Я только что наткнулся на pgpool-II в своем поиске кластеризации моей базы Postgres (просто готовлюсь к развертыванию веб-приложения через пару месяцев).У меня все еще дрожит от волнения, но я нервничаю, так как каждый раз, когда я нахожу что-то такое превосходное, меня скоро подводят.Есть ли у вас опыт работы с pgpool-II, и поможет ли он мне запустить мою базу данных на нескольких виртуальных машинах, а затем и на нескольких физических серверах?Это все, что мне нужно для резервного копирования, распределения нагрузки и обеспечения большей доступности для моего сервера БД!?

Кроме того, легко ли использовать функцию параллельного запроса (например, в Django или через Pythons psycopg2)?Это было бы лучше всего для предоставления отчетов и агрегирования!

И последнее: кажется, что это работает между Postgres и psycopg2.Это правильное понимание, так что я могу использовать psycopg2 так же, как обычно, без учета pgpool-II?

1 Ответ

3 голосов
/ 18 сентября 2010

pgpool-II отлично работает для того, что он утверждает, что делает.И он подходит между вашим приложением и базой данных так, как вы ожидаете;просто наведите psycopg2 на него, а не прямо на базу данных, и все готово.

Главное, на что следует обратить внимание, - это то, что он поддерживает множество различных типов функций - репликация, балансировка нагрузки, параллельный запрос -Вы не можете использовать их все сразу.Похоже, у вас может сложиться впечатление, что вы можете это сделать, и это не сработает.Документация не совсем ясна по этому вопросу (по крайней мере, английская версия, я не могу говорить с оригинальной японской).

Например, если вы запускаете pgpool-II в его «Master / Slave»"Режим, так что он поддерживает балансировку нагрузки для масштабирования чтений, вы должны использовать другую программу, чтобы фактически выполнить репликацию между этими узлами.Slony был поддерживаемым решением для репликации, которое использовалось в более ранних версиях PostgreSQL, начиная с pgpool-II 3.0 и PostgreSQL 9.0, вы также можете использовать функции этой новой версии, которые скоро будут выпущены Streaming Replication / Hot Standby.

pgpool-II является полезным компонентом, и вы можете использовать его многими интересными способами, но я сомневаюсь, что это будет «все, что вам нужно» для каждого требования, которое вы надеетесь выполнить с ним.

...