PR

PostgreSQLクラスタの動向

2010年10月12日(火)

このように、PostgreSQLのクラスタは、レプリケーションの作成機能を中心に進められてきました。ところが、この用途以外にも、並列処理を用いた大規模なデータ解析が可能な「Greenplum」や「GridSQL」などのソフトも出現しました。

Slonyだけでは、数あるアプリケーションの要件をすべて満たすことはできません。このため、アプリケーションの要求仕様に応じて、多くのPostgreSQLクラスタが開発されました。主なPostgreSQLクラスタは、表1の通りです。

表1: 主なPostgreSQLクラスタ
(詳細はhttp://wiki.postgresql.org/wiki/Clusteringを参照)

プロジェクト 概要
Slony-1 トリガー・ベースの非同期マスター・スレーブ・レプリケーション。複数スレーブをサポート。PostgreSQL改造不要。
Buccardo トリガー・ベースのマスター・スレーブおよぶマスター・マスターのレプリケーション。PostgreSQL改造不要。
GridSQL テーブル分割を用いた並列SQLクラスタ。独自パーサー。PostgreSQL改造不要。
HadoopDB MapReduceを利用した並列データベース。
Mammoth 非同期マスター・スレーブ・レプリケーション。フェール・オーバー機能が組み込まれている。
Pgpool-II コネクション・プーリング、マルチマスター・レプリケーション、負荷バランサ、並列クエリーを備えたクラスタ。PostgreSQL改造不要。
PGCluster マルチマスター同期クラスタ。HA用途。PostgreSQL改造要。
PL/Proxy PL言語で実装したデータベース・パーティショニング・システム。呼ばれた関数をほかのデータベース上で実行する。PostgreSQL改造不要。
Postgres-XC トランザクションを並列実行することで、トランスペアレントに読み書き双方の性能をスケール・アウトさせるPostgreSQLクラスタ。PostgreSQL改造要。
Postgres-Forest 主に参照性能スケール・アップを目指したPostgreSQLクラスタ。PostgreSQL改造不要。
Postgres-R マルチマスターの同期レプリケーション。PostgreSQLの改造要。
Rubyrep 非同期マルチマスター・レプリケーション。PostgreSQLとMySQLをサポート。PostgreSQLの改造不要。
Skytools Skypeで使っているレプリケーションとフェール・オーバー用パッケージ。キューイング機構、レプリケーション・ツール、ログ・アーカイブ・ユーティリティなど。PostgreSQLの改造不要。
Tungsten PostgreSQL、MySQL、OracleクラスタのモニタリングとHA機能。PostgreSQLのレプリケーション機能。
Greenplum PostgreSQLをベースにしたデータ・ウエアハウス(DWH)パッケージ。SQLの並列実行による大規模SQL性能向上など。現在は独自商用製品。

PostgreSQLのリカバリに用いる更新ログを使ってレプリケーションを作成するツール(Warm Standby)も、リリースされました。

3. HAクラスタとしてのStreaming Replication

2008年、NTTは、新しいレプリケーション方式を発表しました。これは、前述のWarm Standbyに類似していますが、スレーブへの更新ログの転送をマスターの更新ログの生成と同期させるため、マスターがクラッシュした場合でもデータの損失がありません。また、スレーブがマスターに取って代わる「フェール・オーバー」に必要な時間も、数秒以下で済みました。

この技術を元に、PostgreSQLのレプリケーション機能を実装しよう、ということになりました 。PostgreSQL 8.4での実装が期待されたのですが、実際には2010年にリリースされたPostgreSQL 9.0で、その基本機能が実装されました。これについては、第3回で解説します。

リカバリに用いるデータを用いてスレーブのデータベースを構築し続ける場合、スレーブにおいてクライアントからのSQL要求を処理するのは、非常に困難です。PostgreSQL 9.0では、これを可能にする「Hot Standby」機能も実装されました。

連載バックナンバー

Think IT会員サービス無料登録受付中

Think ITでは、より付加価値の高いコンテンツを会員サービスとして提供しています。会員登録を済ませてThink ITのWebサイトにログインすることでさまざまな限定特典を入手できるようになります。

Think IT会員サービスの概要とメリットをチェック

他にもこの記事が読まれています