【ぽすとぐれすきゅーえる】

PostgreSQL とは?

最終更新:
💡 表もJSONも扱える、拡張可能なオープンソースDB

SQLで表形式のデータを扱うオープンソースのデータベース管理システム。トランザクション、JSON/JSONB型、全文検索や拡張機能を備え、Postgresとも呼ばれる。

📌 このページのポイント
PostgreSQLで扱えるもの PostgreSQL 表・SQL 検索・更新 トランザクション { "id": 42 } JSON / JSONB 構造化データ JSONBは索引も 追加の拡張 例:pgvector ベクトル類似検索
表やJSONをSQLで扱い、拡張機能を追加できる。pgvectorは追加の拡張。
ひよこ ひよこ
PostgreSQLって何ができるの?
ペンギン先生 ペンギン先生
SQLで表のデータを検索・更新するRDBMSだよ。トランザクションや制約を使ってデータを管理でき、JSON型や全文検索、拡張機能も備えているんだ。
ひよこ ひよこ
トランザクションは何のため?
ペンギン先生 ペンギン先生
たとえば送金の引き落としと入金をひとまとまりにして、両方を確定するか、両方を取り消すためだよ。ただし、正しい金額や業務ルールはアプリや制約で設計する必要がある。DBを選ぶだけでデータが必ず正しくなるわけではないんだ。
ひよこ ひよこ
JSONとJSONBはどう違うの?
ペンギン先生 ペンギン先生
json型は入力テキストの表現を保持する。jsonb型は処理向けに分解して保存し、インデックスも使えるけれど、空白やキーの順番は保持しない。同じキーが重複した場合は最後の値だけを残すよ。表の列とJSONをどう組み合わせるかは用途に合わせて決めよう。
ひよこ ひよこ
AIのベクトルも保存できる?
ペンギン先生 ペンギン先生
pgvectorという拡張を追加すると、ベクトルの保存や類似検索ができるよ。PostgreSQL本体の標準の型と、追加の拡張は区別して考えよう。利用できる拡張は運用環境によっても確認が必要だね。
ひよこ ひよこ
MySQLとの比較では何を見ればいい?
ペンギン先生 ペンギン先生
必要なSQLや型、拡張、既存アプリとの互換性、運用方法を確認しよう。検索の速さはデータ・インデックス・クエリ・設定によって変わるので、名前だけで優劣を決めず、自分の用途で測るのが現実的だよ。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「PostgreSQL」って出てきたら「SQL・JSON・拡張機能を備えたオープンソースDB」と思えばだいたいOK!
📖 おまけ:英語の意味
「PostgreSQL / Postgres」 = POSTGRESにSQL対応を反映した名前
💬 UC BerkeleyのPOSTGRESプロジェクトは1986年に始まった。1994年にSQLインタープリターが追加され、Postgres95を経て1996年にPostgreSQLへ改名。Postgresも公式に認められた別名だよ

参考資料

← 用語集にもどる