 |

|
予習!復習!PostgresForest! |
第1回:可用性と拡張性を備えたデータベースPostgresForest
著者:NTTデータ 長妻 賢 2007/7/20
|
|
|
前のページ 1 2 3 4
|
 |
可用性を高める2つの機能
|
PostgresForestを理解する上で重要な要素の2つ目が、可用性を高めるための仕組みです。その中で特に注目するべき「障害検出・切り離し機能」と「オンラインリカバリ機能」の2つを紹介します。
|
障害検出・切り離し機能
|
PostgresForestがアクセスするPostgreSQLサーバの障害を検知し、障害が他に悪影響を及ぼさないようにするのがこの機能です。

図5:障害検出・切り離し機能
複数あるPostgreSQLサーバのいずれかに異常があった場合、PostgesForestは異常なサーバを検知し、該当するサーバに対するアクセスを自動的に抑制します。これによって障害の影響を最小限に抑えることができます。
この時PostgresForestは、正常に稼動しているPostgreSQLサーバのみでサービスを継続します。ただし、正常に稼動しているPostgreSQLサーバ上に必要なデータが存在しない場合、サービスを継続することはできません。
このことからもわかるように、障害検出・切り離し機能はすべてのテーブルをレプリケーション構成とした時に真価を発揮します。レプリケーション構成にすることですべてのテーブルのデータを全PostgreSQLサーバ上で冗長化しておけば、仮に1台のPostgreSQLサーバに異常が発生したとしても、他のサーバでまったく同じ処理を行うことでサービスを継続できるのです。
|
オンラインリカバリ機能
|
オンラインリカバリ機能は、PostgresForest 3.2〜4.0にかけて作られた比較的新しい機能です。障害によって切り離されたPostgreSQLサーバは、いずれ復旧して稼動状態に戻す必要があります。
当然PostgresForestの性質上、1つのサーバが障害状態として切り離されていても、そのほかのサーバを使ってサービスは継続しているため、稼働中のサーバと切り離されたサーバとの間で徐々に差異が出てくることになります。そのためお互いのサーバ間でデータの同期を取らない限り、障害状態のPostgreSQLサーバを復旧することができません。
本来であれば業務処理を一時停止してデータベースへの更新を止め、障害状態のPostgreSQLサーバと稼動状態のPostgreSQLサーバとの間でデータの整合性を取るべきです。これに対してオンラインリカバリ機能は、サービスが動作し、更新処理を実行している最中であっても、不整合無くサーバの同期を取って復旧する仕組みを提供しています。
|
次回は
|
今回はPostgresForestの概要について解説をしました。次回はPostgresForest動作の仕組みについて、より詳しく解説します。
|
前のページ 1 2 3 4
|

|
|

|
著者プロフィール
株式会社NTTデータ 長妻 賢
基盤システム事業本部
オープンソース開発センタ 技術開発担当
PostgreSQLを用いた並列分散データベースの研究開発に従事。その後PostgreSQLを使った非常に大規模なシステムの検証などを行う。2006年より、現在のPostgresForest開発チームに加わり、PostgresForestの開発と普及活動を行っている。
|
|
|
|