 |

|
予習!復習!PostgresForest! |
第2回:解体、PostgresForest!
著者:NTTデータ 長妻 賢 2007/7/26
|
|
|
1 2 3 4 次のページ
|
 |
PostgresForestの動作を決めるグローバルシステムカタログ
|
「第1回:可用性と拡張性を備えたデータベースPostgresForest」では、PostgresForestの特徴から、テーブル構成や機能までを解説しました。今回は、負荷分散や並列処理といったPostgresForestの特徴をどのように実現しているのか、その仕組みについて解説します。
|
グローバルシステムカタログとは?
|
PostgresForestの内部を説明するにあたって欠かすことができないのが「グローバルシステムカタログ(以下、GSC)」と呼ばれているものです。
GSCを一言であらわすとPostgresForestの動作に必要な情報を集めたデータベースとなります。例えば、あるPostgresForestクラスタは何台のPostgreSQLサーバから構成されているのかや、どのPostgreSQLサーバが障害中となっているのか、どのテーブルがレプリケーションテーブル/パーティションテーブル構成なのか、といった情報が収められています。
テーブル名 |
内容 |
forest_brokenlog |
障害情報の記録 |
forest_config |
コネクションの設定情報 |
forest_gsc |
GSCの存在場所の情報 |
forest_hash |
パーティション分割関数情報 |
forest_partatr |
テーブルを分割するカラムの情報 |
forest_servdb |
ユーザデータベースの配置情報 |
forest_server |
各PostgreSQLサーバのIPなどの情報 |
forest_tablepart |
テーブルの分割数などの情報 |
forest_tablepartdtl |
各パーティションの検索優先度 |
表1:GSCが保持している情報
GSCはPostgreSQLサーバ上のデータベースとして作られているため、通常のPostgreSQLに接続するツール(psqlやpgAdminなど)を使って参照することが可能です。ただし、そうしたツールでGSCの内容を書き換えた場合、その後のPostgresForestの動作は保障できなくなることに注意してください。
GSCを作成するには、管理用ツールを使用します。そして、仮想化モジュール(PostgresForestのJDBCドライバのこと。以下、JDBCドライバ)によって、参照や更新が行われます。
JDBCドライバは必要に応じてGSCに格納された情報を参照し、クエリの処理やサーバ情報の管理、コネクションの管理などを行い、ユーザアプリケーションからの要求に応えることになります。

図1:JDBCや管理ツールから見たGSCとユーザデータベース
|
1 2 3 4 次のページ
|

|
|

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