Date: Thu, 13 Feb 2003 20:36:02 +0900
From: "Akira Horikawa" <who@example.ne.jp>
堀川です、今晩は
-----Original Message-----
From: Yoshihiro Kawashima [mailto:who@example.co.jp]
Sent: Thursday, February 13, 2003 10:34 AM
To: who@example.ne.jp
Subject: [ml-msde:01105] Re: MSDE にチューニング方法は何かあるのでしょう
か?
>>データベースのファイル構造は、チューニング済みですか?
>>ファイルグループ設計は行われましたか?
>>DISKはSCSI系ですか?
>HDDはIDEです。5400prmなのでそれも原因だと思います。
SCSIのDISKが複数本の場合であれば、それぞれのDISKに
並列的なI/O処理要求が出せるので、ファイルグループ設計
をうまくやると、速くなるという意味です。
>Pentium4(1.8G)の768Mのマシンでやると
>半分くらいの時間で終わりました。
Pentium4のマシン処理能力の差と、メモリバス処理の
違いですね
例えば、E7205チップセットまたは850Eチップセットのマシン
にすれば、もっと良い数字が出るでしょう。
またTYANから、S2707という面白いマザーもあります。
http://www.tyan.com/products/html/trinitygcsl.html
このようなマザーボードを使ってPCI-Xのカードを使うと
速くなると思います
#このマザーボードが欲しいなー
>> 1レコード単位のInsert文を速くしたいのですか?
>そういうことになります。
>ADOからだとORACLEでいうバインド配列みたいなのが
>有ればと思ったのですが、見当たらなかったのです。
>パラメーターマーカーだとオラクルで言うバインド変数のような
>使い方になりますよね。
基本的には、レコード登録用のストアドプロシージャを作成して
それを実行するのがよいと思います
クライアント側からSQL文を投入するようなシステムであれば
sp_executesqlストアドプロシージャを使った方法があります。
このストアドプロシージャを使えば、サーバー側でコンパイル
プランが保存されるので2度目からはコンパイルせずに
実行されます。
この方法が、バインド変数に近い方法になると思います
>> メモリが少ないように思えます
>> できるだけ一杯入れて下さい
>メモリを256/512/768と変化させて見ましたが
>それほどの差が出ませんでした。
Insert命令なので、オンメモリ上にレコードを持っていてもあまり
関係ないわけです
せいぜい、制約検査に少し効果が出るでしょうか。
SELECT系の命令だと、差は現れるでしょう。
>マシン1
> メモリ:320M
> CPU:Pentium3 850MHz
> MSDE 1.0
>
>マシン2
> メモリ:128M
> CPU:Pentium3 800MHz
> SQLServer2000
>
>というマシンで
>マシン1ではADO接続を利用してVBからDELETE FROM テーブル名
>マシン2ではosqlのコマンド画面からDELETE FROM テーブル名
>にて実行しました。
MSDEはデフォルトでログ切捨て運用を行います
しかも自動圧縮のオプションも付きます
SQLServerは、ログを切捨てません
このようなデータベースオプションの設定は同じにして、ベンチマーク
をされましたか?
またライセンス契約上、MSDEやSQLServerの評価結果の数字を
公表するには、許可が必要になっております。
ご注意下さい
------------------------------------
(株)日本技術ソフト開発
堀川 明 (Akira Horikawa)
02月13日(木曜日) 20時35分記
mailto:who@example.ne.jp
http://www.horikawa.ne.jp/msde/
[MSDE/SQLServerに関して、今、どんなことにお困りですか?] |
よろしければお困りの内容を、電子メールで教えて下さい。 |
質問を電子メールで作成する
|
[ウィンドを閉じる][MSDE/SQLServer FAQ ][MSDE / MSDE2000 技術サポート情報一覧]
|