2

背景を簡単に説明すると、専任の DBA がいる Oracle 10.2 で動作する、現在サポートしているアプリがあります。過去に、バイナリ データ (世界では BLOB - これは PDF や DOCX など) を格納するテーブルを作成したいと思っていたとき、DBA は常にその列/テーブルのデータ ストレージを「分割」していました (どちらかはわかりません) ディスク上の別の物理領域に。この背後にある彼らの理由は、ルックアップが発生した残りのデータと同じファイルに多数のバイナリ ファイルを格納することによって、パフォーマンスが影響を受けないようにするのに役立ったからです。

私の質問は、SQL Server に対してこれと同様のことを行うべきかどうかです (2012 年ですが、バージョンは問題ではないと思います)。もしそうなら、どうすればいいですか?また、そうするための適切な用語は何ですか?

4

1 に答える 1

4

ファイルが別のボリュームにある別のファイルグループを作成してから、そのファイルグループにLOBデータを格納するテーブルを明示的に作成できます。ファイルグループの指定は、 CREATETABLEおよびCREATEINDEXステートメントの一部であり、デフォルトはPRIMARYファイルグループです。

SQL Serverにファイルを保存するためのさまざまな選択肢もあります。2008年以降は、FILESTREAMここも参照)を使用でき、2012年にはFILETABLEを使用できます。ただし、ほとんどの場合、ファイルをデータベースに保存することを正当化するのに苦労しました。多くの場合、ファイルをファイルシステムに保存し、ポインタをデータベースに保存する方が問題は少なくなります。

そして、私が12年前に書いたこのFAQの記事で、私の古くて長い間意見を読むことができます。

一部のテクノロジーが変更されたことを念頭に置いて(明らかに、FILESTREAMとFILETABLEはその時点では利用できませんでした)、そこにあるいくつかのポイントは引き続き関連しています...

そして最後に、読むのに役立つかもしれないファイル/ファイルグループの処理に関するMSDNに関するいくつかのアドバイス。

于 2012-04-24T04:17:33.517 に答える