「データベース設計徹底指南」を見て気をつけようと思ったこと

正しいDB設計ってどうやるんだろー
正規化だけでんいいんだろうかー

なんてポワポワ考えてたら、「データベース設計徹底指南」というスライドが。

全然理解できなかったけど、必要と思ったことだけ。
ド素人目線から。

1.DB設計について

正しい設計をしないとこうなる
・遅い
・SQL文が長い
・JOINやサブクエリ、UNIONなどが多くなる
・難解になる
・ロジックが間違ってるetc…

しかし、データベースはリファクタリングが難しい。
なんで、最初にしっかりと設計しとく。

今回はRDBMSの設計について。
データモデルやリレーショナルモデルってなんや。

2.「データベース設計徹底指南」を見て

正しいデータ型を使う。基本中の基本。

集合の性質
・重複がない
・NULLがない
・要素間に順番がない

リレーショナルモデルに存在するJoinはInnerJoinのみ。
OuterJoin は Union 相当

正規化の必要性
・データベースの論理的整合性のため
・矛盾を防ぐ

正規化理論
・リレーションから重複を排除
・正規化の最終目標は5NF(第5正規形)

正規化については第3正規形まででいいと思ってたので、ここは要勉強。

正規化するとテーブルが増えてしまい、管理が大変?
テーブルは増えてもいい。テーブルを減らそうと誤ったDB設計をするほうが問題。

リレーショナルモデルにも限界がある。
グラフやツリーが相性悪いらしい・・・いまのとこ必要なし!

アホ過ぎて全然理解できなかった・・・
あんなボリュームあるスライドなのに抜き出したらめっちゃ少ない・・・

勉強するぞー

参考

データベース設計徹底指南

@nippondanji 氏の「データベース設計徹底指南!!」は神プレゼン!脅威の主義主張の一貫性保証は DB エンジニアの鏡だった件! – #garagekidztweetz

コメント

タイトルとURLをコピーしました