2009-06-28 18 views
0

私が働いている会社での私の役割の一部として、私は私たちのデータベースのDBAになることを余儀なくされました。私たちのテーブルの中には、行数が1億に近づいているものがあり、SQL Serverのやり方を知っているもの(ジョインのようなもの)の多くは、このデータレベルで単純に分解します。私はカップルのオプションを残しました大きなSQL Serverデータベースの管理に関する情報源?

1)VLDBを管理している経験を持つDBAを探してください。これは、私たちにはかなりのペニーを要し、私たちがやる必要のある他の仕事を犠牲にして来ます。私はそれの巨大なファンではない。

2)私たちのデータのほとんどは、私たちが分析に使用する履歴データです。私は単にデータベーススキーマのコピーを作成し、問題を解決するための適切な方法が見つかるまで、現在のデータを分析してデータを保持したまま最初から開始することができます(これが私の現在の「ベスト」ソリューションです)。

3)解決策のコミュニティに連絡して、解決策1を実装できるようになるまで、私たちを納得させるのに十分な大きさのデータベースについて十分に学習できるかどうかを確認してください。

誰かが提供できるヘルプや、お勧めの本があれば、大歓迎です。

+0

また、ServerFault.comでこの質問をする必要があります。 –

答えて

1

は、いくつかの考えですが、それらのどれも迅速に修正されません:

  1. は、あなたの大きなテーブルで データのアーカイブ戦略を策定します。 のテーブルを、既存のトランザクションテーブル と同様のフォーマットで作成し、 は、これらのテーブルにデータを定期的にコピーします。 を のデータを破損して取得することができます。ファクトテーブルと 寸法からなるスタースキーマ と

  2. 大規模なデータセットを格納するリレーショナルデータウェアハウス

    を開発、完全 。 の紹介については、このアプローチは、ラルフ・キンボールの Data Warehouse Toolkitよりも良い 本(IMHO)はありません。分析のために

  3. 、 が速い 問い合わせについては、このデータを事前に集約するMS Analysis Servicesを使用することを検討してください。

  4. もちろん、 既存のデータベース内の インデックス作成戦略を参照することもできます。 には、 というインデックスを追加して、 の挿入コストとトランザクションのコストである のパフォーマンスを向上させることができますので、注意してください。

  5. また、SQL Serverで partitioningを調べることもできます。

  6. を助けるために契約ベースでDBAに持ち込むについて気を悪くしないでください

  7. ...私には

、最善の策は、トランザクションのうち、そのデータの移動が調査を開始することです日常的に使用する必要がない場合は、システムを使用してください。

もちろん、これらのデータ量に対応するための新しいスキルを習得する必要があります。あなたが何をすることにしたとしても、まずバックアップを作成してください!

I/Oが可能な限り多くのスピンドルに適切に分散されていることを確認してください。データファイル、ログファイル、およびSQL Serverのtemp dbデータファイルはすべて、それが大きいデータベースシステムを持つ別々のドライブ上にある必要があります。

+0

ありがとう、これはまさに私が望んでいたジャンプポイントです。 –

0

あなたが良いものを見つけることができれば、DBAの金の価値があります。彼らはあなたが描いていることを専門にしています。これが一度の問題であれば、おそらく1つを下請けすることができます。

マイクロソフトでは、同様のサービスを提供していると思います。あなたは尋ねたいかもしれません。

0

DBAを取得するには、少なくともデータベースをチューニングする契約が必要です。

1億のレコードテーブルに参加しても、データベースのsererが無意味になりません。私の会社の顧客は、私たちのシステム上で毎分何百(おそらくは何千もの)何倍もする。ここで

関連する問題