Difference between revisions of "Main Page"

From pgpool Wiki
Jump to: navigation, search
(pgpool-II 3.3 alpha1 released (2013/05/17))
(Add licence)
Line 37: Line 37:
 
pgpool-II talks PostgreSQL's backend and frontend protocol, and relays a connection between them. Therefore, a database application (frontend) thinks that pgpool-II is the actual PostgreSQL server, and the server (backend) sees pgpool-II as one of its clients. Because pgpool-II is transparent to both the server and the client, an existing database application can be used with pgpool-II almost without a change to its sources.
 
pgpool-II talks PostgreSQL's backend and frontend protocol, and relays a connection between them. Therefore, a database application (frontend) thinks that pgpool-II is the actual PostgreSQL server, and the server (backend) sees pgpool-II as one of its clients. Because pgpool-II is transparent to both the server and the client, an existing database application can be used with pgpool-II almost without a change to its sources.
  
 +
== pgpool-II Licence ==
 +
 +
Copyright (c) 2003-2013  PgPool Global Development Group
 +
 +
Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation, and that the name of the author not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. The author makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty.
  
 
= pgpool-II 3.2 =
 
= pgpool-II 3.2 =

Revision as of 06:04, 1 June 2013


Welcome to Pgpool Wiki!

What is pgpool-II?

pgpool-II is a middleware that works between PostgreSQL servers and a PostgreSQL database client. It is licensed under BSD license. It provides the following features.

  • Connection Pooling
pgpool-II saves connections to the PostgreSQL servers, and reuse them whenever a new connection with the same properties (i.e. username, database, protocol version) comes in. It reduces connection overhead, and improves system's overall throughput.
  • Replication
pgpool-II can manage multiple PostgreSQL servers. Using the replication function enables creating a realtime backup on 2 or more physical disks, so that the service can continue without stopping servers in case of a disk failure.
  • Load Balance
If a database is replicated, executing a SELECT query on any server will return the same result. pgpool-II takes an advantage of the replication feature to reduce the load on each PostgreSQL server by distributing SELECT queries among multiple servers, improving system's overall throughput. At best, performance improves proportionally to the number of PostgreSQL servers. Load balance works best in a situation where there are a lot of users executing many queries at the same time.
  • Limiting Exceeding Connections
There is a limit on the maximum number of concurrent connections with PostgreSQL, and connections are rejected after this many connections. Setting the maximum number of connections, however, increases resource consumption and affect system performance. pgpool-II also has a limit on the maximum number of connections, but extra connections will be queued instead of returning an error immediately.
  • Parallel Query
Using the parallel query function, data can be divided among the multiple servers, so that a query can be executed on all the servers concurrently to reduce the overall execution time. Parallel query works the best when searching large-scale data.

pgpool-II talks PostgreSQL's backend and frontend protocol, and relays a connection between them. Therefore, a database application (frontend) thinks that pgpool-II is the actual PostgreSQL server, and the server (backend) sees pgpool-II as one of its clients. Because pgpool-II is transparent to both the server and the client, an existing database application can be used with pgpool-II almost without a change to its sources.

pgpool-II Licence

Copyright (c) 2003-2013 PgPool Global Development Group

Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation, and that the name of the author not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. The author makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty.

pgpool-II 3.2

Pgpool-II 3.2 is the latest stable version released in Aug 2012.

On Memory Query Cache

  • New fast query cache !
On memory query cache is faster because cache storage is on memory. Moreover you don't need to restart pgpool-II when the cache is outdated because the underlying table gets updated.
On memory cache saves pair of SELECT statements (with its Bind parameters if the SELECT is an extended query). If the same SELECTs comes in, it returns the value from cache. Since no SQL parsing nor access to PostgreSQL are involed, it's extremely fast.
  • Choosing cache storage
You can choose a cache storage: shared memory or memcached (you can't use the both).
Query cache with shared memory is fast and easy because you don't have to install and config memcached, but restricted the max size of cache by the one of shared memory. Query cache with memcached needs a overhead to access network, but you can set the size as you like.

Watchdog

"Watchdog" is a sub process of pgpool-II aiming for adding high availability feature to it. Features added by watchdog include:

  • Life checking of pgpool service
Watchdog monitors responses of pgpool service rather than process. It sends queries to PostgreSQL via pgpool which is being monitored by watchdog and watchdog checks the response.
Also watchdog monitors connections to up stream servers (application servers etc.) from the pgpool.
The connection between the up stream servers and the pgpool is monitored as service of pgpool.
  • Mutually monitoring of watchdog processes
Watchdog processes exchange information on the monitored servers to keep the information up to date, and to allow watchdog processes to mutually monitor each other.
  • Changing active/standby state in case of certain faults detected
When a fault is detected in the pgpool service, watchdog notifies the other watchdogs of it. Watchdogs decide the new active pgpool if previous active pgpool is broken by voting and change active/standby state.
  • Automatic virtual IP address assigning synchronous to server switching
When a standby pgpool server promotes to active, the new active server brings up virtual IP interface. Meanwhile, the previous active server brings down the virtual IP interface.
This enables the active pgpool to work using the same IP address even when servers is switched over.
  • Automatic registration of a server as standby in recovery
When broken server recovers or new server is attached, the watchdog process notifies the other watchdog process along with information of the new server, and the watchdog process receives information on the active server and other servers. Then, the attached server is registered as standby.

What's new (Stable)

pgpool-II 3.2.4, 3.1.7, 3.0.11 officially released (2013/04/26)

Theese are the latest stable versions of each major branches.

You can download them here.

Learn more about pgpool-II 3.2.4:

Learn more about pgpool-II 3.1.7:

Learn more about pgpool-II 3.0.11:

pgpool-ha 2.1 released (2013/04/26)

This is the minor version up of pgpool-ha.

You can download this here.

pgpool-II 3.2.3 officially released (2013/02/18)

Theese are the latest stable versions of 3.2 whici is the latest major version. Main purpose of this release is to fix fatal problem with pgpool-II 3.2.2's health checking.

You can download them here.

Learn more about pgpool-II 3.2.3:

pgpool-II 3.2.2, 3.1.6, 3.0.10 and pgpoolAdmin 3.2.2 officially released (2013/02/08)

Theese are the latest stable versions of each major branches.

You can download them here.

Learn more about pgpool-II 3.2.2:

Learn more about pgpool-II 3.1.6:

Learn more about pgpool-II 3.0.10:

pgpool-ha 2.0 released (2012/10/15)

This is the majar version up of pgpool-ha.

You can download this here.

pgpoolAdmin 3.2.1 officially released (2012/10/15)

This is the latest version of pgpoolAdmin including a security fix for Cross-Site Scripting (XSS) vulnerability.

You can download this here.

pgpool-II 3.2.1, 3.1.5, 3.0.9 officially released (2012/10/12)

They are the latest versions of each major branches including variable bug fixes.

You can download them here.

pgpool-II 3.1.4, 3.0.8, 2.3.4, 2.2.8 officially released (2012/08/06)

They are the latest versions of each major branches including variable bug fixes.

You can download them here.

pgpool-II 3.2 and pgpoolAdmin 3.2 officially released (2012/08/03)

Pgpool-II 3.2 is now officially released. This version supports "On memory query cache" and "Watchdog". Learn more about pgpool-II 3.2:

pgpool-II 3.1.3 and 3.0.7 officially released (2012/04/23)

Pgpool-II 3.1.3 and 3.0.7 are now officially released. These are the latest stable versions of each major series.

Learn more about pgpool-II 3.1.3:

Learn more about pgpool-II 3.0.7:

pgpool-II 3.1.2 and 3.0.6 officially released (2012/01/31)

Pgpool-II 3.1.2 and 3.0.6 are now officially released. These are the latest stable versions of each major series.

Learn more about pgpool-II 3.1.2:

Learn more about pgpool-II 3.0.6:

pgpool-II 3.1.1 and pgpoolAdmin 3.1.1 officially released (2011/12/06)

Pgpool-II 3.1.1 is now officially released. This is the latest stable version of pgpool-II 3.1 series. And we also released pgpoolAdmin 3.1.

pgpool-II 3.1 officially released (2011/09/08)

Pgpool-II 3.1 is now officially released. This version supports syslog, more than one standby nodes in streaming replication mode, allow to specify user name with pg_md5 command. You can add new DB node or do online recovery without disturbing existing client sessions.

Also documents are enhanced. Simplified Chinese and French verion of documnets are added.

Learn more about pgpool-II 3.1:

What's new (Development)

pgpool-II 3.3 alpha1 released (2013/05/17)

Pgpool-II 3.3 alpha1 is now relased. This is not a stable version but just for developers.

V3.3 has a new feature:

  • Enhancements for watchdog
    • New monitoring method of watchdog lifecheck using heartbeat signal
    • Interlocking of failover/failback script
    • Secure watchdog communication
    • etc.
  • Othres
    • Import PostgreSQL 9.2 raw parser
    • New pgpool_setup tool
    • Support for using CREATE EXTENSION to install pgpool specific extensions

You can download it from here.

pgpool-II 3.2 RC3 released (2012/07/31)

Pgpool-II 3.2 RC3 is now relased. This is not a stable version but just for developers. We're going to release 3.2 as stable on Aug 3rd.

You can download it from here.

pgpool-II 3.2 RC2 released (2012/07/27)

Pgpool-II 3.2 RC2 is now relased. This is not a stable version but just for developers.

You can download it from here.

pgpool-II 3.2 RC1 released (2012/07/20)

Pgpool-II 3.2 RC1 is now relased. This is not a stable version but just for developers.

You can download it from here.

pgpool-II 3.2 beta2 released (2012/07/13)

Pgpool-II 3.2 beta2 is now relased. This is not a stable version but just for developers.

Users are encouraged to take part in our beta test program. Please help us in testing and making pgpool-II 3.2 better!

You can download it from here.

pgpool-II 3.2 beta1 released (2012/07/06)

Pgpool-II 3.2 beta1 is now relased. This is not a stable version but just for developers.

Users are encouraged to take part in our beta test program. Please help us in testing and making pgpool-II 3.2 better!

You can download it from here.

pgpool-II 3.2 alpha2 released (2012/06/29)

Pgpool-II 3.2 alpha2 is now relased. This is not a stable version but just for developers.

V3.2 is added a new feature: watchdog. This is a sub process of pgpool-II aiming for adding high availability feature. You can download it from here.

pgpoolAdmin 3.2 alpha1 released (2012/06/04)

PgpoolAdmin 3.2 alpha1 is now relased. This is not a stable version but just for developers. V3.2 is not only for pgpool-II V3.2 but also for older versions (V2.0 -).

You can download it from here.

pgpool-II 3.2 alpha1 released (2012/05/16)

Pgpool-II 3.2 alpha1 is now relased. This is not a stable version but just for developers.

V3.2 has a new feature: On memory query cache. You can download it from here.

Where can I get commercial support for pgpool-II?

Some commercial packages include pgpool-II support. Consulting and annual support can be purchased from SRA OSS, Inc. Japan(http://www.sraoss.co.jp/index_en.php).