こんにちは、blueです。
今回はデータベースの用語についてできる限りわかりやすく説明します。
業務でデータを扱っていくと以下のような会話が出てくることはないでしょうか?
・これはトランザクションテーブル、こっちはマスターテーブルで・・・
・このリレーションは1対多で、こっちは多対多で・・・
・正規化されてないテーブルなんてくそだ。データベースファーストだよ
最初のうち私は「は?いきなり横文字で何言ってるの?」状態でした。
何か難しい単語が出てくるとそこで思考が止まる英会話のようになっていました。
ただこれらはデータベースに関する用語で、大量のデータを扱う昨今では基礎知識となってきています。
最近はPower QueryやPower BIといったアプリが出てくるようになりましたが、これらもデータベースを扱う関係上、上記の知識は必須になっています。
その為今回はデータベースで出てくる用語に関して、以下の書籍やネットで学んだ情報をまとめることにしました。
データベースに関して概略を知りたい方はこちらがお勧めです。
単語ごとに章が分かれているのと図が多く入っているので理解しやすいと思います。
リンク
データベースについて設計から運用まで詳しく知りたい方はこちらがお勧めです。
文章は多いですがわかりやすく説明してくださっているので詳細まで一通り理解することができます。
リンク
記事の構成
今回は以下の項目について説明します。
- データベースとは
- データベースの構成
- テーブルの構成
- 正規化
- ER図
次から各項目における用語について説明します。
データベースとは
データベース廻りを図にすると以下のようになります。
それぞれの用語の説明は以下になります。
データベース(DB)
決まった形式(データモデル)で整理されたデータの集まり
データベースとは?基礎知識を初心者にわかりやすく解説!
データ
人や物や事象に関する定性的、または定量的な値のこと
データ Wikipedia
データベースマネジメントシステム(DB)
データベースを管理するシステム
達人に学ぶDB設計 徹底指南書
データベースの構成
データベースの構成を図にすると以下のようになります。
それぞれの用語の説明は以下になります。
DBMSの種類
- Oracle Database・・・リレーショナルデータベースのDBMSとしては最大シェア
- Microsoft SQL Server・・・MicrosoftのDBMS
- MySQL・・・オープンソースのDBMS
- SQLite・・・アプリケーションに組み込んで利用することができる軽量のシステム
達人に学ぶDB設計 徹底指南書 データベースのしくみ
リレーショナルデータベース
データを二次元の表で管理する
達人に学ぶDB設計 徹底指南書
テーブルの構成
テーブルの構成を図にすると以下のようになります。
それぞれの用語の説明は以下になります。
テーブル
共通点を持ったレコードの集合。英語ならば複数形、複数名詞で書ける
(共通点を持たないレコードの寄せ集めはテーブルとは呼ばない)
達人に学ぶDB設計 徹底指南書
テーブルの用語1
行(レコード)・・・横のデータの集まり
列(カラム)・・・縦のデータの集まり。属性、項目ともいう
達人に学ぶDB設計 徹底指南書
テーブルの用語2
キー・・・あるデータを特定するための鍵のこと
- 主キー・・・プライマリーキーとも呼ぶ
その値を特定すれば、必ず行のレコードを特定できる列(の組み合わせ)のこと
複数列の組み合わせで特定する場合は複合キーと呼ぶ
上記の理由の為、重複は許されない、空は許されない - 外部キー・・・テーブル間の共通項
指定すると指定した他のテーブルのカラムに存在する値しか格納できなくなる
達人に学ぶDB設計 徹底指南書
テーブルの用語3
- データの型・・・数値型(INT, FLOAT,Double),文字列型(CHAR, VARCHAR, TEXT),日付(DATE, DATETIME, TIME), BOOLEAN型などがある
- 固定長と可変長・・・固定長は文字数が決まっている(例:郵便番号など)、CHARで表す
可変長は文字数が決まっていない。(例:部署名など)VARCHARで表す。
達人に学ぶDB設計 徹底指南書
テーブルの用語4
- トランザクションテーブル(データ)・・・日々データが増えていくテーブル(購入履歴など)
- マスターテーブル(データ)・・・業務の基礎情報となるデータを蓄積したテーブル
正規化
それぞれの用語の説明は以下になります。
正規化のメリット、デメリット
- メリット
データのメンテナンスが楽になる。重複データの修正が楽になる
データの無駄(=冗長)をなくしてデータの容量を減らせる - デメリット
処理速度が遅くなる
データベースのしくみ
第一正規形のNGな例です。
第一正規化された例です。
第二正規形のNGな例です。
第二正規化された例です。
第三正規形のNGな例です。
第三正規化された例です。
ER図
ER図とは
- データ同士の関係を図で表したもの
データベースのしくみ - テーブル同士が互いにどういう関係にあるかを明示する為の図
達人に学ぶDB設計 徹底指南書
ER図廻りを図にすると以下のようになります。
それぞれの用語の説明は以下になります。
エンティティ
- リレーショナルデータベースで言うテーブルのこと。顧客や社員、商品など
達人に学ぶDB設計 徹底指南書
属性
- リレーショナルデータベースで言う列のこと。主キーは上のスペースに書く
達人に学ぶDB設計 徹底指南書
リレーションシップの説明については以下になります。
1対1
- 1つのデータに対して1つのデータが関連している
達人に学ぶDB設計 徹底指南書
1対多
- 1つのデータに対して複数のデータが関連している
達人に学ぶDB設計 徹底指南書
多対多
- お互いに1つのデータに対して複数のデータが関連している
達人に学ぶDB設計 徹底指南書
今回のまとめ
今回はデータベースの用語についてできる限りわかりやすく説明しました。
なおあくまで概略の説明にこだわったので言葉足らずなところはあるかもしれません。
ただし、この記事を読んでいただくことでゼロよりは知識が得られるのであればOKと思っています。
より知識を得たい場合は以下の書籍を読んでもらえれば確実に理解できると思います。
↓↓
データベースに関して概略を知りたい方はこちらがお勧めです。
単語ごとに章が分かれているのと図が多く入っているので理解しやすいと思います。
リンク
データベースについて設計から運用まで詳しく知りたい方はこちらがお勧めです。
文章は多いですがわかりやすく説明してくださっているので一通り詳細まで理解することができます。
リンク
Excelの「PowerQuery」について初心者向けの記事を書いています。もしご興味ありましたらのぞいてみてください。
コメント