PostgreSQL 【ポスグレ】
概要
PostgreSQL(ポスグレ)とは、リレーショナルデータベース(RDB)の作成や操作、管理ができるオープンソースのデータベース管理システム(DBMS)の一つ。MySQLと人気を二分するオープンソースRDBMSで、Linuxなど主要なUNIX系OSとWindowsに対応し、機能の豊富さや拡張性の高さに定評がある。RDBMSとしての基本的な機能として、SQL言語によるデータベースの作成や編集、データの読み書き、サブクエリ、結合、制約、トリガー、トランザクション、レプリケーション、バックアップなどに対応するほか、インデックスやデータ型、演算子、型変換など様々な要素をユーザー定義できる高い拡張性を備えている。
INSERT文とUPDATE文を統合し一文で書けるUPSERT文(指定された条件に一致するレコードが既存ならUPDATE、存在しなければINSERT)など独自の新機能の追加にも熱心で、機能の豊富さから商用DBMSからの乗り換え先としても有力な選択肢となっている。
ストアドファンクション(関数型のストアドプロシージャ)にも対応し、標準ではOracle DatabaseのPL/SQL互換のPL/pgSQL言語が組み込まれているほか、Perl(PL/Perl)やPython(PL/Python)、C言語による開発にも標準で対応し、外部開発の機能を追加すればJavaやJavaScript、R言語、シェルスクリプトなどでも開発できる。
歴史
1970年代にカリフォルニア大学バークレー校で開発されたRDBMSの「Ingres」(イングレス)の後継として1989年に「Postgres」(ポストグレス)が開発された。これは従来のリレーショナルデータベースにオブジェクト指向的な拡張を組み込んでもので、オブジェクトリレーショナルデータベース管理システム(ORDBMS:Object Relational Database Management System)と呼ばれた。
同大でのPostgres研究開発プロジェクトは1993年に終了したが、このときオープンソースとして公開されていたコードを元に有志の開発者グループが後継RDBMSを開発し、1997年に「PostgreSQL」の名称で公開した。バージョン番号はPostgresからの連番となっているためPostgreSQLの最初のバージョンは6.0とされた。
Postgresは商用版の「Illustra」(イラストラ)が当時の米大手DBMS開発元インフォミックス(Informix)社に買収され、同社がIBM社に買収されたことにより、IBM社のデータベースソフトウェア製品の技術基盤の一つとして受け継がれていった。また、Postgresで提唱されたORDBMSという概念に基づく機能はSQL規格の1999年の改訂(SQL99)に大きく取り込まれ、他のRDBMSへも組み込まれていった。