データベースについて
データベースとは
「データベース」とは、ある特定の条件に当てはまる「データ」を複数集めて、後で使いやすい形に整理した情報のかたまりのことを表します。特にコンピュータ上で管理するデータをデータベースと呼ぶことが多いですが、紙の上で管理する「電話帳」や「住所録」なども、立派なデータベースです。
(http://proengineer.internous.co.jp/content/columnfeature/6411より)
図書館の例
データベースを図書館に例えると、
- データベース=資料や書籍
- DBMS=図書館司書、ないし館内管理用PC、館内書籍検索PC
図書館司書、ないし館内管理用PC、館内書籍検索PCの役割
膨大な量の書籍や資料のカテゴライズ化、目録の作成などといった、資料・書籍(=データベース)の管理業務を担う。これにより利用者がお願いすれば(ユーザーがブラウザからデータをリクエストすれば)必要な資料・書籍をすばやく見つけ提供できる。
上記リンク先の「Ajax通信の仕組み」の図がわかりやすかったのでシェア。
この図中でDB=データベースがどのような役割を果たしているか、必要ならば確認しましょう。
ちなみに、この図書館の例を参照した
https://rfs.jp/sb/sql/s01/01-19.htmlでは、DBMS=図書館司書、とされていました。
しかし、IT化された21世紀の現代において、この「資料や書籍の管理・検索・提供」などといった機能を、すべて図書館司書がやっていると考えるのって無理があるなあ・・・と思い、DBMS=図書館司書、ないし館内管理用PC、館内書籍検索PCと理解することにしました。
要は図書館でいう所の書籍管理システム(書籍の管理者)=DBMSってことかな。
データベース管理システム(DBMS)の例
RDB(リレーショナルデータベース)
データベースには様々な形態があり、その一つがRDB
https://rfs.jp/sb/sql/s01/01-19.html
RDB(リレーショナルデータベース)・・・関連あるデータ項目の集合体
https://aws.amazon.com/jp/relational-database/
- 構成:列と行があるテーブルのセット
- テーブルは、データベースに表現されるオブジェクトに関する情報を保持するために使用
リレーショナルデータベースエンジン=RDBのDBMS(RDBMS)
MySQL, MariaDB, Amazon Auroraなど
SQL(構造化クエリ言語)とは
https://aws.amazon.com/jp/relational-database/
によると、RDBの一側面としてSQL (構造化クエリ言語)があり、SQLとは何かというと下記のように定義されている。
SQL (構造化クエリ言語)・・・(リレーショナル)データベースとの通信に使用される主要インターフェイス(インターフェイス=境界面、接点。異なる2つのものを仲介する)。
データの行の追加/更新/削除、トランザクション処理や分析アプリケーションのためのデータのサブセットの取り出し、データベースのさまざまな管理を行うために使用される。
つまり、MySQL, MariaDB, Amazon Auroraなどといった(R)DBMSはSQLという言語で記述・実装されるよっていう、こういうこと?
Amazon Auroraとは
Amazon Aurora・・・MySQL/PostgreSQL 互換のリレーショナルデータベースエンジン
https://aws.amazon.com/jp/rds/aurora/
- MySQLを上回るパフォーマンス
- 耐障害性と自己修復機能を備えた分散型ストレージシステム
- Amazon Relational Database Service (RDS) を使った完全マネージド型サービス
使用開始方法:
Amazon RDS マネジメントコンソールで最初の Aurora データベースインスタンスを作成し、MySQL データベースや PostgreSQL データベースの移行を開始してください。