リモート パーティションの作成と管理 (Analysis Services)
メジャー グループをパーティション分割する場合は、パーティションのストレージとして Analysis Services のリモート インスタンスでセカンダリ データベースを構成できます。
キューブ (master データベースと呼ばれます) のリモート パーティションは、Analysis Services のリモート インスタンス上の専用の Analysis Services データベース (セカンダリ データベースと呼ばれます) に格納されています。
専用のセカンダリ データベースは、1 つの master データベースのみのリモート パーティションを格納できます。これに対し、master データベースは、すべてのセカンダリ データベースが Analysis Services の同一のリモート インスタンスに存在する場合に限り、複数のセカンダリ データベースを使用できます。 リモート パーティション専用のデータベース内のディメンションは、リンク ディメンションとして作成されます。
前提条件
リモート パーティションを作成するには、次の条件を満たしている必要があります。
パーティションを格納するために、もう 1 つの Analysis Services インスタンスと専用データベースが必要です。 セカンダリ データベースには、master データベースのリモート パーティションのストレージを提供するという専用の目的があります。
両方のサーバー インスタンスが同じバージョンであることが必要です。 両方のデータベースの機能レベルは同じである必要があります。
両方のインスタンスが TCP 接続用に構成されている必要があります。 Analysis Services は、HTTP プロトコルの使用によるリモート パーティションの作成をサポートしません。
両方のコンピューターのファイアウォール設定は、外部接続を許可するように設定されている必要があります。 ファイアウォールの設定の詳細については、「Analysis Services のアクセスを許可するための Windows ファイアウォールの構成」を参照してください。
master データベースを実行するインスタンスのサービス アカウントには、Analysis Services のリモート インスタンスに対する管理アクセス権が必要です。 サービス アカウントが変更された場合は、サーバーとデータベース両方に対する権限を更新する必要があります。
両方のコンピューターで Analysis Services 管理者である必要があります。
災害復旧計画がリモート パーティションのバックアップと復元に対応していることを確認する必要があります。 リモート パーティションを使用すると、バックアップ操作と復元操作が複雑になる場合があります。 必要なデータを復元できるように、計画を十分にテストしてください。
リモート パーティションの構成
SQL Server Analysis Services のインスタンスを実行している異なる 2 台のコンピューターはそれぞれ、1 台をマスター サーバー、もう 1 台を下位サーバーとして指定するリモート パーティションの配置を作成するために必要です。
次の手順では、マスター サーバーにキューブ データベースが配置されている、2 つのサーバー インスタンスがあることを前提としています。 この手順では、キューブ データベースを db-master と呼びます。 リモート パーティションが含まれているストレージ データベースを db-storage と呼びます。
この手順を完了するには、SQL Server Management Studio と SQL Server データ ツール (SSDT) の両方を使用します。
注 |
---|
リモート パーティションとマージできるのは、他のリモート パーティションのみです。 ローカル パーティションとリモート パーティションを組み合わせて使用している場合は、別の方法として、結合したデータを含む新しいパーティションを作成し、今後使用しないパーティションを削除する方法もあります。 |
キューブの配置に有効なサーバー名を指定する (SSDT)
マスター サーバー: ソリューション エクスプローラーでソリューション名を右クリックし、[プロパティ] をクリックします。 [プロパティ] ダイアログ ボックスで、[構成プロパティ]、[配置]、[サーバー] の順にクリックし、マスター サーバーの名前を設定します。
下位サーバー: ソリューション エクスプローラーでソリューション名を右クリックし、[プロパティ] をクリックします。 [プロパティ] ダイアログ ボックスで、[構成プロパティ]、[配置]、[サーバー] の順にクリックし、下位サーバーの名前を設定します。
セカンダリ データベースを作成および配置する (SSDT)
下位サーバー: ストレージ データベース用に新しい Analysis Services プロジェクトを作成します。
下位サーバー: ソリューション エクスプローラーで、キューブ データベース db-master を指す新しいデータ ソースを作成します。 プロバイダーに [ネイティブ OLE DB\Microsoft OLE DB Provider for Analysis Services 11.0] を使用します。
下位サーバー: ソリューションを配置します。
機能を有効にする (SSMS)
下位サーバー: SQL Server Management Studio のオブジェクト エクスプローラーで、接続している Analysis Services インスタンスを右クリックし、[プロパティ] をクリックします。 [機能\LinkToOtherInstanceEnabled] と [機能\LinkFromOtherInstanceEnabled] の両方を [True] に設定します。
下位サーバー: オブジェクト エクスプローラーでサーバー名を右クリックして [再起動] をクリックし、サーバーを再起動します。
マスター サーバー: SQL Server Management Studio のオブジェクト エクスプローラーで、接続している Analysis Services インスタンスを右クリックし、[プロパティ] をクリックします。 [機能\LinkToOtherInstanceEnabled] と [機能\LinkFromOtherInstanceEnabled] の両方を [True] に設定します。
マスター サーバー: オブジェクト エクスプローラーでサーバー名を右クリックして [再起動] をクリックし、サーバーを再起動します。
リモート サーバーで MasterDataSourceID データベース プロパティを設定する (SSMS)
下位サーバー: ストレージ データベース db-storage を右クリックし、[データベースをスクリプト化] |[ALTER] |[新しいクエリ エディター ウィンドウ] を順に選択します。
[MasterDataSourceID] を XMLA に追加して、キューブ データベース db-master の ID を値として指定します。 XMLA は次のようになります。
<Alter ObjectExpansion="ExpandFull" xmlns="https://schemas.microsoft.com/analysisservices/2003/engine"> <Object> <DatabaseID>DB-Storage</DatabaseID> </Object> <ObjectDefinition> <Database xmlns:xsd="http://www.w3.org/2001/XMLSchema" 400" <ID>DB-Storage</ID> <Name>DB-StorageB</Name> <ddl200:CompatibilityLevel>1100</ddl200:CompatibilityLevel> <Language>1033</Language> <Collation>Latin1_General_CI_AS</Collation> <DataSourceImpersonationInfo> <ImpersonationMode>ImpersonateAccount</ImpersonationMode> <Account>*********</Account> </DataSourceImpersonationInfo> <MasterDataSourceID>DB-Master</MasterDataSourceID> </Database> </ObjectDefinition> </Alter>
F5 キーを押してスクリプトを実行します。
リモート パーティションを設定する (SSDT)
マスター サーバー: キューブ デザイナーでキューブを開き、[パーティション] タブをクリックします。 メジャー グループを展開します。 メジャー グループが既に複数のパーティションに対して構成されている場合は [新しいパーティション] をクリックします。または、[基になる列] の参照ボタン (.. . ) をクリックして既存のパーティションを編集します。
パーティション ウィザードの [基になる情報の指定] で、元のデータ ソース ビューとファクト テーブルを選択します。
クエリ バインドを使用する場合は、作成する新しいパーティションにデータを分割する WHERE 句を指定します。
[処理およびストレージの場所] の [処理場所] で、[リモート Analysis Services データ ソース] を選択し、[新規作成] をクリックして、下位データベース db-storage を指す新しいデータ ソースを作成します。
注 データ ソースがコレクションに存在しないことを示すエラーが発生した場合は、ストレージ データベース db-storage のプロジェクトを開き、master データベース db-master を指すデータ ソースを作成する必要があります。
マスター サーバー: ソリューション エクスプローラーでキューブ名を右クリックし、[処理] を選択してキューブを完全に処理します。
リモート パーティションの管理
Analysis Services は、リモート パーティションの並列処理と順次処理をサポートします。 パーティションが定義された master データベースは、キューブのパーティション処理に参加するすべてのインスタンスのトランザクションを調整します。 処理のレポートは、パーティションを処理するすべてのインスタンスに送信されます。
リモート パーティションを含むキューブは、Analysis Services の 1 つのインスタンスでそのパーティションと共に管理されます。 ただし、リモート パーティションのメタデータは、パーティションとその親キューブが定義された Analysis Services のインスタンスでのみ表示および更新できます。 Analysis Services のリモート インスタンスではリモート パーティションを表示または更新できません。
注 |
---|
リモート パーティションの格納専用のデータベースは、スキーマ行セットに対して公開されていませんが、分析管理オブジェクト (AMO) を使用するアプリケーションは、Analysis Discover コマンドの XML を使用して専用データベースを検出できます。 TCP または HTTP クライアントを使用して専用データベースに直接送信された CREATE コマンドまたは DELETE コマンドは成功しますが、操作によりこの厳密管理データベースが損傷する可能性があることを示す警告がサーバーにより返されます。 |