Analysis Services には、ソース サーバー上のデータベースのデータとメタデータをコピー先サーバー上のデータベースにコピーすることで、2 つの Analysis Services データベースを同等にするデータベース同期機能が含まれています。 データベースの同期機能を使用して、次のいずれかのタスクを実行します。
ステージング サーバーから運用サーバーにデータベースをデプロイします。
ステージング サーバー上のデータベース内のデータとメタデータに加えられた変更を使用して、運用サーバー上のデータベースを更新します。
後で実行してデータベースを同期できる XMLA スクリプトを生成します。
キューブとディメンションが複数のサーバーで処理される分散ワークロードでは、データベース同期を使用して変更を 1 つのデータベースにマージします。
データベース同期は移行先サーバーで開始され、ソース サーバー上のデータベース コピーにデータとメタデータがプルされます。 データベースが存在しない場合は作成されます。 同期は、データベースがコピーされると終了する一方向の 1 回限りの操作です。 データベース間のリアルタイム パリティは提供されません。
ソース サーバーと移行先サーバーに既に存在するデータベースを再同期して、ステージング サーバーから運用データベースに最新の変更をプルできます。 2 つのサーバー上のファイルが変更と比較され、異なるファイルが更新されます。 同期がバックグラウンドで行われる間、移行先サーバー上の既存のデータベースは引き続き使用できます。 ユーザーは、同期の進行中に、移行先データベースに対してクエリを実行し続けることができます。 同期が完了すると、Analysis Services によってユーザーが新しくコピーされたデータとメタデータに自動的に切り替わり、コピー先データベースから古いデータが削除されます。
データベースを同期するには、データベースの同期ウィザードを実行してデータベースを直ちに同期するか、それを使用して後で実行できる同期スクリプトを生成します。 どちらの方法でも、Analysis Services データベースとキューブの可用性とスケーラビリティを向上させるために使用できます。
注
以前のバージョンの Analysis Services 用に作成された次のホワイトペーパーは、SQL Server 2012 を使用して構築されたスケーラブルな多次元ソリューションにも適用されます。 詳細については、「Scale-Out Analysis Services を使用したクエリ」および「Read-Only データベースを使用した Analysis Services のクエリのScale-Out」を参照してください。
[前提条件]
データベース同期を開始する移行先 (またはターゲット) サーバーでは、Analysis Services サーバー管理者ロールのメンバーである必要があります。 ソース サーバーでは、Windows ユーザー アカウントにソース データベースに対するフル コントロールアクセス許可が必要です。 データベースを対話形式で同期する場合は、Windows ユーザー ID のセキュリティ コンテキストで同期が実行されることを覚えておいてください。 アカウントが特定のオブジェクトへのアクセスを拒否された場合、それらのオブジェクトは操作から除外されます。 サーバー管理者の役割とデータベースのアクセス許可の詳細については、「 サーバー管理者の権限の付与 (Analysis Services)」 および「データベース権限の 付与 (Analysis Services)」を参照してください。
既定のインスタンス間のリモート接続を許可するには、両方のサーバーで TCP ポート 2383 を開く必要があります。 Windows ファイアウォールで例外を作成する方法の詳細については、「 Analysis Services アクセスを許可するように Windows ファイアウォールを構成する」を参照してください。
移行元サーバーと移行先サーバーの両方が、同じバージョンとサービス パックである必要があります。 モデル メタデータも同期されるため、互換性を確保するために、両方のサーバーのビルド番号を同じにする必要があります。 各インストールのエディションでは、データベース同期がサポートされている必要があります。 SQL Server 2014 では、データベース同期はエンタープライズ、開発者、ビジネス インテリジェンスの各エディションでサポートされています。 各エディションの機能の詳細については、「 SQL Server 2014 の各エディションでサポートされる機能」を参照してください。
サーバー展開モードは、各サーバーで同じである必要があります。 同期するデータベースが多次元の場合は、ソース サーバーと移行先サーバーの両方が多次元サーバー モード用に構成されている必要があります。 展開モードの詳細については、「 Analysis Services インスタンスのサーバー モードの決定」を参照してください。
ソース サーバーで使用している場合は、遅延集計処理を無効にします。 バックグラウンドで処理されている集計は、データベースの同期に干渉する可能性があります。 このサーバー プロパティの設定の詳細については、「 OLAP プロパティ」を参照してください。
注
データベース サイズは、同期が適切なアプローチであるかどうかを判断する際の要因です。 厳密な要件はありませんが、同期が遅すぎる場合は、このテクニカル ペーパー「 Analysis Services 同期のベスト プラクティス」で説明されているように、複数のサーバーを並列で同期することを検討してください。
データベースの同期ウィザード
データベースの同期ウィザードを使用して、ソースからコピー先データベースへの一方向の同期を実行するか、データベース同期操作を指定するスクリプトを生成します。 同期プロセス中にローカル パーティションとリモート パーティションの両方を同期し、ロールを含めるかどうかを選択できます。
データベースの同期ウィザードでは、次の手順を実行できます。
同期元のインスタンスとデータベースを選択します。
宛先インスタンス上のローカル パーティションのストレージの場所を選択します。
他の宛先インスタンス上のリモート パーティションのストレージの場所を選択します。
ソース インスタンスとデータベースからコピー先インスタンスにコピーするセキュリティとメンバーシップ情報のレベルを選択します。
データベースの同期ウィザードによって生成された XML for Analysis (XMLA) Synchronize コマンドを、後で同期するためにスクリプト ファイルに保存するか、すぐに同期するかを選択します。
既定では、ウィザードは、既存のセキュリティ グループのメンバーシップ以外のすべてのデータとメタデータを同期します。 データとメタデータを同期するときに、すべてのセキュリティ設定をコピーしたり、すべてのセキュリティ設定を無視したりすることもできます。
ウィザードの実行
SQL Server Management Studio で、変換先データベースを実行する Analysis Services のインスタンスに接続します。 たとえば、運用サーバーにデータベースを配置する場合は、運用サーバーでウィザードを実行します。
オブジェクト エクスプローラーで、[ データベース ] フォルダーを右クリックし、[ 同期] をクリックします。
ソース サーバーとソース データベースを指定します。 [同期するデータベースの選択] ページの [ソース サーバー ] と [ ソース データベース] に、ソース サーバーとソース データベースの名前を入力します。 たとえば、テスト環境から運用サーバーにデプロイする場合、ソースはステージング サーバー上のデータベースです。
移行先サーバー には、 ソース データベースで選択されたデータベースのデータとメタデータが同期される Analysis Services インスタンスの名前が表示されます。
同期は、同じ名前のソース データベースと移行先データベースに対して行われます。 移行先サーバーに、ソース データベースと同じ名前を共有するデータベースが既にある場合、移行先データベースはソースのメタデータとデータで更新されます。 データベースが存在しない場合は、コピー先サーバーに作成されます。
必要に応じて、ローカル パーティションの場所を変更します。 [ ローカル パーティションの場所の指定 ] ページを使用して、ローカル パーティションを宛先サーバーに格納する場所を指定します。
注
このページは、指定されたデータベースに少なくとも 1 つのローカル パーティションが存在する場合にのみ表示されます。
ソース サーバーのドライブ C に一連のパーティションがインストールされている場合、ウィザードでは、この一連のパーティションを移行先サーバー上の別の場所にコピーできます。 既定の場所を変更しない場合、ウィザードはソース サーバー上の各キューブ内のメジャー グループ パーティションを、移行先サーバー上の同じ場所に展開します。 同様に、移行元サーバーがリモート パーティションを使用している場合は、移行先サーバーで同じリモート パーティションが使用されます。
[場所] オプションには、ソース フォルダー、移動先フォルダー、およびコピー先インスタンスに格納するローカル パーティションの推定サイズが一覧表示されるグリッドが表示されます。 グリッドには、次の列が含まれています。
[同期元フォルダー]
ローカル パーティションを含むソース Analysis Services インスタンスのフォルダー名を表示します。 列に値 "(Default)" が含まれている場合、ソース インスタンスの既定の場所にはローカル パーティションが含まれます。[同期先フォルダー]
ローカル パーティションの同期先となる Analysis Services インスタンスのフォルダー名を表示します。 列に値 "(Default)" が含まれている場合、コピー先インスタンスの既定の場所にはローカル パーティションが含まれます。省略記号 (...) ボタンをクリックして [ リモート フォルダーの参照 ] ダイアログ ボックスを表示し、選択した場所に格納されているローカル パーティションの同期先インスタンス上のフォルダーを指定します。
注
ソース インスタンスの既定の場所に格納されているローカル パーティションでは、この列を変更できません。
サイズ
ローカル パーティションの推定サイズを表示します。[選択した場所のパーティション] オプションには、場所で選択した行の [ソース フォルダー] 列に指定されたソース Analysis Services インスタンス上の場所に格納されているローカル パーティションを示すグリッドが表示されます。
三乗
パーティションを含むキューブの名前を表示します。測定グループ
パーティションを含むキューブ内のメジャー グループの名前を表示します。パーティション名
パーティションの名前を表示します。Size(Mb)
パーティションのサイズをメガバイト (MB) 単位で表示します。必要に応じて、リモート パーティションの場所を変更します。[ リモート パーティションの場所の指定 ] ページを使用して、ソース サーバー上の指定したデータベースによって管理されているリモート パーティションを同期するかどうかを指定し、選択したリモート パーティションを格納する対象の Analysis Services インスタンスとデータベースを指定します。
注
このページは、少なくとも 1 つのリモート パーティションがソース Analysis Services インスタンス上の指定されたデータベースによって管理されている場合にのみ表示されます。
[場所] オプションには、ソース データベースのリモート パーティションが格納されている場所に関する詳細が一覧表示されるグリッドが表示されます。これには、ソースと宛先の情報、選択したデータベースから使用可能な各場所で使用されるストレージ サイズが含まれます。 グリッドには、次の列が含まれています。
同期
リモートパーティションを含む場所を同期中に含める場合は、選択してください。注
このオプションが場所に対して選択されていない場合、その場所に含まれるリモート パーティションは同期されません。
ソース サーバー
リモート パーティションを含む Analysis Services インスタンスの名前を表示します。[同期元フォルダー]
リモート パーティションを含む Analysis Services インスタンスのフォルダー名を表示します。 列に値 "(Default)" が含まれている場合、 ソース サーバー に表示されるインスタンスの既定の場所にはリモート パーティションが含まれます。移行先サーバー
ソース サーバーとソース フォルダーで指定された場所に格納されているリモート パーティションを同期する Analysis Services インスタンスの名前を表示します。省略記号 (...) ボタンをクリックして [ 接続マネージャー ] ダイアログ ボックスを表示し、選択した場所に格納されているリモート パーティションを同期する Analysis Services インスタンスを指定します。
[同期先フォルダー]
リモート パーティションの同期先となる Analysis Services インスタンスのフォルダー名を表示します。 列に値 "(Default)" が含まれている場合、宛先インスタンスの既定の場所にはリモート パーティションが含まれている必要があります。省略記号 (...) ボタンをクリックして [ リモート フォルダーの参照 ] ダイアログ ボックスを表示し、選択した場所に格納されているリモート パーティションの同期先インスタンス上のフォルダーを指定します。
サイズ
場所に格納されているリモート パーティションの推定サイズを表示します。選択した場所のパーティションは、選択した場所に保存されたリモートパーティションを示すグリッドを表示します。このグリッドは、選択された行の場所内のソース フォルダー列で指定されたソース Analysis Services インスタンス上のものです。 グリッドには、次の列が含まれています。
三乗
パーティションを含むキューブの名前を表示します。測定グループ
パーティションを含むキューブ内のメジャー グループの名前を表示します。パーティション名
パーティションの名前を表示します。Size(Mb)
パーティションのサイズをメガバイト (MB) 単位で表示します。ユーザーのアクセス許可情報を含めるかどうか、および圧縮を使用するかどうかを指定します。 既定では、ウィザードは、ファイルをコピー先サーバーにコピーする前に、すべてのデータとメタデータを圧縮します。 このオプションを選択すると、ファイル転送が高速になります。 ファイルは、移行先サーバーに到達すると圧縮されません。
すべてコピー
同期中にセキュリティ定義とメンバーシップ情報を含める場合に選択します。メンバーシップをスキップする
同期中に、セキュリティ定義を含めメンバーシップ情報を除外する設定を選択します。すべて無視
ソース データベース内の現在のセキュリティ定義とメンバーシップ情報を無視する場合に選択します。 同期中にコピー先データベースが作成された場合、セキュリティ定義やメンバーシップ情報はコピーされません。 移行先データベースが既に存在し、ロールとメンバーシップがある場合、そのセキュリティ情報は保持されます。同期方法を選択します。 すぐに同期することも、ファイルに保存されたスクリプトを生成することもできます。 既定では、ファイルは .xmla 拡張子で保存され、Documents フォルダーに配置されます。
[ 完了] をクリックして同期します。 [ウィザードの完了] ページでオプションを確認したら、もう一度 [完了] をクリックします。
次のステップ
ロールまたはメンバーシップを同期しなかった場合は、移動先データベースでユーザー アクセス許可を今すぐ指定してください。
こちらもご覧ください
同期要素 (XMLA)
XMLA を使用してモデル ソリューションをデプロイする
配置ウィザードを使用したモデル ソリューションの配置