2012-02-18 9 views
0

私はC#/ SQL Serverプロジェクトを持っています。データベースは別の場所(3か所の間にない)から到達可能で、データベース内のデータが重要であるため、過去30日間毎時デー​​タベースを取得しています。SQL Serverデータベースに文書を保存

保存したい文書は、FAX形式、Excel形式、単語形式、PDF形式のデータであり、フォーマットされていません。だから彼らの中にデータを取得することは不可能です。

問題はどのようにSQL Serverにドキュメントを格納できますか?バックアップサイズが増えるため、サイズを大きくしたくないです。

だから効率的な解決策は何ですか?

答えて

2

あなたの主な問題は、バックアップのサイズのようです。毎時フルバックアップバックアップを実行している場合は、代わりに差分バックアップを実行して領域を節約できます。

すべてが変更されていない場合はすべてをバックアップする必要はないため、前回のバックアップにはなかった新しいデータをバックアップするだけで済みます。

これは、多くの時間とスペースを節約し、一般的にはより良い方法です。

バックアップローテーションスキームの実装を検討することをお勧めします。あなたがここにこれに関するより多くの情報を見つけることができます。

http://en.wikipedia.org/wiki/Backup_rotation_scheme

を、私はまた、あなたがMDFファイルに大きなページを持つのパフォーマンスへの影響を軽減するために、FILESTREAMデータタイプフィールドでファイルを保存お勧めします。

+0

ありがとう、filestreamは私にとって最高のソリューションだと思います。それを試してみましょう。 私は自分が望むものを達成できれば私のソリュューションを共有します。 – Rapunzo

0

バックアップサイズがの場合、ファイルシステムとDBストアの文書のみを保存してください。

あなたが心配した場合についてバックアップ一貫 - あなたは場所を取るために起こっている何かを保存したい場合はDB

+0

ほとんど問題はありません。私はその3つの場所の間にVPN接続を持っていないので、私はファイルシステムにそれを保存することはできません。 – Rapunzo

+0

ファイルをサーバー上のファイルシステムに保存する必要はありません。おそらく、カスタムCLR関数を使用して、ファイルの内容をファイルシステムとの間で保存/返すことができます。 –

2

店内文書。あなたが複数の選択を書くことがあります。

  1. ストアだけではとespecialyあなたにいくつかの場所に保存されます、SQL Serverにそれらを入れる前
  2. 圧縮ファイルをサーバー上seperatly SQLや店舗のファイルにパスを提出し、彼らのために別々のバックアッププロセスを持っていますStore Files in SQL Server or keep them on the File Server?:同様の質問には出回っ圧縮形式(.PNG、オフィスに.docx、.xlsxのなど)に役立つことはありませんけれども、プレーンテキスト形式、
  3. 使用FILESTREAMと差分バックアップ(Example
+0

最初の方法は最高だと思います。 – yapingchen

関連する問題