Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
データベース10: 拡張実体関連モデル
Search
Y. Yamamoto
PRO
June 23, 2025
Science
0
960
データベース10: 拡張実体関連モデル
1. 汎化・継承
2. n項関連
講義ノートURL
https://dbnote.hontolab.org/content/er-model/03.html
Y. Yamamoto
PRO
June 23, 2025
Tweet
Share
More Decks by Y. Yamamoto
See All by Y. Yamamoto
データベース15: ビッグデータ時代のデータベース
trycycle
PRO
0
320
データベース14: B+木 & ハッシュ索引
trycycle
PRO
0
430
データマイニング - グラフ埋め込み入門
trycycle
PRO
0
60
データマイニング - ウェブとグラフ
trycycle
PRO
0
150
データベース12: 正規化(2/2) - データ従属性に基づく正規化
trycycle
PRO
0
950
データマイニング - コミュニティ発見
trycycle
PRO
0
130
データベース11: 正規化(1/2) - 望ましくない関係スキーマ
trycycle
PRO
0
930
データマイニング - ノードの中心性
trycycle
PRO
0
250
データマイニング - グラフ構造の諸指標
trycycle
PRO
0
160
Other Decks in Science
See All in Science
Ignite の1年間の軌跡
ktombow
0
140
安心・効率的な医療現場の実現へ ~オンプレAI & ノーコードワークフローで進める業務改革~
siyoo
0
310
SpatialBiologyWestCoastUS2024
lcolladotor
0
170
実力評価性能を考慮した弓道高校生全国大会の大会制度設計の提案 / (konakalab presentation at MSS 2025.03)
konakalab
2
190
07_浮世満理子_アイディア高等学院学院長_一般社団法人全国心理業連合会代表理事_紹介資料.pdf
sip3ristex
0
580
Valuable Lessons Learned on Kaggle’s ARC AGI LLM Challenge (PyDataGlobal 2024)
ianozsvald
0
400
地質研究者が苦労しながら運用する情報公開システムの実例
naito2000
0
250
IWASAKI Hideo
genomethica
0
130
MCMCのR-hatは分散分析である
moricup
0
420
2025-06-11-ai_belgium
sofievl
1
140
LayerXにおける業務の完全自動運転化に向けたAI技術活用事例 / layerx-ai-jsai2025
shimacos
2
1.4k
Transport information Geometry: Current and Future II
lwc2017
0
180
Featured
See All Featured
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Raft: Consensus for Rubyists
vanstee
140
7.1k
Speed Design
sergeychernyshev
32
1.1k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.8k
[RailsConf 2023] Rails as a piece of cake
palkan
56
5.8k
Scaling GitHub
holman
462
140k
Navigating Team Friction
lara
188
15k
Designing for Performance
lara
610
69k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
21k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Transcript
実体関連モデル(3/3) ⼭本 祐輔 名古屋市⽴⼤学 データサイエンス研究科
[email protected]
第10回 データベース 〜 拡張実体関連モデル
& n項関連
講義ノート https://bit.ly/3xqTSds
draw.io: 実体関連図を書くツール https://app.diagrams.net/
汎化・継承 1 Generalization/Inheritance
クイズ Q. 山の畑大学において大学構成員である「学生」 および「教員」の情報を管理する実体関連モデル を考えたい. § 実体型「学生」は属性「山の畑ID」「氏名」 「生年月日」「所属」と「入学年」をもつ § 実体型「教員」と属性「山の畑ID」「氏名」
「生年月日」「所属」と「研究者ID」「職階」をもつ としよう. 実体型「学生」「教員」を 実体関連モデルで表現せよ.
素直にモデリングすると… 学⽣ 所属 ⼭の畑 ID ⽒名 ⽣年 ⽉⽇ ⼊学年 教員
所属 ⼭の畑 ID ⽒名 ⽣年 ⽉⽇ 研究者 ID 職階 ⼤半の属性は共通している… そもそも学⽣も教員も⼭の畑⼤学の構成員…
より上位の概念である「⼤学構成員」との⽐較(1/2) 学⽣ 所属 ⼭の畑 ID ⽒名 ⽣年 ⽉⽇ ⼊学年 ⼤学構成員
所属 ⼭の畑 ID ⽒名 ⽣年 ⽉⽇ VS. 「学⽣」は「⼤学構成員」に属性「⼊学年」を加えた実体型
より上位の概念である「⼤学構成員」との⽐較(2/2) 教員 所属 ⼭の畑 ID ⽒名 ⽣年 ⽉⽇ 研究者 ID
⼤学構成員 所属 ⼭の畑 ID ⽒名 ⽣年 ⽉⽇ VS. 「教員」は「大学構成員」に属性「研究者ID」「職階」を加えた実体型 職階 差分だけをうまく扱えばよいのでは!?
汎化階層(IsA階層) ある実体型の属性を継承し、差分の属性を 追加して別の実体型を定義する方法 ひきつぎ ⼤学構成員 所属 ⼭の畑 ID ⽒名 ⽣年
⽉⽇ IsA 学⽣ ⼊学年 IsA 教員 研究者 ID 職階 差分属性のみ書く 差分属性 のみ書く 継承した ことを⽰す 継承先の実体集合は継承元の実体集合に包含される
Q1: 汎化・継承 Q. Orange Musicは追加サービスとして 「プレミアムユーザ」サービスを開始した. Orange Musicの「ユーザ」は追加料⾦を⽀払 うことで「プレミアムユーザ」になることが できる.
「プレミアムユーザ」は最⼤100曲 まで「楽曲」を「ダウンロード」できる. 「ダウンロード」には「ダウンロード⽇」を 記録する. 前回の講義で作成した実体関連図に,上記 設定を反映せよ.
前回の講義で作成したER図
A. A1. 汎化・継承
N項関連 2 N-ary relationship
クイズ Q. X大学では4年生になると「学生」は研究室配属 される.「研究室配属」が行われると,「学生」には - 活動のための「学生部屋」 - 「指導教員」 が割り当てられる. この状況を実体関連モデルで表現せよ.
n項関連(1/2) 関連型は3個以上の実体型とつながることが可能 部屋 教員 学⽣ 研究室 配属 A⽒ B⽒ C⽒
D⽒ 部屋 8601号室 8501号室 8603号室 教員 桜⼭ ⼭畑 ⽥辺 学⽣
n項関連(2/2) 関連型は3個以上の実体型とつながることが可能 部屋 教員 学⽣ 研究室 配属 A⽒ B⽒ C⽒
D⽒ 部屋 8601号室 8501号室 8603号室 教員 桜⼭ ⼭畑 ⽥辺 学⽣ 3項以上のn項関係は多重度の把握が難しいので注意すること
Q2: n項関連(1/2) Q. Orange Musicでは追加サービスとして,アー ティストがコンサート等のイベントで演奏し た曲⽬(いわゆるセットリスト)を閲覧でき るサービスを開始することにした. このサー ビスでは,「アーティスト」がどの「楽曲」
をどの「イベント」で「演奏」したのかを閲 覧できる. 「イベント」は「イベント名」 「場所」「⽇時」を情報としてもつ. また, 「演奏」には「演奏番号」が記録される. な お,「アーティスト」が「演奏」した「楽 曲」は他者が制作した楽曲も含まれる. 上記設定に関する実体関連図を作成せよ. なお,本クイズに関係のない実体/関連は書か なくてよい.
A2: 回答 A.
Q3: n項関連(2/2) Q. 第9回の講義資料で⽤いたオンラインショッピ ングの例に戻ろう. このオンラインショッピングサイトでは, 「ユーザ」がどの「商品」を「購⼊」したか を記録している. 購⼊記録においては,購⼊ した「商品」の「数量」や「購⼊⽇」の情報
を記録している. 上記設定に関する実体関連図を作成せよ. なお,本クイズに関係のない実体/関連は書か なくてよい.
以前作成した実体関連図 商品 商品ID 商品名 価格 発売⽇ ユーザ ユーザ名 ⽒名 email
住所 購⼊希望 登録⽇ 製造 メーカー 企業名 email TEL ショッピングサイトにおける「ユーザが購⼊希望の商品」 「商品の製造メーカー」の情報の管理
A3: 回答? ユーザ 購⼊ 商品 P1 P2 U1 U2 U1,P1
U1,P2 U2,P1 U1,P1 関連は実体のペアで⼀意に特定されないとダメ ダメ!!
A3: 回答 A. 実体「伝票」を使って購⼊機会を別々に管理できるように
伝票 S1 S2 S3 S4 A3: 回答の解釈 ユーザ 購⼊ 商品
P1 P2 U1 U2 U1,S1 U1,S2 U2,S3 明細 S1,P1 S2,P2 S3,P2 S4,P1 U1,S4 S4,P2 以前購⼊した商品を再度購⼊可能に 1つの伝票で2種類以上の商品の購⼊を記録可能に
回 実施日 トピック 1 04/14 ガイダンス:データベースを使わない世界 2 04/21 データベースの概念 3
04/28 関係データモデル 4 05/12 SQL (1/3) 5 05/19 SQL (2/3) 6 05/26 SQL (3/3) 7 06/02 SQL演習 – レポート課題1 8 06/09 実体関連モデル (1/3) 9 06/16 実体関連モデル (2/3) 10 06/23 実体関連モデル (3/3) 11 06/30 正規化 (1/2) 12 07/07 正規化 (2/2) 13 07/14 データベース設計演習 – レポート課題2 14 07/21 索引付け 15 07/28 授業の振り返り or 発展的話題 16 08/04 期末試験 今後の予定 24