none
データベースの分割について RRS feed

  • 質問

  • 現在、SQLServer2008を使用しています。

    1つのデータベースの中に約300テーブルが存在します。

    ※レコード件数:最大=600万件、最小=100件

    速度改善をするにあたり、まず、不要なデータの削除を行い、

    その後、チューニング、SQLの見直し等行っていく予定でいるのですが

    以下のような方法も速度改善に効果があるのでしょうか?

    案.グループ(マスタ関連、トラン関連、サマリ関連など)毎のデータベースに分ける

      SampleDB --> SampleDB(メイン) ・・・以下のデータベースのシノニムを作る

                          --> MasterDB

                          --> TranDB

                          --> SummaryDB

      接続するデータベースは現状通り、SampleDBへ

      テーブル名もこれまで同じにするがデータベースを分けるためSampleDBへシノニムを作成する

    ご教授の程よろしくお願い致します。

    2015年4月6日 6:41

回答

  • レコード件数からエンタープライズ向けのサーバーではないという前提でお話します。

    速度改善を目的としてデータベースを分割するのであれば、HDDを物理的に分けないと意味はないと思います。
    この場合でしたら、MasterDB、TranDB、SummaryDBに各一つで3つの物理HDDが必要となります。
    通常はOSと別ドライブにSQLServerのデータを配置すると思いますので、サーバーには4つのHDDが必要かと思います。
    さらにLog用にHDDが必要になるかとおもいますので、HDD5台です。

    肝心の効果ですが、上記のようにHDDを増設して正しく設定したとしても、ほとんど早くはならないでしょう。
    実際のテーブル設計を見ていないのでなんともいえないですが、最大600万件程度のレコード数のシステムでチューニングが必要なほど遅いということは、設計があまりよろしくないか、ハードウェアが遅いということではないかと思われます。

    チューニング、SQLの見直しは非常にコスト(人件費)がかかるので、ハードウェアを増強するほうがコストがかからずに済むのではないでしょうか。
    メモリ増設&HDDからSSDに乗せ換えで相当早くなると思います。
    まずはこのあたりからやってみてはどうでしょうか。

    個人的な意見で恐縮ですが、ご参考になれば幸いです。

    • 回答の候補に設定 星 睦美 2015年4月8日 0:48
    • 回答としてマーク 星 睦美 2015年4月15日 5:02
    2015年4月6日 11:26

すべての返信

  • レコード件数からエンタープライズ向けのサーバーではないという前提でお話します。

    速度改善を目的としてデータベースを分割するのであれば、HDDを物理的に分けないと意味はないと思います。
    この場合でしたら、MasterDB、TranDB、SummaryDBに各一つで3つの物理HDDが必要となります。
    通常はOSと別ドライブにSQLServerのデータを配置すると思いますので、サーバーには4つのHDDが必要かと思います。
    さらにLog用にHDDが必要になるかとおもいますので、HDD5台です。

    肝心の効果ですが、上記のようにHDDを増設して正しく設定したとしても、ほとんど早くはならないでしょう。
    実際のテーブル設計を見ていないのでなんともいえないですが、最大600万件程度のレコード数のシステムでチューニングが必要なほど遅いということは、設計があまりよろしくないか、ハードウェアが遅いということではないかと思われます。

    チューニング、SQLの見直しは非常にコスト(人件費)がかかるので、ハードウェアを増強するほうがコストがかからずに済むのではないでしょうか。
    メモリ増設&HDDからSSDに乗せ換えで相当早くなると思います。
    まずはこのあたりからやってみてはどうでしょうか。

    個人的な意見で恐縮ですが、ご参考になれば幸いです。

    • 回答の候補に設定 星 睦美 2015年4月8日 0:48
    • 回答としてマーク 星 睦美 2015年4月15日 5:02
    2015年4月6日 11:26
  • 早速の回答ありがとうございました。

    あまり効果ないんですね・・・

    わかりました。

    メモリ増設&HDD辺からやってみます。

    2015年4月7日 7:06