Microsoft SQL Server Analysis Services には、ストレージ モードとキャッシュ オプション用の標準ストレージ構成がいくつか用意されています。 これらは、更新通知、待機時間、およびデータの再構築に一般的に使用される構成を提供します。
パーティション ストレージは、SQL Server Data Tools のキューブの [パーティション] タブ、または SQL Server Management Studio の [パーティション] プロパティ ページで指定できます。
ストレージ モードを選択するためのガイドライン
大規模なメジャー グループの場合は、パーティションごとに異なる方法でストレージを構成するのが一般的です。 次のガイドラインを考慮してください。
継続的に更新されている現在のデータには、リアルタイム ROLAP を使用します。
更新頻度が低いデータ ソースに基づいて、パーティションの待機時間が短い、または待機時間が中程度のプロアクティブ キャッシュを使用します。
ユーザーが高パフォーマンスを必要とするが、データの待機時間を許容できるデータ ソースには、自動 MOLAP を使用します。
スケジュールされた MOLAP は、ユーザーがデータに継続的にアクセスできる必要があるが、定期的にのみ変更が表示されるデータ ソースに使用します。
変更頻度の低いパーティションまたはまったく変化しないパーティションに対してプロアクティブ キャッシュを行わずに MOLAP ストレージを使用する。ユーザーが最新のデータを参照する必要がないパーティションの場合。必要な更新と処理中にユーザーがデータを継続的に使用できる必要がない場合。
これらは一般的なガイドラインであり、データに最適なストレージ スキームを開発するには、慎重な分析とテストが必要になる場合があります。 また、ニーズを満たす標準構成がない場合は、パーティションのストレージ設定を手動で構成することもできます。
ストレージ設定の説明
| Standard Storage の設定 | 説明 |
|---|---|
| リアルタイム ROLAP | OLAP はリアルタイムです。 詳細データと集計はリレーショナル形式で格納されます。 サーバーは、データが変更され、すべてのクエリがデータの現在の状態 (待機時間ゼロ) を反映したときに通知をリッスンします。 この設定は、通常、ユーザーが常に最新のデータを必要とする場合に、非常に頻繁かつ継続的な更新を行うデータ ソースに使用されます。 このメソッドは、クライアント アプリケーションによって生成されるクエリの種類に応じて、応答時間が最も遅くなる可能性があります。 |
| リアルタイム HOLAP | OLAP はリアルタイムです。 詳細データはリレーショナル形式で格納され、集計は多次元形式で格納されます。 サーバーは、データが変更されたときに通知をリッスンし、必要に応じて多次元 OLAP (MOLAP) 集計を更新します。 MOLAP キャッシュは作成されません。 データ ソースが更新されるたびに、集計が更新されるまで、サーバーはリアルタイム リレーショナル OLAP (ROLAP) に切り替えます。 すべてのクエリは、データの現在の状態を反映します (待機時間はゼロ)。 この設定は通常、頻繁かつ継続的な更新 (ただし、リアルタイム ROLAP を必要とするような頻度ではない) を含むデータ ソースに使用され、ユーザーは常に最新のデータを必要とします。 通常、この方法は ROLAP ストレージよりも全体的なパフォーマンスを向上させます。 データ ソースが十分に長くサイレント状態のままである場合、ユーザーはこの設定から MOLAP パフォーマンスを得ることができます。 |
| 低遅延 MOLAP | 詳細データと集計は、多次元形式で格納されます。 サーバーは、データへの変更の通知をリッスンし、MOLAP オブジェクトがキャッシュで再処理されている間にリアルタイム ROLAP に切り替えます。 キャッシュを更新する前に、少なくとも 10 秒の無音間隔が必要です。 無音間隔が達成されない場合、オーバーライド間隔は 10 分です。 最初の変更から 30 分後のターゲット待機時間でデータが変更されると、処理が自動的に行われます。 通常、この設定は、クエリのパフォーマンスが常に最新のデータを提供するよりもやや重要な場合に、頻繁に更新されるデータ ソースに使用されます。 この設定では、待機時間の間隔後に必要な場合は常に MOLAP オブジェクトが自動的に処理されます。 MOLAP オブジェクトの再処理中は、パフォーマンスが低下します。 |
| 中程度のレイテンシー MOLAP | 詳細データと集計は、多次元形式で格納されます。 サーバーは、データへの変更の通知をリッスンし、MOLAP オブジェクトがキャッシュで再処理されている間、リアルタイム ROLAP に切り替えます。 キャッシュを更新する前に、少なくとも 10 秒の無音間隔が必要です。 無音間隔が達成されない場合、オーバーライド間隔は 10 分です。 ターゲット待機時間が 4 時間のデータが変化すると、処理が自動的に行われます。 通常、この設定は、クエリのパフォーマンスが常に最新のデータを提供するよりも重要な場合に、更新頻度が高い (または頻度が低い) データ ソースに使用されます。 この設定では、待機時間の間隔後に必要な場合は常に MOLAP オブジェクトが自動的に処理されます。 MOLAP オブジェクトの再処理中は、パフォーマンスが低下します。 |
| 自動 MOLAP | 詳細データと集計は、多次元形式で格納されます。 サーバーは通知をリッスンしますが、新しい MOLAP キャッシュのビルド中は現在の MOLAP キャッシュを保持します。 サーバーはリアルタイム OLAP に切り替わることはなく、新しいキャッシュの構築中にクエリが古くなる可能性があります。 新しい MOLAP キャッシュを作成する前に、少なくとも 10 秒の無音間隔が必要です。 無音間隔が達成されない場合、オーバーライド間隔は 10 分です。 ターゲット待機時間が 2 時間のデータが変化すると、処理が自動的に行われます。 この設定は、通常、クエリのパフォーマンスが重要な場合にデータ ソースに使用されます。 この設定では、待機時間の間隔後に必要な場合は常に MOLAP オブジェクトが自動的に処理されます。 新しいキャッシュのビルドと処理中は、クエリは最新のデータを返しません。 |
| スケジュールされた MOLAP | 詳細データと集計は、多次元形式で格納されます。 データが変更された場合、サーバーは通知を受け取りません。 処理は 24 時間ごとに自動的に行われます。 この設定は、通常、毎日の更新のみが必要な場合にデータ ソースに使用されます。 クエリは常に MOLAP キャッシュ内のデータに対して行われます。これは、新しいキャッシュがビルドされ、そのオブジェクトが処理されるまで破棄されません。 |
| MOLAP | プロアクティブ キャッシュが有効になっていません。 詳細データと集計は、多次元形式で格納されます。 データが変更された場合、サーバーは通知を受け取りません。 処理をスケジュールするか、手動で実行する必要があります。 通常、この設定は、クライアント アプリケーションでは定期的な更新が不要ですが、高パフォーマンスが重要なデータ ソースに使用されます。 プロアクティブ キャッシュを使用しない MOLAP ストレージは、アプリケーションで最新のデータを必要としない場合に、可能な限り最高のパフォーマンスを提供します。 更新されたオブジェクトを処理するにはダウンタイムが必要ですが、ダウンタイムはステージング サーバー上のキューブを更新および処理し、データベース同期を使用して更新および処理された MOLAP オブジェクトを運用サーバーにコピーすることで最小限に抑えることができます。 |
カスタム ストレージ オプション
標準ストレージ設定の 1 つを使用する代わりに、ストレージとプロアクティブ キャッシュを手動で構成できます。 カスタム ストレージ設定を作成する前に、まず [標準設定 ] オプションをクリックし、スライダーを使用する構成に最も近い標準設定に移動することができます。 次に、カスタム構成を作成するには、[ カスタム設定 ] オプションをクリックし、[ オプション] をクリックします。
データ ソースの変更がキャッシュの更新をトリガーするかどうかを指定できます。 許容できるレベルのチャーンを許可するには、データ ソースの更新後の最小無音間隔を指定します。 また、データ ソースへの変更間隔が最小に達しない場合に、指定した期間後にキャッシュを更新する無音間隔のオーバーライドを指定することもできます。
更新が発生したときに古いキャッシュを削除するかどうかを指定できます。 このオプションを選択した場合、指定された待機時間を超えると、サーバーはキャッシュを更新するときにリアルタイム リレーショナル OLAP (ROLAP) に切り替えます。 このオプションを選択しない場合、サーバーは新しいキャッシュをビルドするときに、古い多次元 OLAP (MOLAP) キャッシュのクエリを引き続き実行します。
変更と古いキャッシュの削除の間に発生する必要がある待機時間の間隔を指定できます。 これは、ユーザーが古いキャッシュ内のデータを閲覧し続けることができる期間であり、その後キャッシュは破棄されます。 変更が発生しても、キャッシュがこの間隔の最後に更新または処理されている場合、クエリは ROLAP にリダイレクトされます。
データ ソースへの変更に関係なく、キャッシュされた MOLAP オブジェクトを定期的に更新する場合は、キャッシュの強制更新をスケジュールできます。 リアルタイム OLAP の利点は、データベースのサイズと、ソース データの変更頻度によって割り当てられる待機時間によって異なります。 ユーザーが ROLAP ではなく、可能な限り頻繁にキャッシュにクエリを送信する必要があります。
[ ディメンションに設定を適用 する] チェック ボックスをオンにすると、メジャー グループに関連するディメンションに同じストレージ設定が適用されます。 ディメンションの値は、最初はパーティション値と同じです。