SQLの復習メモ

May 10, 2022

webdbpress 2022 vol128のデータベースの特集を読んだのでそのメモ。ハンズオンがあって楽しかった。

基礎知識

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