Date: Tue, 21 Feb 2006 11:43:17 +0900
From: "Akira Horikawa" <who@example.ne.jp>
堀川です、おはようございます
-----Original Message-----
From: Kohichiroh Ohta [mailto:who@example.co.jp]
Sent: Monday, February 20, 2006 6:09 PM
To: who@example.ne.jp
Subject: [ml-msde-beg:01764] Re: プライマリファイルグループがいっぱい
>> ただ気になるのは、2GBのMSDEのデータファイル上限値を超えるような
>> 比較的中規模のデータベースですから、どのような物理ファイル設計を
>> 行なっているか、気になるところです。
>> データファイルが1個、トランザクションログファイルが1個の
>> デフォルト形式だと、パフォーマンスに問題が表れたりします。
>
>実は、パフォーマンスが悪くなった
>という報告をお客様からいただいていて
>どうすれば良いのか、苦慮している最中でした。
MSDEやSQLServerのデータベースエンジンは、信頼性が高いので、
プライマリデータファイル(mdf)が1個だけのデータベースでも、運用は
可能ですが、パフォーマンスは犠牲になってきます。
巨大な物理的なファイルの中を、行ったり来たり探し回るので、読み込みに
時間がかかります。
必要となるデータは1箇所に固まっているのが理想です。
データベースの物理設計と言うと、難しいように思えますが(実際は難しい)、
記憶装置が1本のIDEのDISKしか使っていないようなレベルだったら、
単なる
テーブルやインデックスを記憶させるファイル名の定義
だと割り切って考えるとよいでしょう。
もちろん、
テーブルだけを単体のファイルにするのか?
個々のインデックスは、1個のファイルでよいのか?
テーブル+インデックスをまとめて、1個のファイルにするのか?
などなど、細かなことを考えていくと、悩みが増えるだけです。
本来は、このような物理設計は、データベースの運用開始前に済ませて
おくべきことですが、それを省略したわけですから、あまり細かなことを
考えても仕方ないので、
まず最初に、
今運用中のデータベースの中で、レコード数が他に比べて多いものは?
他のテーブルが平均数千レコード数なのに、このテーブルだけは、
数十万レコードあるとか?
テーブルに設定されたインデックスの個数が、通常は1〜2個なのに、
このテーブルだけは、5個も10個も設定しているとか?
このテーブルは、画像(image型)やメモ(text型)のデータをたくさん
記憶しているとか?
このテーブルだけは、アプリケーションから非常によく参照されるとか?
などのような、他のテーブルと比較して、ちょっと特異なテーブルがあったら
その特異なテーブルだけを分離するように、設計していくとよいでしょう。
> 比較的良く使用されるテーブルやインデックスなどは、単独のファイル
>> グループに収容すると良いでしょう
>> データベースの物理設計は、SQL文などで、必要に応じて変えることが
>> できます。
>
>これは、具体的にはどうすれば良いのでしょうか?
>これについての記述のあるサイト等でもかまいません、
>教えていただれば助かります。
SQL Server 2000 の Books Online
を、読みましょう。
SQL Server 2000 の、アーキテクチャを理解しないと、読みこなすのが
難しいかな。。。。
PASSJ のセミナーで、何回もアーキテクチャに触れたことがあったけど、
受講しなかったかな。。。。
どこかに、講演資料がダウンロードできないかな。。。。
アーキテクチャについては、知っている人に教わるのが、一番良い方法
なんですが、上司や同僚に、教わることはできないですか?
------------------------------------
Epata-IT/日本技術ソフト開発
堀川 明 (Akira Horikawa)
02月21日(火曜日) 11時42分記
mailto:who@example.ne.jp
http://www.horikawa.ne.jp/msde/
[MSDE/SQLServerに関して、今、どんなことにお困りですか?] |
よろしければお困りの内容を、電子メールで教えて下さい。 |
質問を電子メールで作成する
|
[ウィンドを閉じる][MSDE/SQLServer FAQ ][MSDE / MSDE2000 技術サポート情報一覧]
|