よく利用される周辺OSSのご紹介
PostgreSQLインサイド

PostgreSQLを業務システムで利用する際には、要件や業務に応じて機能を強化・補足するOSS(以降、周辺OSSと呼びます)を組み合わせて利用します。周辺OSSは、PostgreSQLのコミュニティーとは別に、独自のコミュニティーによって活発に開発が行われています。PostgreSQLの周辺OSSは数百にも上り、実際に商用利用されている周辺OSSも多くあります。
多くの周辺OSSの中から、仕様の確認や検証を行い、要件に見合った最適な周辺OSSを選定することは容易ではありません。ここでは、富士通のお客様や一般ユーザーのなかでよく利用されている周辺OSSを紹介します。周辺OSSを選定する際の参考にしてください。

PostgreSQLに関連するコミュニティーの紹介

PostgreSQLに関連するコミュニティーは大きく分けて2種類があります。

  • 開発コミュニティー
    PostgreSQL本体の開発コミュニティーのほかに、周辺OSSごとの開発コミュニティーがあります
  • PostgreSQLの普及を推進するコミュニティー
    世界各国にPostgreSQLのユーザー会があります。日本には、ユーザー会以外にも、ミッションクリティカル性の高いエンタープライズ領域への普及を目的としたPostgreSQLエンタープライズ・コンソーシアムがあります

富士通では、PostgreSQL本体の開発コミュニティーでContributorsの一員として社員が活動しているほか、PostgreSQLエンタープライズ・コンソーシアムの理事を務めるなど、積極的にコミュニティーに参加しています。

よく利用される周辺OSS

PostgreSQLと連携し、よく利用される周辺OSSを以下に示します。分類は非機能要件の考え方に基づき、「性能、拡張性、運用、監視、可用性、移行性、セキュリティ」としています。なお、拡張性はPostgreSQL本体機能を拡張したり、他システムと連携したりする機能を意味します。

分類 OSS名 機能概要
性能 pg_hint_plan クエリにヒント句を指定することで、SQL文やGUCパラメーターを変えずに実行計画を制御します。
pg_dbms_stats PostgreSQLの統計情報を管理し、間接的に実行計画を制御します。
PgBouncer PostgreSQLのサーバ・クライアント間で動作するソフトウェアです。コネクションプーリング機能を提供します。
拡張性 pg_bigm 日本語に対応しているPostgreSQLの全文検索機能です。2-gram(バイグラム)と呼ばれる方法で全文検索用のインデックスを作成でき、高速に文字列を検索します。
PostGIS PostgreSQL上で地理情報データを取り扱うための機能です。地理空間情報の管理、編集、検索、演算をSQLで実施します。
oracle_fdw Oracleデータベース用の外部データラッパーです。OracleデータベースのテーブルやビューにPostgreSQLからアクセスできます。
PostgreSQL JDBC driver PostgreSQLのJDBCドライバです。JavaからPostgreSQLに接続するためのAPIを提供します。
psqlODBC PostgreSQL用のODBCドライバです。Microsoft AccessやMicrosoft ExcelなどからPostgreSQLに接続するためのAPIを提供します。
Npgsql PostgreSQL用の.NETデータプロバイダーです。Microsoft .NETの環境からPostgreSQLに接続するためのAPIを提供します。
運用 pg_bulkload 大量のデータを高速にロードする機能を提供します。
pg_rman バックアップ・リカバリーの簡易化、バックアップの世代管理など、バックアップ運用を補助します。
pgBackRest バックアップ・リカバリーの管理ツールです。データベースのバックアップ操作に必要な多くの機能を持ち、マルチスレッド形式で高速なバックアップを実施します。
Barman バックアップ・リカバリーの管理ツールです。PostgreSQLのポイントインタイムリカバリーの処理手番を簡素化します。複数のデータベースクラスタのポイントインタイムリカバリーを一元管理できます。
pg_repack 肥大化したテーブルやインデックスを再編成することで、不要領域の削除や行の並び替えができます。対象テーブルへのロック時間が短いため、業務運用中の実行に適しています。
pgAdmin データベース・オブジェクトの作成、保守、使用を単純化するグラフィカル・ユーザー・インターフェース(GUI)を提供します。
監視 check_postgres データベースの健全性を監視し、異常な状態を報告します。
pgBadger PostgreSQLのログファイルを解析して、SQL実行状況などの統計レポートを生成します。
pg_statsinfo PostgreSQLの稼働統計情報を定期的に収集・蓄積して、データベースの運用を監視します。蓄積した情報をテキスト形式のレポートを生成します。
pg_stats_reporter pg_statsinfoで取得、蓄積した情報を元にHTML形式のグラフィカルなレポートを生成します。
可用性 Pgpool-II PostgreSQLのサーバ・クライアント間で動作するソフトウェアです。コネクションプーリング、負荷分散、レプリケーション、自動フェイルオーバなどの機能を提供します。
移行性 orafce Oracleデータベースと互換性のある関数やデータ型などの互換機能を提供します。
ora2pg OracleからPostgreSQLへの移行を支援するツールです。Oracleデータベースからオブジェクト定義やデータを読み出し、PostgreSQLで実行可能な形式に変換します。
セキュリティ pgaudit PostgreSQLのログ機能を使用して監査ログを取得します。

参考

各OSSの仕様の詳細については、OSSのWebページを参照してください。

カテゴリーごとのマッピング

PostgreSQLの機能と周辺OSSを、分類してマッピングしたものを以下に示します。

PostgreSQLの機能と周辺OSSの関係性をマッピングした図です
図1 PostgreSQLの機能と周辺OSSのマッピング

上図を見ると、「拡張性」、「運用」、「監視」の周辺OSSの数が多いことがわかります。これは、PostgreSQLを、各種アプリケーション用のAPIに対応させたり、多種多様な外部データと連携させたり、また、様々なサービス要件や運用形態に適用させたりすることを目的に、PostgreSQL本体に組み込める部品やツールとして周辺OSSが提供されているためです。

各周辺OSSの機能と有用性を理解したうえで、運用形態に応じた最適な周辺OSSを選択してください。

周辺OSSの使い方を解説

PostgreSQLインサイドでは、以下の周辺OSSの機能や使い方を詳しく解説していますので、ご利用ください。

性能

拡張性

運用

監視

可用性

参考

FUJITSU Software Enterprise Postgresでは、図1に示した周辺OSSの一部を同梱しています。製品に同梱している周辺OSSについては、お客様が開発コミュニティーから取得する必要はありません。
また、周辺OSSのひとつである「PostGIS」を使ったFUJITSU Software Enterprise Postgresの導入事例を紹介しますので、参考にしてください。

この記事では、現在よく利用されている周辺OSSについて紹介しました。今後も、デジタル技術の進歩に伴って、有用な周辺OSSが登場することも考えられます。業務システムの要件を満たすよう、PostgreSQL本体と周辺OSSを適切に組み合わせてご利用ください。

2020年4月10日公開

本コンテンツに関するお問い合わせ

お電話でのお問い合わせ

Webでのお問い合わせ

当社はセキュリティ保護の観点からSSL技術を使用しております。

ページの先頭へ