5

最近、私たちのチームは、独自のアプリケーションの機能を拡張するためにFILESTREAMを検討していました。このアプリの主な目的は、私たちが製造するすべての部品のさまざまなPDF、画像、ドキュメントを管理することです。ASPアプリケーションは、いくつかのサードパーティツールを使用して、これらのファイルを表示できるようにします。現在、ファイルサーバーには980GBのデータがあります。SQL Serverには約200GBのバイナリデータがありますが、パフォーマンスが良くないため、抽出したいので、FILESTREAMは2つの主要なデータストレージ/アクセスの問題に対する適切な妥協点のようです。

いくつかのことが私たちには正確に明確ではありません。

  1. FILESTREAMは、ローカルに接続されていないドライブにデータを保存できる場合とできない場合があります。RAID 10(1.5TBドライブ)を備えたファイルサーバーがすでにあります。このサーバーには現在すべてのドキュメントが保存されていますが、これらのドライブをFILESTREAMのSQL Serverに移動する必要がありますか?サーバーはアプリケーションサーバー(1つの物理サーバー上に2つのVM)を兼ねているため、これは難しい問題です。

  2. FILETABLEはファイルに関する一般的なメタデータを格納しますが、doc / docxなどのファイルを検索できるように、そのフルテキスト部分はどこに格納されますか?これは別ですか?これに自由に条件を追加して検索できますか?もしそうなら、明確にするためのリンクをいただければ幸いです。

  3. FILETABLEは、外部キーを使用して別のテーブルで参照できますか?

前もって感謝します

編集:これらの質問がある人のために、このWebビデオは、2008年から2012年までのファイルストリームと考慮すべき警告について説明するという点ですべてをカバーしました(できれば彼を真剣に担当します):http ://channel9.msdn.com/Events / TechDays / Techdays-2012-the-Netherlands / 2270

結論として、FILESTREAMは投資に対応するための大規模な急増への道であるため、使用しません。

編集2:

#1への更新-FILESTREAMに加えてFileTableを注意深く評価した後、私たちは勝利の組み合わせを得ました。ファイルを新しいサーバーに移動する必要がありました(同じVM上にあるため、それほど苦痛ではありませんでした)。SQL内のバイナリデータをファイルシステムにダンプする抽出ツールを作成するには、正直なところ時間がかかりました。

#2-への更新-これは別のものでしたが、ボブはこれを説明する優れたウェビナーを持っていました:http: //channel9.msdn.com/Events/TechEd/Europe/2012/DBI411

#3への更新-TFT継承を使用して、レガシーアプリでほとんど変更を必要としない(巨大なバイナリブロブを除いた)ドキュメントテーブルをリサイクルしました。これは、開発者チームにとって大きな成果でした。

4

1 に答える 1

3

FileTables用にファイルが保存される場所はローカルである必要があります。または、賢いsanドライバーがだましてしまう可能性があるため、少なくともSQLServerにはローカルであるように見える必要があります。FileTablesのものはFILESTREAMのものに基づいて構築されているので、制限は同じだと思います。

ファイルテーブルの検索は、MSDNに記載されているcontainstable関数を介して実行されます。検索条件は、FULLTEXT検索AFAIKと同じ構文を使用します。

すべての目的と目的において、FileTableは典型的なテーブルであるため、結合、検索などを行うことができます。唯一のことは、FILESTREAMGUIDをファイルパスなどのより便利なものに変更するには、SQLServerのいくつかの機能を使用する必要があるということです。

于 2012-09-14T15:35:50.507 に答える