mysql:6270
From: SAKIMURA Noriyuki <SAKIMURA Noriyuki <sakimura@xxxxxxxxxx>>
Date: Tue, 24 Sep 2002 17:58:51 +0900
Subject: [mysql 06270] Re: 正規化について
こんにちは。崎村です。 負荷などの運用条件によりますが、ロック競合の回避に若干効果があると 思います。 正規化せず何でもかんでも詰め込んだ構造だと、更新処理が1テーブルに 集中しやすくなり、更新ラッシュ時にロック競合が発生しやすくなります。 レコードロックが可能であればまだいいのですが、ページロックやテーブ ルロックが発生すると、かなりパフォーマンスが落ちるのではないかと思い ます。 確か、MyISAM型のテーブルだとテーブルロック、BDB型だとページロック ・・・でしたっけ? 自信がないのでマニュアル参照願います。 あとこれは非正規化手法になりますが、正規化した上でさらに項目を分類 して別テーブルに分離し負荷分散を図る方法もあり、これを垂直分割、垂直 分散などと呼びます。 例えば更新ロック中に参照もロックされるDBMSの場合、頻繁に更新する項目 と参照がメインの項目を別テーブルに分離すると、更新ラッシュが参照処理 に影響しにくくなります。 また垂直分割に対して、水平分割というものもあります。これは項目は分 割せず、レコード方向に分割して複数テーブルに分散します。例えば年や月 ごとにテーブルを分けるというやつです。 正規化は論理設計、非正規化は物理設計という感じです。 ---------------------------------------------------------------------- ソフネック株式会社 佐賀開発室 崎村 典行 sakimura@xxxxxxxxxx http://www.sofnec.co.jp/ 本社(恵比寿) tel:03-5475-7381 fax:03-5475-7382 佐賀開発室 tel:0952-34-4032 fax:0952-34-4034
6263 2002-09-24 05:39 ["Tatsuya Kondo" <kon] 正規化について 6264 2002-09-24 08:16 ┣[Takanori Tobe <taka@] 6265 2002-09-24 08:55 ┣["TAKEOKA" <takeokabb] 6268 2002-09-24 16:21 ┣[<n.futami@xxxxxxxxxx] 6269 2002-09-24 17:05 ┃┗[TSUTSUMI Thoru <tutu] -> 6270 2002-09-24 17:58 ┗[SAKIMURA Noriyuki <s] 6303 2002-09-28 08:05 ┗["Tatsuya Kondo" <kon]