RBS を計画する (SharePoint Foundation 2010)

 

適用先: SharePoint Foundation 2010

この記事では、Microsoft SharePoint Foundation 2010 環境でリモート BLOB ストレージ (RBS) を使用するかどうかを判断する上で役立つ情報を提供し、RBS を使用する場合、RBS 展開を計画する方法について説明します。

SharePoint Foundation 2010 では、バイナリ ラージ オブジェクト (BLOB) は、Microsoft Office 2010 ドキュメント、ビデオ ファイルなどのファイルです。既定では、非構造化データとも呼ばれるこれらの BLOB が、メタデータ、つまり構造化データと共に、SharePoint コンテンツ データベースにインラインで格納されます。BLOB は非常に大きくなる可能性があるため、BLOB データを SQL Server データベースから、コンテンツのアドレス指定が可能なストレージ製品に移動することは有用です。これを行うには、RBS を使用します。

注意

特に指定のない限り、この記事の情報は、FILESTREAM プロバイダーを使用する RBS にのみ適用されます。他のプロバイダー固有のガイダンスについては、プロバイダーのメーカーに問い合わせてください。

RBS プロバイダーに関する情報を含めて、RBS の詳細については、「RBS の概要 (SharePoint Foundation 2010)」を参照することを強くお勧めします。

この記事の内容

  • IT ライフ サイクルで RBS を使用する場合の影響

  • 異なるサイト シナリオで RBS を使用する場合の影響

  • RBS の制限事項

  • RBS を使用するメリットとコスト

  • FILESTREAM プロバイダーで RBS を使用する場合のメリットとコスト

  • RBS の最適な使用

  • RBS の不適切な使用

  • プロバイダー オプションを評価する

IT ライフ サイクルで RBS を使用する場合の影響

環境のライフ サイクル全体で RBS を使用する場合の影響を評価する必要があります。大きな BLOB ストアなど、通常の運用では適切なものが、バックアップと復元や、アップグレードの際には、問題になることがあります。ライフ サイクル全体での RBS の使用や BLOB ストア サイズの効果を評価することで、後で発生する可能性がある問題を回避できます。

たとえば、リモート RBS プロバイダーを使用すると、IT 運用の複雑さが増し、コストも増大します。これは、参照の整合性を保持するために、コンテンツ データベースと BLOB ストアを同期してバックアップする必要があるためです。

また、場合によっては、アップグレード作業で、BLOB の格納場所にかかわらず、各 BLOB を列挙し、変更する可能性もあります。

セットアップ

RBS を使用する場合は、ファーム内のすべての Web サーバーで RBS プロバイダーのインストールと構成を行う必要があるため、セットアップが多少複雑になります。RBS をセットアップする方法の詳細については、「RBS をインストールして構成する (SharePoint Foundation 2010)」を参照してください。

通常の運用

通常の運用における、平均的なファイル サイズとファイル アクセスの種類を考慮する必要があります。1 MB を超えるファイルで RBS を使用すると I/O とプロセッサのパフォーマンスは向上しますが、256 KB 未満のファイルで RBS を使用すると、全体のパフォーマンスが低下する可能性があります。サイズが小さなファイルの場合は、コンテンツ データベースに BLOB をインラインで格納する方が効率的です。RBS のパフォーマンスの詳細については、「Managing Unstructured Data with SQL Server 2008 (英語)」(https://go.microsoft.com/fwlink/?linkid=223909&clcid=0x411) (英語) を参照してください。

BLOB コンテンツがどのような使われ方をするかについても、考慮する必要があります。コンテンツの読み取りが大半で、変更が行われない場合、RBS によってパフォーマンスが向上する可能性があります。しかし、コンテンツの変更が多く行われる場合は、RBS の使用によってパフォーマンスは低下します。これは、バージョン管理が多く行われることで、コンテンツ データベース内のメタデータと、BLOB ストアのサイズが極端に大きくなるためです。

ストレージ コストのメリットと、運用コストの増大の可能性を、比較検討してください。

監視と最適化

RBS を使用する場合、RBS を監視するために追加されたいくつかのパフォーマンス カウンターがあるため、運用上のオーバーヘッドも増加します。各種オプションを使用して、RBS のパフォーマンスを調整できます。詳細については、「RBS を保守する (SharePoint Foundation 2010)」を参照してください。

データベースのメンテナンス

RBS を使用すると、断片化したデータベース インデックスの最適化と統計情報に関する作業を、効率的に、高速に実行できます。また、DBCC チェックなど、通常の整合性チェックも、RBS を使用すると、ずっと高速に実行できます。

しかし、RBS Maintainer を構成および使用して、メタデータと BLOB ストア間のリンク レベルの整合性を維持し、孤立した BLOB のクリーンアップを実行する必要があるため、通常のデータベース メンテナンスが複雑になります。詳細については、「RBS を保守する (SharePoint Foundation 2010)」を参照してください。

バックアップと復元

ローカルの FILESTREAM プロバイダーと RBS を使用する場合は、組み込みの SharePoint ツールを使用してバックアップと復元を実行できます。この操作によって、メタデータと BLOB ストアの両方のバックアップと復元が行われます。リモートの RBS プロバイダーを使用する場合は、バックアップと復元のプロセスを注意して調整する必要があります。バックアップと復元のプロセスが、メタデータと BLOB ストアの両方に関係するためです。RBS 構成を計画する場合は、この点を考慮してください。すべての RBS プロバイダーが、BLOB データのバックアップと復元をサポートしているわけではありません。サポートしているかどうか、プロバイダーのメーカーに確認する必要があります。

Microsoft System Center Data Protection Manager を使用して、RBS ストアに格納されているコンテンツをバックアップおよび復元することはできません。

アップグレードと更新

状況によっては、アップグレードや、ソフトウェア更新プログラムの適用であっても、各オブジェクトを列挙および繰り返し処理して、BLOB データの格納場所にかかわらず、そのデータを含めることができます。したがって、インライン BLOB が使用されている場合でもリモート BLOB が使用されている場合でも、かかる時間は同様です。

異なるサイト シナリオで RBS を使用する場合の影響

異なるサイト シナリオで RBS を使用する場合の影響を評価する必要があります。RBS は特定の問題を解決するために作成されたものなので、すべてのシナリオに同じように適しているとは限りません。次のようなシナリオが考えられます。

チーム サイト

チーム サイトのように共同作業が多く行われるサイト、および、通常、256 KB 未満のドキュメントが含まれるサイトで RBS の使用を検討している場合、RBS を使用しても大きなメリットはありません。さらに、バージョン管理を使用すると、ドキュメントが頻繁に変更される場合は、コンテンツ データベースの急激な増大を引き起こします。

重要

グループ作業サイトでの 4 TB を超える RBS 対応コンテンツ データベースの使用はサポートされていません。2 GB を超えるいかなるドキュメントも RBS 対応コンテンツ データベースにはアップロードできません。RBS に関する制限の詳細については、「SharePoint Server 2010 容量管理ソフトウェアの境界と制限」の「コンテンツ データベース」セクションを参照してください。

レコード センター

RBS は、レコード センターなどのアーカイブ サイトに適しています。これらのサイトはほとんどが読み取り専用であり、バージョン管理を使用しないため、多くのデータを RBS ストアに格納できます。

RBS の制限事項

各 RBS プロバイダーには、それぞれ異なる機能と制限事項があります。FILESTREAM プロバイダーの制限事項は、次のとおりです。

  • RBS は、特定のシナリオで特定のコンテンツ データベース サイズ制限があります。これらの制限の詳細については、「SharePoint Server 2010 の容量管理: ソフトウェアの境界と制限」の「コンテンツ データベースの制限」を参照してください。

  • 透過的なデータ暗号化が有効であっても、BLOB での暗号化はサポートされません。

  • RBS では、データ圧縮の使用はサポートされません。

  • データベース ミラーリングおよびログ配布のサポートは変更されています。詳細については、この記事の「プロバイダー オプションを評価する」を参照してください。

サード パーティのプロバイダーの機能と制限事項を判断するには、プロバイダーのメーカーに問い合わせてください。

RBS を使用するメリットとコスト

ここでは、RBS を使用するメリットとコストについて説明します。このメリットとコストは、通常、使用するプロバイダーの種類にかかわらず該当します。FILESTREAM RBS プロバイダーを使用する方法の詳細については、この記事の「FILESTREAM プロバイダーで RBS を使用する場合のメリットとコスト」を参照してください。サード パーティの RBS プロバイダーを使用する方法の詳細については、プロバイダーのメーカーに問い合わせてください。

メリット

RBS は、BLOB のストレージを、データベース サーバー上のデータベースからストレージ ソリューション製品上のディレクトリに移動するために設計されました。このため、RBS の使用が想定された特定の環境では、パフォーマンスやコストのメリットを受けられます。データベース サーバー上の高価なストレージではなく、安価なストレージを使用することで、コストを削減できます。少数の大きな BLOB がある場合、RBS はストレージ リソースを節約します。多数の小さなファイルがある場合、メリットはありません。

コスト

RBS を使用すると、IT スタッフがコンテンツをバックアップまたは復元するときに追加の作業を実行する必要があるため、運用コストは増加します。大きな RBS ストアの場合、バックアップや復元、環境の更新、SharePoint Foundation の新バージョンへのアップグレード、SharePoint サイトの別の環境への移行などの作業速度が低下することがあります。RBS を使用するかどうかを評価する際は、これらのコストを検討する必要があります。

FILESTREAM プロバイダーで RBS を使用する場合のメリットとコスト

ここでは、FILESTREAM プロバイダーを使用する場合のメリットとコストについて説明します。これらのメリットとコストは、別のプロバイダーには関係しない可能性があります。サード パーティの RBS プロバイダーを使用する方法の詳細については、プロバイダーのメーカーに問い合わせてください。

メリット

SharePoint Server 2010 で現在サポートされているのは、FILESTREAM RBS プロバイダーだけです。このプロバイダーを使用すると、SharePoint Server 2010 のバックアップ機能と復元機能も、追加の作業を必要とせずに、コンテンツ データベース内の BLOB と構造化データをバックアップおよび復元します。FILESTREAM プロバイダーは、iSCSI (Internet Small Computer System Interface) 接続のストレージ デバイスもサポートします。

SharePoint Foundation 2010 では、無料版の Microsoft SQL Server の使用を続ける場合、かつデータベースのサイズが 4 GB を超えると見積もられている場合に RBS の実装を検討してください。コンテンツ データベースのサイズが 4 GB を越えないと想定される場合は、RBS の実装をお勧めしません。

注意

Windows SharePoint Services 3.0 から SharePoint Foundation 2010 にアップグレードする場合は、「 コンテンツ データベースが 4 GB より大きい場合に Windows SharePoint Services 3.0 のスタンドアロン インストールから SharePoint Foundation 2010 にアップグレードする (リモート BLOB ストレージ)」を参照してアップグレードに関する追加のアドバイスを確認してください。

既定では、Microsoft SharePoint Foundation 2010 は Microsoft SQL Server 2008 Express と一緒にインストールされます。SQL Server 2008 Express には、すべてのデータベースに対して 4 GB のサイズ制限があります。コンテンツ データベースのサポートされるサイズを直ちに拡大するには、最大 10 GB のデータベースをサポートしている Microsoft SQL Server 2008 R2 Express をインストールします。SQL Server 2008 R2 Express は、https://go.microsoft.com/fwlink/?linkid=189418&clcid=0x411 から無料でダウンロードできます。

このセクションの以降の部分では、SQL Server 2008 R2 Express をインストールして SharePoint Foundation 2010 データベースをサポートするものと仮定します。ここで、コンテンツ データベースが 10 GB 以上になると想定される場合は、次のオプションを検討してください。

  • コンテンツ データベースのサイズが最大 16 GB であり、そこに 10 GB を超えるメタデータが含まれることはないと想定される場合は、RBS の実装をお勧めします。この場合は RBS を使用することで無料版の SQL Server の使用を続行できます。この推奨オプションでは、16 GB のコンテンツ データベースを RBS に移行する際にメタデータが 10 GB を超えていないと仮定しています。

  • コンテンツ データベースのサイズが 16 GB を超える場合は、無料版の SQL Server を使用し続けるのではなく、データベースをサポートするために Microsoft SQL Server 2008 R2、SQL Server 2008 Service Pack 1 (SP1) (累積的な更新プログラム 2 の適用済み)、または SQL Server 2005 SP3 (累積的な更新プログラム 3 の適用済み) を購入する必要があります。

コスト

FILESTREAM プロバイダーを使用すると、IT スタッフは追加の作業を実行する必要があるため、運用コストが増加する可能性があります。大きな RBS ストアの場合、バックアップや復元、環境の更新、SharePoint Foundation の新バージョンへのアップグレード、SharePoint サイトの別の環境への移行などの作業速度が低下することがあります。RBS を使用するかどうかを評価する際は、これらのコストを検討する必要があります。

RBS の最適な使用

RBS は特定の一連の条件に対して作成されたものなので、メリットがコストを上回る、RBS の使用が適した環境が存在します。RBS の使用に適した環境は、次の条件が該当する環境です。

  • 読み取りが多い、または読み取り専用でアクセスされる、少数の大きな BLOB (256 KB 以上) を格納する。

  • SQL Server を実行しているコンピューター上のリソースが、パフォーマンスのボトルネックになる可能性がある。

  • 高価なドライブ領域に関する費用が、RBS の使用によって生じる可能性がある、IT 運用の複雑さの増加に伴う費用を上回る。

RBS の不適切な使用

RBS は、すべての環境に適したソリューションというわけではありません。多くの場合、コストがメリットを上回ります。RBS の使用に適さない環境は、次の条件が該当する環境です。

  • 書き込み中心でアクセスされる、多数の小さな BLOB (256 KB 以下) を格納する。

  • SQL Server を実行しているコンピューター上のリソースが、パフォーマンスのボトルネックでない。

  • RBS の使用によって生じる可能性がある、IT 運用の複雑さの増加に伴う費用が、高価なドライブ領域を上回る。

このような条件の下では、200 GB 未満のコンテンツ データベースであっても、小さな BLOB が頻繁に書き込みアクセスされるため、著しいパフォーマンスのボトルネックが引き起こされます。これは、データベースに BLOB のメタデータが含まれていることが原因です。メタデータが変更されると、データベース内のテーブルに新しい行が追加されます。このため、テーブルが急激に増大します。大きなテーブルは、パフォーマンスを低下させることがあります。

多数の小さな BLOB があるとパフォーマンスが低下しますが、RBS を評価するとき注目すべき検討事項は、通常、ストレージのコストです。予想されるパフォーマンスの低下は、通常、ストレージ ハードウェアのコスト削減効果に十分見合うものです。

プロバイダー オプションを評価する

RBS では、RBS API と SQL Server を接続するプロバイダーが必要になります。Microsoft SQL Server 2008 Express および Microsoft SQL Server 2008 R2 Express には FILESTREAM プロバイダーが含まれています。

重要

RBS は、Microsoft SQL Server 2008 R2、SQL Server 2008、または SQL Server 2008 R2 Express を実行しているローカル コンピューター上で実行できます。RBS をリモート サーバーで実行するには、SQL Server 2008 R2 Enterprise を実行している必要があります。SharePoint Foundation 2010 では、Microsoft SQL Server 2008 R2 用 Feature Pack に含まれる SQL Server リモート BLOB ストア インストール パッケージ に含まれているバージョンの RBS を使用する必要があります。それよりも以前のバージョンの RBS は SharePoint Foundation 2010 では機能しません。また、RBS は SQL Server 2005 ではサポートされていません。

BLOB は、プロバイダーがサポートしている、直接接続ストレージ (DAS)、ネットワーク接続ストレージ (NAS) などのストレージ製品に保持できます。SharePoint Foundation 2010 が FILESTREAM プロバイダーをサポートするのは、ローカル ハード ディスク ドライブまたは iSCSI ドライブ上で使用する場合に限られます。FILESTREAM を使用して RBS を NAS のようなリモート ストレージ デバイス上で使用することはできません。

次の表は FILESTREAM の利点と制限をまとめたものです。

動作上の要件 FILESTREAM プロバイダーを使用する場合 FILESTREAM プロバイダーを使用しない場合

SQL Server による BLOB ストアのバックアップと復旧の機能の統合

あり

おそらく 1

System Center Data Protection Manager (DPM) 2010 に統合された BLOB ストアのバックアップと復元機能

いいえ

おそらく 1

BLOB へのスクリプト化された移行

あり

あり

ミラーリングのサポート

なし

なし

ログ配布

あり

あり (プロバイダー実装時)

データベース スナップショット

なし2

なし2

地理的レプリケーション

あり

なし

暗号化

NTFS のみ

なし

サポートされているローカル ドライブ

はい

あり (プロバイダー実装時)

ネットワーク接続ストレージ (NAS)

iSCSI を使用し、TTFB が 20 ミリ秒未満の場合のみ、SharePoint 2010 Productsでサポートされる

あり (プロバイダーの実装を使用する場合)

DAS (Direct Attached Storage)

SharePoint 2010 Products によるサポートなし

あり (プロバイダーの実装を使用する場合)

サポートされている iSCSI ドライブ

あり

あり (プロバイダーの実装を使用する場合)

1使用中の RBS プロバイダーがその動作を行う場合に限ります。

2使用している RBS プロバイダーがスナップショットをサポートしていない場合、コンテンツの展開やバックアップでスナップショットを使用することはできません。FILESTREAM プロバイダーは、スナップショットをサポートしていません。

FILESTREAM プロバイダーが環境に適していない場合は、サポートされているサード パーティのプロバイダーを購入する方法もあります。この場合は、プロバイダーを評価するときに次の条件を使用してください。

  • バックアップと復元の機能

  • テスト済みの障害復旧

  • 展開とデータ移行

  • パフォーマンスの影響

  • 長期的な管理コスト

重要

ストレージ ソリューションの設計に関して十分な開発経験がある独立ソフトウェア ベンダー (ISV) 以外には、プロバイダーを開発することはお勧めしません。

See Also

Other Resources

Resource Center: SQL Server and SharePoint Server 2010 Databases (英語)