FILESTREAM の有効化と構成
FILESTREAM の使用を開始するには、SQL Server データベース エンジンのインスタンスで FILESTREAM を有効にする必要があります。 このトピックでは、SQL Server 構成マネージャーを使用して FILESTREAM を有効にする方法について説明します。
注 |
---|
64 ビット オペレーティング システム上で実行されている SQL Server の 32 ビット バージョンでは FILESTREAM を有効にできません。 |
このトピックの内容
FILESTREAM の有効化
ベスト プラクティス
物理的な構成と保守
物理的なデータベース設計
FILESTREAM の有効化
FILESTREAM の設定を有効にして変更するには
[スタート] ボタンをクリックし、[すべてのプログラム]、[Microsoft SQL Server コードネーム 2012]、[構成ツール] の順にポイントして、[SQL Server 構成マネージャー] をクリックします。
サービスの一覧で、[SQL Server のサービス] を右クリックし、[開く] をクリックします。
[SQL Server 構成マネージャー] スナップインで、FILESTREAM を有効にする SQL Server のインスタンスを探します。
インスタンスを右クリックし、[プロパティ] をクリックします。
[SQL Server のプロパティ] ダイアログ ボックスで、[FILESTREAM] タブをクリックします。
[Transact-SQL アクセスに対して FILESTREAM を有効にする] チェック ボックスをオンにします。
Windows から FILESTREAM データの読み取りと書き込みを行う場合は、[ファイル I/O ストリーム アクセスに対して FILESTREAM を有効にする] をクリックします。 Windows 共有の名前を [Windows 共有名] ボックスに入力します。
この共有に格納された FILESTREAM データにリモート クライアントからアクセスする必要がある場合は、[リモート クライアントに FILESTREAM データへのストリーム アクセスを許可する] を選択します。
[適用] をクリックします。
SQL Server Management Studio で、[新しいクエリ] をクリックしてクエリ エディターを表示します。
クエリ エディターで、次の Transact-SQL コードを入力します。
EXEC sp_configure filestream_access_level, 2 RECONFIGURE
[実行] をクリックします。
SQL Server サービスを再開します。
[先頭に戻る]
ベスト プラクティス
物理的な構成と保守
FILESTREAM ストレージ ボリュームを設定する場合は、次のガイドラインを考慮してください。
FILESTREAM コンピューター システム上で短いファイル名を無効にします。 短いファイル名の作成には、長い時間がかかります。 短いファイル名を無効にするには、Windows fsutil ユーティリティを使用します。
FILESTREAM コンピューター システムを定期的に最適化します。
64 KB の NTFS クラスターを使用します。 圧縮されたボリュームは、4 KB の NTFS クラスターに設定する必要があります。
FILESTREAM ボリューム上のインデックスの作成を無効にし、disablelastaccess を設定します。disablelastaccess を設定するには、Windows fsutil ユーティリティを使用します。
必要でない場合は、FILESTREAM ボリューム上でのウイルス スキャンを無効にします。 ウイルス スキャンが必要な場合は、問題のあるファイルを自動的に削除するポリシーを設定しないようにします。
RAID レベルを設定および調整して、フォールト トレランスとアプリケーションで求められるパフォーマンスを実現します。
RAID レベル |
書き込みパフォーマンス |
読み取りパフォーマンス |
フォールト トレランス |
説明 |
RAID 5 |
普通 |
普通 |
非常に良い |
パフォーマンスは、1 台のディスクまたは JBOD よりも高く、RAID 0 またはストライピング機能を備えた RAID 5 よりも低くなります。 |
RAID 0 |
非常に良い |
非常に良い |
なし |
|
RAID 5 + ストライピング |
非常に良い |
非常に良い |
非常に良い |
最も高価なオプションです。 |
[先頭に戻る]
物理的なデータベース設計
FILESTREAM データベースを設計するときは、次のガイドラインを考慮してください。
FILESTREAM 列には対応する uniqueidentifier ROWGUID 列が存在する必要があります。 また、この種のテーブルには、一意なインデックスが存在する必要があります。 通常、このインデックスは、クラスター化インデックスではありません。 データベースのビジネス ロジックでクラスター化インデックスが求められる場合は、インデックスに格納されている値がランダムでないことを確認する必要があります。 格納されている値がランダムである場合、テーブルの行が追加または削除されるたびにインデックスの並べ替えが発生します。
パフォーマンス上の理由から、FILESTREAM ファイル グループおよびコンテナーは、オペレーティング システム、SQL Server データベース、SQL Server ログ、tempdb、ページング ファイル以外のボリュームに配置する必要があります。
領域管理とポリシーは、FILESTREAM では直接サポートされません。 ただし、それぞれの FILESTREAM ファイル グループを別個のボリュームに割り当て、ボリュームの管理機能を使用することで、領域の管理とポリシーの適用を行うことができます。
[先頭に戻る]