データベースと DBMS の基礎・NoSQL の種類
低頻約 39 分8 用語過去問 7 題
この単元の目標
- データベース(データの集まり)と DBMS(それを管理するソフトウェア)を分けて説明できる。
- DBMS を使う目的と、DBMS が受け持つ主な機能を挙げられる。
- 表で管理する RDBMS と、表に縛られない NoSQL の各型を、データの持ち方で見分けられる。
用語総表(8 語)
用語
データベースは、複数の利用者やアプリケーションが共有できるように、目的に沿って整理して蓄えたデータの集まりである。
部署ごとにばらばらのファイルで同じ顧客情報を持つと、片方だけ住所を直して食い違う、といったことが起こる。データを一か所にまとめて整理しておけば、重複が減り、誰が見ても同じ最新の内容を参照できる。
たとえ家族の連絡先を各自の手帳に書く代わりに、居間に 1 冊の共用アドレス帳を置くようなもの。誰かが書き直せば、全員が同じ内容を見られる。
覚え方データの「ベース(基地)」= データが集まって置かれている場所、と字面で覚える。
出題のポイント
- 混同注意データベースはデータの集まりそのものであり、管理するソフトウェアである DBMS とは別物である。
この用語の過去問 1 題 データベース →
DBMS(Database Management System、データベース管理システム)は、データベースを管理し、利用者やアプリケーションの代わりにデータを読み書きするソフトウェアである。
アプリケーションはデータの置き場所や形式を直接扱わず、DBMS に依頼してデータを取り出したり書き換えたりする。DBMS は、同じデータを何人もが同時に更新しても矛盾が出ないように、ほかの処理を待たせるなどして調整する同時実行制御を受け持つ。ほかにも、障害で壊れたデータをバックアップなどから元に戻す障害回復や、利用者ごとに操作できる範囲を決めるアクセス権管理も DBMS の役割である。
たとえ図書館の書庫係のようなもの。利用者は書庫に入らず窓口で頼み、係が本を探して渡し、返却や貸出の記録も係がつける。
覚え方Management は「管理」。データの管理人を名前に持つのが DBMS。
出題のポイント
- 出題DBMS は、アプリケーションの依頼に応じてデータベースの中のデータを探したり書き換えたりするソフトウェアである。
- 出題DBMS を使う目的は、多くの利用者やプログラムが同じデータを同時に使っても、内容の整合性を崩さずに共有できるようにすることである。
この用語の過去問 3 題 DBMS →
RDBMS(関係データベース管理システム)は、データを表(テーブル)の形で持つ関係データモデルに基づいてデータベースを管理する DBMS である。
表の横 1 行が 1 件のデータ(レコード)、縦 1 列が 1 つの項目に当たり、列の名前と型はあらかじめ決めておく。別の表と共通の項目(例えば商品番号)を持たせれば、表どうしを結び付けて取り出せる。RDBMS の操作には SQL という言語を使う。
たとえ列見出しを先に決めた表計算ソフトのシートを何枚も用意し、共通の番号で行どうしを突き合わせるようなもの。
覚え方R は Relational(関係)の頭文字。関係データモデルでは表そのものを「関係」(リレーション)と呼ぶので、「表でデータを管理する DBMS」と読める。
出題のポイント
- 出題関係データモデルは、データを表の形で表現するモデルで、1 行が 1 件、1 列が 1 項目に当たる。
この用語の過去問 2 題 RDBMS →
NoSQL は、関係データモデルの表によらない形でデータを持つデータベースをまとめて呼ぶ総称である。
名前は「Not only SQL」の意味とされ、1 つの製品ではなく、データの持ち方が異なる複数の型をまとめた呼び名である。表の列をあらかじめ決めなくてもよい型が多く、形のそろわないデータや、多数のサーバに分けて置く大量のデータを扱う用途で使われる。
たとえRDBMS がマス目の決まった原稿用紙だとすると、NoSQL は無地のノート、単語カード、付箋などをまとめた文具の棚にあたる。
覚え方No は「いいえ」ではなく Not only(〜だけではない)と読むのが一般的。SQL を捨てるのではなく、表以外の持ち方も認めるという意味になる。
出題のポイント
- 混同注意NoSQL は特定の製品名ではなく、表によらないデータベースの型をまとめた総称である。
キーバリューストアは、データを探すためのキーと、その中身である値(バリュー)を 1 組にして保存する NoSQL である。
キーを指定すると対応する値が 1 つ返ってくる、という単純な仕組みで、そのぶん読み書きが速い。値の中身の形は DBMS が決めないため、値の内部の項目を条件にして探すような使い方には向かない。
たとえ番号札で預けるクロークのようなもの。札の番号を言えば荷物はすぐ出てくるが、荷物の中身を手がかりに探してもらうことはできない。
覚え方辞書の「見出し語 → 説明」と同じ形。見出し語がキー、説明が値。
出題のポイント
- 混同注意キーバリューストアはキーで値を引くことに特化し、値の内部を条件にした検索はドキュメント指向データベースのほうが得意である。
KVS は Key-Value Store の頭文字をとった、キーバリューストアの略称である。
指すものはキーバリューストアと同じで、文章によって日本語表記と略称のどちらも使われる。キーと値の組でデータを持つという性質も、そのまま当てはまる。
覚え方K(Key)・V(Value)・S(Store)の 3 文字を順に開くと正式名になる。
ドキュメント指向データベースは、JSON や XML のように項目を持った文書(ドキュメント)を 1 件の単位として保存する NoSQL である。
文書ごとに持つ項目が違ってもよく、表のように列をそろえておく必要がない。DBMS が文書の中の項目を読み取れるため、項目の値を条件にした検索もできる。
たとえ決まった様式の申込用紙ではなく、人によって書く欄の違う自由記入のカードを 1 枚ずつ綴じたファイルのようなもの。
覚え方ドキュメント(document)は「書類」。書類 1 枚がそのまま 1 件のデータ。
出題のポイント
- 混同注意ドキュメント指向データベースは 1 件ごとに項目が違ってよく、列を先に決める RDBMS の表とは持ち方が異なる。
「キーバリューストア」と「ドキュメント指向データベース」の違い
グラフ指向データベースは、データをノード(点)、データ同士のつながりをエッジ(線)として保存する NoSQL である。
← 図は横にスクロールできます →
ここでのグラフは折れ線グラフではなく、点と線で結んだネットワークの形を指す。つながりそのものをデータとして持つため、知り合いの知り合いや、駅から駅への経路のように、つながりを何段もたどる処理が得意である。
たとえ人物の名前を丸で囲み、関係のある人同士を線で結んだ相関図をそのまま保存しておくようなもの。
覚え方グラフ = 棒や折れ線ではなく、鉄道の路線図のような「駅(点)と線路(線)」の図。
出題のポイント
- 混同注意RDBMS は表どうしを共通の項目で結び付けてつながりを表し、グラフ指向データベースはつながりをエッジとして直接持つ。
要点
- データベースは、重複を減らして共有するために、目的に沿って整理して蓄えたデータの集まりである。
- DBMS は、多くの利用者が同じデータを同時に使っても整合性が崩れないように共有を支え、障害回復やアクセス権管理も受け持つ。
- RDBMS は関係データモデルに基づき、行と列から成る表でデータを管理し、SQL で操作する。
- NoSQL は表によらないデータベースの総称で、キーと値の組、文書、ノードとエッジなど、型ごとに異なる持ち方をする。
この分野の過去問をすべて見る →