メインメニューを開く

「データベースの非正規化」を編集中

警告: ログインしていません。編集を行うと、あなたの IP アドレスが公開されます。ログインまたはアカウントを作成すれば、あなたの編集はその利用者名とともに表示されるほか、その他の利点もあります。

この編集を取り消せます。 下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。

最新版 編集中の文章
4行目: 4行目:
 
=== 正規化 ===
 
=== 正規化 ===
 
データの重複をなくし整合的にデータを取り扱えるようにデータベースを設計することを「[[データベースの正規化]]」と呼ぶ。
 
データの重複をなくし整合的にデータを取り扱えるようにデータベースを設計することを「[[データベースの正規化]]」と呼ぶ。
データベースの教科書に書いてある定番のウリ文句であり、情報系の学校では「データベースを設計するときは正規化しよう」「テーブルはJOINで結合して使おう」と習うことでしょう。
+
教科書に書いてある定番のウリ文句であり、情報系の学校では「データベースを設計するときは正規化しよう」と習うことだろう。
{| class="wikitable"
+
{| class='wikitable'
 
|+
 
|+
 
! メーカー !! 住所  
 
! メーカー !! 住所  
14行目: 14行目:
 
|}
 
|}
  
{| class="wikitable"
+
{| class='wikitable'
 
|+
 
|+
 
! 商品ID !! 商品名  
 
! 商品ID !! 商品名  
27行目: 27行目:
 
=== 非正規化 ===
 
=== 非正規化 ===
 
その逆に1つのテーブルに重複クソ食らえで全てを詰め込む手法を「データベースの非正規化」と呼ぶ。
 
その逆に1つのテーブルに重複クソ食らえで全てを詰め込む手法を「データベースの非正規化」と呼ぶ。
{| class="wikitable"
+
{| class='wikitable'
 
|+
 
|+
 
! メーカー !! 住所 !! 商品名  
 
! メーカー !! 住所 !! 商品名  
40行目: 40行目:
 
数億レコードを突破するようなテーブルがいくつも存在する現実的な環境下ではテーブルのJOINなどしたらシステムは窒息死するため、このようなデータベースの設計となる事が多い。
 
数億レコードを突破するようなテーブルがいくつも存在する現実的な環境下ではテーブルのJOINなどしたらシステムは窒息死するため、このようなデータベースの設計となる事が多い。
  
ただし非正規化は諸刃の剣であるということを忘れてはならない。途中での方針変換による採用は非常に危険である。
+
非正規化という諸刃の剣に手を出すのは以下のようなケースが多い。
 
# 正規化した状態で設計・開発する
 
# 正規化した状態で設計・開発する
 
# サービス開始直後に過負荷でシステムダウン
 
# サービス開始直後に過負荷でシステムダウン

MonoBookへの投稿はすべて、他の投稿者によって編集、変更、除去される場合があります。 自分が書いたものが他の人に容赦なく編集されるのを望まない場合は、ここに投稿しないでください。
また、投稿するのは、自分で書いたものか、パブリック ドメインまたはそれに類するフリーな資料からの複製であることを約束してください(詳細はMonoBook:著作権を参照)。 著作権保護されている作品は、許諾なしに投稿しないでください!

このページを編集するには、下記の確認用の質問に回答してください (詳細):

取り消し 編集の仕方 (新しいウィンドウで開きます)

このページで使用されているテンプレート:

このページは 1 個の隠しカテゴリに属しています: