用語集

この教材に出てくる用語を、
章へのリンクつきで。

五十音ではなく、「地図のどこの話か」で分けてあります。用語の意味だけでなく、他の用語との関係が分かるように短い説明をつけました。

基礎

データベースDatabase / DB
データを保管し、求めに応じて出し入れしてくれる専門の仕組み。Excelとの違いは表の形ではなく「同時に・正確に・大量に扱える」という扱い方にある。第1章
リレーショナルデータベースRDB / RDBMS
データを複数の表に分けて保存し、表と表を関係づけて使う種類のデータベース。PostgreSQLはその代表格。第1章
PostgreSQLポストグレス・キューエル/ポスグレ
1980年代の研究プロジェクトを起源とする、オープンソースのリレーショナルデータベース。標準への忠実さとデータを壊さない堅実さで知られる。第2章
オープンソースOpen Source Software
設計図(ソースコード)が公開され、誰でも無料で使い、改良し、配り直してよい約束のもとで作られているソフトウェア。第2章

サーバーと接続

サーバーServer
動き続けてお願い(問い合わせ)を待ち、受け取ると処理して返すプログラム。文脈によっては、それが動くコンピューター本体を指すこともある。第3章
クライアントClient
サーバーにお願いをする側のソフトウェア。psql、pgAdmin、業務システムなど。人間そのものではない。第3章
psqlピーエスキューエル
PostgreSQLに付属する、文字だけの画面で命令を打ち込む基本的なクライアント。第3章
接続Connection / コネクション
クライアントがサーバーにつなぐこと。住所(host)・窓口番号(port)・データベース名・ユーザー名・パスワードの5つの情報を使う。第3章
ポートPort
サーバーの「窓口番号」。PostgreSQLの既定は 5432。「5432が開いていない」とは、この窓口に通信が届かない状態。第3章
データベース(区画としての)Database
サーバーの中のいちばん大きな区画。本番用・テスト用のように、混ざってほしくない単位で分ける。第3章
スキーマSchema
データベースの中を整理する「引き出し」。何も指定しなければ public が使われる。第3章

テーブル

テーブルTable
行と列でできた表。1種類の情報につき1つ作る。横一列が行(レコード)、縦一列が列(カラム)。第3章
データ型Data type
列に入れてよい値の種類。integer(整数)、numeric(正確な数。金額はこれ)、text(文字)、date(日付)、timestamp(日時)、boolean(真偽)など。第4章
主キーPrimary key
行を他のすべての行と確実に区別するための列。重複と空欄が禁止される。得意先コード、請求書番号など。第4章
外部キーForeign key
別のテーブルの主キーを「指す」列。存在しない値を拒否する。テーブル同士をつなぐ糸。第4章
NULLヌル
「値がない」ことを表す特別な印。0とも空文字とも違う。条件に使うときは IS NULL と書く。第4章
NOT NULL
「この列は空欄禁止」という決まり。ついていない列は空欄(NULL)を許す。第4章

SQL

SQLエスキューエル
データベースへのお願いの言葉。動詞は SELECT(読む)・INSERT(追加)・UPDATE(書き換え)・DELETE(削除)が基本。結果は常に表の形で返る。第5章
SELECT / FROM / WHERE / ORDER BY
取り出す列 / どの表から / どの行だけ / どう並べる。読むときは FROM から「表 → 行 → 並び → 列」の順。第5章
JOIN結合
2つの表を、主キーと外部キーが一致する行どうしでつなげる操作。ExcelのVLOOKUPを表全体に一度に行うイメージ。第5章
GROUP BY集計
同じ値の行を1つのグループにまとめ、SUM(合計)や COUNT(件数)で集計する。ピボットテーブルに相当。第5章

守る仕組み

トランザクションTransaction
複数の変更を1つの束にして「全部確定(COMMIT)か全部取消(ROLLBACK)か」の二択にする仕組み。途中半端な状態は残らない。第6章
ACIDアシッド
トランザクションの4つの性質(全部か無か・矛盾を残さない・互いに干渉しない・確定したら消えない)の頭文字。「お金の処理を任せられる堅実さ」の意味。第6章
WAL先行書き込みログ
変更内容を本体に反映する前に書いておく「記録簿」。停電からの復旧や、任意の時点への巻き戻しに使う。第6章
制約Constraint
間違ったデータを入口で拒否する決まり。PRIMARY KEY・FOREIGN KEY・NOT NULL・UNIQUE・CHECK など。業務ルールそのもの。第6章
インデックスIndex / 索引
本の巻末の索引と同じ発想で、検索を速くする仕組み。作りすぎると書き込みが遅くなる。第6章
バックアップBackup
万一に備えた複製。丸ごとの複製(pg_dump)と変更の記録簿(WAL)を組み合わせる。「戻せることを確かめたか」が本当の論点。第6章

現場・運用

オンプレミスOn-premises
自社のサーバー室やデータセンターに自前の機械を置いて動かす方式。第7章
マネージドサービスManaged service
クラウド事業者が「PostgreSQLを運用込みで貸す」サービス。ソフトは無料だが、動かす場所と手間を月額で買う。Amazon RDS、Cloud SQL など。第7章
ロールRole / ユーザー
PostgreSQLにおけるユーザー。ロールごとに、どのテーブルを読めるか・書き換えられるかを GRANT で細かく決める。第7章
最小権限Least privilege
必要な操作だけを許すという権限設計の基本。帳票を見るだけの人に書き換え権限は与えない。第7章
DBAデータベース管理者
サーバーの設定、権限、バックアップ、性能の監視を担う人。「守る仕組み」を運用する役割。第7章