データベース製品

PostgreSQLの特徴 ぽすとぐれすきゅーえるのとくちょう

PostgreSQLJSONB拡張機能オープンソース標準SQLMVCC
PostgreSQLの特徴について教えて

簡単に言うとこんな感じ!

PostgreSQLは「高機能・高信頼性のオープンソースRDB」だよ!MySQLより標準SQL準拠度が高く、JSONB・配列型・全文検索・地理情報など拡張機能が豊富なんだ。「世界で最も高度なオープンソースデータベース」を名乗るだけあって、金融・政府・大規模Webサービスまで幅広く使われてるんだ!


PostgreSQLとは

PostgreSQL(ポストグレスキューエル)とは、1986年にカリフォルニア大学バークレー校で開発が始まり、1996年にPostgreSQLとして公開されたオープンソースのRDBMSです。PostgreSQL Global Development Groupがコミュニティ主導で開発を続け、「PostgreSQL License」(BSDライクな制限のないライセンス)で提供されています。

PostgreSQLの最大の特徴は高度なSQL標準準拠豊富な拡張機能です。ウィンドウ関数・CTE・再帰クエリ・全文検索・JSONBデータ型・配列型・RANGE型・地理情報(PostGIS)などSQL標準を超えた機能が充実しています。またMVCC(Multi-Version Concurrency Control)実装が優れており、高並列環境でのロック競合を最小化します。

商用DBと比較しても遜色ない機能を持ちながら完全無料で使えるため、企業の基幹系DB・金融システム・政府機関でも採用されています。クラウドではAmazon RDS for PostgreSQL・Amazon Aurora PostgreSQL・Google Cloud SQL・Azure Database for PostgreSQLとしてマネージドサービスが提供されています。


PostgreSQLの主な特徴

特徴説明
高い標準SQL準拠SQL:2023の主要機能をほぼ実装
豊富なデータ型JSONB・配列・UUID・RANGE・Geometric・ネットワークアドレス型等
拡張機能(Extensions)PostGIS(地理情報)・pgvector(ベクトル検索)・TimescaleDB等
高度なインデックスB-Tree・Hash・GiST・SP-GiST・GIN・BRINと多様な種類
MVCCロックなしで並列読み書きを実現する多版型同時実行制御
ロール・権限管理細かいオブジェクト権限・Row Level Security
論理レプリケーションテーブル単位での複製が可能
パーティショニング宣言的パーティショニングを標準サポート
PostgreSQLの豊富なデータ型と拡張機能 豊富なデータ型 文字列: TEXT, VARCHAR 数値: INT, NUMERIC, FLOAT 日時: TIMESTAMP, INTERVAL JSON: JSON, JSONB ★ 配列: INTEGER[], TEXT[] ★ UUID: UUID型 ★ 範囲: INT4RANGE, TSRANGE ★ ネット: INET, CIDR, MACADDR ★ 幾何: POINT, POLYGON ★ ★ = MySQL/SQL標準にない型 主要な拡張機能(Extensions) PostGIS 地理情報・空間データ処理 pgvector AI埋め込みベクトル検索 TimescaleDB 時系列データ特化の拡張 pg_partman パーティション自動管理 pg_cron DB内部でのジョブスケジューラ 多様なインデックス種類 B-Tree 等値・範囲検索の標準 GIN JSONB・全文検索・配列 GiST 地理情報・幾何形状 BRIN 時系列・超大規模テーブル Hash 完全一致検索に最適

歴史と背景

  • 1986年:UC Berkeleyで「Postgres」プロジェクト開始。Michael Stonebrakerが主導
  • 1994年:AndrewYuとJolly Chenがオープンソース化し「Postgres95」として公開
  • 1996年:SQLサポートを追加し「PostgreSQL」に改名。バージョン6.0リリース
  • 2003年:PostgreSQL 7.4。本格的なパフォーマンス向上
  • 2005年:PostgreSQL 8.0。WindowsネイティブPort・テーブルスペース等
  • 2010年:PostgreSQL 9.0。Hot Standby・Streaming Replicationが強化
  • 2014年:PostgreSQL 9.4。JSONB型が登場。NoSQL的な使い方が可能に
  • 2022年:PostgreSQL 15。MERGE文・ソート性能向上等
  • 現在:毎年新バージョンがリリース。pgvectorによりAIベクトル検索基盤としても注目

バージョン別主要機能

バージョン主な追加機能
9.4(2014)JSONB・マテリアライズドビューリフレッシュ
10(2017)宣言的パーティショニング・論理レプリケーション
12(2019)生成列・JSONPath
14(2021)改善されたパーティション・並列クエリ強化
15(2022)MERGE文・ICUコレーション
16(2023)論理レプリケーション強化・並列処理改善
17(2024)COPY強化・インクリメンタルソート改善

関連する規格・RFC

規格・RFC番号内容
ISO/IEC 9075 (SQL標準)PostgreSQLが高度に準拠するSQL標準
PostgreSQL Wire Protocol v3PostgreSQLクライアント通信プロトコル
RFC 4122UUID標準。PostgreSQLのUUID型が準拠

関連用語