SQLの復習メモ
May 10, 2022
webdbpress 2022 vol128のデータベースの特集を読んだのでそのメモ。ハンズオンがあって楽しかった。
基礎知識
- データベースはデータの集合のこと。データベースへのデータの保存・抽出はDBMS(データベース管理システム)を通じて実行する。
- OSSではMySQL、PostgreSQLが有名。
- webサービスとしてよく利用されるのはRDBMS(リレーショナルデータベース管理システム)。特徴は3つ。
- 大量のデータの保存と検索を高速に行える
- インデックスという仕組みがある。データを一意に特定するためのインデックスを登録することで、全データを探索することを回避できる。RDBMSがキーと物理的な保存場所をマッピングする機能のこと。
- 物理的なデータへのアクセス方法や保存方法を知らなくてもデータを扱える(SQLが使える)
- データベース言語のSQLを使うと、物理的なデータへのアクセス方法を知らなくても、データに対して操作を行える。データ検索のパフォーマンスやストレージ拡張などのデータシステム内部は独立しているので、アプリ側の事情を考慮せずに変更しやすい。
- 複数プログラム間でデータ共有しやすい
- 同時リクエストなどでデータ情報を意図しない上書きしないように制御することができる。トランザクションマネージャやロックマネージャの機能によってデータの一貫性を保てる