DE48:ER図【データサイエンティスト検定(リテラシーレベル)補習ノート】

データサイエンティスト検定(リテラシーレベル)の公式リファレンスブックで躓いたところをまとめていきます。

DE48にER図(Entity Relationship Diagram、直訳するとエンティティ関係性ダイアグラム)というのが出てきます。関係データベースの構造を可視化するために使われるようですが、自分はデータベースに関わる経験がゼロで見るのも聴くのも初めてなので、用語をまとめておきます。

エンティティ(Entity)

データのまとまりのこと。たとえば「顧客」とか「店舗」「商品」など。これは”まとまり”なので、これだけ見ても具体的に何のデータなのかはわかりません。

アトリビュート(Attribute)

エンティティの詳細、つまり具体的な何らかのデータのこと。「顧客」のアトリビュートは氏名・住所・年齢・性別など。「商品」のアトリビュートは商品名・単価など。

Attributeという英単語は「属性」と訳されることが多いようですが、厄介なことにPropertyも「属性」と訳され、一般的なPC操作ではむしろPropertyのほうがよく使われるので混乱してしまいます。両者はどう違うのでしょうか?

とりあえずIT用語辞典を調べてみます。

するとAttributeは特性、特質、性質という意味のほかに、「~に帰する」という意味があることがわかります。

一方Propertyは特性、属性、性質という意味もありますが、むしろ財産、資産、物件という意味のほうが強いです。

とは書いてみたものの、いまいちよくわからないのでHi Nativeでネイティブの皆さんの意見を見てみます。すると、両者はほぼ同じ意味で使われるようですが、Attributeは人の性格とか特質のように形容詞的なもので、Propertyは(物理的な)何かを所有するという意味合いが強いようだということがわかりました。

ここからは自分なりの解釈なので間違っているかもしれませんが、データベースでいうところの各種データ(商品名や単価など)は、エンティティが所有するものではなく、エンティティを形容するものなので(プロパティではなく)アトリビュートというのだと解釈しました。

リレーション(Relation)

エンティティ間のつながりのこと。

カーディナリティ(Cardinality、多重度)

これまた見慣れない英単語です。辞書を引いてみましたが、濃度とか基数とかデータベースと無関係の訳が出てきてよくわからないので、「エンティティ間の関係性を示すもの」とそのまま覚えたほうがよさそうです。

カーディナリティの表記方法には様々あり、代表的なものではテキストに出てくるIE記法、そしてIDEF1X記法というのもよく使われるようです。


IE 記法(鳥の足記法)

テキストに出てくるのがIE記法です。鳥の足記法とも呼ぶらしく、鳥の足のような3つ又の線が特徴です。最初見たときは???でしたが、結構直観的なのですぐに理解できると思います。下記の記事がわかりやすかったです。

IDEF1X 記法

IDEDF1X記法はIE記法に比べて細かい表現ができます。●とP,Z,nなどで表しますが、初心者の自分にはちょっと難しいように感じました。


参考資料


この記事が気に入ったらサポートをしてみませんか?