TOPサーバ構築・運用> PostgresForestの動作を決めるグローバルシステムカタログ
PostgresForest
予習!復習!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に格納された情報を参照し、クエリの処理やサーバ情報の管理、コネクションの管理などを行い、ユーザアプリケーションからの要求に応えることになります。

JDBCや管理ツールから見たGSCとユーザデータベース
図1:JDBCや管理ツールから見たGSCとユーザデータベース

1   2  3  4  次のページ


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


INDEX
第2回:解体、PostgresForest!
PostgresForestの動作を決めるグローバルシステムカタログ
  PostgresForestはどのように動くのか
  レプリケーションテーブルに対するSQL処理
  パーティションテーブルに対するSQL処理