次の方法で共有


Write-Enabled ディメンション

Von Bedeutung

この機能は、Microsoft SQL Server の次のバージョンで削除されます。 新しい開発作業ではこの機能を使用しないでください。現在この機能を使用しているアプリケーションを変更することを計画してください。

ディメンション内のデータは通常、読み取り専用です。 ただし、特定のシナリオでは、ディメンションを書き込み可能にすることができます。 Microsoft SQL Server Analysis Services では、ディメンションの書き込みを有効にすると、ビジネス ユーザーはディメンションの内容を変更し、ディメンションの階層に対する変更の即時の影響を確認できます。 1 つのテーブルに基づくディメンションはすべて書き込み可能です。 書き込みが有効なディメンションでは、ビジネス ユーザーと管理者はディメンション内の属性メンバーを変更、移動、追加、および削除できます。 これらの更新は、 まとめてディメンション ライトバックと呼ばれます。

Analysis Services では、すべてのディメンション属性に対するディメンション の書き戻しがサポートされており、ディメンションのすべてのメンバーが変更される可能性があります。 書き込みが有効なキューブまたはパーティションの場合、更新はキューブのソース テーブルとは別の書き戻しテーブルに格納されます。 ただし、書き込みが有効なディメンションの場合、更新はディメンションのテーブルに直接記録されます。 また、書き込み可能ディメンションが複数のパーティションを持つキューブに含まれている場合、そのデータ ソースの一部またはすべてがディメンション テーブルのコピーを持つ場合、書き戻しプロセス中に元のディメンション テーブルのみが更新されます。

書き込み対応ディメンションと書き込みが有効なキューブには、異なるが補完的な機能があります。 書き込み可能ディメンションを使用すると、ビジネス ユーザーはメンバーを更新できます。一方、書き込み可能キューブではセル値を更新できます。 これら 2 つの機能は補完的ですが、両方の機能を組み合わせて使用する必要はありません。 ディメンションの書き戻しを行うために、キューブにディメンションを含める必要はありません。 書き込み可能ディメンションは、書き込みが有効になっていないキューブに含めることもできます。 ディメンションとキューブを書き込み可能にし、セキュリティを維持するには、さまざまな手順を使用します。

ディメンションの書き戻しには、次の制限が適用されます。

  • 新しいメンバーを作成するときは、ディメンションのすべての属性を含める必要があります。 ディメンションのキー属性の値を指定しないと、メンバーを挿入できません。 したがって、メンバーの作成には、ディメンション テーブルで定義されている制約 (null 以外のキー値など) が適用されます。

  • ディメンションの書き戻しは、スター スキーマでのみサポートされます。 つまり、ディメンションは、ファクト テーブルに直接関連する 1 つのディメンション テーブルに基づいている必要があります。 ディメンションを書き込み可能にすると、Analysis Services は、既存の Analysis Services データベースに配置するとき、または Analysis Services プロジェクトをビルドするときに、この要件を検証します。

書き戻しディメンションの既存のメンバーは、変更または削除できます。 メンバーが削除されると、削除はすべての子メンバーに連鎖します。 たとえば、CountryRegion、Province、City、Customer 属性を含む Customer ディメンションでは、国/地域を削除すると、削除された国/地域に属するすべての都道府県、市区町村、顧客が削除されます。 国/地域に都道府県が 1 つしかない場合、その都道府県を削除すると、その国/地域も削除されます。

書き戻しディメンションのメンバーは、同じレベル内でのみ移動できます。 たとえば、市区町村を別の国/地域または都道府県の市区町村レベルに移動することはできますが、市区町村を都道府県レベルまたは CountryRegion レベルに移動することはできません。 親子階層では、すべてのメンバーがリーフ メンバーであるため、メンバーは (All) レベル以外の任意のレベルに移動できます。

親子階層のメンバーが削除されると、メンバーの子はメンバーの親に移動されます。 削除されたメンバーにはリレーショナル テーブルに対する更新アクセス許可が必要ですが、移動されたメンバーに対するアクセス許可は必要ありません。 アプリケーションが親子階層のメンバーを移動する場合、アプリケーションは UPDATE 操作で、メンバーの子孫をメンバーと共に移動するか、メンバーの親に移動するかを指定できます。 親子階層のメンバーを再帰的に削除するには、メンバーとすべてのメンバーの子孫に対するリレーショナル テーブルに対する更新アクセス許可がユーザーに必要です。

親子階層の親属性の更新には、他のプロパティまたは属性の更新を含めてはなりません。

ディメンションに対するすべての変更により、ディメンション構造が変更されます。 ディメンションに対する各変更は 1 つのトランザクションと見なされ、ディメンション構造を更新するには増分処理が必要です。 書き込みが有効なディメンションには、他のディメンションと同じ処理要件があります。

ディメンションの書き戻しは、リンクされたディメンションではサポートされていません。

安全

書き込み可能ディメンションを更新できるビジネス ユーザーは、Analysis Services データベース ロール内のディメンションに対する読み取り/書き込みアクセス許可が付与されているユーザーだけです。 ロールごとに、更新できるメンバーと更新できないメンバーを制御できます。 ビジネス ユーザーが書き込み可能ディメンションを更新するには、クライアント アプリケーションがこの機能をサポートしている必要があります。 このようなユーザーの場合、書き込み可能ディメンションは、ディメンションが最後に変更されてから処理されたキューブに含める必要があります。 詳細については、「 オブジェクトと操作へのアクセスの承認 (Analysis Services)」を参照してください。

Administrators ロールに含まれるユーザーとグループは、ディメンションがキューブに含まれていない場合でも、書き込み可能ディメンションの属性メンバーを更新できます。

こちらもご覧ください

データベース ディメンションのプロパティ
Write-Enabled パーティション
次元 (ディメンション) (アナリシス サービス - 多次元データ)