本日は関係スキーマのうち、関数従属性・キーについて書く。
今までの振り返り
- データベーススペシャリスト試験の学習優先順位。①論理設計・②SQL・③物理設計の順。論理設計は午後2で1題出て、午後1でもコンパクトになったものが出るし、データベース設計の入り口でもあるから。
- ①論理設計を初めて学ぶとき。午後2試験の最初に「①-1 ER図の表記ルール」「①-2 関係スキーマの表記ルール」が出てくる。まずこの2つを理解すること。次に実際に午後2問題を見て感覚を掴むこと。最後に60点以上目標に解き方のコツを体得すること。(できれば、各業種のパターンに慣れておくとなお良い)
- ①-1 ER図について簡潔におさらい。データのまとまりがテーブル。テーブルは集合(意味のあるまとまり)であり関数(入力に対し一意の出力)。 テーブル間のつながりを図示したものがER図。つながりは1:1か1:多。都合にあわせ分類するときサブタイプという概念を用いることも。詳しくは4月25日、4月26日挑戦ログに記載
- 本日は①-2 関係スキーマについて書く。
関係スキーマについて
- 午後2試験の論理設計問題は、本文・ER図・関係スキーマの3つから構成
- 関係スキーマはテーブルの属性とその関係を箇条書きで示したもの
- 基本的には本文・ER図の鏡像なので、重要な概念は変わらない
- テキストに沿って、関数従属性・キー・正規化についておさらいしていく
関数従属性について
- テーブルは関数。入力に対し一意に出力が決まる。これが「集合」と並びデータ管理の最重要概念。
- 関数従属性の表記方法について。イメージとしては「→の元が一つ決まれば、→の先も一つに決まる」くらい。実際の試験でもその程度の解釈で十分。
- 試験対策。本文から関係を読み取り関数従属性の表記完成。たとえば「会員種別ごとに入会金・月会費が決まっている」という本文から「会員種別ID→入会金・月会費」という表を完成させる
以下は一意な関係を読み取れる表現例。理解しておき、間違えたら本試験にむけ復習
- 「~が決まれば、…も決まる」(基本のカタチ)
- 一意
- 同じ○○を登録することはできない
- □□ごとに○○が一つ定まる
キーについて
- テーブル(表)においてタプル(行)を一意に決めるための属性(列)のこと。
- 一意性を確保するためのミニマムの組み合わせ(もちろん1つの場合もあり)が候補キー。そこから主キーを決める。(候補キーNULL(空白)OK。主キーはNULL NG。データが参照できなくなるので)
- なお、候補キーにその他属性をいろいろくっつけたスーパーキーという概念があるが、実務では使わない。
- また、主キーが複合のとき(たとえば社員IDと氏名)のとき、扱いやすさのため連番などを使うことがあり、これをサロゲートキー(代替キー)と呼ぶ
- また、他のテーブルの主キー(または候補キー)を参照する項目を外部キーと言う。ER図の肝となる要素。以下事例のPKが主キー、FKが外部キー
考察
- (再掲)円安が進むなか、生活に良くない影響が出ている。海外から購入するモノ・サービスが高く感じるからだ。 自分の資産(金融資産、健康、つながり、ノウハウ)をどう有効活用するか、世界の動きも考慮し常に模索する必要がある。 そのためにデータに関する学びと活用は今後も続けていきたい。
- (再掲)データベーススペシャリストの試験は主に企業の業務改善にかかわるものだが、それら具体例が実務にそのまま役立つことも期待できる。 また、それらを通じて「データベース設計・活用のセンス」という抽象概念を磨くことで、色々と応用が可能になるだろう。
- (再掲)以上のような「全体像のイメージ」ふまえ「それぞれの役割への敬意」を持つことは重要と感じる。
- 過去ツイートを振り返ると、キーワードがいくつか浮かび上がる。「基礎」「抽象」「全体」「実践」だ。
- まず、情報処理技術者試験にむけた学びはまず「基礎」から始まる。データベーススペシャリストであればテーブル・ER図・関係スキーマの鉄則など。この基礎知識の理解度は午前問題で試される。
- 次に、知識をふまえ業務パターンを模した練習問題を解くのが午後試験。これもまだ「抽象」だ(実際の業務ではない)。
- そして、例えば私はITストラテジスト(戦略)、システムアーキテクト(設計)、プロジェクトマネージャ(開発統括)と学び、並行して本業を進めるなかで、「ITの全体」という視点の解像度が上がってきた。
- 「ミクロな自分」視点(自分が本当にやりたいことは何か)と、「マクロな環境」視点(世界・日本がこれからどのようになるか)。そして私がフィールドに選んだ「中間のIT全体」視点。この3つの抽象概念を意識しながら、実際のデータを使っていったり来たりの考察を行っていきたい。
参考書籍
- データベーススペシャリスト2022年版/三好康之/翔泳社 ※この記事は2章P290-P303を整理したもの
コメント